:root{
  color-scheme:dark;
  --bg:#090E1E; --panel:#111628; --panel-2:#161C2F; --ink:#DDEAFF; --muted:#848DAC; --faint:#545E7E; --line:#22293E;
  --brand:#FFFFFF; --brand-2:#D7E4FF; --brand-ink:#090E1E; --brand-soft:#1B2135; --accent:#FF5A6E; --accent-soft:#2A1216;
  --gold:#E8B04A; --ok:#3DDC97; --ok-soft:#0F2219; --warn:#F5A524; --warn-soft:#241A08;
  --side-bg:#090E1E; --side-ink:#C6D3F6; --side-muted:#636E91; --side-line:rgba(255,255,255,.08); --side-hover:rgba(255,255,255,.04); --side-on:#171D30;
  --c-ogr:#2DD4BF; --c-mtal:#FB7185; --c-nob:#60A5FA; --c-res:#9AA5C5; --c-tas:#FBBF24; --c-isk:#4ADE80; --c-fat:#C084FC; --c-ogt:#F472B6; --c-buro:#38BDF8; --c-mfs:#FB923C; --c-sb:#A3E635; --c-rhb:#F9A8D4; --c-klp:#FACC15; --c-brs:#67E8F9; --c-mali:#34D399;
  --shadow:inset 0 1px 0 rgba(255,255,255,.03); --shadow-lg:0 30px 80px -20px rgba(8,12,28,.9),0 0 0 1px rgba(255,255,255,.06);
  --glass:#111628; --glass-line:#1F263B;
  --r:14px; --sans:"Geist","Google Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; --disp:"Geist","Google Sans",system-ui,sans-serif;
  --serif:"Tinos","Times New Roman",Times,serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
h1,h2,h3{font-family:var(--disp);letter-spacing:-.02em;text-wrap:balance}
.app{display:grid;grid-template-columns:284px 1fr;min-height:100%}

/* ---------- Sidebar ---------- */
.side{background:var(--side-bg);color:var(--side-ink);display:flex;flex-direction:column;position:sticky;top:env(safe-area-inset-top,0px);height:100vh;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}
.brand{display:flex;gap:12px;align-items:center;padding:22px 20px 18px;cursor:pointer;border-bottom:1px solid var(--side-line)}
.mono{width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#1B7389,#0C4A5A);color:#fff;display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:15px;position:relative;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.mono::after{content:"";position:absolute;right:-4px;top:-4px;width:14px;height:14px;border-radius:4px;background:var(--accent);border:2px solid var(--side-bg);
  -webkit-mask:linear-gradient(#090E1E 0 0) center/100% 36% no-repeat,linear-gradient(#090E1E 0 0) center/36% 100% no-repeat;mask:linear-gradient(#090E1E 0 0) center/100% 36% no-repeat,linear-gradient(#090E1E 0 0) center/36% 100% no-repeat}
.brand h1{margin:0;font-size:17px;font-weight:700;color:#fff;line-height:1.2}
.brand small{display:block;color:var(--side-muted);font-size:11.5px;font-weight:500;margin-top:2px}
.snav{padding:12px 12px 20px;display:flex;flex-direction:column;gap:2px}
.slabel{font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--side-muted);font-weight:700;padding:16px 10px 6px}
.sbtn{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;font-size:13px;font-weight:500;color:var(--side-ink)}
.sbtn svg{width:17px;height:17px;flex:none;opacity:.85}
.sbtn:hover{background:var(--side-hover)}
.sbtn.on{background:var(--side-on);color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--gold)}
.sbtn:focus-visible{outline:2px solid var(--gold)}
.sbtn .dot{width:8px;height:8px;border-radius:3px;background:var(--c);flex:none}
.sbtn .cnt{margin-left:auto;font-size:11px;color:var(--side-muted);font-weight:600}
.sbtn .chev{margin-left:6px;transition:transform .15s;opacity:.6}
.sgrp.open > .sbtn .chev{transform:rotate(90deg)}
.sgrp .sub{display:none;padding:2px 0 6px 18px;border-left:1px solid var(--side-line);margin-left:14px}
.sgrp.open .sub{display:block}
.sub .sbtn{font-size:12.5px;padding:6px 10px;color:var(--side-muted)}
.sub .sbtn:hover{color:var(--side-ink)}
.sub .sbtn.on{color:#fff}
.side-foot{margin-top:auto;padding:12px;border-top:1px solid var(--side-line)}

/* ---------- Top ---------- */
.main{min-width:0;display:flex;flex-direction:column}
.top{display:flex;align-items:center;gap:12px;padding:14px 32px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);position:sticky;top:env(safe-area-inset-top,0px);z-index:5;border-bottom:1px solid var(--line)}
.search{position:relative;flex:1;max-width:540px}
.search input{width:100%;padding:11px 14px 11px 40px;border-radius:11px;border:1px solid var(--line);background:var(--panel);box-shadow:0 1px 2px rgba(10,40,50,.04)}
.search input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft)}
.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--faint)}
.search kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--faint);border:1px solid var(--line);border-radius:5px;padding:0 6px;background:var(--panel-2);font-family:inherit}
.results{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;max-height:380px;overflow:auto;z-index:20}
.results button{all:unset;cursor:pointer;display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;width:calc(100% - 20px)}
.results button:hover,.results button.hl{background:var(--brand-soft)}
.results b{font-weight:600;display:block}
.results span{font-size:12px;color:var(--muted)}
.today{margin-left:auto;text-align:right;font-size:12px;color:var(--muted);white-space:nowrap}
.today b{display:block;color:var(--ink);font-size:13px}
.top .menu-btn{display:none}
.view{padding:28px 32px 48px;flex:1;max-width:1560px;width:100%}

/* ---------- Common ---------- */
.btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:10px;font-weight:600;font-size:13px;border:1px solid var(--line);background:var(--panel);transition:border-color .12s,transform .12s,background .12s;white-space:nowrap}
.btn:hover{border-color:var(--brand)}
.btn:active{transform:translateY(1px)}
.btn.pri{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}
.btn.pri:hover{background:var(--brand-2);border-color:var(--brand-2)}
.btn.gold{background:var(--gold);color:#241700;border-color:var(--gold)}
.btn.ghost{background:transparent;border-color:transparent;color:var(--brand)}
.btn.ghost:hover{background:var(--brand-soft)}
.btn.sm{padding:6px 10px;font-size:12px;border-radius:8px}
.btn.danger{color:var(--accent)}
.btn svg{width:15px;height:15px;flex:none}
.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.btn[aria-busy="true"]{opacity:.6;pointer-events:none}
.btn[disabled]{opacity:.45;pointer-events:none}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand)}
.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.red{background:var(--accent-soft);color:var(--accent)}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--faint);margin:0 0 10px}
.ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex:none;background:color-mix(in srgb,var(--c,var(--brand)) 13%,transparent);color:var(--c,var(--brand))}
.ic svg{width:19px;height:19px}
.ic.sm{width:30px;height:30px;border-radius:8px}.ic.sm svg{width:16px;height:16px}
.note{font-size:12.5px;background:var(--warn-soft);color:var(--ink);padding:9px 12px;border-radius:10px;display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid color-mix(in srgb,var(--warn) 25%,transparent)}
.note button{all:unset;cursor:pointer;font-weight:700;color:var(--warn);white-space:nowrap}
.note.info{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 25%,transparent)}
.note.info button{color:var(--brand)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.f label,.flabel{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:5px}
.f input,.f select,.f textarea,.inp{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel);transition:border-color .12s,box-shadow .12s}
.f textarea{min-height:88px;resize:vertical;line-height:1.5}
.f input:focus,.f select:focus,.f textarea:focus,.inp:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 4px var(--brand-soft)}
.tabs{display:flex;gap:4px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:12px;width:max-content;max-width:100%;overflow-x:auto}
.tabs button{all:unset;cursor:pointer;padding:8px 14px;border-radius:9px;font-weight:600;font-size:13px;color:var(--muted);white-space:nowrap;display:flex;gap:8px;align-items:center}
.tabs button .n{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;font-size:11px;background:var(--panel-2);border:1px solid var(--line)}
.tabs button.on{background:var(--brand);color:var(--brand-ink)}
.tabs button.on .n{background:rgba(255,255,255,.18);border-color:transparent}
.tabs button:focus-visible{outline:2px solid var(--brand)}
.page-head{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;justify-content:space-between;margin-bottom:20px}
.page-head h2{margin:4px 0 0;font-size:26px;font-weight:700}
.page-head p{margin:4px 0 0;color:var(--muted);max-width:70ch}
.crumb{font-size:12px;color:var(--muted);font-weight:600}
.crumb button{all:unset;cursor:pointer;color:var(--brand)}
.actions{display:flex;flex-wrap:wrap;gap:8px}

/* ---------- Home ---------- */
.hero{position:relative;overflow:hidden;border-radius:20px;padding:30px 32px;color:#EAF5F7;background:
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Cpath d='M20 14h4v6h6v4h-6v6h-4v-6h-6v-4h6z' fill='%23ffffff' fill-opacity='.055'/%3E%3C/svg%3E"),
  radial-gradient(120% 140% at 100% 0%,#1A7D93 0%,transparent 55%),linear-gradient(135deg,#0C5163 0%,#082F3A 100%);
  box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:end;margin-bottom:22px}
.hero h2{margin:10px 0 6px;font-size:32px;font-weight:700;color:#fff;line-height:1.15}
.hero p{margin:0;color:#B9D6DD;max-width:56ch}
.hero .tag{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:600;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.14)}
.hero .tag i{width:7px;height:7px;border-radius:50%;background:var(--gold);display:block}
.hstats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.hstat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px}
.hstat b{display:block;font-family:var(--disp);font-size:26px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;line-height:1.1}
.hstat span{font-size:11.5px;color:#A9CAD2;font-weight:600}
.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:26px}
.qa{all:unset;cursor:pointer;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;gap:12px;align-items:flex-start;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}
.qa:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--c) 50%,var(--line))}
.qa:focus-visible{outline:2px solid var(--brand)}
.qa b{display:block;font-size:14px;font-weight:700}
.qa span{font-size:12px;color:var(--muted);line-height:1.4;display:block;margin-top:2px}
.recent{margin-bottom:26px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{all:unset;cursor:pointer;font-size:12.5px;font-weight:600;padding:6px 12px 6px 8px;border-radius:999px;background:var(--panel);border:1px solid var(--line);display:inline-flex;gap:7px;align-items:center}
.chip i{width:8px;height:8px;border-radius:3px;background:var(--c)}
.chip:hover{border-color:var(--brand);color:var(--brand)}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px;align-items:start}
.cat{overflow:hidden}
.cat header{display:flex;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);position:relative}
.cat header::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--c)}
.cat h3{margin:0;font-size:15px;font-weight:700}
.cat header small{color:var(--muted);font-size:12px}
.cat header .pill{margin-left:auto;background:color-mix(in srgb,var(--c) 12%,transparent);color:var(--c)}
.cat ul{list-style:none;margin:0;padding:6px}
.cat li button{all:unset;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;width:calc(100% - 24px)}
.cat li button:hover{background:var(--panel-2)}
.cat li button:hover i{color:var(--c);transform:translateX(2px)}
.cat li b{font-weight:600;font-size:13.5px;display:block}
.cat li span{font-size:12px;color:var(--muted)}
.cat li i{font-style:normal;color:var(--faint);font-size:18px;transition:transform .15s}

/* ---------- Editor ---------- */
.ed{display:grid;grid-template-columns:minmax(330px,430px) 1fr;gap:22px;align-items:start}
.form{padding:18px;display:flex;flex-direction:column;gap:14px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);max-height:calc(100vh - 104px);overflow:auto}
.tbl-ed{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}
.tbl-ed .tscroll{overflow-x:auto}
.tbl-ed table{border-collapse:collapse;width:100%}
.tbl-ed th{font-size:11px;text-align:left;color:var(--muted);font-weight:700;padding:7px 6px;background:var(--panel-2);border-bottom:1px solid var(--line);white-space:nowrap}
.tbl-ed td{padding:2px;border-bottom:1px solid var(--line)}
.tbl-ed tr:last-child td{border-bottom:0}
.tbl-ed td input,.tbl-ed td select{border:0;padding:6px;width:100%;min-width:64px;background:transparent;border-radius:6px}
.tbl-ed td input:focus,.tbl-ed td select:focus{background:var(--brand-soft);outline:none}
.tbl-ed td.x{width:30px}
.tbl-ed td.x button{all:unset;cursor:pointer;color:var(--faint);padding:4px 8px;border-radius:6px}
.tbl-ed td.x button:hover{color:var(--accent);background:var(--accent-soft)}
.tbl-bar{display:flex;gap:4px;padding:6px;flex-wrap:wrap;border-top:1px solid var(--line);background:var(--panel-2)}
.tbl-bar button{all:unset;cursor:pointer;font-size:12px;font-weight:600;padding:5px 9px;border-radius:7px;color:var(--brand)}
.tbl-bar button:hover{background:var(--brand-soft)}
.paste{padding:8px;display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line)}
.paste textarea{min-height:90px;font-size:12px}
.paste small{color:var(--muted);font-size:11.5px}
.stage{min-width:0}
.stage-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;color:var(--muted);gap:10px;flex-wrap:wrap}
.paper-wrap{background:
  radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--ink) 9%,transparent) 1px,transparent 0) 0 0/18px 18px,var(--panel-2);
  border:1px solid var(--line);border-radius:var(--r);padding:22px;overflow:hidden}
.paper-scale{transform-origin:top left}
.paper{width:794px;min-height:1123px;background:#fff;color:#090E1E;box-shadow:0 2px 6px rgba(8,12,28,.08),0 22px 50px -12px rgba(10,40,50,.3);padding:64px 72px 60px 80px}
.paper.land{width:1123px;min-height:794px;padding:48px 52px}

/* ---------- Document typography ---------- */
.doc{font-family:var(--serif);font-size:16px;line-height:1.5;color:#090E1E}
.doc p{margin:0 0 8px}
.doc .c{text-align:center}.doc .r{text-align:right}.doc .j{text-align:justify}.doc .b{font-weight:700}
.doc .ind{text-indent:1.25cm;text-align:justify}
.doc .hd{text-align:center;font-weight:700;line-height:1.35;margin-bottom:18px}
.doc .ttl{text-align:center;font-weight:700;font-size:17px;margin:16px 0 14px;letter-spacing:.02em}
.doc table{border-collapse:collapse;width:100%}
.doc table.grid td,.doc table.grid th{border:1px solid #090E1E;padding:4px 6px;font-size:14px;vertical-align:top}
.doc table.grid th{background:#f0f0f0;font-weight:700;text-align:center}
.doc table.tiny td,.doc table.tiny th{font-size:11px;padding:2px 2px;text-align:center}
.doc table.tiny td.l{text-align:left;white-space:nowrap}
.doc table.plain td{border:none;padding:1px 0;vertical-align:top}
.doc table.kv td{border:1px solid #090E1E;padding:5px 8px;font-size:15px}
.doc table.kv td.k{width:36%;font-weight:700;background:#f7f7f7}
.doc table.tt td,.doc table.tt th{border:1px solid #090E1E;padding:4px;font-size:12.5px;text-align:center;vertical-align:middle;height:46px}
.doc table.tt th{background:#DEEBFF}
.doc table.tt td small{display:block;font-size:10.5px;color:#323A53}
.doc .sp{height:16px}
.doc .foot{margin-top:40px;border-top:1px solid #090E1E;padding-top:4px;font-size:12.5px;line-height:1.35}
.doc .cut{border-top:1px dashed #090E1E;margin:26px 0 14px;text-align:center;font-size:12px}
.doc ol{margin:4px 0 8px;padding-left:22px}
.doc .small{font-size:13px}
.doc .pg + .pg{page-break-before:always;break-before:page}

/* ---------- EBYS ---------- */
.eb{display:grid;grid-template-columns:320px minmax(0,1fr) minmax(0,1.1fr);gap:18px;align-items:start}
.eb-list{padding:10px;max-height:calc(100vh - 170px);overflow:auto;position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px)}
.eb-list .inp{margin-bottom:8px}
.eb-list button.it{all:unset;cursor:pointer;display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:9px;width:calc(100% - 20px);font-size:13px;font-weight:500}
.eb-list button.it svg{width:16px;height:16px;flex:none}
.eb-list button.it:hover{background:var(--panel-2)}
.eb-list button.it.on{background:var(--brand-soft);color:var(--brand);font-weight:700}
.eb-list .grp{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--faint);font-weight:700;padding:12px 10px 4px}
.ai-box{background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 14%,var(--panel)),var(--panel));border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}
.ai-box b{display:flex;gap:8px;align-items:center;font-size:13px}
.out{padding:18px;display:flex;flex-direction:column;gap:14px}
.out .blk{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}
.out .blk header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px 8px 14px;background:var(--panel-2);border-bottom:1px solid var(--line);font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.out textarea{width:100%;border:0;padding:12px 14px;font-family:var(--serif);font-size:15.5px;line-height:1.6;resize:vertical;background:var(--panel);min-height:48px}
.out textarea:focus{outline:none;background:color-mix(in srgb,var(--brand-soft) 45%,var(--panel))}
.form-card{padding:18px;display:flex;flex-direction:column;gap:12px}

/* ---------- Plan ---------- */
.plan-grid{display:grid;grid-template-columns:1fr;gap:18px}
.pcard{padding:18px}
.pcard h3{margin:0 0 4px;font-size:16px}
.pcard > p{margin:0 0 14px;color:var(--muted);font-size:13px}
.daypick{display:flex;gap:3px}
.daypick button{all:unset;cursor:pointer;width:26px;height:24px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:700;border:1px solid var(--line);color:var(--muted)}
.daypick button.off{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);text-decoration:line-through}
.daypick button.pref{background:var(--ok-soft);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}
.sw{all:unset;cursor:pointer;width:34px;height:20px;border-radius:999px;background:var(--line);position:relative;display:inline-block;vertical-align:middle}
.sw::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 2px rgba(8,12,28,.2)}
.sw.on{background:var(--ok)}.sw.on::after{left:17px}
.load{display:flex;flex-wrap:wrap;gap:8px}
.load .pill{font-variant-numeric:tabular-nums}
.tt-wrap{overflow-x:auto}
table.tt-ui{border-collapse:separate;border-spacing:4px;width:100%;min-width:720px}
table.tt-ui th{font-size:11.5px;color:var(--muted);font-weight:700;padding:4px;text-align:center}
table.tt-ui th.p{width:60px;text-align:left}
table.tt-ui th.p small{display:block;font-weight:500;color:var(--faint);font-size:10.5px}
table.tt-ui td{height:58px;border-radius:9px;background:var(--panel-2);border:1px dashed var(--line);padding:0;vertical-align:top}
table.tt-ui td .ls{all:unset;cursor:pointer;display:block;height:100%;width:100%;box-sizing:border-box;padding:6px 8px;border-radius:9px;background:color-mix(in srgb,var(--c) 14%,var(--panel));border-left:3px solid var(--c);font-size:12px;line-height:1.3}
table.tt-ui td .ls b{display:block;font-weight:700;font-size:12px}
table.tt-ui td .ls span{color:var(--muted);font-size:11px}
table.tt-ui td .emp{all:unset;cursor:pointer;display:block;height:100%;width:100%}
table.tt-ui td.sel{outline:2px solid var(--gold);outline-offset:1px}
table.tt-ui td.bad{background:var(--accent-soft)}
.unp{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.nob-grid select{width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.nob-grid td{padding:4px}
.bar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.bar .f{min-width:130px}
.progress{height:6px;border-radius:99px;background:var(--line);overflow:hidden}
.progress i{display:block;height:100%;background:var(--ok);border-radius:99px}

/* ---------- Settings ---------- */
.set{max-width:820px;padding:24px;display:flex;flex-direction:column;gap:14px}
.set h3{margin:10px 0 0;font-size:15px}
.toast{position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:11px 18px;border-radius:12px;font-weight:600;font-size:13px;box-shadow:var(--shadow-lg);z-index:50;max-width:calc(100% - 32px)}
#pdf-stage{position:fixed;left:-20000px;top:0;background:#fff}
.scrim{display:none}


/* ---------- v3: hareketli zemin + cam yüzeyler ---------- */
#bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.app{position:relative;z-index:1}
.card,.qa,.tabs,.chip,.search input{background:var(--glass);-webkit-backdrop-filter:blur(16px) saturate(1.25);backdrop-filter:blur(16px) saturate(1.25);border-color:var(--glass-line)}
.side{background:color-mix(in srgb,var(--side-bg) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.top{background:color-mix(in srgb,var(--bg) 62%,transparent);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2)}
.paper-wrap{background:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--ink) 9%,transparent) 1px,transparent 0) 0 0/18px 18px,color-mix(in srgb,var(--panel-2) 70%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.hero{box-shadow:0 30px 80px -30px rgba(8,47,58,.55),inset 0 1px 0 rgba(255,255,255,.12)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.07) 50%,transparent 65%);background-size:250% 100%;animation:sheen 9s ease-in-out infinite;pointer-events:none}
@keyframes sheen{0%,100%{background-position:120% 0}50%{background-position:-20% 0}}
.hero > *{position:relative;z-index:1}
#view > *{animation:rise .32s cubic-bezier(.2,.7,.2,1) both}
#view > *:nth-child(2){animation-delay:.03s}#view > *:nth-child(3){animation-delay:.06s}#view > *:nth-child(4){animation-delay:.09s}
@keyframes rise{from{transform:translateY(8px);opacity:.35}to{transform:none;opacity:1}}
.quick{grid-template-columns:repeat(4,1fr)}
.qa .ic{transition:transform .2s}.qa:hover .ic{transform:scale(1.08) rotate(-4deg)}
/* şablon düzenleme */
.tok{display:inline-flex;align-items:center;gap:4px;font:600 11.5px/1.2 var(--sans);padding:2px 8px;border-radius:999px;background:#E3EEF1;color:#0C5163;border:1px solid #BCD6DD;white-space:nowrap;vertical-align:baseline;cursor:default}
button.tok{cursor:pointer}button.tok:hover{background:#0C5163;color:#fff}
.paper.editing [contenteditable="true"]{outline:1px dashed rgba(12,81,99,.35);outline-offset:2px;border-radius:3px;cursor:text;transition:background .15s}
.paper.editing [contenteditable="true"]:hover{background:rgba(200,150,43,.08)}
.paper.editing [contenteditable="true"]:focus{outline:2px solid #C8962B;background:rgba(200,150,43,.1)}
.edit-bar{margin-bottom:12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));background:color-mix(in srgb,var(--gold) 12%,var(--glass));backdrop-filter:blur(14px);padding:12px 14px;display:flex;flex-direction:column;gap:10px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 76px);z-index:4}
.eb-bar-in{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.eb-bar-in b{display:flex;gap:7px;align-items:center;font-size:14px}.eb-bar-in b svg{width:16px;height:16px}
.eb-bar-in span{display:block;font-size:12.5px;color:var(--muted);max-width:64ch}
.tok-pal{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tok-pal > span{font-size:12px;font-weight:700;color:var(--muted);margin-right:2px}
/* e-Okul adımları */
.steps{display:flex;flex-direction:column;gap:18px}
.step{display:flex;gap:16px;align-items:flex-start}
.stepn{width:34px;height:34px;border-radius:10px;flex:none;display:grid;place-items:center;font-family:var(--disp);font-weight:700;background:var(--brand);color:var(--brand-ink);box-shadow:0 6px 16px -6px var(--brand)}
.step h3{margin:4px 0 4px;font-size:16px}.step p{margin:0 0 12px;color:var(--muted);font-size:13px}
.checks{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.chk{display:inline-flex;gap:8px;align-items:center;padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);font-size:13px;font-weight:500;cursor:pointer}
.chk.b{font-weight:700;border:0;background:transparent;padding:4px 0}
.chk input{accent-color:var(--brand);width:15px;height:15px}
.drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:26px 16px;border:2px dashed color-mix(in srgb,var(--brand) 35%,var(--line));border-radius:14px;cursor:pointer;text-align:center;background:color-mix(in srgb,var(--brand-soft) 45%,transparent);transition:background .15s,border-color .15s}
.drop svg{width:26px;height:26px;color:var(--brand)}.drop b{font-size:14px}.drop span{font-size:12px;color:var(--muted)}
.drop:hover,.drop.over{background:var(--brand-soft);border-color:var(--brand)}
.imp{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--panel)}
.imp-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;font-size:13px}
.imp-tbl{border-collapse:collapse;font-size:12px;min-width:100%}
.imp-tbl th{padding:6px;background:var(--panel-2);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.imp-tbl th .hname{font-size:11px;color:var(--muted);margin-bottom:4px;white-space:nowrap}
.imp-tbl th select{font-size:12px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:var(--panel);max-width:150px}
.imp-tbl td{padding:5px 6px;border-bottom:1px solid var(--line);white-space:nowrap}
.empty{padding:22px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;margin-top:10px}
.empty-big{text-align:center;padding:44px 20px}.empty-big p{color:var(--muted)}
.kvkk{font-size:12px;color:var(--muted);margin:14px 0 0;padding-left:10px;border-left:3px solid var(--gold)}
.hint{font-size:12px;color:var(--muted);margin:10px 0 0}
details.how{margin-top:12px;font-size:13px}details.how summary{cursor:pointer;font-weight:700;color:var(--brand)}
details.how ol{margin:8px 0 0;padding-left:20px;color:var(--muted);display:flex;flex-direction:column;gap:4px}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.lgrp{border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px;background:var(--panel)}
.lgrp .chk:not(.b){border:0;padding:2px 0;background:transparent;font-size:12.5px}
.fromcls{display:flex;gap:6px;padding:8px;border-top:1px solid var(--line)}
.picker{position:relative;padding:10px;border-radius:12px;background:color-mix(in srgb,var(--brand-soft) 60%,transparent);border:1px solid color-mix(in srgb,var(--brand) 20%,transparent)}
.picker .results{top:calc(100% - 6px)}
@media (max-width:1200px){.quick{grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){.quick{grid-template-columns:1fr}.step{flex-direction:column}.step > div{width:100%}.edit-bar{position:static}}
.step > div{min-width:0}.steps > *{min-width:0;max-width:100%}
@media (prefers-reduced-motion:reduce){#view > *,.hero::after{animation:none!important}}

/* ---------- sınıf özet kartları ---------- */
.auto-sum{margin-bottom:14px;padding:14px;border-radius:12px;background:var(--ok-soft);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent)}
.auto-sum > div:first-child b{display:block;font-size:15px;color:var(--ok)}.auto-sum > div:first-child span{font-size:12.5px;color:var(--muted)}
.cls-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:10px}
.cls-card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:1px;padding:10px 12px;border-radius:11px;background:var(--panel);border:1px solid var(--line);transition:border-color .15s,transform .15s}
.cls-card:hover{border-color:var(--brand);transform:translateY(-1px)}.cls-card:focus-visible{outline:2px solid var(--brand)}
.cls-card b{font-family:var(--disp);font-size:17px}.cls-card span{font-size:12px;color:var(--muted);font-weight:600}.cls-card small{font-size:11px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* ---------- Ortak dosyalar ---------- */
.fs-top{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;align-items:stretch}
.drop.big{padding:48px 20px;justify-content:center;border-radius:18px;min-height:240px;position:relative;overflow:hidden}
.drop.big .drop-ic{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);box-shadow:0 14px 30px -12px var(--brand);margin-bottom:10px;transition:transform .2s}
.drop.big .drop-ic svg{width:30px;height:30px;color:var(--brand-ink)}
.drop.big b{font-family:var(--disp);font-size:18px}
.drop.big.over .drop-ic{transform:translateY(-4px) scale(1.06)}
.drop.big::after{content:"";position:absolute;inset:10px;border-radius:12px;border:2px solid var(--brand);opacity:0;transition:opacity .15s}
.drop.big.over::after{opacity:.35}
.fs-info h3{margin:2px 0 4px;font-size:16px}.fs-info p{margin:0 0 10px;color:var(--muted);font-size:13px}
.fs-info code{background:var(--panel-2);padding:1px 6px;border-radius:5px;font-size:12px}
.fs-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.seg{display:flex;gap:4px;flex-wrap:wrap}
.seg button{all:unset;cursor:pointer;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;border:1px solid var(--line);color:var(--muted)}
.seg button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.seg button:focus-visible{outline:2px solid var(--brand)}
.fs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.fcard{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);transition:border-color .15s,transform .15s}
.fcard:hover{border-color:color-mix(in srgb,var(--c) 45%,var(--line));transform:translateY(-1px)}
.fic{width:44px;height:52px;flex:none;border-radius:8px;position:relative;background:color-mix(in srgb,var(--c) 14%,var(--panel));border:1px solid color-mix(in srgb,var(--c) 30%,transparent);display:grid;place-items:end center;padding-bottom:6px}
.fic::before{content:"";position:absolute;right:-1px;top:-1px;width:14px;height:14px;background:linear-gradient(225deg,var(--bg) 50%,color-mix(in srgb,var(--c) 35%,var(--panel)) 50%);border-radius:0 8px 0 4px}
.fic span{font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--c)}
.fmeta{min-width:0;flex:1}.fmeta b{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fmeta span{font-size:11.5px;color:var(--muted)}
.factions{display:flex;gap:4px;flex:none}
.uplist{margin-top:14px;display:flex;flex-direction:column;gap:6px}
.uprow{display:flex;gap:10px;align-items:center;font-size:13px}.uprow b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%}.uprow > span:last-child{color:var(--muted);font-size:12px}
@media (max-width:980px){.fs-top{grid-template-columns:1fr}.fs-grid{grid-template-columns:1fr}}

@media (max-width:1380px){.eb{grid-template-columns:280px 1fr}.eb .out{grid-column:2}}
@media (max-width:1200px){.ed{grid-template-columns:1fr}.form{position:static;max-height:none}.quick{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}}
@media (max-width:980px){.eb{grid-template-columns:1fr}.eb .out{grid-column:auto}.eb-list{position:static;max-height:300px}}
@media (max-width:860px){
  .app{grid-template-columns:1fr}
  .side{position:fixed;inset:0 auto 0 0;width:290px;z-index:40;transform:translateX(-102%);transition:transform .2s;padding-top:env(safe-area-inset-top,0px)}
  .side.open{transform:none}
  .scrim.open{display:block;position:fixed;inset:0;background:rgba(8,12,28,.35);z-index:39}
  .top .menu-btn{display:inline-flex}
  .top{padding:12px 16px}
  .view{padding:18px 16px 40px}
  .today{display:none}.search kbd{display:none}
  .row2,.row3{grid-template-columns:1fr}
  .hero{padding:22px 18px}.hero h2{font-size:24px}
  .hstats{grid-template-columns:repeat(2,1fr)}.hstat b{font-size:20px}
  .quick{grid-template-columns:1fr}
  .cats{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* =========================================================
   v4 — Gece teması: saf siyah zemin, ince çizgiler, hap düğmeler
   ========================================================= */
:root{
  --mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --hair:rgba(255,255,255,.08); --hair-2:rgba(255,255,255,.14);
}
body{background:#090E1E;letter-spacing:-.005em}
::selection{background:rgba(255,255,255,.22)}
h1,h2,h3{font-weight:500;letter-spacing:-.025em}
*{scrollbar-width:thin;scrollbar-color:#2B324A transparent}

/* çerçeve çizgileri */
.main{border-left:1px solid var(--hair);position:relative}
.view{position:relative}

/* kenar menü */
.side{background:#090E1E;-webkit-backdrop-filter:none;backdrop-filter:none;border-right:0}
.brand{border-bottom:1px solid var(--hair);padding:20px 18px 18px}
.mono{background:#fff;color:#090E1E;border-radius:9px;width:38px;height:38px;font-size:14px;font-weight:700;box-shadow:none;letter-spacing:-.04em}
.mono::after{display:none}
.brand h1{font-size:15.5px;font-weight:600;letter-spacing:-.02em}
.brand small{font-size:11px;color:#606C8E}
.slabel{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.1em;color:#566181;padding:18px 10px 6px}
.sbtn{border-radius:8px;color:#B2BDDF;font-weight:450;border:1px solid transparent}
.sbtn svg{opacity:.7;stroke-width:1.6}
.sbtn:hover{background:rgba(255,255,255,.04);color:#fff}
.sbtn.on{background:#171D30;border-color:#282F45;color:#fff;box-shadow:none;font-weight:500}
.sbtn .dot{border-radius:2px;width:7px;height:7px}
.sub .sbtn{color:#6F7CA1}
.side-foot{border-top:1px solid var(--hair)}

/* üst çubuk */
.top{background:rgba(8,12,28,.72);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--hair);padding:12px 32px}
.search input{border-radius:999px;background:#111628;border-color:#22293E;-webkit-backdrop-filter:none;backdrop-filter:none;padding:10px 14px 10px 40px;box-shadow:none}
.search input:focus{border-color:#454F6B;box-shadow:0 0 0 4px rgba(255,255,255,.05)}
.search kbd{font-family:var(--mono);border-radius:6px;background:#161C2F;border-color:#282F45}
.results{background:#121729;border-color:#242B41;border-radius:14px}
.results button:hover,.results button.hl{background:#1B2135}
.today{font-family:var(--mono);font-size:11px;letter-spacing:.02em;color:#606C8E}
.today b{font-family:var(--sans);font-size:12.5px;font-weight:500;letter-spacing:0}

/* yüzeyler */
.card,.qa,.tabs,.chip{background:#111628;-webkit-backdrop-filter:none;backdrop-filter:none;border-color:#1F263B;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.card{border-radius:16px}

/* düğmeler */
.btn{border-radius:999px;padding:9px 16px;font-weight:500;font-size:13px;background:transparent;border-color:#2B324A;color:#D8E6FF}
.btn:hover{border-color:#525D7C;background:rgba(255,255,255,.03)}
.btn.sm{padding:6px 12px;border-radius:999px}
.btn.pri{background:#fff;color:#090E1E;border-color:#fff;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.02em}
.btn.pri:hover{background:#D7E4FF;border-color:#D7E4FF}
.btn.pri.sm{font-size:11px}
.btn.gold{color:#fff;border:1px solid transparent;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.02em;
  background:linear-gradient(#0D1223,#0D1223) padding-box,linear-gradient(120deg,rgba(255,255,255,.75),rgba(255,255,255,.12) 40%,rgba(255,255,255,.08) 60%,rgba(255,255,255,.55)) border-box;
  box-shadow:inset 0 0 18px rgba(255,255,255,.04)}
.btn.gold:hover{background:linear-gradient(#191F33,#191F33) padding-box,linear-gradient(120deg,#fff,rgba(255,255,255,.25) 40%,rgba(255,255,255,.2) 60%,#fff) border-box}
.btn.gold::after{content:"»";font-weight:400;opacity:.8;margin-left:2px}
.btn.ghost{color:#C2CEF1;border-color:transparent}
.btn.ghost:hover{background:#1A2034}
.btn.danger{color:#ff6b7d}
.btn:focus-visible{outline:2px solid #fff}

/* rozetler, etiketler */
.pill{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;background:#191F33;color:#B2BDDF;border:1px solid #282F45;padding:3px 9px}
.pill.ok{background:rgba(61,220,151,.08);color:#3ddc97;border-color:rgba(61,220,151,.22)}
.pill.warn{background:rgba(245,165,36,.08);color:#f5a524;border-color:rgba(245,165,36,.22)}
.pill.red{background:rgba(255,90,110,.08);color:#ff6b7d;border-color:rgba(255,90,110,.24)}
.eyebrow{font-family:var(--mono);font-weight:500;letter-spacing:.12em;color:#636E91;font-size:11px}
.ic{border-radius:10px;background:#161C2F;border:1px solid #252C42;color:var(--c,#fff)}
.ic svg{stroke-width:1.6}
.note{background:rgba(245,165,36,.06);border-color:rgba(245,165,36,.2);border-radius:12px;color:#CBD7FB}
.note.info{background:#151B2D;border-color:#252C42}
.note.info button{color:#fff}

/* form alanları */
.f label,.flabel{font-weight:500;color:#848DAC;font-size:12px}
.f input,.f select,.f textarea,.inp{background:#0D1223;border-color:#252C42;border-radius:10px;color:#DDEAFF}
.f input:focus,.f select:focus,.f textarea:focus,.inp:focus{border-color:#4E5877;box-shadow:0 0 0 4px rgba(255,255,255,.05)}
input[type=date],input[type=time],input[type=month]{color-scheme:dark}
.tabs{border-radius:999px;padding:4px}
.tabs button{border-radius:999px;font-weight:500}
.tabs button.on{background:#fff;color:#090E1E}
.tabs button .n{font-family:var(--mono);border-radius:999px;background:#1A2034;border-color:#2B324A}
.tabs button.on .n{background:#D6E3FF;color:#090E1E}
.seg button{border-color:#282F45}
.seg button.on{background:#fff;color:#090E1E;border-color:#fff}

/* sayfa başlıkları — iki tonlu */
.page-head{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--hair)}
.page-head h2{font-size:34px;font-weight:500;letter-spacing:-.035em;line-height:1.1;background:linear-gradient(180deg,#fff 30%,#848DAC 120%);-webkit-background-clip:text;background-clip:text;color:transparent}
.page-head p{color:#848DAC;font-size:14px}
.crumb{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#566181}
.crumb button{color:#9AA5C5}
.crumb button:hover{color:#fff}

/* ---------- Ana sayfa: hero ---------- */
.hero{display:block;text-align:center;border-radius:20px;padding:76px 32px 0;margin-bottom:18px;background:#090E1E;border:1px solid var(--hair);box-shadow:none;color:#DDEAFF;overflow:hidden;isolation:isolate}
.hero::after{display:none}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;
  background:
   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22'%3E%3Cpath d='M11 0v22M0 11h22' stroke='%23ffffff' stroke-opacity='.35' stroke-width='1'/%3E%3C/svg%3E") 10px 10px/11px 11px no-repeat,
   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22'%3E%3Cpath d='M11 0v22M0 11h22' stroke='%23ffffff' stroke-opacity='.35' stroke-width='1'/%3E%3C/svg%3E") calc(100% - 10px) 10px/11px 11px no-repeat}
.hero-in{position:relative;z-index:3;max-width:760px;margin:0 auto}
.hero .tag{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.06em;text-transform:uppercase;background:#13192B;border:1px solid #282F45;color:#B2BDDF;padding:6px 12px}
.hero .tag i{background:#3ddc97;box-shadow:0 0 10px #3ddc97}
.hero h2{margin:22px 0 14px;font-size:clamp(34px,4.6vw,56px);font-weight:500;line-height:1.04;letter-spacing:-.045em;color:#fff}
.hero h2 span{display:block}
.hero h2 .dim{background:linear-gradient(180deg,#D9E7FF 0%,#8690AF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{margin:0 auto;color:#C3CFF2;max-width:58ch;font-size:15.5px;line-height:1.65}
.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.hero-cta .btn{padding:11px 20px}
.swirl{position:relative;display:block;margin:-10px -32px 0;width:calc(100% + 64px);height:280px;z-index:1;pointer-events:none;
  -webkit-mask:linear-gradient(180deg,transparent 0%,#090E1E 22%,#090E1E 72%,transparent 100%);mask:linear-gradient(180deg,transparent 0%,#090E1E 22%,#090E1E 72%,transparent 100%)}

/* KPI şeridi */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px}
.kpi{background:#111628;border:1px solid #1F263B;border-radius:14px;padding:16px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.kpi span{display:block;font-size:12.5px;color:#848DAC;line-height:1.3;min-height:32px}
.kpi b{display:block;font-size:34px;font-weight:400;letter-spacing:-.04em;color:#fff;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:8px}
.kpi small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#566181;margin-top:8px}
.kpi small i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3ddc97;margin-right:6px;vertical-align:middle}
.kpi .bar2{height:4px;border-radius:99px;background:#1F263B;margin-top:12px;overflow:hidden}
.kpi .bar2 i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#22d3ee,#a78bfa)}

/* hızlı işlemler ve kategoriler */
.quick{gap:12px}
.qa{border-radius:14px;padding:16px;transition:border-color .2s,background .2s,transform .2s}
.qa:hover{transform:translateY(-2px);border-color:#38415A;background:#141A2C}
.qa b{font-weight:500;font-size:14px}
.qa span{color:#6F7CA1}
.chip{border-radius:999px;font-weight:500}
.chip i{border-radius:2px}
.chip:hover{border-color:#454F6B;color:#fff}
.cats{gap:14px}
.cat header{border-bottom-color:#1E2439}
.cat header::before{height:1px;background:linear-gradient(90deg,transparent,var(--c),transparent);opacity:.7}
.cat h3{font-weight:500}
.cat header .pill{background:transparent;border-color:#282F45;color:#929CBC}
.cat li button{border-radius:10px}
.cat li button:hover{background:#171D30}
.cat li b{font-weight:500}
.cat li span{color:#636E91}
.section-t{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:8px 0 16px;flex-wrap:wrap}
.section-t h3{margin:0;font-size:28px;font-weight:500;letter-spacing:-.035em;line-height:1.1}
.section-t h3 .dim{color:#6D799E}
.section-t p{margin:0;color:#6F7CA1;max-width:46ch;font-size:13.5px}

/* tablolar ve editörler */
.tbl-ed{background:#0D1223;border-color:#22293E;border-radius:12px}
.tbl-ed th{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;background:#12182A;color:#6D799E;border-bottom-color:#22293E}
.tbl-ed td{border-bottom-color:#1B2135}
.tbl-ed td input:focus,.tbl-ed td select:focus{background:#1A2034}
.tbl-bar{background:#111628;border-top-color:#1F263B}
.tbl-bar button{color:#C8D5F8}
.tbl-bar button:hover{background:#1B2236}
.paper-wrap{background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.07) 1px,transparent 0) 0 0/18px 18px,#0D1223;border-color:#1F263B;-webkit-backdrop-filter:none;backdrop-filter:none}
.paper{box-shadow:0 0 0 1px rgba(255,255,255,.06),0 30px 80px -20px rgba(8,12,28,.9)}
.stage-bar{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#566181}
.out .blk{background:#0D1223;border-color:#22293E}
.out .blk header{font-family:var(--mono);font-weight:500;font-size:10.5px;background:#12182A;border-bottom-color:#22293E;color:#6D799E}
.out textarea{background:#0D1223;color:#DDEAFF}
.out textarea:focus{background:#121729}
.ai-box{background:#0F1526;border:1px solid #282F45}
.eb-list button.it.on{background:#1B2135;color:#fff;border:1px solid #2B324A}
.eb-list button.it:hover{background:#161C2E}
.eb-list .grp{font-family:var(--mono);font-weight:500}
.edit-bar{background:rgba(10,10,10,.9);border-color:#323A53}

/* program ızgarası */
table.tt-ui th{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#606C8E}
table.tt-ui td{background:#0E1425;border:1px dashed #1E2439;border-radius:10px}
table.tt-ui td .ls{border-radius:9px;border-left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--c) 22%,#111628),#12182A);box-shadow:inset 2px 0 0 var(--c)}
table.tt-ui td.sel{outline-color:#fff}
.daypick button{border-radius:6px;border-color:#282F45}
.sw{background:#282F45}
.progress{background:#1E2439}
.progress i{background:linear-gradient(90deg,#22d3ee,#3ddc97)}
.stepn{border-radius:999px;background:#fff;color:#090E1E;box-shadow:0 0 24px rgba(255,255,255,.15);font-family:var(--mono);font-weight:600}
.drop{background:#0D1324;border:1px dashed #2E364E;border-radius:14px}
.drop svg{color:#fff}
.drop:hover,.drop.over{background:#13192B;border-color:#5F6B8D}
.drop.big .drop-ic{background:#fff;color:#090E1E;box-shadow:0 0 40px rgba(255,255,255,.12)}
.drop.big .drop-ic svg{color:#090E1E}
.drop.big::after{border-color:#fff}
.cls-card,.fcard,.imp,.lgrp,.chk{background:#111628;border-color:#22293E}
.cls-card:hover,.fcard:hover{border-color:#3B435E}
.auto-sum{background:rgba(61,220,151,.05);border-color:rgba(61,220,151,.2)}
.imp-tbl th{background:#12182A}
.kvkk{border-left-color:#38415A}
details.how summary{color:#fff}
.picker{background:#0F1526;border-color:#252C42}
.toast{border-radius:999px;background:#fff;color:#090E1E;font-weight:500}


/* rol, karşılama, menü notu */
.roles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.role{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:14px;background:#111628;border:1px solid #22293E;transition:border-color .2s,background .2s}
.role b{font-size:15px;font-weight:500;color:#fff}.role span{font-size:12.5px;color:#848DAC}.role small{font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#566181;margin-top:8px;line-height:1.5}
.role:hover{border-color:#38415A}.role.on{border-color:#fff;background:#161C2F;box-shadow:0 0 0 1px #fff inset}
.role:focus-visible{outline:2px solid #fff}
.hero.welcome{padding-bottom:56px;margin-bottom:28px}
.set .row2{gap:12px}
.disclaim{font-size:11px;line-height:1.5;color:#4E5877;margin:10px 6px 2px}
.rolesub{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#566181;margin-top:1px}
.allbtn{margin-top:8px;font-size:12px;color:#848DAC!important;border:1px dashed #282F45!important;justify-content:center}
.allbtn:hover{color:#fff!important}
@media (max-width:1100px){.roles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.roles{grid-template-columns:1fr}}

/* ---------- v5: asistan, hatırlatma, mali, ayıklama, topluluk ---------- */
.steps-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:4px;border:1px solid #22293E;border-radius:14px;background:#0D1324}
.steps-tabs button{all:unset;cursor:pointer;display:flex;gap:7px;align-items:center;padding:7px 11px;border-radius:10px;font-size:12.5px;color:#929CBC;font-weight:500}
.steps-tabs button span{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-size:10px;border:1px solid #323A53}
.steps-tabs button.on{background:#fff;color:#090E1E}.steps-tabs button.on span{border-color:#090E1E}
.steps-tabs button:focus-visible{outline:2px solid #fff}
.step-pane{display:flex;flex-direction:column;gap:14px}
.step-nav{display:flex;justify-content:space-between;gap:8px;padding-top:4px;border-top:1px solid #1E2439}
.ai-fill{padding:14px;display:flex;flex-direction:column;gap:8px;border-color:#3a3320!important;background:linear-gradient(180deg,#0f0d07,#111628)!important}
.ai-fill b{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:500}.ai-fill b svg{width:16px;height:16px;color:var(--gold)}
.ai-fill p{margin:0;color:#848DAC;font-size:12.5px}.ai-fill textarea{min-height:80px;width:100%;padding:9px 11px;border:1px solid #2B324A;border-radius:10px;background:#0D1223;color:#DDEAFF}
.ai-fill small{color:#848DAC}
/* asistan */
.ai-fab{all:unset;cursor:pointer;position:fixed;right:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:45;display:flex;gap:8px;align-items:center;padding:12px 18px;border-radius:999px;background:#fff;color:#090E1E;font-weight:600;font-size:13px;box-shadow:0 10px 40px -8px rgba(255,255,255,.25),0 0 0 1px rgba(255,255,255,.4)}
.ai-fab svg{width:17px;height:17px}.ai-fab:hover{transform:translateY(-1px)}.ai-fab:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
body.ai-open .ai-fab{display:none}
.ai-panel{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);z-index:46;background:#0E1425;border-left:1px solid #242B41;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:-30px 0 80px -20px rgba(8,12,28,.9)}
.ai-panel header{display:flex;gap:10px;align-items:center;padding:14px 14px;border-bottom:1px solid #1F263B}
.ai-panel header b{display:block;font-size:14px;font-weight:600}.ai-panel header small{display:block;font-size:11.5px;color:#6D799E}.ai-panel header > div:nth-child(2){flex:1;min-width:0}
.ai-av{width:34px;height:34px;border-radius:10px;background:#fff;color:#090E1E;display:grid;place-items:center;flex:none}.ai-av svg{width:18px;height:18px}
.ai-msgs{flex:1;overflow:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px}
.ai-hello{padding:14px;border:1px solid #22293E;border-radius:14px;background:#121729}.ai-hello b{font-weight:500;font-size:14px}.ai-hello p{margin:6px 0 0;color:#848DAC;font-size:13px}
.msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:13.5px;line-height:1.55;word-wrap:break-word}
.msg.user{align-self:flex-end;background:#fff;color:#090E1E;border-bottom-right-radius:4px}
.msg.assistant{align-self:flex-start;background:#161C2F;border:1px solid #242B41;border-bottom-left-radius:4px}
.msg .li{display:block;padding-left:14px;position:relative}.msg .li::before{content:"•";position:absolute;left:2px}
.msg.typing{color:#848DAC;font-style:italic}
.msg .acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.msg .acts span{font-family:var(--mono);font-size:10.5px;letter-spacing:.03em;padding:3px 8px;border-radius:999px;background:rgba(61,220,151,.1);color:#3ddc97;border:1px solid rgba(61,220,151,.25)}
.ai-sugg{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 10px}.ai-sugg .chip{font-size:12px;padding:6px 11px;text-align:left}
.ai-in{display:flex;gap:8px;align-items:flex-end;padding:12px 14px;border-top:1px solid #1F263B}
.ai-in textarea{flex:1;resize:none;min-height:42px;max-height:160px;padding:10px 12px;border-radius:12px;border:1px solid #2B324A;background:#0D1223;color:#DDEAFF;font:inherit}
.ai-in textarea:focus{outline:none;border-color:#4E5877}
@media (min-width:1300px){body.ai-open .main{margin-right:440px}}
/* hatırlatma */
.rem-grid,.mali-grid,.ayk-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;align-items:start}
.rem-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid #22293E;border-radius:12px;background:#0F1526;margin-top:6px}
.rem-row b{display:block;font-weight:500}.rem-row span{font-size:12px;color:#6D799E}.rem-row.late{border-color:rgba(255,90,110,.35)}
#remWrap{position:fixed;top:calc(16px + env(safe-area-inset-top,0px));right:16px;z-index:60;display:flex;flex-direction:column;gap:10px;max-width:min(420px,calc(100% - 32px))}
.rem-banner{display:flex;gap:12px;align-items:center;padding:14px;border-radius:16px;background:#13192B;border:1px solid #323A53;box-shadow:0 20px 60px -10px rgba(8,12,28,.9);animation:rise .3s both}
.rb-ic{width:36px;height:36px;border-radius:10px;background:var(--gold);color:#090E1E;display:grid;place-items:center;flex:none}.rb-ic svg{width:18px;height:18px}
.rb-t{flex:1;min-width:0}.rb-t small{display:block;font-family:var(--mono);font-size:10.5px;color:#848DAC;text-transform:uppercase;letter-spacing:.06em}.rb-t b{font-weight:500}
.rb-a{display:flex;flex-direction:column;gap:6px}
.sbtn .cnt:empty{display:none}
/* sabah özeti */
.brief{padding:20px 22px;margin-bottom:18px}
.brief-h{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.brief-h h3{margin:0;font-size:20px;font-weight:500;letter-spacing:-.02em}
.brief-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-top:14px}
.brief-list div{padding:12px 14px;border:1px solid #1F263B;border-radius:12px;background:#0E1425}
.brief-list span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#606C8E;margin-bottom:4px}.brief-list b{font-weight:450;font-size:13.5px;line-height:1.5}
.brief-ai{margin:14px 0 0;padding:12px 14px;border-left:2px solid var(--gold);color:#C8D5F8;line-height:1.6}
/* mali */
.mali-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.mali-sum div{padding:14px;border:1px solid #22293E;border-radius:12px;background:#0E1425}.mali-sum span{display:block;font-size:12px;color:#848DAC}.mali-sum b{display:block;font-size:22px;font-weight:400;letter-spacing:-.03em;margin-top:4px;font-variant-numeric:tabular-nums}
.mali-sum .net{border-color:rgba(61,220,151,.35);background:rgba(61,220,151,.05)}.mali-sum .net b{color:#3ddc97}
.wk5{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.kv-ui{border-collapse:collapse;width:100%;margin-top:10px}.kv-ui td{padding:8px 10px;border-bottom:1px solid #1F263B}.kv-ui td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.mini{height:5px;border-radius:99px;background:#1F263B;overflow:hidden;width:44px}.mini i{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#a78bfa)}
/* çarşaf */
table.carsaf{border-collapse:collapse;font-size:11px;min-width:100%}
table.carsaf th,table.carsaf td{border:1px solid #1F263B;padding:3px 4px;text-align:center;white-space:nowrap}
table.carsaf th.dh{font-family:var(--mono);font-weight:500;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#6D799E}
table.carsaf th.p{position:sticky;left:0;background:#111628;z-index:1;text-align:left}
table.carsaf td.ds{border-left:2px solid #323A53}
table.carsaf td[style]{background:color-mix(in srgb,var(--c) 16%,#111628)}
table.carsaf td b{display:block;font-weight:600}table.carsaf td span{color:#848DAC;font-size:10px}
table.tt-ui td.over{outline:2px dashed #fff;outline-offset:1px}table.tt-ui td.drag{opacity:.5}
table.tt-ui td .ls[draggable=true]{cursor:grab}
/* topluluk */
.o-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.o-card{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #22293E;border-radius:14px;background:#111628}
.o-card b{font-weight:500;font-size:15px}.o-card p{margin:0;color:#848DAC;font-size:12.5px;flex:1}.o-card small{font-size:11.5px;color:#566181}.o-card .pill{align-self:flex-start}
.chat{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;align-items:stretch;min-height:calc(100vh - 260px)}
.topics{display:flex;flex-direction:column;gap:4px}
.topics button{all:unset;cursor:pointer;display:block;padding:10px 12px;border-radius:12px;border:1px solid transparent}
.topics button b{display:block;font-weight:500;font-size:13.5px}.topics button span{display:block;font-size:11.5px;color:#636E91}
.topics button:hover{background:#13192B}.topics button.on{background:#171D30;border-color:#2B324A}.topics button:focus-visible{outline:2px solid #fff}
.room{display:flex;flex-direction:column;min-height:520px;max-height:calc(100vh - 220px)}
.room header{padding:14px 16px;border-bottom:1px solid #1F263B}.room header b{display:block;font-weight:500}.room header span{font-size:12px;color:#6D799E}
.room-msgs{flex:1;overflow:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.rmsg{display:flex;gap:10px;align-items:flex-start}.rmsg img,.rmsg > i{width:30px;height:30px;border-radius:50%;flex:none;background:#242B41}
.rmsg > div{min-width:0;flex:1}.rmeta{display:flex;gap:8px;align-items:baseline}.rmeta b{font-weight:600;font-size:13px}.rmeta span{font-size:11px;color:#566181;font-family:var(--mono)}
.rmeta button{all:unset;cursor:pointer;font-size:11px;color:#ff6b7d;margin-left:auto}
.rmsg p{margin:3px 0 0;font-size:13.5px;line-height:1.55;color:#CEDAFE;word-wrap:break-word}
.rmsg.mine p{color:#fff}
.room-in{display:flex;gap:8px;align-items:flex-end;padding:12px 16px;border-top:1px solid #1F263B}
.room-in textarea{flex:1;resize:none;padding:10px 12px;border-radius:12px;border:1px solid #2B324A;background:#0D1223;color:#DDEAFF;font:inherit}
.room-note{margin:0;padding:0 16px 12px;font-size:11.5px;color:#566181}
@media (max-width:1100px){.rem-grid,.mali-grid,.ayk-grid{grid-template-columns:1fr}}
@media (max-width:860px){.chat{grid-template-columns:1fr}.topics{flex-direction:row;overflow-x:auto}.topics button{min-width:170px}.wk5{grid-template-columns:repeat(3,1fr)}.ai-fab span{display:none}.ai-fab{padding:14px}}

@media (max-width:1200px){.kpis{grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){
  .main{border-left:0}
  .top{padding:12px 16px}
  .hero{padding:44px 18px 0}
  .hero h2{font-size:32px}
  .swirl{height:200px;margin:-10px -18px 0;width:calc(100% + 36px)}
  .kpis{grid-template-columns:repeat(2,1fr)}
  .page-head h2{font-size:26px}
  .section-t h3{font-size:22px}
}

/* ---------- v6: hortum, menü, kalem animasyonu ---------- */
.hero{padding:76px 32px 250px}
.hero .swirl{position:absolute;inset:0;margin:0;width:100%;height:100%;z-index:1;-webkit-mask:linear-gradient(180deg,transparent 0%,#090E1E 14%,#090E1E 100%);mask:linear-gradient(180deg,transparent 0%,#090E1E 14%,#090E1E 100%)}
.hero-in{text-shadow:0 2px 24px #090E1E,0 0 60px #090E1E}
.hero-in::before{content:"";position:absolute;inset:-30px -60px;z-index:-1;background:radial-gradient(closest-side,rgba(8,12,28,.72),transparent);pointer-events:none}
@media (max-width:860px){.hero{padding:44px 18px 190px}}

/* kenar menü */
.side{background:linear-gradient(180deg,#0D1223 0%,#090E1E 40%);border-right:1px solid #191F33}
.brand .mono{position:relative;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.2),0 6px 24px -6px rgba(255,255,255,.35)}
.brand .mono::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(8,12,28,.25) 45%,transparent 60%);background-size:250% 100%;animation:sheen2 5s ease-in-out infinite}
@keyframes sheen2{0%,100%{background-position:150% 0}50%{background-position:-50% 0}}
.slabel{display:flex;align-items:center;gap:8px}.slabel::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,#242B41,transparent)}
.snav .sbtn{position:relative;transition:background .2s,color .2s,transform .2s;padding:7px 9px}
.snav .sbtn > svg{width:28px;height:28px;padding:6px;border-radius:9px;background:#141A2C;border:1px solid #22293E;opacity:1;transition:background .2s,border-color .2s,color .2s,transform .25s;color:#B3BFE1;box-sizing:border-box}
.snav .sbtn:hover{background:linear-gradient(90deg,rgba(255,255,255,.06),transparent);transform:translateX(2px)}
.snav .sbtn:hover > svg{border-color:#38415A;color:#fff;transform:rotate(-6deg)}
.snav .sbtn.on{background:linear-gradient(90deg,rgba(255,255,255,.1),rgba(255,255,255,.02));border-color:#282F45}
.snav .sbtn.on > svg{background:#fff;color:#090E1E;border-color:#fff;box-shadow:0 0 18px rgba(255,255,255,.3)}
.snav .sbtn.on::before{content:"";position:absolute;left:-12px;top:20%;bottom:20%;width:3px;border-radius:3px;background:linear-gradient(180deg,#22d3ee,#a78bfa);box-shadow:0 0 12px #22d3ee}
.sbtn.ai-nav{background:linear-gradient(90deg,rgba(232,176,74,.12),transparent);border:1px solid rgba(232,176,74,.25)!important;color:#fff}
.sbtn.ai-nav .penanim{width:28px;height:28px;flex:none;border-radius:9px;background:#141008;border:1px solid rgba(232,176,74,.35)}
.sbtn.ai-nav em{font-style:normal;margin-left:auto;font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;padding:2px 6px;border-radius:999px;background:var(--gold);color:#090E1E;font-weight:600}
/* kategori grupları */
.sgrp > .sbtn .dot{width:28px;height:28px;border-radius:9px;background:color-mix(in srgb,var(--c) 14%,#111628);border:1px solid color-mix(in srgb,var(--c) 35%,transparent);position:relative;flex:none}
.sgrp > .sbtn .dot::after{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}
.sgrp > .sbtn .cnt{font-family:var(--mono);font-size:10px;padding:1px 7px;border-radius:999px;border:1px solid #282F45;color:#848DAC}
.sgrp .sub{display:grid!important;grid-template-rows:0fr;padding:0;margin-left:23px;border-left:1px solid #20273C;transition:grid-template-rows .32s cubic-bezier(.2,.7,.2,1)}
.sgrp .sub > div{overflow:hidden;min-height:0;padding-left:10px}
.sgrp.open .sub{grid-template-rows:1fr}
.sgrp.open .sub > div{padding-block:4px 8px}
.sgrp .sub .sbtn{padding:6px 10px;border-radius:7px;font-size:12.5px;opacity:.0;transform:translateX(-6px);transition:opacity .25s,transform .25s,background .2s,color .2s}
.sgrp.open .sub .sbtn{opacity:1;transform:none}
.sgrp .sub .sbtn:hover{color:#fff;background:rgba(255,255,255,.05)}
.sgrp .sub .sbtn.on{color:#fff;background:color-mix(in srgb,var(--c) 14%,transparent)}
.sgrp .sub .sbtn::after{content:"";position:absolute;left:-11px;top:50%;width:7px;height:1px;background:#2B324A}
.sgrp .sub .sbtn{position:relative}
@media (hover:hover) and (pointer:fine){
  .sgrp:hover .sub{grid-template-rows:1fr;transition-delay:.12s}
  .sgrp:hover .sub > div{padding-block:4px 8px}
  .sgrp:hover .sub .sbtn{opacity:1;transform:none;transition-delay:.12s}
  .sgrp:hover > .sbtn .chev{transform:rotate(90deg)}
  .sgrp:hover > .sbtn{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 12%,transparent),transparent)}
}
/* kalem animasyonu */
.penanim{overflow:visible}
.penanim .ink{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:46;stroke-dashoffset:46;animation:ink 2.6s ease-in-out infinite}
.penanim .pen{offset-path:path('M7 19 C9 14 11 14 12 17 S15 21 17 17 S21 13 22 17');offset-rotate:0deg;animation:penmove 2.6s ease-in-out infinite}
@keyframes ink{0%{stroke-dashoffset:46;opacity:1}60%{stroke-dashoffset:0;opacity:1}85%{stroke-dashoffset:0;opacity:0}100%{stroke-dashoffset:46;opacity:0}}
@keyframes penmove{0%{offset-distance:0%}60%{offset-distance:100%}85%{offset-distance:100%;opacity:1}92%{opacity:0}100%{offset-distance:0%;opacity:0}}
.ai-fab{padding:10px 18px 10px 10px;gap:10px;animation:fabIn .6s cubic-bezier(.2,1.3,.4,1) both}
.ai-fab .penanim{width:34px;height:34px;border-radius:50%;background:#090E1E;border:0}
.ai-fab .penanim .ink{stroke:#ffd27a}
.ai-fab::before{content:"";position:absolute;inset:-4px;border-radius:999px;border:1px solid rgba(255,255,255,.5);animation:ring 2.6s ease-out infinite;pointer-events:none}
.ai-fab{position:fixed}
@keyframes ring{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(1.25)}}
@keyframes fabIn{from{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:none}}
.ai-av{background:#090E1E;border:1px solid rgba(232,176,74,.45)}.ai-av .penanim{width:30px;height:30px}
.view{padding-bottom:120px}
@media (prefers-reduced-motion:reduce){.penanim .ink,.penanim .pen,.ai-fab::before,.brand .mono::before{animation:none!important}.penanim .ink{stroke-dashoffset:0}}
.penanim .pen{transform-box:fill-box;offset-anchor:0% 100%}

/* ---------- v7: telefon uygulaması görünümü ---------- */
.tabbar{display:none}
@media (max-width:860px){
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:44;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:rgba(8,12,28,.82);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border-top:1px solid #1F263B}
  .tabbar button{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;font-size:10.5px;color:#848DAC;position:relative}
  .tabbar button svg{width:22px;height:22px}
  .tabbar button.on{color:#fff}
  .tabbar button.on::before{content:"";position:absolute;top:-7px;width:22px;height:2px;border-radius:2px;background:linear-gradient(90deg,#22d3ee,#a78bfa)}
  .tabbar .tb-ai{margin-top:-22px}
  .tabbar .tb-ai .penanim{width:52px;height:52px;border-radius:50%;background:#fff;border:4px solid #090E1E;box-shadow:0 8px 30px -6px rgba(255,255,255,.35)}
  .tabbar .tb-ai .penanim .ink{stroke:#c8962b}.tabbar .tb-ai .penanim .pen{fill:#090E1E}
  .tabbar .cnt{position:absolute;top:2px;left:calc(50% + 6px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ff5a6e;color:#fff;font-size:10px;display:grid;place-items:center}
  .tabbar .cnt:empty{display:none}
  .ai-fab{display:none!important}
  .view{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
  .toast{bottom:calc(90px + env(safe-area-inset-bottom,0px))}
  #view .page-head .actions{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:4px;scrollbar-width:none}
  #view .page-head .actions::-webkit-scrollbar{display:none}
  #view .page-head .actions .btn{flex:none;padding:8px 13px;font-size:12.5px}
  .page-head h2{font-size:24px!important}
  .hero{padding-bottom:170px}
  .ai-panel{width:100%;border-left:0}
  .top{padding-top:calc(10px + env(safe-area-inset-top,0px))}
  input,select,textarea{font-size:16px!important}
}