/* Content Craver: ink, violet, ice and a fluorescent control surface. */
:root{
  color-scheme:light;--page:#f4f1f7;--panel:#fffcff;--rail:#ece8f1;--raised:#eae6f0;--line:#c7c0d0;--text:#1c1527;--muted:#574e64;--accent:#5615ae;--tint:#e7d9fb;--ice:#006373;--signal:#edfa32;--danger:#a42348;--mono:"IBM Plex Mono",ui-monospace,monospace;--rad:6px;color:var(--text);background:var(--page)
}
:root[data-theme=dark]{color-scheme:dark;--page:#100d18;--panel:#1a1623;--rail:#16111e;--raised:#282130;--line:#44384f;--text:#f6f0fb;--muted:#c2b4cc;--accent:#c99aff;--tint:#382445;--ice:#65e6ee;--signal:#eafb31;--danger:#ff90a9}
body{background:var(--page);color:var(--text);font-family:Inter,system-ui,sans-serif}
.layout{grid-template-columns:230px minmax(0,1fr)}.layout .rail{background:var(--rail);border-right:1px solid var(--line);padding-top:21px}.cc-brand-row{display:flex;align-items:center;justify-content:space-between}
#cc-sidebar{display:flex;flex-direction:column;min-height:0;flex:1;overflow:auto}
.brand{margin:0 4px 24px;font-weight:850;letter-spacing:-.065em}.brand img{width:43px;height:43px;border-radius:7px;border:1px solid var(--line);object-fit:cover}
[data-menu]{display:none}.cc-prefs{margin-left:auto;display:flex;gap:4px;flex:none}.cc-prefs button,[data-menu]{font:700 13px var(--mono);border:1px solid var(--line);border-radius:4px;padding:0 9px;min-width:38px;height:36px;background:var(--panel);color:var(--text);cursor:pointer}
.cc-prefs [data-pref=theme]{font:23px/1 system-ui}.crumb .cc-prefs button{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:0 9px}
.crumb b,.cc-clips h1,.pkgname b,.sectionhead h2{color:var(--text)}.crumb{font-family:var(--mono);margin-bottom:18px}
.hero h1,.cv-top h1,.cc-clips h1,.login h1{font-family:"Arial Narrow",Impact,system-ui,sans-serif;font-weight:850;letter-spacing:-.043em;line-height:1.02}
.hero h1::after,.cv-top h1::after{content:"";display:block;width:42px;height:4px;margin-top:10px;background:var(--accent);transform:skewX(-24deg)}
.hero{min-width:0}.main{min-width:0}.main:has(#livejobs) .hero{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:216px;padding:26px clamp(18px,3vw,45px);border-radius:4px;color:#fff;overflow:hidden;background:#191020}
.main:has(#livejobs) .hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#181020 8%,#24112bd9 48%,transparent 85%),url(/content-craver.png) right 48% / min(58%,620px) auto no-repeat}
.main:has(#livejobs) .hero h1{max-width:80%;font-size:clamp(32px,4vw,57px)}
.main:has(#livejobs) .hero p{color:#ebdaee}.main:has(#livejobs) .hero h1:after{background:var(--signal)}
.nav{border-radius:4px}.nav.active,.nav[aria-current=page]{color:var(--accent);background:var(--tint);box-shadow:inset 3px 0 var(--accent)}
.btn,.smallbtn,.cc-prefs button,.cv-head select,input,textarea,select{color:var(--text);background:var(--panel);border-color:var(--line)}.btn,.smallbtn,.textbtn{border-radius:4px}.btn.primary{background:var(--signal);color:#1c2004;border-color:#9ca636;font-weight:750}.btn.primary:hover{background:#deed25;color:#171b00}
.btn:hover,.smallbtn:hover,.nav:hover,.textbtn:hover,.cc-prefs button:hover,.cv-run:hover,.threadrow:hover,.row:hover{background:var(--raised);color:var(--text)}
.panel,.loginbox,.sheet,dialog,.cv-board,.cv-card,.cv-port,.node,.modelbank,.boardcard,.card,.pkgtable,.table,.badge,.modelhead,.threadrow,.msg,.file,.foldercard{background-color:var(--panel);color:var(--text);border-color:var(--line)}
.sheet,.panel,.cv-board,.node,.modelbank{border-radius:6px}.textbtn,.form input,.form select,.form textarea,.filter,.input,.cc-clip-form input,.cc-clip-form select{color:var(--text);background:var(--panel);border-color:var(--line)}
.map,.cv-scroll{background-color:var(--raised);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:16px 16px}
.maphead small{background:var(--raised);color:var(--muted)}.branch,.row.head,.cv-tools,.cv-hint,.empty,.threadrow.active{background-color:var(--raised);color:var(--text);border-color:var(--line)}
.branch.selected{border-color:var(--ice);background:var(--tint)}.branch small,.returnpath,.cv-type,.cv-card small,.sheethead button,.smallcopy,.form label{color:var(--muted)}.glyph{background:var(--tint);color:var(--accent);border-radius:6px}.error,.btn.danger{color:var(--danger)}
.cv-face{color:var(--text)}.cv-link{stroke:var(--ice)}.cv-plane marker path{fill:var(--ice)}.sectionhead{border-top:1px solid var(--line);padding-top:15px}
.login{background:linear-gradient(90deg,#160e1b11 20%,#120a19a6 55%,#120a19 94%),url(/content-craver.png) 12% 45% / cover;display:flex;align-items:center;justify-content:flex-end;padding:5vw;min-height:100svh}
.loginbox{width:min(440px,100%);padding:30px;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--accent);box-shadow:0 16px 60px #0d061d55}
.cc-login-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cc-login-head .brand{margin:0;font-size:20px}.loginbox footer{color:var(--muted)}dialog{max-width:min(94vw,690px);max-height:90dvh;overflow:auto}dialog::backdrop{background:#0c0712b0}
@media(max-width:760px){
 .layout{display:block}.layout .rail{position:relative;display:block;padding:8px 14px;border-right:0;border-bottom:1px solid var(--line);height:auto;overflow:visible}
 .cc-brand-row .brand,.rail .brand{display:flex;margin:0;font-size:20px}.rail .brand span{display:block}.brand img{width:38px;height:38px}
 [data-menu]{display:inline-grid;place-items:center;width:44px;height:44px;font-size:21px}
 #cc-sidebar{display:none}.rail.expanded #cc-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:9px;gap:3px;overflow:visible}
 #cc-sidebar .nav{width:100%;height:auto;min-height:44px;justify-content:flex-start;margin:0;padding:8px;white-space:normal;font-size:13px}
 #cc-sidebar .nav span,#cc-sidebar .bottom{display:block}#cc-sidebar .workplace,#cc-sidebar .railaccount{display:none}
 .main{padding:12px max(12px,env(safe-area-inset-right)) calc(36px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
 .cc-prefs button,.crumb .cc-prefs button{min-width:44px;height:44px}.crumb{gap:6px;margin-bottom:12px;font-size:12px}
 .hero,.cv-top{align-items:flex-start;flex-wrap:wrap}.hero h1,.cv-top h1{font-size:clamp(26px,7vw,38px);overflow-wrap:anywhere}
 .main:has(#livejobs) .hero{min-height:180px;padding:16px}.main:has(#livejobs) .hero h1{font-size:clamp(25px,6vw,39px)}
 .main:has(#livejobs) .hero:before{background:linear-gradient(90deg,#180e20 0%,#1a0a24cc 45%,#180e2011 85%),url(/content-craver.png) right center / auto 115% no-repeat}
 .login{padding:clamp(12px,4vw,22px);align-items:center;justify-content:center;background-position:center}.loginbox{padding:20px 16px}.cc-login-head .brand{gap:7px;font-size:18px}
 .btn,.smallbtn,.textbtn,.cv-tools .smallbtn{min-height:44px}.form input,.form select,.form textarea,.input,.filter,.cc-clip-form input,.cc-clip-form select{font-size:16px;min-height:44px}
 .form,.panel,.workgrid,.chatlayout,.cv-board{min-width:0}.panel code,.smallcopy,.provider strong,.hero p{overflow-wrap:anywhere}.provider,.sectionhead,.actions,.sheethead{flex-wrap:wrap}.cv-scroll{height:clamp(280px,52dvh,540px)}
 .cv-port:before{content:"";position:absolute;inset:-12px}.cc-library video{max-height:48vh}.sheet{max-width:100%}.modelbank .branches{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.row,.file,.provider,.jobcard{background:var(--panel);color:var(--text)}
.column,.msg{background:var(--raised);color:var(--text)}.msg.assistant,.badge.running{background:var(--tint);color:var(--accent)}
.msg b,.coltitle,.pkgname small,.badge,.jobcard small,.file .name small{color:var(--muted)}
:root[data-theme=dark] .alert,:root[data-theme=dark] .notice,:root[data-theme=dark] .warning{background:#332735;color:#f5d3d6}
.loginbox .cc-login-head .brand{margin:0}.cv-port:hover{background:var(--ice)}
@media(max-width:760px){.board{grid-template-columns:repeat(5,minmax(190px,70vw));scroll-snap-type:x proximity}.column{scroll-snap-align:start}.tabbar,.tabs{flex-wrap:wrap}.row,.row.head{gap:6px}.file,.provider,.threadrow{min-width:0}.provider a{white-space:normal}.cv-zoom .smallbtn{min-width:44px}.cc-login-head .cc-prefs button{min-width:40px}.cc-clip-form{grid-template-columns:1fr}.board .jobcard{min-height:44px}}
.cc-login-head .cc-prefs{margin-left:0}
.main:has(#livejobs) .hero h1{max-width:100%}
.main:has(#livejobs) .hero::before{background-position:center,right 35%}
.map .maphead small,.map .returnpath small{background:var(--raised);color:var(--muted)}
@media(max-width:760px){.main:has(#livejobs) .hero h1{font-size:clamp(22px,5.8vw,36px)}.main:has(#livejobs) .hero:before{background-position:center,right center}}
/* Clinic terminal finishes shared by the menu, production graph, forms and overlays. */
:root{--edge:#8b243a;--circuit:#087b86;--chrome:#40242f;--metal:#eae3e8;--line:#c5adb4;--accent:#912840;--tint:#f5dce1;--ice:#00656e;--hot:#b52243;--signal:#ffdf4f;--rail:#efe6e9;--panel:#fffafb;--page:#f4edef;--muted:#664f5b}
:root[data-theme=dark]{--edge:#b94555;--circuit:#63e7ee;--chrome:#47222b;--metal:#261820;--line:#56313d;--accent:#ff8291;--tint:#41202a;--ice:#6be8ed;--hot:#f05b69;--signal:#ffdc44;--rail:#150f15;--panel:#1a141b;--page:#100e14;--muted:#b7a1ad}
:root{--cut:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.layout .rail{border-right:2px solid var(--edge);background:linear-gradient(145deg,var(--metal),var(--rail) 23%);box-shadow:inset 5px 0 var(--chrome)}
.brand{color:var(--text);text-transform:uppercase;font-size:20px;line-height:1.03;letter-spacing:-.045em}.brand img{border:1px solid var(--circuit);border-radius:0;clip-path:var(--cut)}.brand span{max-width:110px;white-space:normal}
.nav,.btn,.textbtn,.smallbtn,.cc-prefs button,.cv-card,.modelbank,.node,.loginbox,.panel,.map,.cv-board,.file,.jobcard,.column,.cc-library article,.cc-monitors article,.cc-clip-form,.form input,.form select,.form textarea,.filter,.badge,dialog,.sheet{border-radius:2px}
.nav{border:1px solid transparent;border-bottom-color:var(--line);padding:12px 10px;color:var(--muted);font-family:"Barlow Semi Condensed","Arial Narrow",system-ui,sans-serif;font-weight:650}
.nav .icon{color:var(--edge)}.nav.active,.nav[aria-current=page]{background:var(--tint);color:var(--text);border-color:var(--edge);border-left:3px solid var(--hot);box-shadow:none;clip-path:var(--cut)}.nav.active .icon{color:var(--hot)}
.btn,.smallbtn,.cc-prefs button,.cv-tools button,.chatrail .btn{font-family:var(--mono);letter-spacing:-.035em;border-color:var(--edge);background:var(--metal);color:var(--text)}
.btn.primary{background:var(--signal);color:#23192a;border-color:transparent;clip-path:var(--cut);font-weight:800}.btn.primary:hover{background:#ffea8b}
:root[data-theme=dark] .smallbtn,:root[data-theme=dark] .cc-prefs button{color:var(--ice)}
.btn:focus-visible,.nav:focus-visible,.smallbtn:focus-visible{clip-path:none;outline-color:var(--circuit)}
.hero h1,.cv-top h1,.cc-clips h1,.loginbox h1{font-family:"Arial Narrow",Impact,system-ui,sans-serif;text-transform:uppercase;letter-spacing:-.035em}.hero h1::after,.cv-top h1::after{width:75px;background:repeating-linear-gradient(110deg,var(--hot) 0 8px,transparent 8px 11px)}
.crumb{border-bottom:1px solid var(--edge);padding-bottom:8px;color:var(--muted)}.crumb b{color:var(--accent)}
.panel,.cv-board,.cc-clip-form,.cc-library article,.map,.loginbox{background-color:var(--panel);border:1px solid var(--line);border-top:2px solid var(--edge);box-shadow:inset 3px 0 var(--chrome)}
.panel h2,.map h2,.sectionhead h2,.cv-board h2,.sheet h2{font-family:"Arial Narrow",system-ui,sans-serif;font-weight:800;letter-spacing:-.03em}
.sectionhead{border-top:1px solid var(--edge)}.sectionhead>h2:before,.panel>h2:before{content:"";display:inline-block;width:4px;height:.8em;margin-right:.45em;background:var(--hot);transform:skew(-9deg)}
.map,.cv-scroll{background-color:var(--rail);background-image:linear-gradient(90deg,var(--line) 1px,transparent 1px),linear-gradient(var(--line) 1px,transparent 1px);background-size:48px 48px}
.node,.cv-card,.modelbank{border-color:var(--edge);box-shadow:inset 0 2px var(--chrome)}
.node .glyph{background:var(--metal);color:var(--circuit);border-left:2px solid var(--circuit);border-radius:0}
.cv-type,.cv-type i,.cv-card small,.modelbank small{color:var(--muted)}.cv-port{border-color:var(--circuit)}.cv-working,.node.live{outline:1px solid var(--circuit)}
.branch.selected{box-shadow:inset 2px 0 var(--circuit)}.branch.selected .branchdot{background:var(--circuit)}
.form input,.form select,.form textarea,.filter{border-color:var(--line);border-bottom:2px solid var(--edge)}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--circuit)}
.sheet{border-top:3px solid var(--hot)}.sheethead{border-bottom:1px solid var(--edge);padding-bottom:10px}.badge{font-family:var(--mono)}
.main:has(#livejobs) .hero{border:1px solid var(--edge);border-left:5px solid var(--hot);clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%)}
.main:has(#livejobs) .hero:after{content:"";position:absolute;z-index:-1;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#12061222 3px 4px);pointer-events:none}
@media(max-width:760px){.layout .rail{border-right:0;border-bottom:2px solid var(--edge)}.rail .brand span{max-width:none;font-size:18px}.hero h1,.cv-top h1,.main:has(#livejobs) .hero h1{font-size:clamp(22px,5.6vw,36px)}.cv-tools .smallbtn,.cc-prefs button{min-height:44px}.loginbox .brand span{max-width:90px}.main:has(#livejobs) .hero p{max-width:82%}}

/* Tinted glass with a directional reflection and a solid text surface. */
:root {
  --glass-face: #fffdf9ed;
  --glass-end: #e7f1f5ed;
  --glass-rim: #748a98;
  --glass-shine: #ffffff;
  --ambient-cyan: #95d8e7;
  --ambient-purple: #d8bee9;
}
:root[data-theme=dark] {
  --glass-face: #191c31ed;
  --glass-end: #0d1826ec;
  --glass-rim: #566880;
  --glass-shine: #c5f7ff69;
  --ambient-cyan: #134251;
  --ambient-purple: #382546;
  --muted: #cdcad8;
}
.layout {
  background: radial-gradient(ellipse at 95% 0%, var(--ambient-cyan), transparent 42%),
    radial-gradient(ellipse at 12% 80%, var(--ambient-purple), transparent 50%), var(--page);
}
.layout .rail, .panel, .loginbox, .cv-card, .modelbank, .node, .sheet, dialog, .jobcard, .column {
  background: linear-gradient(142deg, var(--glass-face) 10%, var(--glass-end) 82%);
  border-color: var(--glass-rim);
  box-shadow: inset 0 1px var(--glass-shine), inset 1px 0 #a5efff24, 0 5px 18px #070a1917;
}
.layout .rail, .sheet, dialog, .loginbox {
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.nav.active, .nav[aria-current=page] {
  background: linear-gradient(105deg, var(--tint), var(--glass-end));
  border-left-color: var(--hot);
  box-shadow: inset 0 1px var(--glass-shine);
}
.btn.primary {
  background: linear-gradient(165deg, #fff0a5, #ffdb43 65%);
  color: #211600;
}
:focus-visible { outline: 2px solid var(--ice); outline-offset: 2px; }
