/* Autonomous Scientist — scientific journal meets mission control */
:root{
  --bg:#0b0e14; --bg2:#0e131c; --panel:#121826; --panel2:#161d2e;
  --line:#232c42; --ink:#e8ecf4; --mut:#8b96ad;
  --dim:#5b657d;
  --gold:#d8a94e; --cyan:#4fd1c5; --violet:#a78bfa; --green:#34d399;
  --red:#f87171; --amber:#fbbf24; --blue:#60a5fa;
  --serif:Georgia,'Times New Roman',serif;
  --mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;padding:0;}
body{background:radial-gradient(130% 70% at 50% -10%,#131a2b 0%,var(--bg) 55%);color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  min-height:100vh;min-height:100dvh;line-height:1.55;}
h1{font-size:clamp(30px,6vw,46px);line-height:1.12;margin:26px 0 12px;letter-spacing:-.5px;}
h2{margin:4px 0 2px;font-size:clamp(20px,4.4vw,27px);line-height:1.25;}
h3{margin:0;font-size:17px;}
.lede{color:var(--mut);font-size:16px;max-width:640px;}
.lede em{color:var(--ink);font-style:normal;border-bottom:2px solid var(--gold);}
.fine{color:var(--dim);font-size:12.5px;text-align:center;}

/* topbar */
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;background:rgba(11,14,20,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.brand{display:flex;gap:10px;align-items:center;}
.brand-ico{font-size:26px;}
.brand-t{font-weight:800;letter-spacing:2.5px;font-size:14px;}
.brand-s{color:var(--mut);font-size:11.5px;}

/* buttons */
.btn{background:#1a2338;border:1px solid var(--line);color:var(--ink);border-radius:12px;
  padding:11px 16px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;touch-action:manipulation;}
.btn:active{transform:scale(.97);}
.btn.primary{background:linear-gradient(180deg,#e7bd63,#c9963c);border-color:#c9963c;color:#241a06;}
.btn.ghost{background:transparent;}
.btn.big{font-size:17px;padding:15px;}
.btn.small{font-size:13px;padding:8px 12px;}
.btn.block{display:block;width:100%;margin:14px 0;}
.btn:disabled{opacity:.45;}

/* screens */
#app{max-width:1060px;margin:0 auto;padding:8px 16px 40px;}
.screen{display:none;animation:fade .3s ease;}
.screen.active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* question cards */
.qcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:22px 0;}
.qcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;cursor:pointer;text-align:left;color:var(--ink);font-family:inherit;width:100%;}
.qcard:hover{border-color:#3a4a6e;}
.qcard.sel{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 8px 30px rgba(216,169,78,.12);}
.qcard .qf{font-size:11px;letter-spacing:2px;color:var(--cyan);font-weight:800;}
.qcard .qt{font-size:17px;font-weight:800;margin:8px 0 6px;line-height:1.35;}
.qcard .qb{color:var(--mut);font-size:13.5px;}
.qcard .qmeta{display:flex;gap:10px;margin-top:10px;font-size:12px;color:var(--dim);font-family:var(--mono);}

/* cycle head + rail */
.cycle-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin:14px 0 4px;}
.qfield{font-size:11px;letter-spacing:2.5px;color:var(--cyan);font-weight:800;}
.rail{display:flex;gap:6px;overflow-x:auto;padding:12px 2px;scrollbar-width:none;}
.rail::-webkit-scrollbar{display:none;}
.pill{flex:0 0 auto;display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel);
  color:var(--mut);border-radius:999px;padding:8px 13px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap;}
.pill .n{width:20px;height:20px;border-radius:50%;background:#232c42;display:inline-flex;align-items:center;justify-content:center;font-size:11px;}
.pill.done{color:var(--ink);border-color:#33507a;}
.pill.done .n{background:var(--green);color:#06251b;}
.pill.active{color:#0c0f16;background:var(--gold);border-color:var(--gold);}
.pill.active .n{background:rgba(0,0,0,.22);color:#0c0f16;}
.pill.locked{opacity:.45;}

/* lab log */
.log{font-family:var(--mono);font-size:12.5px;color:var(--green);background:#0a0f18;border:1px solid var(--line);
  border-radius:10px;padding:9px 12px;min-height:38px;margin-bottom:14px;}
.log .prompt{color:var(--dim);}

/* generic cards */
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;margin:10px 0;animation:fade .35s ease;}
.card h4{margin:0 0 8px;font-size:15px;}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:13.5px;margin:8px 0;}
.kv dt{color:var(--mut);font-weight:700;white-space:nowrap;}
.kv dd{margin:0;}
.tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1px;padding:3px 9px;border-radius:999px;margin:2px 4px 2px 0;}
.tag.sup{background:rgba(52,211,153,.14);color:var(--green);border:1px solid rgba(52,211,153,.4);}
.tag.con{background:rgba(248,113,113,.13);color:var(--red);border:1px solid rgba(248,113,113,.4);}
.tag.ctx{background:rgba(139,150,173,.13);color:var(--mut);border:1px solid var(--line);}
.tag.hyp{background:rgba(167,139,250,.13);color:var(--violet);border:1px solid rgba(167,139,250,.4);}
.tag.exp{background:rgba(79,209,197,.13);color:var(--cyan);border:1px solid rgba(79,209,197,.4);}

/* papers */
.papers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;}
.paper{background:var(--panel2);border:1px solid var(--line);border-left:3px solid var(--mut);border-radius:10px;padding:12px;font-size:13px;animation:fade .4s ease;}
.paper.sup{border-left-color:var(--green);}
.paper.con{border-left-color:var(--red);}
.paper .cite{font-weight:800;font-size:13px;}
.paper .meta{font-family:var(--mono);font-size:11px;color:var(--dim);margin:3px 0 6px;}
.paper .find{color:var(--ink);}
.paper .eff{font-family:var(--mono);font-size:12px;color:var(--cyan);margin-top:6px;}

/* hypotheses */
.hyp{border-left:3px solid var(--violet);}
.priorbar{height:8px;background:#232c42;border-radius:99px;margin:8px 0 4px;overflow:hidden;position:relative;}
.priorbar .post{position:absolute;inset:0 auto 0 0;background:var(--violet);border-radius:99px;transition:width 1.2s ease;}
.priorbar .prior{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--gold);}
.priorlbl{font-family:var(--mono);font-size:11.5px;color:var(--mut);}
.priorlbl b{color:var(--ink);}

/* charts */
.chart-wrap{background:#0a0f18;border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0;}
.chart-wrap canvas{width:100%;height:240px;display:block;}
.chart-cap{font-size:12.5px;color:var(--mut);margin-top:8px;}
.statline{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;}
.stat{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-family:var(--mono);font-size:12.5px;}
.stat b{color:var(--cyan);}

/* review */
.reviewer{border:1px solid var(--line);border-radius:14px;margin:14px 0;overflow:hidden;background:var(--panel);}
.rev-head{display:flex;gap:12px;align-items:center;padding:14px 16px;background:var(--panel2);border-bottom:1px solid var(--line);}
.avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;background:#232c42;flex:0 0 auto;}
.rev-head .rn{font-weight:800;}
.rev-head .rr{font-size:12px;color:var(--amber);letter-spacing:1.5px;font-weight:800;}
.objection{padding:14px 16px;border-top:1px dashed var(--line);animation:fade .4s ease;}
.objection .atk{border-left:3px solid var(--red);padding-left:12px;margin:8px 0;}
.objection .atk .who{font-size:11px;letter-spacing:1.5px;color:var(--red);font-weight:800;}
.objection .rpl{border-left:3px solid var(--cyan);padding-left:12px;margin:8px 0;}
.objection .rpl .who{font-size:11px;letter-spacing:1.5px;color:var(--cyan);font-weight:800;}
.verdict{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1.5px;padding:4px 11px;border-radius:999px;margin-top:6px;}
.verdict.rebutted{background:rgba(52,211,153,.14);color:var(--green);border:1px solid rgba(52,211,153,.45);}
.verdict.conceded{background:rgba(251,191,36,.13);color:var(--amber);border:1px solid rgba(251,191,36,.45);}
.conseq{font-size:13px;color:var(--amber);margin-top:6px;}

/* report — journal typography */
.report{background:#f7f3ea;color:#1c1a15;border-radius:14px;padding:clamp(18px,4vw,44px);margin:14px 0;font-family:var(--serif);animation:fade .4s ease;}
.report h2{font-size:26px;margin:0 0 4px;line-height:1.25;}
.report .rmeta{font-family:-apple-system,sans-serif;font-size:12.5px;color:#6b6256;margin-bottom:6px;}
.report .stamp{display:inline-block;font-family:-apple-system,sans-serif;font-size:11px;font-weight:800;letter-spacing:2px;
  color:#0d5c2e;border:2px solid #0d5c2e;border-radius:6px;padding:5px 12px;transform:rotate(-2deg);margin:10px 0;}
.report h3{font-size:19px;margin:26px 0 8px;border-bottom:1px solid #d8d0bd;padding-bottom:6px;}
.report p{font-size:16.5px;line-height:1.7;margin:10px 0;text-align:left;}
.report .abstract{background:#efe9da;border-radius:10px;padding:14px 16px;font-size:15.5px;}
.claim{background:rgba(216,169,78,.28);border:none;border-bottom:2px solid var(--gold);color:inherit;font:inherit;
  padding:0 2px;cursor:pointer;border-radius:3px 3px 0 0;text-align:left;}
.claim:active{background:rgba(216,169,78,.5);}
.claim.weak{background:rgba(248,113,113,.18);border-bottom-color:var(--red);}
.refs{font-size:13.5px;color:#4a4438;}
.refs li{margin:6px 0;}
.strength-note{font-family:-apple-system,sans-serif;font-size:12px;color:#6b6256;background:#efe9da;border-radius:8px;padding:8px 12px;margin-top:14px;}

/* tree drawer */
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--bg2);border-left:1px solid var(--line);
  z-index:60;transform:translateX(105%);transition:transform .28s ease;display:flex;flex-direction:column;}
.drawer.open{transform:none;}
.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);}
.tree-body{overflow-y:auto;padding:14px 16px;font-size:13px;}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:55;opacity:0;pointer-events:none;transition:opacity .25s;}
.scrim.on{opacity:1;pointer-events:auto;}
.tnode{margin:0;}
.tnode .trow{display:flex;gap:8px;align-items:flex-start;padding:6px 4px;border-radius:8px;}
.tnode .tico{flex:0 0 auto;width:22px;text-align:center;}
.tnode .tt{flex:1;}
.tnode .tt .tl{font-weight:700;font-size:13px;}
.tnode .tt .td{color:var(--mut);font-size:12px;}
.tkids{margin-left:11px;padding-left:12px;border-left:1px solid var(--line);}
.t-q .tl{color:var(--gold);} .t-hyp .tl{color:var(--violet);} .t-ev .tl{color:var(--green);}
.t-evcon .tl{color:var(--red);} .t-exp .tl{color:var(--cyan);} .t-conc .tl{color:var(--blue);}
.t-open .tl{color:var(--amber);} .t-rev .tl{color:#f0abfc;}

/* claim sheet */
.sheet{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;}
.sheet-card{width:min(560px,100%);max-height:70vh;overflow-y:auto;background:var(--panel2);border:1px solid var(--line);
  border-bottom:none;border-radius:18px 18px 0 0;padding:18px;transform:translateY(105%);transition:transform .28s ease;pointer-events:auto;}
.sheet.open .sheet-card{transform:none;}
.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.badge{font-size:11px;font-weight:800;letter-spacing:1.5px;padding:4px 11px;border-radius:999px;}
.badge.strong{background:rgba(52,211,153,.15);color:var(--green);border:1px solid rgba(52,211,153,.5);}
.badge.moderate{background:rgba(216,169,78,.15);color:var(--gold);border:1px solid rgba(216,169,78,.5);}
.badge.weak{background:rgba(248,113,113,.15);color:var(--red);border:1px solid rgba(248,113,113,.5);}
.claim-quote{font-family:var(--serif);font-style:italic;font-size:16px;border-left:3px solid var(--gold);padding-left:12px;}
.prov-list{list-style:none;margin:0;padding:0;}
.prov-list li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:8px 0;font-size:13.5px;}
.prov-list .pk{font-size:10.5px;font-weight:800;letter-spacing:1.5px;color:var(--cyan);}
.prov-list .pr{font-family:var(--mono);font-size:11.5px;color:var(--mut);}

.foot{max-width:1060px;margin:0 auto;padding:20px 16px 60px;color:var(--dim);font-size:12.5px;}
.foot strong{color:var(--mut);}
.newsev{border:1px solid rgba(251,191,36,.5);background:rgba(251,191,36,.07);border-radius:12px;padding:14px 16px;margin:12px 0;animation:fade .4s ease;}
.newsev .nh{color:var(--amber);font-weight:800;letter-spacing:1.5px;font-size:12px;}
@media (max-width:640px){
  .kv{grid-template-columns:1fr;}
  .kv dt{margin-top:6px;}
  .cycle-head{flex-direction:column;}
}
