/* Rōnin — a focused research workspace. */
:root{--bg:#f8f9fb;--fg:#151922;--muted:#687489;--line:#e4e9f0;--soft:#f0f3f8;--blue:#0769f6;--tint:#edf4ff;--surface:#fff;--sidebar:202px}body{font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;background:var(--bg)}body.dark{--bg:#0c0f14;--fg:#e8edf6;--muted:#9aa8bd;--line:#26303e;--soft:#19212d;--tint:#162a46;--surface:#111720}::selection{background:#a9ceff;color:#10243c}header{position:fixed;z-index:8;top:0;left:0;right:0;height:76px;background:var(--surface);border-bottom:1px solid var(--line);padding:0 28px;gap:20px}.brand{width:118px}.brand img{width:118px}.slash{margin-left:29px;color:var(--line)}.workspace{font-size:12px;color:var(--muted);gap:16px}.headright{gap:17px}.headright .demo{border:0;background:var(--soft);border-radius:100px;font-size:10px;padding:5px 11px;letter-spacing:.3px}.headright .avatar{width:30px;height:30px;font-size:10px;background:var(--tint);color:var(--blue);border:0}#theme{height:31px;width:31px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:16px}#theme:hover{background:var(--soft)}nav{position:fixed;left:0;top:76px;bottom:0;width:var(--sidebar);height:auto;z-index:7;display:flex;flex-direction:column;padding:35px 15px;gap:6px;background:var(--surface);border-right:1px solid var(--line);border-bottom:0}nav:before{content:'WORKSPACE';font-size:9px;color:var(--muted);letter-spacing:1.5px;padding:0 14px 13px}nav button{display:flex;align-items:center;gap:12px;border-radius:9px;padding:11px 14px;text-align:left;font-size:13px;color:var(--muted);transition:background .2s,color .2s}nav button>svg{width:16px;height:16px;stroke-width:1.5;flex-shrink:0}nav button:hover{background:var(--soft);color:var(--fg)}nav button.active{background:var(--tint);color:var(--blue);font-weight:500}nav button.active:after{display:none}nav button span{margin-left:auto;background:var(--surface);border:0;font-size:10px;min-width:19px;text-align:center;border-radius:5px;padding:1px 5px}.navend{display:block;margin:auto 12px 0;align-self:stretch;white-space:normal;line-height:1.7;font-size:9px;letter-spacing:.9px;max-width:140px;color:var(--muted)}.nav-about{display:flex;align-items:center;justify-content:space-between;margin:14px 12px 0;padding-top:17px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);text-decoration:none}.nav-about:hover{color:var(--blue)}main{width:calc(100% - var(--sidebar));max-width:1400px;margin:76px 0 0 var(--sidebar);padding:65px clamp(30px,5.2vw,85px) 65px;min-height:calc(100vh - 139px);position:relative}.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:500;color:var(--muted)}.dot{height:5px;width:5px;box-shadow:0 0 0 4px var(--tint)}h1{font-size:clamp(38px,4.2vw,61px);letter-spacing:-2.6px;font-weight:450;line-height:1.08;margin:24px 0 18px}h1 span{color:var(--muted)}.intro{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:32px;max-width:690px}#search{position:relative}.brief{border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 14px 40px -22px #263e6b30;transition:border-color .25s,box-shadow .25s}.brief:focus-within{border-color:#79aefa;box-shadow:0 0 0 4px #0070f308,0 20px 40px -25px #1c59ad38}.brief textarea{background:var(--surface);font-size:17px;line-height:1.7;min-height:142px;padding:25px 26px;color:var(--fg)}.brief textarea::placeholder{color:var(--muted);opacity:.85}.briefbar{background:var(--surface);border-color:var(--line);padding:14px 18px;gap:8px}.chip{font-size:11px;background:var(--soft);border:0;border-radius:6px;padding:7px 10px;color:var(--muted);transition:background .2s,color .2s}.chip:hover{color:var(--blue);background:var(--tint)}.primary{background:var(--fg);color:var(--surface);border-radius:8px;font-size:12px;letter-spacing:.1px;padding:11px 17px;transition:transform .2s,box-shadow .2s}.primary:hover{transform:translateY(-1px);box-shadow:0 5px 14px #0002}.briefbar .primary{background:#0669f9;color:white;padding:11px 19px;border-radius:8px}.briefbar .primary:disabled{background:linear-gradient(100deg,#075ed4,#589eff,#075ed4);background-size:200% 100%;animation:workspace-scan 2s ease-in-out infinite;opacity:.8}.searchmeta{font-size:10px;margin:13px 2px;gap:15px}.searchmeta label{font-size:11px;gap:8px}.searchmeta input{font-size:12px;padding:7px 10px;border-radius:6px;width:160px;background:var(--surface)}.uploadnote{font-size:10px;line-height:1.7;max-width:820px;color:var(--muted)}.suggest{margin:20px 0 35px;gap:10px;font-size:11px}.suggest>span{margin-right:5px}.suggest button{border:1px solid var(--line);background:var(--surface);border-radius:100px;padding:5px 12px;font-size:11px;transition:background .2s,border-color .2s}.suggest button:hover{background:var(--tint);border-color:#8ab8fa;color:var(--blue)}.stats{border:0;gap:15px;padding:0;margin:0 0 39px}.stat{background:var(--surface);border:1px solid var(--line);padding:20px 23px;border-radius:10px;position:relative}.stat:first-child{padding:20px 23px;border:1px solid var(--line)}.stat label{font-size:10px;line-height:1.5;min-height:15px;margin:0 0 13px}.stat strong{font-size:28px;letter-spacing:-.8px;font-weight:450;line-height:1}.stat small{font-size:10px;margin-top:5px}.sectionhead{gap:20px;margin-bottom:20px}h2{font-size:21px;letter-spacing:-.6px;font-weight:500}h2 small{font-size:11px;margin-left:7px}.controls input,.controls select{background:var(--surface);font-size:11px;border-radius:7px;padding:9px 11px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:23px;transition:transform .3s,border-color .3s,box-shadow .3s;animation:workspace-enter .45s both}.card:nth-child(2){animation-delay:.05s}.card:nth-child(3){animation-delay:.1s}.card:hover{border-color:#92b4df;box-shadow:0 14px 30px -15px #305b8f25;transform:translateY(-4px)}.card .avatar{border:0;background:var(--tint);color:#4a7baa;border-radius:11px;height:40px;width:40px;font-weight:500}.person{font-size:15px;font-weight:550}.card .role{font-size:11px}.location{font-size:11px;margin:18px 0}.match{font-size:9px;letter-spacing:.65px;font-weight:500;color:var(--blue)}.card p{font-size:13px;line-height:1.75}.sources span{border:0;background:var(--soft);font-size:10px;padding:5px 7px;border-radius:5px}.cardbottom{font-size:10px;padding-top:15px;gap:8px}.cardbottom button{font-size:11px;color:var(--blue);white-space:nowrap}.save[aria-pressed=true]{color:var(--blue)}.empty{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:55px 25px;color:var(--muted)}.empty:before{content:'↗';display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--tint);color:var(--blue);margin:0 auto 18px;font-size:22px}.empty h2{font-size:19px;font-weight:450}.empty p{font-size:13px;line-height:1.8;margin-bottom:0}.subnote{font-size:10px;margin-top:17px}.panel{background:var(--surface);width:600px;padding:38px;border-left:1px solid var(--line);animation:workspace-drawer .35s cubic-bezier(.22,1,.36,1) both}.overlay{background:#101b2d55;backdrop-filter:blur(5px)}.panel .eyebrow{font-size:9px}.panel h2{font-size:34px;letter-spacing:-1px;font-weight:450}.panel h3{font-size:14px;font-weight:550}.panel p{font-size:14px;line-height:1.8}.panel textarea,.panel select{border-radius:9px;background:var(--bg);font-size:14px}.panel textarea:focus,.panel input:focus{outline:2px solid #84b4f8;border-color:transparent}.close{border:1px solid var(--line);border-radius:100%;width:32px;height:32px;display:grid;place-items:center;color:var(--muted);font-size:20px}.evidence{border:0;background:var(--bg);padding:19px;border-radius:10px;margin:13px 0}.evidence a{font-weight:500;text-decoration:none}.evidence a:hover{text-decoration:underline}.outline{border-radius:8px;font-size:12px;padding:10px 14px;background:var(--surface)}.notice{border:1px solid #8abafa50;background:var(--tint);padding:17px 20px;border-radius:10px;font-size:12px;color:var(--blue)}.row{background:var(--surface);border:1px solid var(--line);border-radius:11px;margin:12px 0;padding:21px}.row .avatar{border-radius:9px}.row .badge{font-size:10px;border-radius:100px}.form{border-radius:13px;background:var(--surface);padding:30px}.form label{font-size:12px}.form p{font-size:12px}.form input,.form select{background:var(--bg);border-radius:7px;font-size:14px}.filechip{background:var(--tint);border-color:#8abafa40;border-radius:7px;font-size:11px}.attachments{padding-left:25px}.searchsummary{font-size:12px}footer{margin-left:var(--sidebar);padding:20px clamp(30px,5.2vw,85px);font-size:10px;color:var(--muted);background:var(--bg)}#toast{border-radius:100px;font-size:12px;box-shadow:0 10px 30px #0002;padding:13px 23px}main>.eyebrow,main>h1,main>.intro,#search{animation:workspace-enter .5s ease both}main>h1{animation-delay:.03s}main>.intro{animation-delay:.06s}#search{animation-delay:.09s}@keyframes workspace-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes workspace-drawer{from{opacity:.7;transform:translateX(35px)}to{opacity:1;transform:none}}@keyframes workspace-scan{to{background-position:-200% 0}}
@media(min-width:1650px){main{margin-left:calc(var(--sidebar) + (100% - var(--sidebar) - 1400px)/2)}}
@media(max-width:1150px){:root{--sidebar:180px}header{padding:0 22px}.slash{margin-left:10px}main{padding:46px 35px}.grid{grid-template-columns:1fr 1fr}.stat,.stat:first-child{padding:17px}.stat label{font-size:9px}.sectionhead{align-items:flex-start}.controls{max-width:300px}.controls input{width:130px}.navend{font-size:8px}.card{padding:21px}}
@media(max-width:760px){:root{--sidebar:0px}header{position:sticky;top:0;height:65px;padding:0 18px;gap:12px}.brand{width:92px}.brand img{width:96px}.slash{margin-left:0}.workspace{font-size:11px;gap:6px}.headright{gap:10px}.headright .demo{display:none}.headright .avatar{display:none}nav{position:sticky;top:65px;left:auto;bottom:auto;width:100%;height:54px;flex-direction:row;gap:6px;padding:7px 16px;overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid var(--line);white-space:nowrap}nav:before,.navend,.nav-about{display:none}nav button{font-size:11px;gap:6px;padding:9px 12px;flex-shrink:0;border-radius:7px}nav button>svg{width:14px;height:14px}nav button span{font-size:9px}main{width:100%;margin:0;padding:38px 22px 45px}h1{font-size:43px;letter-spacing:-1.8px;line-height:1.12;margin:22px 0 16px}.intro{font-size:15px;line-height:1.7}.intro br{display:none}.brief textarea{font-size:16px;padding:21px;min-height:150px}.briefbar{padding:12px;gap:7px}.briefbar .primary{width:100%;margin-top:5px;font-size:13px}.briefbar .chip{font-size:10px;padding:7px 9px}.searchmeta{display:flex;flex-direction:column;align-items:flex-start;font-size:10px;gap:10px}.searchmeta label{width:100%;justify-content:space-between}.searchmeta input{font-size:16px;width:180px;padding:7px 10px}.uploadnote{font-size:10px}.suggest{gap:7px;margin-bottom:25px;flex-wrap:wrap}.suggest>span{width:100%;font-size:10px}.suggest button{font-size:10px;padding:5px 10px}.stats{gap:8px;margin-bottom:30px}.stat,.stat:first-child{padding:14px 10px;border-radius:8px}.stat label{font-size:9px;min-height:38px;line-height:1.5;margin-bottom:7px}.stat strong{font-size:24px}.stat small{font-size:9px;line-height:1.5}.sectionhead{display:block}.sectionhead h2{font-size:20px}.sectionhead .controls{margin-top:15px;max-width:none;flex-wrap:nowrap}.controls input,.controls select{font-size:16px;min-width:0;width:50%;padding:10px}.grid{grid-template-columns:1fr}.card{padding:23px}.person{font-size:16px}.card .role{font-size:12px}.card p{font-size:14px}.cardbottom{font-size:11px}.cardbottom button{font-size:12px}.panel{padding:27px 23px}.panel h2{font-size:29px}.panel textarea,.panel input,.panel select{font-size:16px}.panel .primary,.panel .outline{font-size:12px}.panel p{font-size:14px}.form{padding:23px}.form input,.form select{font-size:16px}.empty{padding:40px 20px}.empty h2{font-size:18px}.empty p{font-size:12px}footer{margin-left:0;padding:22px;font-size:9px;gap:20px}.attachments{padding-left:20px}.filechip{font-size:10px}.row{font-size:13px;padding:18px}.row .role{font-size:11px}.row .badge{font-size:9px}.row .outline{font-size:11px}.headright{margin-left:auto}#toast{max-width:90%;width:max-content;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
@media(max-width:760px){nav{scrollbar-width:none}nav::-webkit-scrollbar{display:none}.intro br{display:initial}}
body.dark{--blue:#78b3ff}
