:root{color-scheme:light;--bg:#f7f8fa;--surface:#fff;--surface-subtle:#eef1f5;--text:#17202a;--muted:#52606d;--border:#c9d1da;--accent:#145bd7;--focus:#8a3ffc;--warning:#fff4d6;--danger:#fde7e7}
:root[data-theme=dark]{color-scheme:dark;--bg:#111418;--surface:#191d23;--surface-subtle:#222831;--text:#f3f5f7;--muted:#b7c0ca;--border:#46505c;--accent:#79a7ff;--focus:#c9a7ff;--warning:#3b3015;--danger:#3c2023}
*{box-sizing:border-box}html{font:16px/1.5 Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}body{margin:0}a{color:var(--accent)}button,input,select{font:inherit;color:inherit}button,input,select,a.action,.view-link{min-height:44px}.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--surface);padding:.75rem;z-index:10}.skip-link:focus{top:.5rem}.site-header{display:flex;align-items:center;gap:1rem;padding:.75rem max(1rem,calc((100% - 1200px)/2));background:var(--surface);border-bottom:1px solid var(--border)}.brand{font-weight:750;text-decoration:none;color:var(--text)}nav{display:flex;gap:1rem;align-items:center;margin-left:auto}.site-header button{width:44px;border:1px solid var(--border);background:var(--surface);border-radius:8px}.preview-banner{background:var(--warning);padding:.5rem 1rem;text-align:center;font-weight:650}.container{max-width:1200px;margin:auto;padding:2rem 1rem 4rem}h1{font-size:1.75rem;line-height:1.2;margin:.25rem 0 .5rem}h1,h2,h3{text-wrap:balance}.lede{color:var(--muted);max-width:70ch}.search{display:block;max-width:40rem;margin:1.25rem 0}.search span{display:block;font-weight:700;margin-bottom:.35rem}.workspace{display:grid;grid-template-columns:272px minmax(0,1fr);gap:1.5rem}.filters{background:var(--surface-subtle);padding:1rem;border-radius:12px;align-self:start}.filters>h2{font-size:1rem}.filters fieldset{border:0;padding:0;margin:0 0 1.1rem}.filters legend{font-weight:700;margin-bottom:.35rem}.filters label{display:flex;gap:.5rem;align-items:center;margin:.25rem 0}.filters input[type=checkbox]{width:20px;height:20px}.filters input[type=number],.search input,.toolbar select,.archive-filters input,.archive-filters select{width:100%;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:.6rem}.fee-pair{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.view-tabs{display:flex;gap:.5rem;margin:0 0 1.25rem}.view-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);padding:.5rem 1rem;border-radius:8px;text-decoration:none}.view-tabs [aria-current=page]{border-color:var(--accent);font-weight:700;background:var(--surface-subtle)}.toolbar{display:grid;grid-template-columns:1fr auto auto;gap:.75rem;align-items:end;margin-bottom:1rem}.toolbar label{font-weight:700}.filter-toggle{display:none}.notice,.error{background:var(--surface-subtle);border:1px solid var(--border);padding:1rem;margin-bottom:1rem}.error{background:var(--danger)}.results,.archive-list{display:grid;gap:1rem}.card,.archive-series{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.card h2,.archive-series h2{font-size:1.25rem;margin:.35rem 0}.eyebrow,.meta{color:var(--muted);font-size:.875rem}.test-label{display:inline-block;background:var(--warning);padding:.2rem .5rem;border-radius:4px;font-weight:750}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:1rem 0}.fact{padding:.4rem .6rem;background:var(--surface-subtle);border-radius:6px}.fact strong{display:block;font-size:.8rem}.fact.warning{background:var(--warning)}.fact.danger{background:var(--danger)}.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.action,.actions button,.back,.calendar-nav button{display:inline-flex;align-items:center;justify-content:center;padding:.6rem .9rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);text-decoration:none}.action.primary{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:700}.disabled{color:var(--muted);padding:.6rem}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:2rem}.summary{grid-column:2;grid-row:1/10;background:var(--surface-subtle);padding:1rem;border-radius:12px;align-self:start}.detail-section{border-top:1px solid var(--border);padding-top:1rem}.detail-section li{margin:.35rem 0}.source{overflow-wrap:anywhere}.timeline-group{margin:0 0 2rem}.timeline-group>h2,.agenda h2{font-size:1.15rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.timeline-group>h2 span{font-weight:400;color:var(--muted)}.timeline-item{display:grid;grid-template-columns:176px minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}.timeline-item h3{margin:0;font-size:1.05rem}.timeline-deadline span{display:block;color:var(--muted)}.comparison-more .fact{margin:.5rem 0}.calendar-nav{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.calendar-nav h2{margin-right:auto}.layout-choice{display:flex;gap:1rem;border:0;padding:0;margin:1rem 0}.calendar-table-wrap{overflow-x:auto}.calendar-table{border-collapse:collapse;width:100%;table-layout:fixed}.calendar-table caption{text-align:left;font-weight:700;padding:.5rem 0}.calendar-table th,.calendar-table td{border:1px solid var(--border);vertical-align:top;padding:.45rem}.calendar-table td{height:130px}.calendar-table td>a{display:block;font-size:.8rem;margin-top:.35rem;overflow-wrap:anywhere}.day-number{font-weight:750}.show-day{min-height:44px;margin-top:.3rem}.archive-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:1rem;align-items:end;margin:1.5rem 0}.archive-filters label{font-weight:700}.check-label{display:flex;align-items:center;gap:.5rem;min-height:44px}.current-opportunity{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.edition-list{padding-left:1.5rem}.edition-list>li{padding:1rem 0;border-bottom:1px solid var(--border)}.edition-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.edition-facts div{background:var(--surface-subtle);padding:.75rem}.edition-facts dt{font-weight:700}.edition-facts dd{margin:0}.result-action{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.site-footer{border-top:1px solid var(--border);background:var(--surface);padding:1rem max(1rem,calc((100% - 1200px)/2));display:flex;gap:1rem;align-items:center}.site-footer p{margin:0;max-width:70ch}.site-footer nav{margin-left:auto}.site-footer a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
@media(max-width:1023px),(min-resolution:1.8dppx){.workspace,.detail-layout{display:block}.filter-toggle{display:inline-flex;margin-bottom:1rem}.filters{display:none;margin-bottom:1rem}.filters.open{display:block}.filters.open .filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.summary{margin:1rem 0}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:flex-start;flex-wrap:wrap}.site-footer{display:block}.site-footer nav{margin:.75rem 0 0}.container{padding-top:1.25rem}.toolbar,.filters.open .filter-grid,.facts,.edition-facts,.archive-filters{grid-template-columns:1fr}.actions{display:grid;grid-template-columns:1fr}.action.primary{width:100%}.view-tabs{display:grid;grid-template-columns:1fr}.timeline-item{display:block}.timeline-deadline{margin-bottom:.75rem}.calendar-table td{height:auto;padding:.15rem}.calendar-table td>a{display:none}.day-number{display:flex;align-items:center;justify-content:center;min-height:44px}.calendar-table .show-day{font-size:.7rem;padding:.15rem}.calendar-table-wrap{overflow-x:visible}}
@media(max-width:340px){.container{padding-inline:.65rem}.card,.archive-series{padding:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.calendar-day{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:0;border-radius:8px;background:transparent;font-weight:750}.calendar-day:hover{background:var(--surface-subtle)}
@media(max-width:767px){.calendar-day{width:100%;min-width:44px;min-height:44px}}

/* GRE-60 photographer-facing catalog system */
:root{--bg:#f4f6f8;--surface:#ffffff;--surface-subtle:#e9edf1;--text:#17212b;--muted:#4f5f6d;--border:#b9c3cc;--accent:#175c68;--accent-strong:#0d4650;--accent-soft:#dcecef;--focus:#7b45c5;--warning:#fff1c7;--danger:#f8dddd;--success:#dceee6;--shadow:0 2px 7px rgba(16,35,47,.09);--radius:12px}
:root[data-theme=dark]{--bg:#10161b;--surface:#182127;--surface-subtle:#222e35;--text:#f1f5f6;--muted:#b7c4ca;--border:#53636c;--accent:#86cbd2;--accent-strong:#b7e3e7;--accent-soft:#223e43;--focus:#d2b4ff;--warning:#493b17;--danger:#49272a;--success:#1f4037;--shadow:0 2px 7px rgba(0,0,0,.28)}
html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}body{min-width:0;background:var(--bg)}a{color:var(--accent-strong);text-underline-offset:.16em}button{cursor:pointer}.site-header{min-height:64px;padding-block:.65rem}.brand{font-size:1.05rem;letter-spacing:-.015em}.site-header nav a{text-decoration:none;color:var(--text);padding:.65rem .15rem}.site-header nav a[aria-current=page]{color:var(--accent-strong);font-weight:750}.preview-banner{font-size:.8125rem;letter-spacing:.01em}.container{max-width:1240px;padding-top:2.5rem}h1{font-size:2rem;letter-spacing:-.025em;max-width:25ch}h2,h3{letter-spacing:-.012em}.lede{font-size:1.05rem}.search{max-width:none;margin:1.5rem 0}.search input{font-size:1rem;padding:.75rem .9rem;background:var(--surface)}.workspace{grid-template-columns:248px minmax(0,1fr);gap:2rem}.filters{background:transparent;border-top:1px solid var(--border);border-radius:0;padding:1rem 0}.filters>h2{font-size:1.125rem;margin-top:0}.filters fieldset{padding:.8rem 0;border-bottom:1px solid var(--border);margin:0}.filters legend{font-size:.9rem}.filters label{min-height:36px}.view-tabs{gap:0;border-bottom:1px solid var(--border)}.view-link{border:0;border-radius:0;background:transparent;padding:.65rem 1rem;position:relative;color:var(--muted)}.view-tabs [aria-current=page]{background:transparent;color:var(--text);border:0}.view-tabs [aria-current=page]::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.toolbar{padding:.15rem 0 .9rem;border-bottom:1px solid var(--border)}.toolbar select{min-width:13rem}.toolbar button,.filter-toggle,.notice button,.error button{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.55rem .8rem}.active-filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.85rem 0}.active-filters>strong{font-size:.875rem;margin-right:.25rem}.active-filter{min-height:36px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:.3rem .45rem .3rem .7rem;display:inline-flex;align-items:center;gap:.45rem}.active-filter span{font-size:1.2rem;line-height:1}.results{gap:1.25rem}.card{display:grid;grid-template-columns:210px minmax(0,1fr);padding:0;overflow:hidden;border:0;box-shadow:var(--shadow);border-radius:var(--radius)}.opportunity-visual{min-height:100%;position:relative;display:flex;align-items:flex-end;padding:1rem;color:#fff;background:linear-gradient(145deg,#173e49 0%,#2f7276 52%,#9a7660 100%);isolation:isolate;overflow:hidden}.opportunity-visual::before{content:"";position:absolute;inset:12% -20% auto 18%;height:62%;border:1px solid rgba(255,255,255,.42);border-radius:50%;transform:rotate(-18deg);z-index:-1}.opportunity-visual::after{content:"";position:absolute;width:70%;aspect-ratio:1;right:-18%;bottom:-25%;background:rgba(255,255,255,.12);border-radius:50%;z-index:-1}.opportunity-visual span{font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.card-body{min-width:0;padding:1.35rem 1.5rem}.card-labels{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.type-label,.status-label,.test-label{display:inline-flex;align-items:center;min-height:26px;padding:.18rem .5rem;border-radius:999px;font-size:.75rem;font-weight:750}.type-label{background:var(--accent-soft);color:var(--accent-strong)}.status-label{border:1px solid var(--border);color:var(--muted)}.test-label{background:var(--warning);color:var(--text)}.card h2{font-size:1.4rem;line-height:1.22;margin:.65rem 0 .2rem;max-width:40ch;overflow-wrap:anywhere}.card h2 a{text-decoration:none;color:var(--text)}.card h2 a:hover{text-decoration:underline}.organizer{color:var(--muted);margin:.15rem 0 .85rem}.deadline{display:flex;gap:.8rem;align-items:baseline;margin:.75rem 0 1rem}.deadline>span{font-size:.8rem;font-weight:750;color:var(--muted);text-transform:uppercase;letter-spacing:.055em}.deadline strong{font-size:1rem}.fee-summary{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:.75rem;padding:.75rem 0;border-block:1px solid var(--border);margin:0}.fee-summary>strong{font-size:.85rem}.fee-summary ul{list-style:none;padding:0;margin:0}.fee-summary li{display:flex;justify-content:space-between;gap:1rem;margin:.15rem 0}.fee-summary li span{overflow-wrap:anywhere}.decision-line{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;padding:.9rem 0}.decision-line span,.decision-line strong{display:block}.decision-line strong{font-size:.8rem;margin-bottom:.2rem;color:var(--muted)}.trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.15rem}.trust-card{min-width:0;padding:.9rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle)}.trust-card.tone-positive{border-color:color-mix(in srgb,var(--success) 50%,var(--border))}.trust-card.tone-warning{border-color:color-mix(in srgb,var(--warning) 62%,var(--border))}.trust-card.tone-danger{border-color:color-mix(in srgb,var(--danger) 62%,var(--border))}.trust-heading{display:grid;gap:.18rem}.trust-heading span{color:var(--muted);font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.trust-heading strong{font-size:.95rem;line-height:1.3}.trust-card p{margin:.55rem 0 0;font-size:.84rem;line-height:1.48;overflow-wrap:anywhere}.trust-card .trust-meta{color:var(--muted)}.trust-card .trust-next{padding-top:.5rem;border-top:1px solid var(--border)}.rights{font-weight:750}.rights.highRisk{color:#9b2831}.rights.caution{color:#765b00}:root[data-theme=dark] .rights.highRisk{color:#ffadb3}:root[data-theme=dark] .rights.caution{color:#f0cf69}.actions{align-items:center}.action,.actions button,.back,.calendar-nav button{font-weight:700}.action.primary{color:#fff;background:var(--accent-strong);border-color:var(--accent-strong)}:root[data-theme=dark] .action.primary{color:#102127;background:var(--accent)}.actions .favorite{display:inline-flex;align-items:center;gap:.4rem}.favorite.is-saved{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}.actions .action:not(.primary){order:3;border-color:transparent;background:transparent;font-weight:650}.actions .favorite{order:2}.detail-hero{display:grid;grid-template-columns:minmax(260px,38%) minmax(0,1fr);gap:2rem;margin:1rem 0 2.5rem}.detail-hero>.opportunity-visual{min-height:320px;border-radius:var(--radius)}.detail-hero h1{font-size:2.25rem;margin:.8rem 0 .35rem}.detail-layout{grid-template-columns:minmax(0,1fr) 300px}.summary{background:var(--surface);border:1px solid var(--border)}.detail-section{padding-block:1rem}.timeline-item{background:var(--surface);padding:1rem;border-radius:var(--radius);margin-bottom:.65rem}.archive-series{border:0;box-shadow:var(--shadow)}.calendar-table{background:var(--surface)}.calendar-table th{background:var(--surface-subtle)}.calendar-table td{padding:.55rem}.notice,.error{border-radius:8px}.site-footer{color:var(--muted);font-size:.875rem}
@media(max-width:1023px),(min-resolution:1.8dppx){.workspace{display:block}.filters.open{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.detail-hero{grid-template-columns:minmax(220px,.7fr) 1fr}.detail-layout{display:block}}
@media(max-width:767px){.site-header nav{overflow-x:auto;flex-wrap:nowrap}.site-header nav a,.site-header nav span{white-space:nowrap}.container{padding-inline:1rem}.mobile-order{display:flex;flex-direction:column}.view-tabs{order:3;display:flex}.view-link{flex:1;padding-inline:.45rem}.toolbar{order:2;grid-template-columns:1fr}.toolbar label{width:100%}.toolbar select{min-width:0}.card{grid-template-columns:1fr}.opportunity-visual{min-height:142px}.card-body{padding:1.1rem}.card h2{font-size:1.25rem}.deadline{display:block}.deadline>span{display:block;margin-bottom:.2rem}.fee-summary{grid-template-columns:1fr}.decision-line{grid-template-columns:1fr;gap:.75rem}.actions{display:flex}.actions .action.primary{width:auto;flex:1}.actions .action:not(.primary){width:100%;order:3}.detail-hero{display:block}.detail-hero>.opportunity-visual{min-height:190px;margin-bottom:1.25rem}.detail-hero h1{font-size:1.75rem}.timeline-item{border-radius:0;background:transparent}.site-footer nav{display:flex;flex-wrap:wrap}}
@media(max-width:390px){.container{padding-inline:.75rem}.card-body{padding:1rem}.actions{display:grid;grid-template-columns:1fr}.actions .action.primary,.actions .favorite{width:100%}.view-tabs{display:grid;grid-template-columns:1fr}.view-link{justify-content:flex-start}.fee-summary li{display:block}.trust-grid{grid-template-columns:1fr}}
.active-filter,.filters label{min-height:44px}
@media(max-width:767px){.site-header nav{overflow-x:visible;flex-wrap:wrap}.site-header nav a,.site-header nav span{white-space:normal}}
/* GRE-62 accepted responsive contract overrides. */
.opportunity-visual{position:static;color:var(--muted);background:var(--surface-subtle);border:1px solid var(--border);isolation:auto;overflow:visible}.opportunity-visual::before,.opportunity-visual::after{content:none}
html{overflow-x:visible}.results{container-type:inline-size}.card{overflow:visible}.workspace>section,.card-body,.category-line{min-width:0}.category-line{grid-column:1/-1;overflow-wrap:anywhere}.organizer,.deadline strong,.trust-card,.source,.detail-section li{overflow-wrap:anywhere}.opportunity-visual{border-radius:var(--radius) 0 0 var(--radius)}
@container (max-width:699px){.card{grid-template-columns:1fr}.card>.opportunity-visual{min-height:142px;border-radius:var(--radius) var(--radius) 0 0}.card .deadline{display:block}.card .deadline>span{display:block;margin-bottom:.2rem}.card .fee-summary{grid-template-columns:1fr}.card .decision-line{grid-template-columns:1fr;gap:.75rem}}
@media(hover:hover) and (pointer:fine){.action:hover,.actions button:hover,.toolbar button:hover,.filter-toggle:hover{border-color:var(--accent);background:var(--accent-soft)}}
.action:active,.actions button:active,.toolbar button:active,.filter-toggle:active{transform:translateY(1px)}
@media(prefers-reduced-motion:reduce){.action:active,.actions button:active,.toolbar button:active,.filter-toggle:active{transform:none}}

/* Dedicated Deadline Map: a connected five-step urgency rail on wide screens. */
.deadline-map{position:relative;min-width:0;margin-top:1rem}.deadline-map>h2{font-size:1.25rem;margin:0 0 1rem}.deadline-buckets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;position:relative}.deadline-rail{position:absolute;z-index:0;left:10%;right:10%;top:87px;height:2px;background:var(--accent);pointer-events:none}.deadline-bucket{position:relative;min-width:0}.deadline-node{position:absolute;z-index:1;top:34px;left:50%;width:14px;height:14px;translate:-50% 0;border:3px solid var(--bg);border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent)}.deadline-bucket>header{height:76px;text-align:center;display:flex;flex-direction:column;align-items:center}.deadline-bucket>header h3{font-size:.875rem;line-height:1.2;margin:0;min-height:34px;display:flex;align-items:flex-start;justify-content:center}.deadline-bucket>header span{color:var(--muted);font-size:.75rem;margin-top:22px}.deadline-card-stack{display:grid;gap:.75rem}.deadline-card{min-width:0;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere}.deadline-card-logo{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-size:.68rem;font-weight:800;letter-spacing:.04em}.deadline-card h4{font-size:.9rem;line-height:1.25;margin:.55rem 0 .2rem}.deadline-card h4 a{color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.deadline-card-organizer{font-size:.75rem;line-height:1.3;color:var(--muted);margin:.2rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.deadline-card-date{font-size:.75rem;line-height:1.3;margin:.55rem 0}.deadline-card-date strong,.deadline-card-date span,.deadline-card-date time{display:block}.deadline-card-date span,.deadline-card-freshness{color:var(--muted)}.deadline-card-chips{display:flex;flex-wrap:wrap;gap:.25rem}.deadline-card-chips span{font-size:.65rem;line-height:1.2;padding:.22rem .35rem;border-radius:999px;background:var(--surface-subtle);border:1px solid var(--border)}.deadline-card-chips .risk{background:var(--danger)}.deadline-card-chips .caution{background:var(--warning)}.deadline-card-freshness{font-size:.7rem;margin:.5rem 0}.deadline-card-actions{display:grid;gap:.25rem;margin-top:.5rem}.deadline-card-actions a,.deadline-card-actions button,.deadline-more{min-height:44px;display:flex;align-items:center;padding:.35rem .45rem;border-radius:7px}.deadline-card-actions button,.deadline-more{border:1px solid var(--border);background:var(--surface)}.deadline-card-actions span{font-size:.72rem;color:var(--muted)}.deadline-more{width:100%;justify-content:center;margin-top:.75rem;font-weight:700}.deadline-bucket-empty{min-height:80px;margin:0;padding:.75rem;border:1px dashed var(--border);border-radius:12px;color:var(--muted);font-size:.8rem;text-align:center}.deadline-view-all{margin:1.25rem 0 2rem}.deadline-secondary{margin-top:2rem}.deadline-secondary>h2{font-size:1.15rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}.deadline-secondary>h2 span{font-weight:400;color:var(--muted)}.deadline-secondary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.deadline-secondary .deadline-card h4 a{-webkit-line-clamp:initial;overflow:visible}

/* Compact cards preserve the prototype's horizontal five-column rhythm. */
@media(min-width:769px){.deadline-buckets .deadline-card{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:.45rem;padding:.75rem;font-size:.6875rem;line-height:1.15}.deadline-buckets .deadline-card-logo{grid-column:1;grid-row:1/3}.deadline-buckets .deadline-card>.test-label{position:absolute;top:.35rem;right:.35rem;min-height:20px;padding:.08rem .28rem;font-size:.58rem}.deadline-buckets .deadline-card h4{grid-column:2;margin:0;padding-top:.55rem;font-size:.76rem;line-height:1.12}.deadline-buckets .deadline-card h4 a{-webkit-line-clamp:2}.deadline-buckets .deadline-card-organizer{grid-column:2;margin:.08rem 0 0;font-size:.64rem;line-height:1.05;-webkit-line-clamp:1}.deadline-buckets .deadline-card-date,.deadline-buckets .deadline-card-chips,.deadline-buckets .deadline-card-freshness,.deadline-buckets .deadline-card-actions{grid-column:1/-1}.deadline-buckets .deadline-card-date{display:grid;grid-template-columns:1fr;gap:0;margin:.16rem 0 .12rem;font-size:.6rem;line-height:1.04}.deadline-buckets .deadline-card-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.15rem}.deadline-buckets .deadline-card-chips span{display:flex;align-items:center;justify-content:center;min-width:0;padding:.12rem .08rem;font-size:.54rem;line-height:1.05;text-align:center;overflow-wrap:anywhere}.deadline-buckets .deadline-card-freshness{margin:.12rem 0;font-size:.58rem;line-height:1.05}.deadline-buckets .deadline-card-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.15rem;margin-top:.08rem}.deadline-buckets .deadline-card-actions a,.deadline-buckets .deadline-card-actions button,.deadline-buckets .deadline-card-actions span{min-width:0;min-height:44px;justify-content:center;padding:.12rem;font-size:.54rem;line-height:1.05;text-align:center;overflow-wrap:anywhere}.deadline-buckets .deadline-card-actions span{display:flex;align-items:center}.deadline-buckets .deadline-card-stack{gap:.5rem}.deadline-buckets .deadline-more{margin-top:.5rem}}

/* CSS viewport width—not device pixel density—controls timeline reflow. */
@media(max-width:768px){.deadline-map{padding-left:24px}.deadline-map>h2{margin-left:-24px}.deadline-rail{left:6px;right:auto;top:49px;bottom:0;width:2px;height:auto}.deadline-buckets{display:block}.deadline-bucket{padding:0 0 1.25rem 14px}.deadline-node{top:3px;left:-17px;translate:0 0}.deadline-bucket>header{height:auto;min-height:48px;text-align:left;align-items:flex-start}.deadline-bucket>header h3{min-height:0;font-size:1rem;justify-content:flex-start}.deadline-bucket>header span{margin-top:.15rem}.deadline-card-stack,.deadline-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.deadline-card-stack,.deadline-secondary-grid{grid-template-columns:1fr}.deadline-card{padding:1rem}}
@media(min-width:769px){.deadline-map>.deadline-rail{top:87px}}
/* Collapse the filter rail before five equal deadline tracks fall below 144px. */
@media(min-width:1024px) and (max-width:1100px){.workspace{display:block}.filter-toggle{display:inline-flex;margin-bottom:1rem}.filters{display:none;margin-bottom:1rem}.filters.open{display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.filters.open .filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}}
.deadline-secondary .deadline-card h3{font-size:.9rem;line-height:1.25;margin:.55rem 0 .2rem}.deadline-secondary .deadline-card h3 a{color:var(--text)}
.deadline-map-skeleton{min-height:240px}.deadline-skeleton-rail{height:2px;margin:86px 10% 18px;background:var(--border)}.deadline-skeleton-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.deadline-skeleton-card{min-height:168px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}
@media(max-width:768px){.deadline-map-skeleton{padding-left:24px}.deadline-skeleton-rail{position:absolute;left:6px;top:0;bottom:0;width:2px;height:auto;margin:0}.deadline-skeleton-cards{grid-template-columns:1fr}}

/* Dark-first editorial media layer. Light mode remains an explicit choice. */
:root{color-scheme:dark;--bg:#10161b;--surface:#182127;--surface-subtle:#222e35;--text:#f1f5f6;--muted:#b7c4ca;--border:#53636c;--accent:#86cbd2;--accent-strong:#b7e3e7;--accent-soft:#223e43;--focus:#d2b4ff;--warning:#493b17;--danger:#49272a;--success:#1f4037;--deadline-passed:#d8787f;--deadline-imminent:#f3a862;--deadline-urgent:#e7c75c;--deadline-soon:#86cbd2;--shadow:0 2px 7px rgba(0,0,0,.28)}
:root[data-theme=light]{color-scheme:light;--bg:#f4f6f8;--surface:#ffffff;--surface-subtle:#e9edf1;--text:#17212b;--muted:#4f5f6d;--border:#b9c3cc;--accent:#175c68;--accent-strong:#0d4650;--accent-soft:#dcecef;--focus:#7b45c5;--warning:#fff1c7;--danger:#f8dddd;--success:#dceee6;--deadline-passed:#a8303b;--deadline-imminent:#a14e08;--deadline-urgent:#755c00;--deadline-soon:#175c68;--shadow:0 2px 7px rgba(16,35,47,.09)}
.opportunity-placeholder{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(145deg,var(--surface-subtle),var(--surface))}
.opportunity-placeholder::before{content:"";position:absolute;inset:12% -28% 22% 22%;border:1px solid color-mix(in srgb,var(--accent) 58%,transparent);border-radius:50%;transform:rotate(-16deg);z-index:-1}
.opportunity-placeholder::after{content:"";position:absolute;width:72%;aspect-ratio:1;right:-26%;bottom:-34%;border-radius:50%;background:color-mix(in srgb,var(--accent) 13%,transparent);z-index:-1}
.opportunity-image{display:grid;grid-template-rows:1fr auto;align-items:end;margin:0;padding:0;position:relative;overflow:hidden;border:0;background:#0b0e11;color:#fff}
.opportunity-image img{grid-row:1/-1;grid-column:1;width:100%;height:100%;min-height:100%;object-fit:var(--banner-fit,cover);object-position:var(--banner-focus-x,50%) var(--banner-focus-y,50%)}
.opportunity-image[data-banner-fit=contain] img{background:var(--surface);padding:.35rem}
.opportunity-image>span{grid-row:1;grid-column:1;align-self:end;justify-self:start;margin:1rem;padding:.25rem .5rem;border-radius:999px;background:rgba(9,13,16,.78);color:#fff;z-index:1}
.media-credit{grid-row:2;grid-column:1;padding:.5rem .65rem;background:rgba(9,13,16,.92);color:#e7ecef;font-size:.875rem;line-height:1.35;z-index:1}
.opportunity-editorial{display:grid;grid-template-rows:1fr auto;align-items:end;margin:0;padding:0;position:relative;overflow:hidden;border:0;background:#0b0e11;color:#fff}
.generated-banner{grid-row:1;grid-column:1;width:100%;height:100%;min-height:0;display:block;overflow:hidden}
.compact-card .opportunity-visual>.generated-banner{display:block}
.catalog-split .results{gap:5px}
.generated-banner>svg,.generated-banner>span,.generated-banner>span>svg{width:100%;height:100%;display:block}
.generated-banner__landscape{display:none}
.generated-banner-portrait .editorial-title-banner-landscape,.generated-banner-landscape .editorial-title-banner-portrait{display:none}
@media(max-width:390px){.generated-banner-auto .generated-banner__portrait{display:none}.generated-banner-auto .generated-banner__landscape{display:block}}
/* A complete border keeps urgency visible without the decorative side-stripe pattern. */
.deadline-panel{--deadline-tone:var(--accent);display:grid;gap:.28rem;margin:.8rem 0 1rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--deadline-tone) 70%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--deadline-tone) 10%,var(--surface));overflow-wrap:anywhere}
.deadline-priority{display:flex;gap:.75rem;align-items:baseline;justify-content:space-between}
.deadline-priority span{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.055em}
/* The dot reinforces the written urgency label; color is never the only signal. */
.deadline-priority span::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--deadline-tone);flex:0 0 auto}
.deadline-priority strong{font-size:1.15rem;line-height:1.2;color:var(--text)}
.deadline-panel time{font-weight:700}.deadline-panel small{display:block;color:var(--muted);line-height:1.4}
.deadline-panel.urgency-passed{--deadline-tone:var(--deadline-passed)}.deadline-panel.urgency-today,.deadline-panel.urgency-imminent{--deadline-tone:var(--deadline-imminent)}.deadline-panel.urgency-urgent{--deadline-tone:var(--deadline-urgent)}.deadline-panel.urgency-soon{--deadline-tone:var(--deadline-soon)}
.deadline-panel.compact{margin:0;padding:.7rem .8rem;align-self:start}.deadline-panel.compact .deadline-priority{display:grid;gap:.15rem}.deadline-panel.compact .deadline-priority strong{font-size:1rem}
@media(max-width:767px){.deadline-priority{display:grid;gap:.2rem}.deadline-priority strong{font-size:1.05rem}.timeline-item>.deadline-panel{margin-bottom:.85rem}}

/* GRE-80: one framed catalog card with a fluid landscape banner. */
.card{grid-template-columns:1fr;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:none}
.card>.opportunity-visual{width:100%;min-height:0;aspect-ratio:2/1;border:0;border-bottom:1px solid var(--border);border-radius:0}
.card>.opportunity-visual img{object-position:var(--banner-focus-x,50%) var(--banner-focus-y,50%)}
.card :focus-visible{outline-offset:-3px}
.detail-hero{grid-template-columns:1fr}
.detail-hero>.opportunity-visual{width:100%;min-height:0;aspect-ratio:16/9;border-radius:var(--radius)}

/* Dedicated Calendar: Compact month inspection and Expanded five-week planning. */
.calendar-container{width:100%;max-width:1500px;min-width:0}
.calendar-page-heading{display:grid;gap:1rem;margin-bottom:1rem}
.calendar-page-heading h1{margin-bottom:.35rem}
.calendar-page-heading .lede{margin:0}
.calendar-page-heading .view-tabs{margin:0;min-width:0}
.calendar-discovery-bar{display:grid;gap:.75rem;align-items:end;padding-block:1rem;border-block:1px solid var(--border)}
.calendar-search{display:grid;gap:.35rem;min-width:0;font-weight:700}
.calendar-search input{width:100%;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.65rem .75rem}
.calendar-discovery-bar>strong{display:flex;align-items:center;min-height:44px}
.calendar-discovery-bar>button,.calendar-filter-shell .filter-toggle{min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:.55rem .8rem;font-weight:700}
.calendar-filter-shell{margin-top:1rem}
.calendar-filter-shell .filter-toggle{display:inline-flex;align-items:center}
.calendar-filter-shell .filters{display:none;margin-top:.75rem}
.calendar-filter-shell .filters.open{display:block;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.calendar-filter-shell .filters.open .filter-grid{display:grid;grid-template-columns:1fr;gap:.75rem}
.calendar-surface{min-width:0;margin-top:1rem}
.calendar-control-row{display:grid;gap:1rem;margin-bottom:1rem}
.calendar-control-row .calendar-nav{display:grid;grid-template-columns:repeat(3,auto);gap:.5rem;align-items:center}
.calendar-control-row .calendar-nav h2{grid-column:1/-1;grid-row:1;margin:0;font-size:1.25rem}
.calendar-control-row .calendar-nav button{min-width:44px;white-space:nowrap}
.calendar-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}
.calendar-mode-switch button{min-height:44px;border:0;border-right:1px solid var(--border);background:transparent;padding:.55rem .85rem;font-weight:750}
.calendar-mode-switch button:last-child{border-right:0}
.calendar-mode-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 -3px 0 var(--accent)}
.calendar-timezone{margin:0;color:var(--muted);font-size:.875rem}
.calendar-compact-layout,.calendar-expanded-layout{min-width:0}
.calendar-container :where(a,button,input:not([type=checkbox]):not([type=radio]),select){min-width:44px;min-height:44px}
.calendar-container a{display:inline-flex;align-items:center}
.calendar-container .filters label{min-height:44px}
.calendar-table-wrap{min-width:0;overflow:visible}
.calendar-month-table{width:100%;table-layout:fixed;border-collapse:collapse;background:var(--surface)}
.calendar-month-table th{height:40px;padding:.35rem;border:1px solid var(--border);background:var(--surface-subtle);font-size:.75rem;text-align:center}
.calendar-month-table td{height:52px;padding:0;border:1px solid var(--border);vertical-align:top}
.calendar-month-table td.outside-month{color:var(--muted);background:color-mix(in srgb,var(--surface) 72%,var(--bg))}
.calendar-month-table td.selected-day{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}
.calendar-month-table .calendar-day{width:100%;min-width:44px;min-height:44px;justify-content:center;gap:.25rem;border-radius:0;color:inherit}
.calendar-month-table .calendar-day[aria-current=date]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2rem}
.calendar-month-table .calendar-day small{font-size:.62rem;color:var(--accent-strong)}
.calendar-cell-items{display:none}
.calendar-inspector,.calendar-week-plan{min-width:0;margin-top:1rem;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.calendar-inspector>header,.calendar-week-plan>header{padding-bottom:.75rem;border-bottom:1px solid var(--border)}
.calendar-inspector>header h2,.calendar-week-plan>header h2{margin:0;font-size:1.2rem}
.calendar-inspector>header p,.calendar-week-plan>header p{margin:.25rem 0 0;color:var(--muted)}
.calendar-inspector-item{padding:1rem 0;border-bottom:1px solid var(--border)}
.calendar-inspector-item:last-child{border-bottom:0}
.calendar-inspector-item h3{margin:0;font-size:1rem;overflow-wrap:anywhere}
.calendar-item-time{margin:.35rem 0;color:var(--muted);font-size:.85rem}
.calendar-signals{display:flex;flex-wrap:wrap;gap:.35rem;margin:.55rem 0}
.calendar-signals span{padding:.18rem .4rem;border:1px solid var(--border);border-radius:4px;background:var(--surface-subtle);font-size:.7rem;line-height:1.3}
.calendar-eligibility{margin:.55rem 0;font-size:.8rem}
.calendar-item-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.75rem}
.calendar-item-actions .favorite,.calendar-item-actions a{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:.45rem;text-align:center;font-weight:700}
.calendar-item-actions a{text-decoration:none}
.calendar-inspector-empty{color:var(--muted)}
.calendar-week-board{display:grid;grid-template-columns:1fr;gap:.75rem;min-width:0}
.calendar-week{min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}
.calendar-week.selected-week{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.calendar-week[data-load=busy]{border-style:dashed}
.calendar-week-heading{width:100%;min-height:58px;display:grid;gap:.2rem;border:0;border-bottom:1px solid var(--border);background:var(--surface-subtle);padding:.65rem;text-align:left}
.calendar-week-heading span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}
.calendar-week-heading strong{font-size:.9rem}
.calendar-week-stack{display:grid;gap:.5rem;padding:.5rem}
.calendar-week-stack>p{min-height:70px;margin:0;padding:.75rem;border:1px dashed var(--border);color:var(--muted);font-size:.8rem}
.calendar-week-item{min-width:0;padding:.65rem;border:1px solid var(--border);border-radius:6px;background:var(--surface)}
.calendar-week-item>p{display:grid;gap:.15rem;margin:0;color:var(--muted);font-size:.7rem}
.calendar-week-item h3{margin:0;font-size:.88rem;line-height:1.25;overflow-wrap:anywhere}
.calendar-week-item h3 a{width:100%;padding-block:.35rem}
.calendar-week-plan{align-self:start}
.calendar-estimate-state{display:grid;gap:.2rem;padding:.85rem 0;border-bottom:1px solid var(--border)}
.calendar-estimate-state span{color:var(--muted)}
.calendar-week-plan h3{font-size:1rem;margin-top:1rem}
.calendar-week-plan ol{display:grid;gap:.65rem;padding-left:1.4rem}
.calendar-week-plan li{padding-left:.2rem}
.calendar-week-plan li span,.calendar-week-plan li small{display:block;color:var(--muted);font-size:.75rem}
.calendar-week-plan li a{display:flex;overflow-wrap:anywhere}
.calendar-week-plan>.action{width:100%;margin-top:1rem}
.calendar-review{margin-top:2rem}

/* Content-driven enhancements keep the narrow layout usable without page overflow. */
@media(min-width:640px){
  .calendar-discovery-bar{grid-template-columns:minmax(18rem,1fr) auto auto}
  .calendar-control-row{grid-template-columns:minmax(0,1fr) auto;align-items:end}
  .calendar-control-row .calendar-nav{grid-template-columns:auto repeat(3,auto)}
  .calendar-control-row .calendar-nav h2{grid-column:1;grid-row:1;margin-right:auto}
  .calendar-timezone{grid-column:1/-1}
  .calendar-filter-shell .filters.open .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calendar-week-board{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:900px){
  .calendar-compact-layout{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(280px,.9fr);gap:1rem;align-items:start}
  .calendar-inspector{position:sticky;top:1rem;margin-top:0;max-height:calc(100dvh - 2rem);overflow:auto}
  .calendar-month-table td{height:124px;padding:.35rem}
  .calendar-month-table .calendar-day{width:auto;min-height:44px;justify-content:flex-start;padding:.25rem .35rem}
  .calendar-cell-items{display:grid;gap:.25rem}
  .calendar-cell-item{min-width:0;display:grid;gap:.05rem;padding:.25rem .35rem;border:1px solid var(--border);border-radius:4px;background:var(--surface-subtle);text-decoration:none}
  .calendar-cell-item strong{font-size:.72rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .calendar-cell-item span{font-size:.62rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .calendar-cell-items>button{min-height:44px;border:0;background:transparent;color:var(--accent-strong);font-size:.7rem;text-align:left}
}
@media(min-width:1180px){
  .calendar-page-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end}
  .calendar-page-heading .view-tabs{min-width:360px}
  .calendar-expanded-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,24%);gap:.75rem;align-items:start}
  .calendar-week-board{grid-template-columns:repeat(5,minmax(0,1fr))}
  .calendar-week-plan{position:sticky;top:1rem;margin-top:0;max-height:calc(100dvh - 2rem);overflow:auto}
}
@media(max-width:390px){
  .calendar-container{padding-inline:.25rem}
  .calendar-page-heading,.calendar-discovery-bar,.calendar-control-row,.calendar-inspector,.calendar-week-plan{margin-inline:.5rem}
  .calendar-page-heading .view-tabs{display:flex;overflow-x:auto}
  .calendar-page-heading .view-link{flex:0 0 auto;justify-content:center}
  .calendar-month-table th{padding:.2rem;font-size:.68rem}
  .calendar-month-table td{height:46px}
  .calendar-month-table .calendar-day{padding:0;font-size:.82rem}
}
@media(hover:hover) and (pointer:fine){
  .calendar-mode-switch button:hover,.calendar-week-heading:hover,.calendar-item-actions a:hover,.calendar-item-actions .favorite:hover{background:var(--accent-soft)}
}

/* GRE-162 Option 4 portal workspace. These final overrides deliberately keep
   the existing semantic renderers and trust tokens while changing composition. */
:root{--bg:#0b0d0d;--surface:#111514;--surface-subtle:#181d1b;--text:#f2efe7;--muted:#aaaFA9;--border:#303633;--accent:#80efc3;--accent-strong:#9df7d3;--accent-soft:#17372c;--focus:#80efc3;--warning:#443a1d;--danger:#48262a;--success:#173b2e;--radius:8px;--shadow:none}
:root[data-theme=light]{--bg:#f2f1eb;--surface:#fbfaf5;--surface-subtle:#e7e8e1;--text:#171a18;--muted:#59615d;--border:#c6cbc5;--accent:#087a59;--accent-strong:#075e46;--accent-soft:#d7eee5;--focus:#087a59;--warning:#fff0bd;--danger:#f6d9dc;--success:#d7eee5}
.theme-icon{display:grid;width:20px;height:20px;place-items:center;font:400 1rem/1 ui-sans-serif,system-ui,sans-serif}
body{background:var(--bg)}.site-header{position:relative;z-index:4;display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto auto;gap:.75rem;min-height:64px;padding:.5rem 1.25rem;background:#090b0b}.brand{display:flex;align-items:center;min-width:188px;height:44px}.brand-crop{position:relative;display:block;width:210px;height:42px;overflow:hidden}.brand-crop img{position:absolute;width:265px;height:auto;max-width:none;left:-28px;top:-54px}.global-search{min-width:0}.global-search input{width:100%;height:44px;padding:.65rem .85rem;border:1px solid #343a37;border-radius:6px;background:#151918;color:#f2efe7}.site-header nav{gap:.25rem;margin:0}.site-header nav a{display:flex;align-items:center;min-height:44px;padding:.5rem .65rem;color:#e9e6dd;white-space:nowrap}.saved-shell{display:flex;align-items:center;min-height:44px;color:#e9e6dd;white-space:nowrap}.site-header #theme{color:#f2efe7;background:#151918;border-color:#343a37}.preview-banner{min-height:33px;padding:.4rem 1rem;background:#1d3029;color:#d7f8ea}.container{width:100%;max-width:1487px;padding:1.25rem 1.25rem 3rem}.container>h1{margin-top:0}.workspace{grid-template-columns:248px minmax(0,1fr);gap:16px}.filters{position:sticky;top:112px;max-height:calc(100vh - 128px);overflow:auto;padding-right:.75rem}.catalog-split{display:grid;grid-template-columns:minmax(430px,560px) minmax(360px,1fr);gap:16px;align-items:start}.results{gap:8px}.compact-card{display:grid;grid-template-columns:118px minmax(0,1fr);min-height:132px;border:1px solid var(--border);border-radius:8px;background:var(--surface);overflow:hidden}.compact-card.is-selected{border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}.compact-card>.opportunity-visual{position:relative;width:118px;height:100%;min-height:130px;aspect-ratio:auto;border:0;border-radius:0;overflow:hidden}.compact-card .media-credit,.compact-card .opportunity-visual>span{display:none}.compact-card-body{min-width:0;padding:.65rem .75rem}.compact-card h2{margin:.25rem 0 0;font-size:1rem;line-height:1.18;overflow-wrap:anywhere}.compact-card .organizer{margin:.1rem 0 .35rem;font-size:.78rem}.compact-deadline{margin:.25rem 0;font-size:.75rem;line-height:1.25}.compact-facts{display:flex;gap:.3rem;flex-wrap:wrap}.compact-facts span{padding:.12rem .35rem;border:1px solid var(--border);border-radius:999px;font-size:.67rem;color:var(--muted)}.compact-actions{display:flex;gap:.2rem;align-items:center;flex-wrap:wrap;margin-top:.35rem}.compact-actions a,.compact-actions button{display:inline-flex;align-items:center;min-height:44px;padding:.25rem .4rem;border:0;background:transparent;color:var(--accent-strong);font-size:.7rem;font-weight:700}.compact-actions button[aria-pressed=true]{color:var(--text)}.compact-actions .favorite{margin-left:auto}.selected-inspector{position:sticky;top:112px;max-height:calc(100vh - 128px);overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.inspector-media>.opportunity-visual{width:100%;height:210px;aspect-ratio:auto;border:0;border-radius:0;overflow:hidden}.inspector-content{padding:1.15rem}.inspector-content h2{margin:.55rem 0 .2rem;font-size:1.55rem}.inspector-content .trust-grid{grid-template-columns:1fr}.inspector-content .actions{position:sticky;bottom:0;padding:.65rem 0;background:var(--surface)}.detail-hero,.archive-series,.timeline-item,.summary,.card{border-radius:8px;box-shadow:none}.legal{max-width:70ch}.site-footer{background:#090b0b;color:#b9beb9}.site-footer a{color:#d7f8ea}
@media(max-width:1180px){.site-header{grid-template-columns:auto minmax(160px,1fr) auto auto}.site-header nav{grid-column:1/-1;justify-content:center}.catalog-split{grid-template-columns:minmax(360px,1fr) minmax(330px,.9fr)}}
@media(max-width:1023px){.workspace{display:block}.filters{position:static;max-height:none}.catalog-split{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr)}}
@media(max-width:767px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;padding-inline:.75rem}.brand{min-width:0}.brand-crop{width:170px;height:34px}.brand-crop img{width:215px;left:-23px;top:-44px}.global-search{grid-column:1/-1;grid-row:2}.site-header nav{grid-column:1/-1;grid-row:3;justify-content:flex-start;overflow-x:auto}.saved-shell{grid-column:2;grid-row:1}.site-header #theme{grid-column:3;grid-row:1}.container{padding-inline:.75rem}.catalog-split{display:flex;flex-direction:column}.compact-card{grid-template-columns:96px minmax(0,1fr);width:100%}.compact-card>.opportunity-visual{width:96px}.selected-inspector{position:static;max-height:none;width:100%}.inspector-media>.opportunity-visual{height:auto;aspect-ratio:16/9}.site-footer{background:var(--surface)}}
@media(max-width:390px){.brand-crop{width:150px;height:30px}.brand-crop img{width:190px;left:-20px;top:-39px}.compact-card{grid-template-columns:1fr}.compact-card>.opportunity-visual{width:100%;height:auto;min-height:0;aspect-ratio:2/1}.compact-actions{display:grid;grid-template-columns:1fr 1fr}.compact-actions a,.compact-actions button,.compact-actions .favorite{width:100%;margin:0;justify-content:center}.selected-inspector .actions{display:grid}.selected-inspector .actions>*{width:100%}}

/* Locale control: keep the active language discoverable in the shared shell. */
.site-header{grid-template-columns:auto minmax(180px,1fr) auto auto auto auto}
.language-control{display:flex;align-items:center;gap:.35rem;min-height:44px;color:#e9e6dd;font-size:.75rem;font-weight:700;white-space:nowrap}
.language-control select{min-height:44px;padding:.45rem 1.8rem .45rem .55rem;border:1px solid #343a37;border-radius:6px;background:#151918;color:#f2efe7}
@media(max-width:1180px){.site-header{grid-template-columns:auto minmax(160px,1fr) auto auto auto}.site-header nav{grid-column:1/-1;justify-content:center}}
@media(max-width:767px){
  /* Keep the first row small enough for 320 px screens. The language selector
     gets its own row, so the brand, saved counter and theme control never
     compete for four inflexible columns. */
  .site-header{grid-template-columns:minmax(0,1fr) minmax(44px,auto) 44px}
  .brand{grid-column:1;grid-row:1}
  .saved-shell{grid-column:2;grid-row:1;min-width:0;white-space:normal;overflow-wrap:anywhere}
  .site-header #theme{grid-column:3;grid-row:1}
  .global-search{grid-column:1/-1;grid-row:2}
  .language-control{grid-column:1/-1;grid-row:3;min-width:0}
  .language-control select{min-width:0;max-width:100%}
  .site-header nav{grid-column:1/-1;grid-row:4}
  .language-control span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}

/* Deadline OS Refined: the owner-selected Explore direction keeps the product
   workflow intact while restoring a compact photographic context. */
.catalog-hero{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(340px,.86fr);width:100%;min-height:416px;margin-bottom:24px;overflow:hidden;border:1px solid var(--border);border-left:0;background:var(--surface)}
.catalog-hero-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,3.5vw,48px) clamp(28px,5vw,72px)}
.catalog-hero-eyebrow{margin:0 0 13px!important;color:var(--accent-strong)!important;font:760 .72rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.1em;text-transform:uppercase}
.catalog-hero-copy h1{max-width:16ch;margin:0 0 13px;font-size:clamp(2.7rem,4.25vw,4.8rem);line-height:.94;font-weight:780;letter-spacing:-.04em}
.catalog-hero-copy>p:not(.catalog-hero-eyebrow){max-width:52ch;margin:0;color:var(--muted);font-size:16px;line-height:24px}
.catalog-hero-search{width:min(100%,650px);margin-top:24px;display:grid;gap:6px;min-width:0}
.catalog-hero-search label{font-size:14px;line-height:20px;font-weight:700}
.catalog-hero-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;padding:6px;border:1px solid var(--border);background:var(--bg)}
.catalog-hero-controls input,.catalog-hero-controls button{height:44px;min-width:0;border:0;border-radius:0}
.catalog-hero-controls input{width:100%;padding:0 12px;background:transparent}
.catalog-hero-controls button{min-width:164px;padding:0 16px;background:var(--accent);color:#071512;font-weight:800}
:root[data-theme=light] .catalog-hero-controls button{color:#effff9}
.catalog-hero-media{position:relative;min-width:0;min-height:416px;margin:0;overflow:hidden;border-left:1px solid var(--border);background:#202426}
.catalog-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,13,14,.7) 0,rgba(8,13,14,.14) 24%,transparent 58%);pointer-events:none}
.catalog-hero-media picture{position:absolute;inset:0}
.catalog-hero-media img{width:100%;height:100%;object-fit:cover;object-position:74% 58%;filter:contrast(1.04) brightness(.88)}
@media(prefers-reduced-motion:no-preference){
  .catalog-hero-copy>*{animation:catalog-hero-rise .52s cubic-bezier(.2,.75,.2,1) both}
  .catalog-hero-copy>:nth-child(2){animation-delay:.07s}.catalog-hero-copy>:nth-child(3){animation-delay:.13s}.catalog-hero-copy>:nth-child(4){animation-delay:.19s}
  .catalog-hero-media img{animation:catalog-hero-image .76s cubic-bezier(.2,.75,.2,1) both}
}
@keyframes catalog-hero-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes catalog-hero-image{from{opacity:.72;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@media(max-width:840px){
  .catalog-hero{grid-template-columns:1fr;min-height:0}
  .catalog-hero-copy{padding:38px 24px 32px}
  .catalog-hero-media{min-height:0;aspect-ratio:3/1.55;border-left:0;border-top:1px solid var(--border)}
  .catalog-hero-media::after{background:linear-gradient(180deg,rgba(8,13,14,.5) 0,rgba(8,13,14,.08) 28%,transparent 55%)}
}
@media(max-width:767px){
  .catalog-hero{margin-bottom:20px}
  .catalog-hero-copy{padding:34px 14px 28px}
  .catalog-hero-copy h1{font-size:clamp(2.65rem,13vw,4.35rem)}
  .catalog-hero-copy>p:not(.catalog-hero-eyebrow){max-width:100%;line-height:23px}
  .catalog-hero-search{margin-top:22px}
  .catalog-hero-controls{grid-template-columns:1fr}
  .catalog-hero-controls input,.catalog-hero-controls button{width:100%;min-width:0;min-height:44px}
  .catalog-hero-media{aspect-ratio:3/1.65}
}
.explore-deadline-strip{margin:0 0 20px}
.explore-deadline-strip h2{margin:0;font:800 .78rem/1.25 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase}
.explore-deadline-strip>p{margin:4px 0 0}
.explore-deadline-strip>p a{min-height:44px;display:inline-flex;align-items:center;font-size:.78rem;font-weight:750}
.explore-deadline-buckets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--border);background:var(--surface)}
.explore-deadline-buckets>button{position:relative;min-width:0;min-height:88px;display:flex;flex-direction:column;justify-content:space-between;padding:15px;border:0;border-right:1px solid var(--border);border-radius:0;background:transparent;color:var(--muted);text-align:left;cursor:pointer}
.explore-deadline-buckets>button:last-child{border-right:0}
.explore-deadline-buckets>button:hover{background:color-mix(in srgb,var(--surface-subtle) 58%,transparent);color:var(--text)}
.explore-deadline-buckets>button[aria-selected=true]{background:var(--surface-subtle);color:var(--text);box-shadow:inset 0 3px var(--accent)}
.explore-deadline-buckets strong{font:800 .78rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.explore-deadline-buckets span{font-size:.7rem}
.explore-deadline-status{min-height:22px;color:var(--muted);font:650 .72rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}
.explore-deadline-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:8px}
.explore-deadline-head h2{margin:0}
.explore-deadline-head a{min-height:44px;display:inline-flex;align-items:center;padding-inline:4px;color:var(--muted);font:720 .79rem/1.2 Inter,ui-sans-serif,system-ui,sans-serif;text-decoration:none;white-space:nowrap}
.explore-deadline-head a:hover{color:var(--text);text-decoration:underline;text-underline-offset:.24em}
@media(max-width:767px){
  .explore-deadline-head{display:block;margin-bottom:10px}
  .explore-deadline-head a{width:max-content;max-width:100%;margin-top:2px;white-space:normal}
  .explore-deadline-buckets{grid-template-columns:1fr}
  .explore-deadline-buckets>button{min-height:56px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-right:0;border-bottom:1px solid var(--border)}
  .explore-deadline-buckets>button:last-child{border-bottom:0}
}

/* Refined is scoped to Explore so Calendar, Deadline Map, Archive and legal
   surfaces retain their separately approved visual contracts. */
body[data-page=explore]{background:var(--bg);color:var(--text)}
body[data-page=explore] .site-header{background:var(--bg);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}
body[data-page=explore] .site-header nav a,body[data-page=explore] .saved-shell,body[data-page=explore] .language-control{color:var(--text)}
body[data-page=explore] .global-search input,body[data-page=explore] .language-control select,body[data-page=explore] .site-header #theme{border-color:var(--border);background:var(--surface);color:var(--text)}
body[data-page=explore] .preview-banner{background:var(--accent-soft);color:var(--text);border-bottom:1px solid var(--border)}
body[data-page=explore] .compact-card,body[data-page=explore] .selected-inspector{border-radius:0}
body[data-page=explore] .compact-facts span{border-radius:0}
body[data-page=explore] .compact-card.is-selected{border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}
body[data-page=explore] .catalog-split{gap:0;border:1px solid var(--border);background:var(--surface)}
body[data-page=explore] .results{gap:0;border-right:1px solid var(--border)}
body[data-page=explore] .compact-card{border-width:0 0 1px}
body[data-page=explore] .compact-card:last-child{border-bottom:0}
body[data-page=explore] .selected-inspector{border:0}
@media(max-width:767px){
  body[data-page=explore] .global-search{grid-column:1/2;grid-row:2}
  body[data-page=explore] .language-control{grid-column:2/4;grid-row:2;justify-content:end}
  body[data-page=explore] .language-control select{width:100%;max-width:148px}
  body[data-page=explore] .site-header nav{grid-row:3}
  body[data-page=explore] .catalog-split{border:0}
  body[data-page=explore] .results{border:0}
  body[data-page=explore] .selected-inspector{border:0}
}

/* Final Option 4 integration: keep the accepted portal density on Explore
   while preserving the dedicated Calendar and Deadline Map page contracts. */
.workspace{grid-template-columns:232px minmax(0,1fr)}
.catalog-split{display:grid;grid-template-columns:minmax(420px,520px) minmax(420px,1fr)}
.compact-card{min-width:0;max-width:100%;overflow:visible}

@media(min-width:1024px){
  .catalog-container{padding-top:.75rem}
  .catalog-container>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .catalog-container>.lede{display:none}
  .catalog-container>.search{display:none}
  .catalog-container>.search span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .catalog-container>.search input{height:44px;padding:.45rem .75rem}
  .catalog-container .view-tabs{margin-bottom:.4rem}
  .catalog-container .view-link{min-height:44px;padding-block:.35rem}
  .catalog-container .toolbar{min-height:48px;margin-bottom:.35rem;padding:0 0 .35rem}
  .catalog-container .toolbar select{min-height:44px;padding-block:.35rem}
  .catalog-container .active-filters{margin:.35rem 0}
  .compact-card{grid-template-columns:96px minmax(0,1fr);min-height:128px;min-width:0;max-width:100%}
  .compact-card>.opportunity-visual{width:96px;min-height:126px}
  .compact-card-body{padding:.2rem .48rem}
  .compact-card .card-labels{gap:.25rem;max-height:22px;overflow:hidden}
  .compact-card .type-label,.compact-card .status-label,.compact-card .test-label{min-height:20px;padding:.05rem .35rem;font-size:.65rem}
  /* Contest names are decision-critical content. Let localized titles grow the
     card instead of hiding the identifying words behind an ellipsis. */
  .compact-card h2{margin:.1rem 0 0;font-size:.9rem;line-height:1.1;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  .compact-card .organizer{margin:0;font-size:.7rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .compact-deadline{margin:.08rem 0;font-size:.66rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .compact-facts{gap:.18rem;white-space:nowrap}
  .compact-facts span{padding:.04rem .25rem;font-size:.6rem}
  .compact-actions{margin-top:.05rem;min-height:44px;flex-wrap:wrap}
  .compact-actions a,.compact-actions button{padding:.15rem .28rem;font-size:.62rem;white-space:nowrap}
  .compact-actions .favorite{margin-left:0}
  .selected-inspector{top:112px}
  .inspector-media>.opportunity-visual{height:140px}
  .inspector-content{padding:.7rem}
  .inspector-content h2{margin:.25rem 0 .1rem;font-size:1.25rem;line-height:1.15}
  .inspector-content p{margin:.25rem 0;font-size:.82rem;line-height:1.3}
  .inspector-content .deadline-panel{margin:.4rem 0;padding:.45rem}
  .inspector-content .fee-summary{padding:.4rem 0}
  .inspector-content .decision-line{gap:.5rem;padding:.4rem 0;font-size:.78rem}
  .inspector-content .trust-grid{gap:.35rem}
  .inspector-content .trust-card{padding:.45rem .55rem}
  .inspector-content .trust-card p{margin:.2rem 0 0;font-size:.72rem;line-height:1.25}
  .inspector-content .actions{margin-top:.35rem;padding:.35rem 0}
}

/* Reserved advertising markers occupy the approved future seams without
   loading a creative, link, script or tracking surface. */
.advertising-placeholder{min-width:0;min-height:92px;display:grid;align-content:center;gap:.35rem;margin:.25rem 0;padding:1rem;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-subtle);color:var(--muted);text-align:center}
.advertising-placeholder strong{color:var(--text);font-size:.78rem}
.advertising-placeholder span{max-width:52ch;margin-inline:auto;font-size:.75rem;line-height:1.45;text-wrap:pretty}
.advertising-placeholder[data-ad-slot="detail-after-facts"]{margin:1rem 0}
@media(min-width:768px) and (max-width:1023px){
  .catalog-split{grid-template-columns:minmax(0,1fr)}
  .selected-inspector{position:static;max-height:none}
}
@media(max-width:767px){
  .catalog-container{padding-inline:16px}
  .workspace,.workspace>section,.catalog-split,.results{width:100%;min-width:0;max-width:100%}
  .catalog-split{display:grid;grid-template-columns:minmax(0,1fr)}
  .compact-card{grid-column:auto;width:100%;min-width:0;max-width:100%;overflow:hidden}
  .compact-card-body,.compact-card h2,.compact-card .organizer,.compact-deadline{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .compact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}
  .compact-actions a,.compact-actions button{min-width:0;white-space:normal;text-align:center}
}
@media(max-width:359px){.catalog-container{padding-inline:12px}}

/* Stable shared banner frames. The image crop must not change when a localized
   title or action row makes the surrounding compact card taller. Review Inbox
   uses these same four frame contracts for the owner's banner decision. */
@media(min-width:1024px){.compact-card>.opportunity-visual{width:96px;height:166px;min-height:0;align-self:start}}
@media(min-width:768px) and (max-width:1023px){.compact-card>.opportunity-visual{width:118px;height:220px;min-height:0;align-self:start}}
@media(min-width:391px) and (max-width:767px){.compact-card>.opportunity-visual{width:96px;height:166px;min-height:0;align-self:start}}
@media(max-width:390px){.compact-card>.opportunity-visual{width:100%;height:auto;min-height:0;aspect-ratio:2/1;align-self:start}}

/* Keep the final computed target width compliant after every responsive
   override; the visible favorite control measured below 44px at desktop. */
.compact-actions a,.compact-actions button{min-width:44px}
/* Make the full catalog row discoverable as the inspector-selection target. */
.compact-card[data-select-card]{cursor:pointer}
.compact-card[data-select-card]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* Deadline OS Refined shell and opportunity workspace. The selectors live at
   the end of the release stylesheet so the chosen prototype is the final
   visual authority without changing the other route-specific contracts. */
.site-header{position:sticky;z-index:30;top:0;display:block;min-height:68px;padding:0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px)}
.topbar-inner{width:min(calc(100% - 28px),1500px);min-height:68px;margin-inline:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px}
.site-header .brand{min-width:0;min-height:44px;height:auto;display:inline-flex;align-items:center;gap:10px;color:var(--text);font:800 .82rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;white-space:nowrap}
.site-header .brand img{width:32px;height:32px;object-fit:contain}
.site-header .primary-nav{grid-column:auto;grid-row:auto;display:flex;justify-content:center;gap:4px;margin:0}
.site-header .primary-nav a{min-height:44px;display:inline-flex;align-items:center;padding:0 14px;color:var(--muted);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.79rem;font-weight:720;text-decoration:none}
.site-header .primary-nav a:hover,.site-header .primary-nav a[aria-current=page]{background:var(--surface-subtle);color:var(--text);font-weight:720}

/* The earlier Explore theme rule used the main text color for every link.
   Keep inactive navigation muted, exactly as in the approved prototype. */
body[data-page=explore] .site-header .primary-nav a{color:var(--muted)}
body[data-page=explore] .site-header .primary-nav a:hover,body[data-page=explore] .site-header .primary-nav a[aria-current=page]{color:var(--text)}
.site-header #theme,.site-header .menu-toggle{min-width:44px;min-height:44px;border:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--text)}
.site-header .menu-toggle{display:none;font:800 .7rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase}
.header-tools{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.header-tools .saved-shell{min-height:44px;display:flex;align-items:center;color:var(--muted);font:700 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap}
.header-tools .language-control{min-width:0;display:flex;align-items:center;gap:7px;min-height:44px;color:var(--muted);font-size:.7rem;font-weight:700}
.header-tools .language-control select{min-width:112px;min-height:44px;padding:0 30px 0 10px;border:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--text)}
.site-footer{gap:1.25rem;flex-wrap:wrap}
.site-footer .legal-nav{margin:0}

body[data-page=explore] .catalog-split{min-height:690px;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:0;border:1px solid var(--border);background:var(--surface)}
.opportunity-feed{min-width:0;border-right:1px solid var(--border)}
.feed-head{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 20px;border-bottom:1px solid var(--border)}
.feed-head h2{margin:0;font-size:1rem}
.feed-head span{color:var(--muted);font:650 .69rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase}
.opportunity-feed .results{display:block;border:0}
.result-row{width:100%;min-width:0;display:grid;grid-template-columns:88px minmax(0,1fr) 160px;gap:18px;align-items:center;padding:16px 19px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);text-align:left;transition:transform 160ms ease,background-color 160ms ease;cursor:pointer}
.result-row:hover,.result-row[aria-current=true]{background:var(--surface-subtle)}
.result-row:hover{transform:translateX(2px)}
.result-row[aria-current=true]{box-shadow:inset 3px 0 var(--accent)}
.result-row:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}
.result-row .thumb{width:88px;aspect-ratio:1;display:block;overflow:hidden;background:var(--surface-subtle);outline:1px solid color-mix(in srgb,var(--text) 12%,transparent);outline-offset:-1px}
.result-row .thumb>.opportunity-visual{width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0}
.result-row .thumb .media-credit,.result-row .thumb .opportunity-visual>span:not(.generated-banner):not(.contest-identity-chip){display:none}
.result-row .thumb img,.result-row .thumb .generated-banner,.result-row .thumb .generated-banner>svg{width:100%;height:100%;object-fit:cover}
.contest-identity-chip{box-sizing:border-box;position:absolute;z-index:3;top:10px;left:10px;width:40px;height:40px;display:grid!important;place-items:center;padding:5px;overflow:hidden;border:1px solid rgba(16,23,25,.16);border-radius:5px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22)}
.opportunity-image>.contest-identity-chip{z-index:3;margin:0;border-radius:5px;background:#fff;color:inherit}
.contest-identity-chip.shape-wide{width:74px;height:40px}
.contest-identity-chip.surface-dark,.opportunity-image>.contest-identity-chip.surface-dark{border-color:rgba(255,255,255,.22);background:#15191a}
.contest-identity-chip img{display:block;width:100%!important;height:100%!important;object-fit:contain!important}
.result-row .thumb .contest-identity-chip{top:6px;left:6px;width:30px;height:30px;padding:4px;border-radius:4px}
.result-row .thumb .contest-identity-chip.shape-wide{width:calc(100% - 12px);height:30px}
.result-row .row-main{min-width:0}
.result-row .row-main .test-label,.result-row .row-main .type-label{width:max-content;min-height:25px;padding:3px 8px;border:1px solid currentColor;border-radius:0;background:transparent;color:var(--text);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.result-row .row-main strong{display:block;margin-top:8px;font-size:clamp(1rem,1.6vw,1.3rem);line-height:1.16;overflow-wrap:anywhere}
.result-row .row-main small{display:block;margin-top:5px;color:var(--muted);font-size:.86rem;line-height:1.35;overflow-wrap:anywhere}
.result-row .row-deadline{text-align:right;color:var(--text);font:700 .71rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}

.selected-inspector{position:relative;top:auto;max-height:none;overflow:visible;border:0;border-radius:0;background:var(--surface)}
.selected-inspector .inspector-inner{position:sticky;top:84px;padding:clamp(24px,3.5vw,46px)}
.selected-inspector .inspector-media{width:100%;aspect-ratio:16/7;margin:0 0 24px;overflow:hidden;outline:1px solid color-mix(in srgb,var(--text) 12%,transparent);outline-offset:-1px}
.selected-inspector .inspector-media>.opportunity-visual{width:100%;height:100%;min-height:0;margin:0;border:0;border-radius:0}
.selected-inspector .inspector-media .media-credit{display:none}
.selected-inspector .inspector-top{display:flex;justify-content:space-between;gap:16px;align-items:start}
.selected-inspector .inspector-top>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.selected-inspector .favorite-compact{min-width:44px;min-height:44px;padding:6px 10px;border:0;border-radius:0;background:transparent;color:var(--text);font-size:.72rem;font-weight:800}
.selected-inspector h2{margin:20px 0 6px;font-size:clamp(2rem,3.6vw,4rem);line-height:.95;letter-spacing:-.04em;text-wrap:balance}
.selected-inspector .organizer{margin:0 0 26px;color:var(--muted)}
.selected-inspector .readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--border)}
.selected-inspector .readout div{min-width:0;padding:14px 8px 14px 0;border-bottom:1px solid var(--border)}
.selected-inspector .readout dt{color:var(--muted);font:700 .63rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.07em;text-transform:uppercase}
.selected-inspector .readout dd{margin:5px 0 0;font-size:.82rem;line-height:1.4;overflow-wrap:anywhere}
.selected-inspector .inspector-actions{margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.selected-inspector .inspector-actions .action,.selected-inspector .inspector-actions .disabled{min-height:46px;display:flex;align-items:center;justify-content:center;margin:0;padding:8px 12px;border:1px solid var(--border);border-radius:0;text-align:center;text-decoration:none;font-size:.78rem;font-weight:800}
.selected-inspector .inspector-actions .action.primary{border-color:var(--accent);background:var(--accent);color:var(--bg)}
.selected-inspector .inspector-note{margin:22px 0 0;color:var(--muted);font-size:.71rem;line-height:1.5}

@media(max-width:1023px){
  body[data-page=explore] .catalog-split{grid-template-columns:minmax(0,1fr)}
  .opportunity-feed{border-right:0}
  .selected-inspector{border-top:1px solid var(--border)}
  .selected-inspector .inspector-inner{position:static}
}
@media(max-width:767px){
  .site-header{min-height:62px}
  .topbar-inner{width:min(calc(100% - 20px),560px);min-height:62px;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding-block:8px}
  .site-header .menu-toggle{display:inline-grid;place-items:center;padding:0}
  .site-header .brand{grid-column:2;grid-row:1;justify-self:center;font-size:.7rem}
  .site-header .brand img{width:26px;height:26px}
  .site-header .primary-nav{display:none;position:absolute;z-index:40;top:62px;left:10px;right:10px;padding:10px;flex-direction:column;border:1px solid var(--border);background:var(--surface)}
  .site-header .primary-nav[data-open=true]{display:flex}
  .site-header .primary-nav a{justify-content:flex-start}
  .site-header #theme{grid-column:3;grid-row:1}
  .header-tools{grid-column:1/-1;grid-row:2;justify-content:space-between;border-top:1px solid var(--border);padding-top:6px}
  .header-tools .language-control>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .header-tools .language-control select{min-width:126px}
  .site-footer{display:grid;gap:.75rem}
  .site-footer .legal-nav{display:flex;flex-wrap:wrap}
  body[data-page=explore] .catalog-split{min-height:0;border:0}
  .feed-head{padding-inline:12px}
  .result-row{grid-template-columns:68px minmax(0,1fr);gap:13px;padding:14px 12px}
  .result-row .thumb{width:68px}
  .result-row .row-deadline{grid-column:2;text-align:left;color:var(--muted)}
  .selected-inspector .inspector-inner{padding:25px 16px}
  .selected-inspector .readout{grid-template-columns:1fr}
  .selected-inspector .inspector-actions{grid-template-columns:1fr}
}
@media(max-width:390px){
  .site-header .brand span{font-size:.62rem}
  .feed-head{align-items:flex-start;flex-direction:column;padding-block:14px}
}
@media(max-width:350px){
  .site-header .brand{gap:6px}
  .site-header .brand span{font-size:.52rem}
}

/* Catalog filter controls now form one predictable toolbar. The filter form is
   collapsed on every viewport and opens as a full-width, two-column panel so
   result cards keep their useful width until the user explicitly asks to edit
   facets. Calendar reuses the same button but keeps its dedicated page shell. */
.catalog-container .workspace,.deadline-map-container .workspace{display:block}
.catalog-container .filter-panel,.deadline-map-container .filter-panel{margin:0 0 .75rem}
.catalog-container .filters,.deadline-map-container .filters{position:static;display:none;max-height:none;margin:0;overflow:visible;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.catalog-container .filters.open,.deadline-map-container .filters.open{display:block}
.catalog-container .filters.open .filter-grid,.deadline-map-container .filters.open .filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
.catalog-container .toolbar,.deadline-map-container .toolbar{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:end}
/* Match the result count to the adjacent Sort label and center both within the
   desktop control row instead of leaving the count on the grid's bottom edge. */
@media(min-width:768px){
  .catalog-container .toolbar>#result-count,.deadline-map-container .toolbar>#result-count{align-self:center;font-size:1rem;font-weight:700;line-height:1.5}
}
/* Keep the short sort label beside its control when the toolbar has room. The
   narrow layout returns to a stacked label so translated copy can use the full
   row without squeezing the select or causing horizontal overflow. */
.catalog-container .toolbar>label,.deadline-map-container .toolbar>label{display:flex;align-items:center;gap:.65rem;white-space:nowrap}
/* The legacy tablet/retina rule adds a disclosure margin for the old stacked
   filter rail. Option 4 keeps Filters in the same toolbar row, so remove that
   margin and pin both shared action controls to the select's baseline. */
.catalog-container .filter-toggle,.deadline-map-container .filter-toggle,.calendar-discovery-bar .filter-toggle{display:inline-flex;align-items:center;align-self:end;justify-content:center;min-height:44px;margin-bottom:0;font-weight:700}
.catalog-container .toolbar #clear,.deadline-map-container .toolbar #clear,.calendar-discovery-bar #clear{align-self:end;margin-bottom:0}
.calendar-discovery-bar{grid-template-columns:minmax(18rem,1fr) auto auto auto}

/* Keep the Refined workspace authoritative over the shared discovery helpers
   that follow it in this stylesheet. */
body[data-page=explore] .catalog-split{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)}

@media(max-width:767px){
  .catalog-container .filters.open .filter-grid,.deadline-map-container .filters.open .filter-grid{grid-template-columns:1fr}
  .catalog-container .toolbar,.deadline-map-container .toolbar{grid-template-columns:1fr 1fr}
  .catalog-container .toolbar>strong,.catalog-container .toolbar>label,.deadline-map-container .toolbar>strong,.deadline-map-container .toolbar>label{grid-column:1/-1}
  .catalog-container .toolbar>label,.deadline-map-container .toolbar>label{display:grid;gap:.35rem;white-space:normal}
  .catalog-container .toolbar .filter-toggle,.catalog-container .toolbar #clear,.deadline-map-container .toolbar .filter-toggle,.deadline-map-container .toolbar #clear{width:100%}
  .calendar-discovery-bar{grid-template-columns:1fr 1fr}
  .calendar-discovery-bar .calendar-search,.calendar-discovery-bar>strong{grid-column:1/-1}
  .calendar-discovery-bar .filter-toggle,.calendar-discovery-bar #clear{width:100%}
}
@media(min-width:768px) and (max-width:1023px){body[data-page=explore] .catalog-split{grid-template-columns:minmax(0,1fr)}}
@media(max-width:767px){body[data-page=explore] .catalog-split{grid-template-columns:minmax(0,1fr)}}

/* Owner-approved Refined fidelity pass. Identity chips remain untouched: they
   are real contest identity, not a duplicated opportunity-type label. */
body[data-page=explore]{background:var(--bg)}

.site-header .brand{font-family:ui-monospace,monospace}
.site-header .brand .scope{width:26px;aspect-ratio:1;position:relative;flex:0 0 auto;border:1px solid var(--strong);border-radius:50%}
.site-header .brand .scope::before,.site-header .brand .scope::after{content:"";position:absolute;background:var(--accent)}
.site-header .brand .scope::before{left:-4px;right:-4px;top:12px;height:1px}
.site-header .brand .scope::after{top:-4px;bottom:-4px;left:12px;width:1px}
.site-header .primary-nav a{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--muted)}
.site-header :where(a,button,select){transition:transform 160ms ease,background-color 160ms ease,color 160ms ease}
.site-header :where(button,a):active{transform:scale(.96)}

.preview-banner{position:absolute;z-index:20;top:69px;left:0;right:0;pointer-events:none}
.preview-banner+main .catalog-hero-copy{padding-top:clamp(52px,5vw,72px)}
.catalog-container{width:min(calc(100% - 28px),1500px);padding:0 0 72px}
.catalog-hero{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);min-height:416px;margin:0;overflow:hidden;border:0;border-inline:1px solid var(--border);border-bottom:1px solid var(--border)}
.catalog-hero-copy{padding:clamp(28px,3.5vw,48px) clamp(28px,5vw,72px)}
.catalog-hero-eyebrow{margin:0!important;font:760 .73rem/1.2 ui-monospace,monospace!important;color:var(--accent)!important}
.catalog-hero-copy h1{max-width:16ch;margin:13px 0;font-size:clamp(2.7rem,4.25vw,4.8rem);line-height:.94;font-weight:700;letter-spacing:-.04em;text-wrap:balance}
.catalog-hero-copy>p:not(.catalog-hero-eyebrow){max-width:48ch;font-size:clamp(1rem,1.25vw,1.16rem);line-height:1.55;text-wrap:pretty}
.catalog-hero-search{width:min(100%,650px);min-height:56px;margin-top:28px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:6px 7px 6px 17px;border:1px solid var(--strong);background:var(--bg)}
.catalog-hero-search .catalog-search-icon{font-size:1rem;line-height:1}
.catalog-hero-search input{min-width:0;min-height:44px;padding:0;border:0;outline:0;background:transparent;color:var(--text);font-size:1rem}
.catalog-hero-search:focus-within{outline:3px solid var(--focus);outline-offset:2px}
.catalog-hero-search input::placeholder{color:var(--muted);opacity:.9}
.catalog-hero-search button{min-width:0;min-height:44px;padding:0 18px;border:0;border-radius:0;background:var(--accent);color:var(--accent-ink);font-weight:800;transition:transform 160ms ease}
.catalog-hero-search button:active{transform:scale(.96)}
.catalog-hero-media::after{background:linear-gradient(90deg,#090d10 0,rgba(9,13,16,.66) 8%,rgba(9,13,16,.06) 38%,transparent 68%)}

.explore-deadline-strip{margin:0;padding:32px 0 24px}
.explore-deadline-head{align-items:end;margin-bottom:15px}
.explore-deadline-strip h2{font:800 .82rem/1.2 ui-monospace,monospace;letter-spacing:.09em}
.explore-deadline-head .deadline-context{margin:0;color:var(--muted);font:400 .78rem/1.3 Inter,ui-sans-serif,system-ui,sans-serif}
.explore-deadline-buckets{border:1px solid var(--strong)}
.explore-deadline-buckets>button{min-height:88px;padding:15px;border-right-color:var(--border)}
.explore-deadline-buckets strong{font:800 .88rem/1.2 ui-monospace,monospace}
.explore-deadline-buckets span{display:block;margin-top:17px;font-size:.71rem}
.explore-deadline-buckets>button[aria-selected=true]{box-shadow:inset 0 3px var(--accent)}
.deadline-foot{min-height:44px;display:flex;align-items:start;justify-content:space-between;gap:18px}
.deadline-foot .explore-deadline-status{min-height:22px;margin:10px 0 0}
.deadline-foot a{min-height:44px;display:inline-flex;align-items:center;color:var(--muted);font:650 .72rem/1.4 ui-monospace,monospace;text-decoration:none;transition:color 160ms ease}
.deadline-foot a:hover{color:var(--text);text-decoration:underline;text-underline-offset:.24em}

.catalog-container .mobile-order{margin-bottom:8px}
.catalog-container .toolbar{min-height:44px;margin:0;padding:0;border-bottom:0}
.catalog-container .toolbar :where(select,button){border-radius:0}
body[data-page=explore] .catalog-split{min-height:690px;margin-bottom:72px;border:1px solid var(--strong)}
.opportunity-feed{border-right:1px solid var(--strong)}
.result-row{display:block;padding:0;border-bottom:1px solid var(--border);background:transparent;transition:background-color 160ms ease}
.result-row .result-select{width:100%;min-width:0;display:grid;grid-template-columns:88px minmax(0,1fr) 145px;gap:18px;align-items:center;padding:16px 19px;border:0;background:transparent;color:var(--text);text-align:left;transition:transform 160ms ease,background-color 160ms ease}
.result-row:hover,.result-row[aria-current=true]{background:var(--surface-subtle)}
.result-row:hover .result-select{transform:translateX(2px)}
.result-row:active .result-select{transform:scale(.96)}
.result-row[aria-current=true]{box-shadow:inset 3px 0 var(--accent)}
.result-row .result-select:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}
.result-row .thumb .opportunity-visual>span:not(.generated-banner):not(.contest-identity-chip){display:none}
.result-row .row-main strong{font-size:clamp(1rem,1.6vw,1.3rem)}
.result-row .row-deadline{font-family:ui-monospace,monospace}
.opportunity-feed .advertising-placeholder{min-height:104px;margin:0;padding:20px;border-width:0 0 1px;border-style:dashed;border-color:var(--strong);border-radius:0;background:color-mix(in srgb,var(--surface-subtle) 72%,var(--surface));text-align:left}
.opportunity-feed .advertising-placeholder strong{font:800 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em;text-transform:uppercase}
.opportunity-feed .advertising-placeholder span{max-width:none;margin:0}
.detail-page .advertising-placeholder{border-radius:0;border-color:var(--strong);background:var(--surface-subtle)}
.selected-inspector .inspector-inner{top:84px}
.selected-inspector .inspector-top>div{display:block}
.selected-inspector .favorite-compact{display:inline-grid;place-items:center;font-size:1.05rem;transition:transform 160ms ease,background-color 160ms ease}
.selected-inspector .favorite-compact:active{transform:scale(.96)}
.selected-inspector h2{max-width:15ch}
.selected-inspector .readout{border-top-color:var(--border)}
.selected-inspector .inspector-actions .action,.selected-inspector .inspector-actions .disabled{border-color:var(--strong);transition:transform 160ms ease,background-color 160ms ease,color 160ms ease}
.selected-inspector .inspector-actions .action:active{transform:scale(.96)}

@media(max-width:1023px){
  body[data-page=explore] .catalog-split{display:grid;grid-template-columns:minmax(0,1fr)}
  body[data-page=explore] .selected-inspector{grid-row:1;border-top:0;border-bottom:1px solid var(--strong)}
  body[data-page=explore] .opportunity-feed{grid-row:2;border-right:0}
}
@media(max-width:900px){
  .site-header{min-height:62px}
  .topbar-inner{width:min(calc(100% - 20px),880px);min-height:62px;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;padding-block:8px}
  .site-header .menu-toggle{display:inline-grid;grid-column:1;grid-row:1;place-items:center;padding:0;font-size:1rem;text-indent:0}
  .site-header .brand{grid-column:2;grid-row:1;justify-self:center;font-size:.7rem}
  .site-header .primary-nav{display:none;position:absolute;z-index:40;top:62px;left:10px;right:10px;padding:10px;flex-direction:column;border:1px solid var(--strong);background:var(--surface)}
  .site-header .primary-nav[data-open=true]{display:flex}
  .site-header .primary-nav a{justify-content:flex-start}
  .site-header #theme{grid-column:3;grid-row:1}
  .header-tools{display:none;position:absolute;z-index:41;top:268px;left:10px;right:10px;min-height:58px;justify-content:space-between;padding:7px 10px;border:1px solid var(--strong);border-top-color:var(--border);background:var(--surface)}
  .site-header .primary-nav[data-open=true]+.header-tools{display:flex}
  .preview-banner{top:63px}
}
@media(max-width:840px){
  .catalog-hero{grid-template-columns:1fr}
  .catalog-hero-copy{padding:38px 24px 32px}
  .preview-banner+main .catalog-hero-copy{padding-top:58px}
}
@media(max-width:767px){
  .catalog-container{width:min(calc(100% - 20px),560px);padding-top:0}
  .catalog-hero{margin:0}
  .catalog-hero-copy{padding:40px 14px 30px}
  .preview-banner+main .catalog-hero-copy{padding-top:61px}
  .catalog-hero-search{grid-template-columns:auto minmax(0,1fr);padding:7px 11px}
  .catalog-hero-search button{grid-column:1/-1;width:100%}
  .explore-deadline-head{display:block}
  .explore-deadline-head .deadline-context{margin-top:7px}
  .explore-deadline-buckets>button{min-height:58px}
  .explore-deadline-buckets span{margin:0}
  .deadline-foot{display:block}
  .deadline-foot a{width:max-content;max-width:100%;white-space:normal}
  .result-row .result-select{grid-template-columns:68px minmax(0,1fr);gap:13px;padding:14px 12px}
  .result-row .row-deadline{grid-column:2;text-align:left;color:var(--muted)}
  .selected-inspector .inspector-inner{padding:25px 16px}
}
@media(max-width:350px){
  .catalog-container{width:min(calc(100% - 20px),560px)}
  .site-header .brand span:last-child{max-width:150px;overflow:hidden;text-overflow:ellipsis}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .site-header :where(a,button,select),.catalog-hero-search button,.result-row,.result-row .result-select,.selected-inspector .favorite-compact,.selected-inspector .inspector-actions .action{transition:none!important;animation:none!important;transform:none!important}
}

/* Shared Refined corrections. These final tokens intentionally apply to every
   route so navigation never changes the product palette. */
:root{--bg:#eef1f2;--surface:#f9faf9;--surface-subtle:#e3e8e9;--text:#101719;--muted:#59676c;--border:#bdc7ca;--accent:#007f89;--accent-strong:#006c75;--accent-soft:#d3ebed;--focus:#007f89;--strong:#66787e;--accent-ink:#f1feff}
:root[data-theme=light]{--bg:#eef1f2;--surface:#f9faf9;--surface-subtle:#e3e8e9;--text:#101719;--muted:#59676c;--border:#bdc7ca;--accent:#007f89;--accent-strong:#006c75;--accent-soft:#d3ebed;--focus:#007f89;--strong:#66787e;--accent-ink:#f1feff}
:root[data-theme=dark]{--bg:#0c1113;--surface:#141b1e;--surface-subtle:#1c262a;--text:#edf4f4;--muted:#9aabad;--border:#2d3b3f;--accent:#39d2d9;--accent-strong:#62e5ea;--accent-soft:#17363a;--focus:#39d2d9;--strong:#677b80;--accent-ink:#061315}
.site-header #theme{display:grid;place-items:center;padding:0}
.theme-icon{display:block;width:20px;height:20px;margin:auto;background:currentColor;mask:url("/brand/theme-toggle.svg") center/contain no-repeat;-webkit-mask:url("/brand/theme-toggle.svg") center/contain no-repeat}
.site-header .primary-nav .saved-shell{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--muted);font:720 .79rem/1 Inter,ui-sans-serif,system-ui,sans-serif;text-decoration:none}
.saved-star{font-size:.82rem;line-height:1;color:var(--accent)}
.header-tools{justify-content:flex-end}
.language-control select{font-family:"Apple Color Emoji","Segoe UI Emoji",Inter,ui-sans-serif,system-ui,sans-serif}

.catalog-container{box-sizing:border-box;overflow-x:clip;padding-inline:0}
.catalog-hero{width:100%;max-width:100%;border:1px solid var(--border);border-radius:0}
.catalog-hero-media picture{display:block;width:100%;height:100%}
.catalog-hero-media img{display:block;max-width:100%}
.explore-deadline-buckets{grid-template-columns:repeat(6,minmax(0,1fr))}
.explore-deadline-head{align-items:start}
.explore-deadline-head .explore-deadline-status{max-width:56ch;margin:0;color:var(--muted);font:400 .78rem/1.35 Inter,ui-sans-serif,system-ui,sans-serif;text-align:right}
.deadline-foot{justify-content:flex-end}
.saved-page{max-width:1200px}
.saved-page>.lede{margin-bottom:1.5rem}
.saved-results{grid-template-columns:minmax(0,1fr);width:100%}
.site-header,body[data-page=explore] .site-header{background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom-color:var(--border)}
.preview-banner,body[data-page=explore] .preview-banner{background:var(--accent-soft);color:var(--text);border-bottom:1px solid var(--border)}
.topbar-inner{width:min(calc(100% - 28px),1487px)}
.site-header .brand .brand-crop{position:relative;display:block;width:210px;height:42px;overflow:hidden}
.site-header .brand .brand-crop picture{display:block}
.site-header .brand .brand-crop img{position:absolute;width:265px;height:auto;max-width:none;left:-28px;top:-54px;object-fit:initial}

/* Submit-based filters let people stage several choices before one result
   refresh. Three columns reduce vertical scanning on wide screens; the layout
   progressively returns to two and one columns as space narrows. */
.catalog-container .filters.open .filter-grid,.deadline-map-container .filters.open .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1.5rem}
.catalog-container .filter-grid fieldset,.deadline-map-container .filter-grid fieldset{min-width:0}
.filter-actions{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border)}
.filter-apply{min-width:180px;min-height:44px;padding:.65rem 1rem;border:1px solid var(--accent);border-radius:0;background:var(--accent);color:var(--accent-ink);font-weight:800}
.filter-apply:hover{background:var(--accent-strong)}
@media(min-width:768px) and (max-width:1100px){
  .catalog-container .filters.open .filter-grid,.deadline-map-container .filters.open .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .header-tools{top:322px}
  .site-header .primary-nav .saved-shell{width:100%}
  .site-header .brand .brand-crop{width:170px;height:34px}
  .site-header .brand .brand-crop img{width:215px;left:-23px;top:-44px}
}
@media(max-width:767px){
  .catalog-container .filters.open .filter-grid,.deadline-map-container .filters.open .filter-grid{grid-template-columns:1fr}
  .explore-deadline-buckets{grid-template-columns:repeat(2,minmax(0,1fr))}
  .explore-deadline-head .explore-deadline-status{margin-top:7px;text-align:left}
  .saved-results{grid-template-columns:1fr}
  .filter-actions{display:block}
  .filter-apply{width:100%}
}
