/* The laboratory shares ОКО's gold, ink and engraved vector language. */
#oko-root .oko-lab-invitation { display:grid; grid-template-columns:110px 1fr auto; align-items:center; gap:30px; padding:30px 32px; margin:-35px 0 65px; border:1px solid #d3b98445; border-radius:5px; background:radial-gradient(ellipse at 8% 50%,#b79b6220,transparent 45%),linear-gradient(125deg,#181824,#0f121c); }
#oko-root .oko-lab-invitation h2 { font-size:36px; margin:10px 0 12px; line-height:1.1; }
#oko-root .oko-lab-invitation p { font-size:14px; line-height:1.75; max-width:570px; color:#aba5b8; margin:0; }
#oko-root .oko-lab-invitation-art { width:110px; height:110px; color:#d1b782; }
#oko-root .oko-lab-invitation .oko-primary { gap:15px; }
#oko-root .oko-lab-screen { max-width:1120px; margin:0 auto; padding:35px 44px 85px; user-select:text; }
#oko-root .oko-lab-head { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:35px 0; border-bottom:1px solid var(--oko-line); margin-bottom:32px; }
#oko-root .oko-lab-head h1 { font-size:clamp(40px,5vw,65px); line-height:1.05; letter-spacing:-.015em; margin:14px 0 0; }
#oko-root .oko-lab-head .oko-preview { width:100px; height:100px; flex:none; color:#c1a571; }
#oko-root .oko-lab-panel { position:relative; border:1px solid #d3b98436; border-radius:5px; background:linear-gradient(135deg,#1a1926,#10121c); padding:35px 40px; max-width:800px; margin:0 auto 35px; }
#oko-root .oko-lab-panel h2, #oko-root .oko-lab-history h2, #oko-root .oko-lab-journal h2 { font-size:34px; line-height:1.2; margin:12px 0 22px; }
#oko-root .oko-lab-panel h3 { font-size:25px; margin:12px 0 18px; }
#oko-root .oko-lab-panel p, #oko-root .oko-lab-intro p { color:#b8b1c3; font-size:16px; line-height:1.85; }
#oko-root .oko-lab-intro { max-width:740px; margin:0 0 28px; }
#oko-root .oko-lab-hint { font-size:13px !important; line-height:1.85 !important; color:#9a94a6 !important; margin:22px 0; }
#oko-root .oko-lab-panel blockquote { border-left:1px solid #c4aa7355; padding:14px 20px; margin:25px 0; background:#c4aa7306; color:#c8c0cf; white-space:pre-wrap; font-size:15px; line-height:1.9; }
#oko-root .oko-lab-actions { display:flex; gap:14px; margin-top:25px; }
#oko-root .oko-lab-actions > * { flex:1; }
#oko-root .oko-lab-actions .oko-primary { justify-content:center; }
#oko-root .oko-lab-text-button { color:#d7bf8d; border:0; border-bottom:1px solid #d3b98445; background:transparent; padding:10px 0; font-size:13px; line-height:1.6; }
#oko-root .oko-lab-text-button:hover { color:#f0dab2; border-color:#d3b984; }
#oko-root .oko-trial-head { display:flex; justify-content:space-between; align-items:center; gap:15px; border-bottom:1px solid #d3b98426; padding-bottom:22px; color:#b7a17a; font-size:13px; }
#oko-root .oko-lab-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:22px auto 32px; max-width:800px; }
#oko-root .oko-lab-metric { text-align:center; padding:20px 14px; border:1px solid #d3b9842c; border-radius:5px; background:#d3b98405; }
#oko-root .oko-lab-metric strong { display:block; color:#e4cd9d; font:500 37px/1.2 var(--oko-serif); overflow-wrap:anywhere; }
#oko-root .oko-lab-metric span { display:block; margin-top:10px; color:#a9a1b4; font-size:12px; line-height:1.7; }
#oko-root .oko-confidence { display:flex; flex-direction:column; gap:18px; color:#bdb4c7; font-size:14px; margin:24px 0; }
#oko-root .oko-confidence strong { font:500 24px var(--oko-serif); color:#e2c998; margin-left:10px; }
#oko-root input[type=range] { accent-color:#d4ba83; min-height:35px; cursor:pointer; width:100%; }
#oko-root .oko-confidence-summary { margin-top:28px; border-top:1px solid #d3b9842e; padding-top:20px; }
#oko-root .oko-confidence-summary > div { display:flex; justify-content:space-between; gap:20px; padding:15px 0; border-bottom:1px solid #d3b98416; font-size:13px; color:#b5aec0; }
#oko-root .oko-confidence-summary > div > span:last-child { color:#d2b986; text-align:right; }
#oko-root .oko-locked-seal { text-align:center; margin:25px auto; padding:26px; width:200px; min-height:200px; border:1px solid #d3b98455; border-radius:5px; background:radial-gradient(ellipse at 50% 20%,#66503135,transparent 70%),#0d0f19; box-shadow:0 15px 40px #0002; }
#oko-root .oko-locked-seal > span { color:#d9bf87; font:60px/1.3 var(--oko-serif); }
#oko-root .oko-locked-seal p { font-size:13px; margin:18px 0 0; }
#oko-root .oko-seal-choices { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin:25px 0 5px; }
#oko-root .oko-seal-choices > button { background:#0c0e18; border:1px solid #d3b98436; border-radius:5px; color:#d6bd87; padding:14px 8px; transition:background .2s,border-color .2s; }
#oko-root .oko-seal-choices > button:hover { background:#d3b98412; border-color:#d3b984a0; }
#oko-root .oko-seal-art { width:100%; aspect-ratio:1; color:inherit; }
#oko-root .oko-seal-choices span { font-size:12px; display:block; margin:10px 0 2px; color:#b4adbf; }
#oko-root .oko-seal-reveal { text-align:center; padding:30px 0; }
#oko-root .oko-seal-reveal .oko-seal-art { width:145px; color:#dfc695; }
#oko-root .oko-seal-reveal p { font-size:14px; }
#oko-root .oko-impulse-field { display:block; width:100%; max-width:440px; aspect-ratio:3/2; margin:25px auto; border:1px solid #d3b98426; }
#oko-root .oko-impulse-stage { min-height:365px; text-align:center; display:flex; flex-direction:column; justify-content:center; align-items:center; }
#oko-root .oko-impulse-stage .oko-big-btn { max-width:320px; margin-top:20px; }
#oko-root .oko-rest-mark { font:65px/1.2 var(--oko-serif); color:#d0b47d; display:block; margin:22px 0; }
#oko-root .oko-direction-choices { display:flex; gap:18px; margin:30px 0 20px; }
#oko-root .oko-direction-choices > button { flex:1; border:1px solid #d3b98455; border-radius:5px; background:#0f111c; color:#dec699; padding:28px 20px; font-size:19px; }
#oko-root .oko-direction-choices > button:hover { border-color:#d3b984; background:#d3b9840c; }
#oko-root .oko-impulse-feedback { text-align:center; }
#oko-root .oko-impulse-feedback .oko-lab-metrics { grid-template-columns:1fr 1fr; }
#oko-root .oko-hidden-door { text-align:center; padding:25px 0; }
#oko-root .oko-hidden-door > span { display:block; width:125px; padding:25px 0; margin:auto; border:1px solid #d3b98465; border-radius:65px 65px 3px 3px; color:#d3b984; font-size:45px; background:#0c0e19; }
#oko-root .oko-scene-art { display:block; width:100%; height:auto; border-radius:3px; }
#oko-root .oko-lab-panel > .oko-scene-art { max-width:560px; margin:25px auto; }
#oko-root .oko-image-choices { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:25px 0; }
#oko-root .oko-image-choices button { padding:0; border:1px solid #d3b98435; background:#0c0e18; color:#cec2ac; border-radius:4px; overflow:hidden; }
#oko-root .oko-image-choices button:hover { border-color:#dbc18a; }
#oko-root .oko-image-choices button span { display:block; font-size:13px; padding:15px 8px; }
#oko-root .oko-form-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); gap:20px; margin:25px 0; }
#oko-root .oko-field { display:block; margin:22px 0; }
#oko-root .oko-lab-screen label, #oko-root .oko-lab-journal label { font-size:13px; line-height:1.6; color:#c6bbcc; }
#oko-root .oko-lab-screen input:not([type=range],[type=radio],[type=checkbox]), #oko-root .oko-lab-screen textarea, #oko-root .oko-lab-screen select,
#oko-root .oko-lab-journal input, #oko-root .oko-lab-journal select { display:block; width:100%; min-width:0; margin-top:9px; border:1px solid #d3b98435; background:#0b0d16; color:#e2d9e7; font:14px/1.75 var(--oko-sans); border-radius:4px; padding:13px 15px; color-scheme:dark; }
#oko-root .oko-lab-screen textarea { resize:vertical; min-height:90px; }
#oko-root .oko-lab-screen input::placeholder, #oko-root .oko-lab-screen textarea::placeholder { color:#81788e; opacity:1; }
#oko-root .oko-lab-screen :is(input,textarea,select):focus-visible, #oko-root .oko-lab-journal :is(input,select):focus-visible { outline:1px solid #ddc48b; outline-offset:2px; }
#oko-root .oko-lab-screen button:disabled { opacity:.45; cursor:default; box-shadow:none; transform:none; }
#oko-root .oko-lab-panel > form > .oko-primary { margin-top:10px; }
#oko-root .oko-clock-timing { display:flex; align-items:center; justify-content:center; background:#0b0d16; }
#oko-root .oko-clock-quiet { text-align:center; padding:25px; max-width:500px; }
#oko-root .oko-clock-quiet > span { font-size:40px; color:#d2bb8e; }
#oko-root .oko-clock-quiet p { color:#b3aabf; font-size:14px; line-height:1.8; margin:25px 0 40px; }
#oko-root .oko-clock-stop { background:#141723; border:1px solid #d3b9846a; color:#e1cd9f; font-size:17px; min-height:70px; padding:20px 65px; }
#oko-root .oko-clock-ready { text-align:center; padding:30px 0; }
#oko-root .oko-clock-ready > .oko-preview { width:160px; height:160px; margin:0 auto; color:#c8ad77; }
#oko-root .oko-clock-ready .oko-big-btn { max-width:380px; margin:auto; }
#oko-root .oko-compass-observe { text-align:center; padding:25px 0; }
#oko-root .oko-compass-art { display:block; width:min(100%,270px); height:270px; margin:25px auto; color:#d5ba80; }
#oko-root .oko-compass-art .oko-seal-art { width:100%; height:100%; }
#oko-root .oko-lab-history { max-width:800px; margin:40px auto 0; }
#oko-root .oko-lab-history details, #oko-root .oko-lab-journal details { border:1px solid #d3b98426; border-radius:4px; background:#141420; margin:12px 0; }
#oko-root .oko-lab-history summary, #oko-root .oko-lab-journal summary { cursor:pointer; padding:18px 22px; color:#dec69a; font-size:15px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
#oko-root .oko-lab-history summary::after, #oko-root .oko-lab-journal summary::after { content:'+'; color:#bca06b; }
#oko-root .oko-lab-history details[open] > summary::after, #oko-root .oko-lab-journal details[open] > summary::after { content:'−'; }
#oko-root .oko-lab-history summary > span:last-of-type, #oko-root .oko-lab-journal summary > span { color:#978fa3; font-size:12px; margin-left:auto; }
#oko-root .oko-lab-history details > p, #oko-root .oko-lab-journal details > p { white-space:pre-wrap; font-size:15px; line-height:1.9; color:#bfb7ca; padding:0 22px 20px; margin:0; overflow-wrap:anywhere; }
#oko-root .oko-lab-history details > .oko-tags { margin:0 22px 20px; }
#oko-root .oko-lab-history details > button { margin:0 22px 20px; }
#oko-root .oko-tags { display:flex; flex-wrap:wrap; gap:8px; }
#oko-root .oko-tags > * { padding:6px 11px; font-size:12px; color:#bfc9ba; background:#b0bba50b; border:1px solid #b0bba528; border-radius:3px; }
#oko-root .oko-history-heading { display:flex; justify-content:space-between; align-items:center; gap:25px; margin:35px 0 20px; }
#oko-root .oko-history-heading h2 { margin:0; }
#oko-root .oko-small-filters { display:flex; flex-wrap:wrap; gap:8px; }
#oko-root .oko-small-filters > button { border:1px solid #d3b98426; background:transparent; color:#aaa2b7; border-radius:3px; padding:9px 12px; font-size:12px; }
#oko-root .oko-small-filters > button[aria-pressed=true] { color:#dec48e; border-color:#d3b98477; background:#d3b98409; }
#oko-root .oko-prediction-entry { padding:25px; border:1px solid #d3b9842d; background:#141520; border-radius:5px; margin:15px 0; }
#oko-root .oko-prediction-entry > p { color:#d5ccdf; font-size:16px; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; }
#oko-root .oko-entry-meta { display:flex; justify-content:space-between; gap:20px; color:#bca775; font-size:12px; line-height:1.6; }
#oko-root .oko-entry-dates { font-size:12px; line-height:1.9; color:#978fa3; margin:15px 0; }
#oko-root .oko-prediction-entry blockquote { border-left:1px solid #c8ae7566; padding:12px 18px; color:#bcb2c8; font-size:14px; line-height:1.8; white-space:pre-wrap; margin:22px 0 0; }
#oko-root .oko-prediction-entry fieldset { padding:20px 0; border:0; border-top:1px solid #d3b98424; margin-top:25px; }
#oko-root .oko-prediction-entry legend { color:#d2bd90; font-size:14px; padding-right:15px; }
#oko-root .oko-radio, #oko-root .oko-checkbox { display:flex; align-items:center; gap:12px; padding:10px 0; }
#oko-root .oko-checkbox { align-self:end; min-height:51px; }
#oko-root :is(.oko-radio,.oko-checkbox) input { accent-color:#d3b984; width:18px; height:18px; }
#oko-root .oko-form-error { color:#e3a79a !important; font-size:14px !important; }
#oko-root .oko-lab-empty { color:#948b9f; padding:30px 0; font-size:14px; }
#oko-root .oko-dream-map { max-width:800px; margin:45px auto; border-block:1px solid #d3b98430; padding:25px 0; }
#oko-root .oko-motif-cloud { display:flex; flex-wrap:wrap; gap:16px 25px; padding:30px 0 10px; align-items:baseline; }
#oko-root .oko-motif-cloud button { background:transparent; border:0; color:#c3b5a0; font-family:var(--oko-serif); padding:4px 0; border-bottom:1px solid transparent; }
#oko-root .oko-motif-cloud button span { color:#958264; font:11px var(--oko-sans); margin-left:9px; }
#oko-root .oko-motif-cloud button[aria-pressed=true] { color:#f0d9aa; border-color:#c9ae75; }
#oko-root .oko-history-search { max-width:280px; flex:1; }
#oko-root #oko-dream-form { scroll-margin-top:100px; }
#oko-root .oko-lab-journal { user-select:text; max-width:880px; padding:0 35px 85px; margin:0 auto; }
#oko-root .oko-lab-journal > .oko-history-heading { border-top:1px solid #d3b98435; padding-top:35px; margin-top:0; }
#oko-root .oko-journal-controls { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:25px 0; }
#oko-root .oko-lab-journal-entries { max-height:660px; overflow:auto; padding-right:8px; }
#oko-root .oko-storage-error { position:sticky; top:0; z-index:11000; border:1px solid #aa6358; color:#f1c3b9; background:#361f26; margin:0; padding:15px 25px; font-size:14px; }
@media (max-width:1000px) {
 #oko-root .oko-lab-invitation { grid-template-columns:80px 1fr; gap:20px; }
 #oko-root .oko-lab-invitation-art { width:80px; height:80px; }
 #oko-root .oko-lab-invitation > .oko-primary { grid-column:2; justify-self:start; }
}
@media (max-width:600px) {
 #oko-root .oko-lab-invitation { grid-template-columns:1fr; padding:25px 23px; margin:-25px 0 50px; gap:13px; }
 #oko-root .oko-lab-invitation-art { display:none; }
 #oko-root .oko-lab-invitation h2 { font-size:33px; }
 #oko-root .oko-lab-invitation p { font-size:14px; }
 #oko-root .oko-lab-invitation > .oko-primary { grid-column:1; margin-top:10px; }
 #oko-root .oko-lab-screen { padding:25px 20px 60px; }
 #oko-root .oko-lab-head { gap:10px; padding:25px 0; }
 #oko-root .oko-lab-head h1 { font-size:40px; overflow-wrap:anywhere; }
 #oko-root .oko-lab-head .oko-preview { width:58px; height:58px; }
 #oko-root .oko-lab-head .oko-eyebrow { font-size:9px; }
 #oko-root .oko-lab-panel { padding:25px 20px; margin-bottom:25px; }
 #oko-root .oko-lab-panel h2, #oko-root .oko-lab-history h2, #oko-root .oko-lab-journal h2 { font-size:30px; }
 #oko-root .oko-lab-panel p { font-size:15px; }
 #oko-root .oko-trial-head .oko-eyebrow { font-size:9px; max-width:200px; }
 #oko-root .oko-seal-choices { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
 #oko-root .oko-seal-choices > button { padding:10px 8px; }
 #oko-root .oko-seal-choices span { font-size:11px; }
 #oko-root .oko-locked-seal { width:150px; min-height:165px; padding:20px; }
 #oko-root .oko-locked-seal > span { font-size:45px; }
 #oko-root .oko-confidence-summary > div { font-size:12px; }
 #oko-root .oko-lab-metrics { gap:9px; }
 #oko-root .oko-lab-metric { padding:18px 9px; }
 #oko-root .oko-lab-metric strong { font-size:29px; }
 #oko-root .oko-lab-metric span { font-size:10px; }
 #oko-root .oko-lab-actions { flex-direction:column; }
 #oko-root .oko-impulse-stage { min-height:310px; }
 #oko-root .oko-direction-choices { gap:12px; }
 #oko-root .oko-direction-choices > button { padding:24px 9px; font-size:15px; }
 #oko-root .oko-image-choices { gap:12px; }
 #oko-root .oko-image-choices button span { font-size:11px; padding:12px 5px; }
 #oko-root .oko-form-grid { grid-template-columns:1fr; gap:20px; }
 #oko-root .oko-form-grid .oko-confidence { margin:5px 0; }
 #oko-root .oko-history-heading { flex-direction:column; align-items:flex-start; gap:18px; }
 #oko-root .oko-history-search { max-width:none; width:100%; }
 #oko-root .oko-prediction-entry { padding:22px 18px; }
 #oko-root .oko-entry-meta { gap:15px; font-size:11px; }
 #oko-root .oko-prediction-entry > p { font-size:15px; }
 #oko-root .oko-lab-history summary, #oko-root .oko-lab-journal summary { gap:12px; padding:18px 15px; font-size:14px; flex-wrap:wrap; }
 #oko-root .oko-lab-history summary > span:last-of-type, #oko-root .oko-lab-journal summary > span { margin:0; font-size:11px; }
 #oko-root .oko-lab-journal { padding:0 23px 60px; }
 #oko-root .oko-journal-controls { grid-template-columns:1fr; }
 #oko-root .oko-lab-journal-entries { max-height:none; padding-right:0; }
}
@media (prefers-reduced-motion:reduce) { #oko-root .oko-seal-choices button { transition:none; } }
