.selection-intro{padding-bottom:30px}.selection-lead{font-size:12px;color:var(--muted);margin:12px 0 0}.selection-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-block:18px 22px}.filter-tabs{display:flex;gap:20px;align-items:center}.filter-tabs button{background:transparent;font-size:12px;color:#939b88;padding:4px 0;border-bottom:1px solid transparent;white-space:nowrap}.filter-tabs button[aria-pressed=true]{color:var(--jade);border-color:var(--jade)}.filter-tabs span{font-family:Georgia,serif;font-size:11px;margin-left:3px}.selection-guide{font-size:10px;color:#919985;margin:0}.candidate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}.candidate-card{background:var(--paper);border:1px solid #dce0d2;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;position:relative}.candidate-card[data-decision=keep]{border-color:#718d64}.candidate-card[data-decision=remove]{opacity:.62}.candidate-card[data-decision=remove]:hover{opacity:1}.candidate-photo-button{padding:0;width:100%;background:#f8f9f3;display:block;position:relative;height:225px;overflow:hidden}.candidate-photo-button img{display:block;width:100%;height:100%;object-fit:contain;padding:17px;transition:transform .25s}.candidate-photo-button:hover img{transform:scale(1.035)}.candidate-photo-number{position:absolute;top:12px;left:13px;font-family:Georgia,serif;font-size:11px;color:#7a8c70;z-index:1;background:#f8f9f3d9;border-radius:2px;min-width:22px;text-align:center}.candidate-image-label{position:absolute;bottom:10px;right:10px;font-size:8px;color:#87917d;letter-spacing:.03em;background:#fffefbd9;padding:2px 6px;border-radius:2px}.candidate-card-copy{padding:15px 16px 13px;flex:1;display:flex;flex-direction:column}.candidate-card-title{margin:0 0 7px;font-family:var(--serif);font-size:15px;line-height:1.7;font-weight:500;min-height:50px}.candidate-card-title button{font:inherit;background:transparent;text-align:left;padding:0}.candidate-card-title button:hover{color:var(--jade)}.candidate-card-region{font-size:9px;color:#9a9e90;margin:0 0 10px;line-height:1.75}.candidate-card-interest{font-size:11px;color:#6e7862;line-height:1.85;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:61px}.candidate-card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:5px}.candidate-priority-tag{font-size:8px;color:#859474;line-height:1.6;max-width:90px}.candidate-priority-tag.low-priority{color:#a98764}.decision-buttons{display:flex;gap:5px}.decision-buttons button{padding:4px 10px;background:transparent;border:1px solid #dce2d1;border-radius:3px;font-size:10px;color:#849276;min-height:28px;white-space:nowrap}.decision-buttons button:hover{background:#f0f4e9}.decision-buttons button[data-choice=keep][aria-pressed=true]{background:#e4eddc;border-color:#94ad7d;color:#406233}.decision-buttons button[data-choice=remove][aria-pressed=true]{background:#f1e8df;border-color:#ceb59c;color:#967153}.decision-buttons button[data-choice=remove]:hover{background:#f4eee6}.selection-footnote{border-top:1px solid var(--line);padding-top:18px;margin-top:28px;color:#909983;font-size:10px;line-height:1.9}.selection-footnote p{margin:0 0 3px}.selection-footer{padding-bottom:32px}.empty-selection{text-align:center;padding:65px 20px;color:var(--muted);font-size:13px;background:var(--paper);border:1px solid var(--line);border-radius:4px}.candidate-dialog{border:0;padding:0;width:min(1210px,calc(100% - 48px));max-width:none;height:min(910px,calc(100dvh - 48px));max-height:none;border-radius:6px;background:var(--paper);color:var(--ink);overflow:hidden;box-shadow:0 18px 120px #18291e55}.candidate-dialog::backdrop{background:#1e3028c9;backdrop-filter:blur(5px)}.candidate-dialog[open]{display:grid;grid-template-rows:54px minmax(0,1fr)}.candidate-dialog-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--line)}.candidate-dialog-bar>span{font-family:Georgia,serif;font-size:12px;letter-spacing:.1em;color:#97a18a}.detail-navigation{display:flex;align-items:center;gap:7px}.detail-navigation button{width:29px;height:29px;background:transparent;color:#7a8b6e;border:1px solid #e2e6d8;border-radius:3px;font-size:14px}.detail-navigation button:last-child{border:0;font-size:25px;margin-left:12px;line-height:1}.candidate-detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,1fr);min-height:0}.candidate-photo-column{display:flex;flex-direction:column;min-width:0;min-height:0;padding:19px 20px 20px;background:#f7f9f1;border-right:1px solid #e1e6d7}.photo-tabs{display:flex;justify-content:center;gap:17px;margin-bottom:9px;min-height:30px}.photo-tabs button{font-size:11px;border-bottom:1px solid transparent;background:transparent;color:#909e83;padding:3px 4px}.photo-tabs button[aria-pressed=true]{border-color:#557247;color:#3b6030}.candidate-photo-stage{flex:1;min-height:150px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;cursor:zoom-in}.candidate-photo-stage img{width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none;transform-origin:center;will-change:transform}.candidate-photo-stage.zoomed{cursor:grab}.candidate-photo-stage.dragging{cursor:grabbing}.candidate-photo-tools{display:flex;align-items:center;justify-content:space-between;padding-top:12px;color:#8d9b80;font-size:9px}.photo-provenance{font-size:9px;line-height:1.85;color:#929c87;margin:12px 0 2px}.open-photo{font-size:9px;color:#64834f;text-decoration:none;align-self:flex-start}.candidate-copy-column{overflow-y:auto;padding:25px 28px 28px;scrollbar-width:thin}.candidate-copy-column .eyebrow{font-size:9px;color:#a08462;margin-bottom:9px}.candidate-copy-column h2{font-size:23px;line-height:1.55}.detail-region{font-size:10px;color:#97a08b;line-height:1.9;margin:12px 0 23px;padding-bottom:17px;border-bottom:1px solid #e2e6d7}.candidate-copy-column section{margin-top:19px}.candidate-copy-column h3{font-size:12px;letter-spacing:.035em;font-weight:500;margin:0 0 7px}.candidate-copy-column section p,.candidate-copy-column section li{font-size:11px;color:#7d896e;line-height:1.95;margin:0 0 7px}.candidate-copy-column section ul{margin:0;padding-left:15px}.candidate-copy-column .candidate-sources{border-top:1px solid #e2e6d7;padding-top:17px}.candidate-sources a{font-size:10px;color:#5f7d4e;text-decoration:none}.candidate-detail-actions{margin-top:23px;padding-top:19px;border-top:1px solid #e2e6d7;display:flex;align-items:center;justify-content:space-between;gap:12px}.candidate-detail-actions .decision-buttons button{font-size:11px;padding:6px 16px}.model-link{font-size:10px;color:var(--jade);text-decoration:none}.model-link[hidden]{display:none}.viewer-back-link{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:#6d8060;text-decoration:none;margin-top:20px}.viewer-back-link:hover{text-decoration:underline}
@media(min-width:1600px){.candidate-photo-button{height:245px}}
@media(max-width:1100px){.candidate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.candidate-photo-button{height:220px}.selection-guide{font-size:9px}.candidate-copy-column{padding:22px}.candidate-detail-layout{grid-template-columns:minmax(0,1.1fr) minmax(290px,1fr)}}
@media(max-width:760px){.selection-intro h1{font-size:27px}.selection-lead{font-size:11px;line-height:1.9;margin-top:10px}.selection-toolbar{padding-block:14px 18px}.filter-tabs{gap:20px}.filter-tabs button{font-size:11px}.selection-guide{display:none}.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 10px}.candidate-photo-button{height:180px}.candidate-photo-button img{padding:11px}.candidate-card-copy{padding:12px 10px}.candidate-card-title{font-size:13px;min-height:44px;line-height:1.65}.candidate-card-region{font-size:8px;margin-bottom:8px}.candidate-card-interest{font-size:10px;-webkit-line-clamp:3;line-height:1.8;min-height:54px;margin-bottom:12px}.candidate-card-bottom{align-items:flex-start;gap:8px;flex-direction:column}.candidate-priority-tag{font-size:8px;max-width:none}.decision-buttons{width:100%;gap:6px}.decision-buttons button{font-size:9px;padding:4px 9px;flex:1}.candidate-photo-number{font-size:10px;left:9px;top:8px}.candidate-image-label{font-size:7px;bottom:7px;right:7px;padding:1px 4px}.candidate-dialog{width:calc(100% - 16px);height:calc(100dvh - 24px)}.candidate-dialog[open]{grid-template-rows:48px minmax(0,1fr)}.candidate-dialog-bar{padding:8px 14px}.candidate-detail-layout{display:block;overflow-y:auto}.candidate-photo-column{height:430px;border-right:0;border-bottom:1px solid #e1e6d7;padding:13px 15px 16px}.photo-tabs{margin-bottom:5px}.candidate-copy-column{overflow:visible;padding:23px 20px 25px}.candidate-copy-column h2{font-size:21px}.candidate-copy-column section p,.candidate-copy-column section li{font-size:12px}.candidate-copy-column section h3{font-size:13px}.candidate-detail-actions .decision-buttons{width:auto}.candidate-detail-actions .decision-buttons button{flex:initial}.selection-footnote{font-size:9px}.selection-footer{padding-bottom:26px}.viewer-back-link{font-size:10px;margin-top:17px}}
@media(max-width:380px){.candidate-photo-button{height:150px}.candidate-grid{gap:12px 8px}.candidate-card-title{font-size:12px}.candidate-photo-column{height:385px}.filter-tabs{gap:16px}}
.candidate-card-interest{font-size:12px;min-height:67px}.candidate-card-region{font-size:10px}.candidate-priority-tag{font-size:9px}.candidate-copy-column section p,.candidate-copy-column section li{font-size:12px}.candidate-copy-column h3{font-size:13px}.photo-provenance,.open-photo{font-size:10px}
@media(max-width:760px){.candidate-card-title{font-size:14px;min-height:47px}.candidate-card-interest{font-size:11px;min-height:60px}.candidate-card-region{font-size:9px}.candidate-priority-tag{font-size:9px}.decision-buttons button{font-size:10px}.photo-provenance,.open-photo{font-size:9px}}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:19px}.section-heading h2{font-size:24px}.section-heading h2 span{font-family:Georgia,serif;font-size:17px;font-weight:400;color:#9ba78f;margin-left:10px}.section-heading .eyebrow{margin-bottom:6px;font-size:8px}.section-heading>p{font-size:11px;color:#939e86;margin:0 0 4px}.confirmed-section{margin-top:50px;padding-top:28px;border-top:1px solid var(--line)}.confirmed-choice{display:inline-block;font-size:10px;line-height:1.7;padding:3px 10px;border:1px solid #c4d4b7;background:#edf3e7;color:#6b8657;border-radius:3px;white-space:nowrap}.selection-intro .intro-note{flex:0 0 auto;line-height:2.2}.selection-intro .intro-note a{text-decoration:none}.selection-intro .intro-note a:hover{text-decoration:underline}.selection-intro h1{font-size:32px}.intro-note [hidden]{display:none}
.candidate-comparison{font-size:11px;line-height:1.9;color:#889778;margin:0 0 18px}.candidate-card[data-decision=pending] .confirmed-choice{opacity:1}
.candidate-photo-button.has-focus img{position:absolute;object-fit:fill;padding:0;max-width:none;max-height:none;transition:none;transform:none}.candidate-photo-button.has-focus:hover img{transform:none}.candidate-photo-button.has-focus .candidate-image-label{z-index:2;background:#fffefbe8}.candidate-photo-button.has-focus .candidate-photo-number{z-index:2}
.external-viewer-link{display:block;font-size:10px;color:#4f7240;text-decoration:none;text-align:center;border:1px solid #c7d7ba;border-radius:3px;padding:6px 9px;margin-top:12px;background:#f3f7ed;line-height:1.8}.external-viewer-link:hover{background:#e6efdc;border-color:#94ae7e}.external-viewer-link[hidden]{display:none}.candidate-detail-actions .external-viewer-link{margin-top:0;white-space:nowrap}.candidate-detail-actions{flex-wrap:wrap}
.final-selection-state{display:flex;align-items:center;gap:5px;color:#6e855f;font-size:12px}.final-selection-state strong{font-family:Georgia,serif;font-size:17px;font-weight:400}.final-selection-state>span{margin-left:18px;font-size:10px;color:#9ca68f}.removed-collection{margin-top:35px;border-top:1px solid var(--line);padding-top:20px}.removed-collection>summary{font-size:12px;color:#8a927e;cursor:pointer;list-style-position:inside}.removed-collection>p{font-size:10px;color:#a1a893;margin:10px 0 17px}.removed-collection .candidate-grid{margin-top:15px}.removed-choice{background:#f1ede7;color:#9a8b76;border-color:#d8d0c2}.removed-collection .candidate-card[data-decision=remove]{opacity:.85}
@media(max-width:760px){.final-selection-state{font-size:11px}.final-selection-state>span{margin-left:9px;font-size:9px}.removed-collection>summary{font-size:11px}}
.external-viewer-link.legacy-viewer-link{background:#f2f0eb;border-style:dashed;border-color:#d2ccc0;color:#9b917e;font-size:9px}.photo-tabs{flex-wrap:wrap;gap:7px 14px}.photo-tabs button{line-height:1.7}
.model-quality-note{flex:0 0 100%;font-size:10px;color:#8e977e;line-height:1.9;margin:4px 0 0}.model-quality-note[hidden],.candidate-sources a[hidden]{display:none}.candidate-sources a+a{margin-left:12px}
.candidate-detail-actions>.external-viewer-link{background:transparent;border:0;padding:2px 0;color:#969b8d;font-size:9px;text-decoration:underline;text-underline-offset:3px}.candidate-detail-actions>.model-link{background:var(--jade);color:#fff;padding:9px 14px;border-radius:3px;font-size:11px}
@media(max-width:760px){.selection-intro h1{font-size:24px;line-height:1.6}.selection-lead{max-width:310px}.section-heading{gap:12px;padding-bottom:14px;align-items:flex-start}.section-heading h2{font-size:21px}.section-heading>p{font-size:9px;max-width:132px;line-height:1.8}.confirmed-section{margin-top:35px;padding-top:22px}.confirmed-choice{font-size:9px;padding:2px 9px}.selection-intro .intro-note{display:none}.candidate-card-bottom .decision-buttons{min-height:28px}}
.welcome-note{max-width:600px;margin:17px 0 0;font-size:13px;line-height:2;color:#68775c;letter-spacing:.015em}
@media(max-width:760px){.welcome-note{font-size:12px;line-height:1.95;margin-top:14px;max-width:34em}}
.candidate-card,.candidate-card-copy,.section-heading>div{min-width:0}
.candidate-card-title{min-height:0}
.candidate-card-title button{display:block;width:100%;white-space:normal;overflow-wrap:anywhere}
.candidate-card-region{overflow-wrap:anywhere}
.candidate-card-interest{display:block;-webkit-line-clamp:unset;-webkit-box-orient:unset;overflow:visible;min-height:0;overflow-wrap:anywhere}
.card-main-action{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:44px;margin-top:13px;padding:11px 13px;border:1px solid var(--jade);border-radius:4px;background:var(--jade);color:#fffefb;font-size:12px;font-weight:500;line-height:1.6;text-decoration:none;white-space:normal;overflow-wrap:anywhere;transition:background .18s}
.card-main-action>span:first-child{min-width:0}
.card-main-action>span:last-child{flex:0 0 auto;font-size:15px;color:#cfdec3}
.card-main-action:hover{background:#244b3b}
@media(max-width:760px){.card-main-action{font-size:11px;gap:8px;margin-top:12px;padding:10px}.candidate-card-title{min-height:0}.final-selection-state{flex-wrap:wrap;row-gap:6px}.candidate-detail-actions>.model-link{flex:1 1 100%;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}}
@media(max-width:520px){
  .candidate-grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .section-heading{flex-direction:column;align-items:stretch;gap:7px}
  .section-heading>div{width:100%}
  .section-heading h2{font-size:clamp(22px,6.6vw,26px);line-height:1.5}
  .section-heading>p{max-width:none;margin:0;font-size:11px;line-height:1.8}
  .candidate-photo-button{height:clamp(230px,65vw,290px)}
  .candidate-photo-button img{padding:18px}
  .candidate-card-copy{padding:16px}
  .candidate-card-title{font-size:17px;line-height:1.65}
  .candidate-card-region{font-size:10px;line-height:1.8}
  .candidate-card-interest{font-size:12px;line-height:1.85}
  .candidate-card-bottom{flex-direction:row;align-items:center;flex-wrap:wrap}
  .candidate-card-bottom .decision-buttons{width:auto}
  .candidate-priority-tag{font-size:9px}
  .card-main-action{font-size:13px;min-height:46px;padding:11px 13px}
}

.offline-download{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0 28px}.offline-download span{color:var(--muted,#777);font-size:13px;line-height:1.7}.offline-download .model-link{padding:13px 18px;text-decoration:none;border:1px solid #385749;border-radius:4px;color:#fff;background:#385749}@media(max-width:520px){.offline-download{align-items:flex-start;flex-direction:column;gap:10px}.offline-download .model-link{display:inline-block}}
