/* Semantic colors keep every screen and native control in the same theme. */
:root{color-scheme:light;--ink:#202b28;--muted:#68736d;--paper:#f6f5ef;--surface:#fbfbf7;--input:#fff;--line:#dedfd5;--green:#294a3d;--accent:#809867;--on-action:#fff;--action:#294a3d;--chip:#e7e9df;--image-surface:#e1e4d8;--reference-surface:#e9e9df;--badge-surface:#f5f5edeb;--badge-line:#cdd3c5;--production-surface:#e9f0df;--production-ink:#2c5539;--development-ink:#75673e;--notice-surface:#ebe9dc;--notice-line:#ddd8c1;--notice-ink:#726334;--shadow:#20382a12;--focus:#436c55;--radius:10px}
:root[data-theme="dark"]{color-scheme:dark;--ink:#e6ece4;--muted:#a9b7ac;--paper:#141c18;--surface:#1c2721;--input:#202d25;--line:#3c4c40;--green:#b3ceaa;--accent:#b3ceaa;--on-action:#152018;--action:#b3ceaa;--chip:#2b3b30;--image-surface:#25332a;--reference-surface:#17211b;--badge-surface:#17241def;--badge-line:#54674e;--production-surface:#283e2c;--production-ink:#c0ddae;--development-ink:#e0c58a;--notice-surface:#322e20;--notice-line:#5d5336;--notice-ink:#e0cd9c;--shadow:#00000040;--focus:#c1dda9}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.6}button,input{font:inherit}button,a,input{outline-offset:4px}button{cursor:pointer}a{color:inherit}header{height:94px;border-bottom:1px solid var(--line);padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:15px;align-items:center;text-decoration:none;font-size:18px;font-weight:700;letter-spacing:-.5px}.brand small{display:block;font-size:9px;letter-spacing:2px;font-weight:400;color:var(--muted);margin-top:3px}.wordmark{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--action);color:var(--on-action);font-size:16px;letter-spacing:1px;border-radius:50%;font-weight:400}.header-right{display:flex;align-items:center;gap:28px}.quiet,.muted{color:var(--muted)}.quiet{font-size:12px}.text-button{border:0;background:transparent;color:var(--green);padding:8px}.text-button:hover{text-decoration:underline}main#app{max-width:1440px;margin:auto;padding:0 5%}.main-nav{display:flex;gap:28px;align-items:center;height:75px;border-bottom:1px solid var(--line)}.main-nav button,.tabs button{height:100%;border:0;border-bottom:2px solid transparent;background:none;padding:0 3px;color:var(--muted)}.main-nav button.active,.tabs button.active{color:var(--ink);border-bottom-color:var(--green)}.main-nav button span{margin-left:7px;font-size:10px;background:var(--chip);border-radius:20px;padding:3px 6px}.sync{margin-left:auto;color:var(--muted);font-size:11px}.intro{padding:48px 0 35px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--green);margin:0 0 15px}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(36px,4.7vw,65px);letter-spacing:-2.6px;line-height:1.1;margin:0 0 19px}h1 span{color:var(--accent)}.lead{color:var(--muted);font-size:15px;line-height:1.8;margin:0}.roster-intro{display:flex;justify-content:space-between;align-items:center;gap:30px}.stats{display:flex;gap:36px;padding-left:30px}.stats div{display:flex;flex-direction:column}.stats strong{font-family:Georgia,serif;font-size:43px;font-weight:400;letter-spacing:-2px;line-height:1.2}.stats span{font-size:10px;color:var(--muted)}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:23px}.filters{display:flex;gap:5px}.filters button{border:0;background:none;color:var(--muted);border-radius:24px;padding:9px 16px;font-size:12px}.filters button.selected{background:var(--action);color:var(--on-action)}.search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:30px;padding:0 14px;width:290px;background:var(--surface)}.search span{font-size:24px;color:var(--muted)}.search input{border:0;background:none;width:100%;padding:10px 0;font-size:12px;color:var(--ink);outline-offset:0}.results{font-size:11px;color:var(--muted);margin:20px 0 16px}.roster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px 20px}.talent-card{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:0;overflow:hidden;color:inherit;transition:transform .2s,box-shadow .2s}.talent-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow)}.portrait{position:relative;aspect-ratio:3/4;background:var(--image-surface);overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}.portrait .badge{position:absolute;bottom:13px;left:13px;background:var(--badge-surface)}.card-index{position:absolute;top:14px;left:14px;font-size:10px;color:#fff;background:#20332975;padding:3px 7px;border-radius:5px}.badge{display:inline-block;text-transform:capitalize;border:1px solid var(--badge-line);font-size:10px;line-height:1.6;border-radius:20px;padding:4px 10px;color:var(--green)}.badge.production{background:var(--production-surface);color:var(--production-ink)}.badge.development{color:var(--development-ink)}.card-info{display:flex;align-items:center;justify-content:space-between;padding:15px 15px 10px}.card-info h2{font-size:16px;font-weight:500;letter-spacing:-.3px;margin:0 0 2px}.card-info p{font-size:11px;color:var(--muted);margin:0}.arrow{font-size:21px;color:var(--green)}.card-footer{border-top:1px solid var(--line);margin:0 15px;padding:10px 0 12px;display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);text-transform:capitalize}footer{padding:38px 0;font-size:10px;letter-spacing:.3px;color:var(--muted)}.empty{grid-column:1/-1;padding:55px;text-align:center;border:1px dashed var(--line);border-radius:10px}.empty button,.primary{background:var(--action);border:0;border-radius:7px;color:var(--on-action);padding:10px 18px}.back{margin:24px 0;background:none;border:0;padding:0;color:var(--green);font-size:12px}.detail-hero{display:flex;gap:40px;align-items:center;margin:6px 0 28px}.detail-portrait{width:175px;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);flex-shrink:0;background:var(--image-surface)}.detail-portrait img{width:100%;height:100%;object-fit:cover}.detail-hero h1{font-size:54px;margin-bottom:12px}.detail-hero .badge{margin-top:18px}.handle{font-size:12px;margin:8px 0}.source{font-size:10px;color:var(--muted)}.tabs{height:50px;display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:25px}.detail-columns,.house-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{padding:26px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);margin-bottom:20px}.panel h2{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1.3;margin:0 0 18px;letter-spacing:-.4px}.panel h2:not(:first-child){margin-top:30px}.panel p{color:var(--muted)}.big-copy{font-family:Georgia,serif;font-size:30px;text-transform:capitalize;color:var(--green)!important}.field{padding:10px 0;border-bottom:1px solid var(--line)}dt{text-transform:capitalize;font-size:10px;color:var(--muted);letter-spacing:.5px}dd{margin:3px 0 0;font-size:13px}dl{margin:0}.notes,.prompt{font:13px/1.9 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:var(--ink)}.notice{background:var(--notice-surface);border:1px solid var(--notice-line);padding:15px 20px;border-radius:7px;color:var(--notice-ink);font-size:12px}.notice.complete{background:var(--production-surface);color:var(--production-ink)}.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.reference{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.reference img{width:100%;height:330px;object-fit:contain;background:var(--reference-surface);display:block}.reference h3{font-size:14px;font-weight:500;margin:15px 15px 3px}.reference p{font-size:10px;color:var(--muted);margin:0 15px 18px;overflow-wrap:anywhere}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.panel-heading h2{margin:0}.login{width:min(460px,90%);margin:12vh auto}.login .wordmark{margin-bottom:36px}.login h1{font-size:45px}.login form{display:grid;gap:12px;margin-top:30px}.login label{font-size:12px}.login input{padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--input);color:var(--ink)}.login .primary{display:flex;justify-content:space-between;padding:14px}.loading{padding:70px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--action);color:var(--on-action);padding:12px 22px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:10}#toast.visible{opacity:1}@media(min-width:1500px){.roster-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1000px){.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats{gap:20px}.header-right .quiet{display:none}}@media(max-width:700px){header{height:78px}.brand{font-size:15px}.wordmark{width:40px;height:40px;font-size:13px}.sync{display:none}.intro{padding:32px 0}.roster-intro{display:block}.stats{padding:22px 0 0;gap:30px}.stats strong{font-size:30px}.toolbar{align-items:stretch;flex-direction:column;gap:14px}.search{width:100%}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.card-info{padding:11px}.card-info h2{font-size:14px}.card-info p{font-size:10px}.card-footer{margin:0 11px;font-size:9px;flex-wrap:wrap}.portrait .badge{left:9px;bottom:9px;padding:3px 8px}.desktop{display:none}.detail-hero{gap:22px}.detail-portrait{width:110px}.detail-hero h1{font-size:34px;letter-spacing:-1.3px}.detail-hero .eyebrow{font-size:9px}.detail-hero .lead{font-size:12px}.source{overflow-wrap:anywhere}.detail-columns,.house-grid{grid-template-columns:1fr}.panel{padding:20px}.reference-grid{grid-template-columns:1fr 1fr}.reference img{height:240px}.panel-heading h2{font-size:20px}.primary{font-size:12px}.filters button{padding:8px 12px}}

.theme-control{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.theme-control select{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:7px 10px;font:inherit;cursor:pointer;min-height:36px}
.login-theme{position:absolute;top:24px;right:5%}
:focus-visible{outline:2px solid var(--focus);outline-offset:4px}
input::placeholder{color:var(--muted);opacity:1}
::selection{background:var(--action);color:var(--on-action)}
@media(max-width:700px){.header-right{gap:10px}.theme-control>span{display:none}.theme-control select{max-width:86px;padding:7px}.header-right .text-button{font-size:11px;padding:5px}.brand small{letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
