:root{
  --font:"Segoe UI Variable Display","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,"Inter",sans-serif;
  --accent:#f2712f; --accent-ink:#ff8a52;
  --bg:#0e1116; --panel:#151a21; --card:#1a2029; --line:#272f3b;
  --ink:#e8ecf3; --muted:#98a2b1; --chip:#212936; --hover:#1f2632;
  --input-bg:#11161d; --preview-bg:#0a0d12;
  --ok:#3fb950; --warn:#d29922; --bad:#f85149; --info:#4a9eff;
  --shadow:0 2px 10px rgba(0,0,0,.32);
  --page-shadow:0 16px 48px rgba(0,0,0,.55);
  --backdrop:rgba(4,7,11,.66);
}
html[data-theme="light"]{
  --accent:#e8622a; --accent-ink:#c44d1c;
  --bg:#f3f4f6; --panel:#fff; --card:#fff; --line:#e2e5ea;
  --ink:#16191f; --muted:#667085; --chip:#f1f3f6; --hover:#f8fafc;
  --input-bg:#fbfbfc; --preview-bg:#e7eaef;
  --ok:#1a7f37; --warn:#9a6700; --bad:#c62828; --info:#0b5cad;
  --shadow:0 2px 10px rgba(20,24,31,.06);
  --page-shadow:0 3px 16px rgba(20,24,31,.16);
  --backdrop:rgba(20,24,31,.42);
}
*{box-sizing:border-box}
html,body{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{height:100%}
body{
  margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);
  font-size:12.8px;line-height:1.42;font-variant-numeric:tabular-nums;
  -webkit-font-smoothing:antialiased;transition:background .18s,color .18s;
}
h1,h2,h3,p,ul{margin:0}
ul{list-style:none;padding:0}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
input,select,textarea{font:inherit;color:inherit}
a{color:var(--accent-ink)}
.muted{color:var(--muted)}
[hidden]{display:none!important}
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px;border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-thumb:hover{background:var(--muted)}

.boot{display:grid;place-items:center;height:100vh;color:var(--muted);letter-spacing:.06em;font-size:12px}

/* ---------- giriş ---------- */
.login{display:grid;place-items:center;min-height:100vh;padding:24px}
.login-card{
  width:100%;max-width:372px;background:var(--panel);border:1px solid var(--line);border-radius:16px;
  padding:30px 28px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;
}
.login-card img{height:88px;width:auto;max-width:190px;object-fit:contain;background:#fff;border-radius:12px;padding:6px;align-self:center}
.login-card h1{font-size:17px;font-weight:650;text-align:center;margin-top:10px;letter-spacing:-.01em}
.login-sub{text-align:center;color:var(--muted);font-size:12px;margin-bottom:14px}
.login-card label{display:flex;flex-direction:column;gap:5px;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.login-card input{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--input-bg);font-size:13.5px;letter-spacing:0;text-transform:none;color:var(--ink)}
.login-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(242,113,47,.18)}
.form-error{color:var(--bad);font-size:12px;min-height:16px;margin:2px 0 8px}
.login-foot{font-size:11px;text-align:center;margin-top:14px;line-height:1.5}

/* ---------- iskelet ---------- */
.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}
.topbar{
  display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--panel);
  border-bottom:1px solid var(--line);flex:none;min-height:60px;
}
.brand{display:flex;align-items:center;gap:10px;min-width:230px}
.brand img{height:37px;width:auto;max-width:84px;object-fit:contain;background:#fff;border-radius:8px;padding:3px}
.brand strong{display:block;font-size:13px;font-weight:650;letter-spacing:-.01em;white-space:nowrap}
.brand span{display:block;font-size:10.5px;color:var(--muted);letter-spacing:.02em}
.tabs{display:flex;gap:4px;flex:1;overflow:auto}
.tab{
  border:1px solid transparent;background:none;padding:6px 12px;border-radius:8px;
  font-size:12px;color:var(--muted);white-space:nowrap;transition:.14s;letter-spacing:.002em;
}
.tab:hover{background:var(--hover);color:var(--ink)}
.tab.active{background:var(--chip);color:var(--ink);border-color:var(--line);font-weight:600}
.top-right{display:flex;align-items:center;gap:8px;flex:none}
.user-chip{
  display:flex;flex-direction:column;line-height:1.2;text-align:right;font-size:12px;max-width:210px;
  padding:0 4px;
}
.user-chip b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-chip span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}
.icon-btn{
  border:1px solid var(--line);background:var(--card);border-radius:8px;padding:6px 10px;font-size:12px;
  color:var(--muted);transition:.14s;
}
.icon-btn:hover{border-color:var(--muted);color:var(--ink)}
main{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.pad{padding:16px}

/* ---------- butonlar / alanlar ---------- */
.btn{
  border:1px solid var(--line);background:var(--card);border-radius:8px;padding:7px 12px;font-size:12.5px;
  transition:.14s;display:inline-flex;align-items:center;gap:6px;justify-content:center;
}
.btn:hover{border-color:var(--muted);background:var(--hover)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#141414;font-weight:650}
.btn.primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}
.btn.ghost{background:none}
.btn.danger{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 45%,transparent)}
.btn.danger:hover{background:color-mix(in srgb,var(--bad) 12%,transparent)}
.btn.sm{padding:4px 9px;font-size:11.5px;border-radius:7px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.field{display:flex;flex-direction:column;gap:4px;min-width:0}
.field>span{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{
  width:100%;min-width:0;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--input-bg);
  font-size:12.5px;color:var(--ink);
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(242,113,47,.18)}
.field textarea{resize:vertical;min-height:56px}
.field input[readonly]{opacity:.7}

/* ---------- form çalışma alanı ---------- */
.workspace{flex:1;min-height:0;display:grid;grid-template-columns:346px minmax(330px,400px) minmax(0,1fr);gap:0}
.list-col{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:var(--panel);padding:12px 12px 0}
.week-box{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:11px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--chip)),var(--chip))}
.week-head{display:flex;align-items:baseline;gap:8px;padding:0 2px 2px}
.week-label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.week-head strong{font-size:13.5px;color:var(--ink);letter-spacing:-.01em}
.week-box{margin-bottom:8px}
.week-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:6px 0 0}
.week-actions .btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.week-actions .btn{justify-content:center}
.list-filters{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}
.list-filters .field>span{font-size:9px}
.list-filters .field input,.list-filters .field select{padding:5px 7px;font-size:12px}
.list-filters .full{grid-column:1/-1}
.list-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 2px 8px}
.list-head .lh-title{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:var(--accent);font-weight:700}
.list-head .lh-count{font-size:10px;font-weight:700;color:var(--ink);background:color-mix(in srgb,var(--accent) 15%,var(--chip));border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:999px;padding:2px 9px;white-space:nowrap}
.list-head .lh-count:empty{display:none}
.week-group{display:flex;flex-direction:column;gap:5px}
.week-group + .week-group{margin-top:7px}
.week-group-head{position:sticky;top:-2px;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:6px;margin:5px 0 3px;padding:3px 6px 3px 7px;border:1px solid color-mix(in srgb,var(--accent) 46%,var(--line));border-left:3px solid var(--accent);border-radius:7px;background:color-mix(in srgb,var(--accent) 14%,var(--panel))}
.week-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:7px;font:inherit;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);background:transparent;border:0;padding:1px 0;cursor:pointer;text-align:left}
.week-toggle:hover{color:var(--accent)}
.wk-caret{display:inline-block;font-size:10px;color:var(--accent);transition:transform .15s;transform:rotate(90deg)}
.week-toggle[aria-expanded="false"] .wk-caret{transform:rotate(0)}
.wk-count{font-size:9px;font-weight:700;letter-spacing:.02em;text-transform:none;color:var(--ink);background:color-mix(in srgb,var(--accent) 24%,transparent);border-radius:999px;padding:0 6px;white-space:nowrap}
.week-items{display:flex;flex-direction:column;gap:5px}
.week-items[hidden]{display:none}
.wk-pdf{font:inherit;font-size:8.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:5px;padding:1px 5px;cursor:pointer;flex:none}
.wk-pdf:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}
.form-list{flex:1;overflow:auto;display:flex;flex-direction:column;gap:5px;padding-bottom:10px}
.form-item{
  display:flex;gap:8px;align-items:center;padding:8px 9px;background:var(--card);border:1px solid var(--line);
  border-radius:9px;text-align:left;width:100%;transition:transform .14s,border-color .14s,background .14s;
}
.form-item:hover{border-color:var(--muted);background:var(--hover);transform:translateX(1px)}
.form-item.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--card));box-shadow:0 0 0 1px var(--accent) inset}
.fi-dot{width:4px;align-self:stretch;border-radius:3px;background:var(--line);flex:none}
.fi-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.fi-text b{font-size:12.2px;font-weight:650;letter-spacing:-.005em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-text span{font-size:10.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.badge{font-size:10px;font-weight:650;background:var(--chip);border-radius:6px;padding:1px 6px;color:var(--muted);flex:none}
.empty{color:var(--muted);font-size:11.8px;line-height:1.5;padding:18px 12px;text-align:center;border:1px dashed var(--line);border-radius:10px}

.editor-col{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:var(--panel)}
.editor-head{display:flex;align-items:center;gap:8px;padding:11px 13px;border-bottom:1px solid var(--line);flex:none}
.editor-head h2{font-size:13.5px;font-weight:680;letter-spacing:-.012em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.editor-body{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:12px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px}
.row-end{display:flex;gap:8px;align-items:flex-end}
.row-end .field{flex:1}
.check-row{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);cursor:pointer;user-select:none}
.check-row input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}
.color-row{display:grid;grid-template-columns:1fr 44px;gap:7px;align-items:end}
.color-row input[type=color]{width:100%;min-width:0;height:33px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--input-bg);cursor:pointer}
.editor-foot{padding:10px 13px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:7px;align-items:center;background:var(--panel);flex:none}
.save-state{font-size:10.5px;color:var(--muted);margin-left:auto;letter-spacing:.01em}


.pax{border:1px solid var(--line);border-radius:10px;overflow:hidden;flex:none}
.pax-head{display:flex;justify-content:space-between;align-items:center;padding:6px 9px;background:var(--chip);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
#pax-list{max-height:min(40vh,380px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}
#pax-list::-webkit-scrollbar{width:10px}
#pax-list::-webkit-scrollbar-track{background:transparent}
#pax-list::-webkit-scrollbar-thumb{background:var(--muted);border-radius:8px;border:2px solid transparent;background-clip:content-box}
#pax-list::-webkit-scrollbar-thumb:hover{background:var(--accent)}
.pax-row{display:grid;grid-template-columns:20px 1fr 74px 80px 24px;gap:5px;align-items:center;padding:4px 7px;border-top:1px solid var(--line)}
.pax-row input,.pax-row select{
  border:1px solid transparent;background:none;border-radius:6px;padding:4px 5px;font-size:12px;width:100%;color:var(--ink);
}
.pax-row input:hover,.pax-row select:hover{border-color:var(--line);background:var(--input-bg)}
.pax-row input:focus,.pax-row select:focus{outline:none;border-color:var(--accent);background:var(--input-bg)}
.pax-row .idx{font-size:10.5px;color:var(--muted);text-align:right}
.pax-row .x{border:0;background:none;color:var(--muted);padding:0;font-size:14px;line-height:1}
.pax-row .x:hover{color:var(--bad)}
.pax-actions{display:flex;gap:6px;padding:6px;border-top:1px solid var(--line);background:var(--panel)}
.pax-actions textarea{flex:1;min-height:34px;border:1px solid var(--line);border-radius:7px;padding:5px 7px;background:var(--input-bg);font-size:11.5px;resize:vertical}

/* ---------- önizleme ---------- */
.preview-col{min-height:0;overflow:auto;background:var(--preview-bg);padding:16px;display:flex;flex-direction:column;align-items:center;gap:10px}
.preview-bar{width:100%;display:flex;align-items:center;gap:8px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.preview-bar .spacer{flex:1}
.preview .page{zoom:.68;margin-bottom:-90mm}

/* ---------- A4 sayfa ---------- */
.page{
  width:210mm;min-height:297mm;padding:13mm 14mm;background:#fff;color:#000;
  font-family:var(--font);font-size:9.5pt;font-variant-numeric:tabular-nums;
  box-shadow:var(--page-shadow);flex:none;
}
.page .p-title{font-size:13pt;font-weight:700;text-align:center;letter-spacing:.02em;margin:0 0 3.5mm;text-transform:uppercase}
.page .p-head{display:grid;grid-template-columns:47mm 1fr;gap:8mm;align-items:center}
.page .p-logo img{width:47mm;height:auto;display:block}
.page .mtime.x-none{color:#d4001f;font-weight:700;font-size:8.5pt;letter-spacing:.02em}
.page .p-meta{display:flex;flex-direction:column;border:1px solid #000}
.page .mrow{display:grid;grid-template-columns:1fr 35mm 25mm;min-height:9mm}
.page .mrow+.mrow{border-top:1px solid #000}
.page .mlab{display:flex;align-items:center;padding:1.6mm 2mm;font-size:7.8pt;font-weight:650;letter-spacing:.02em;border-right:1px solid #000}
.page .mval{display:flex;align-items:center;justify-content:center;gap:1.4mm;font-size:9pt;border-right:1px solid #000;min-width:0;overflow:hidden}
.page .mday{font-size:7pt;font-weight:600;font-style:normal;color:#1f4ea8;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.page .mtime{display:flex;align-items:center;justify-content:center;font-size:10pt;font-weight:700;color:#e2001a;padding:0 1mm}
.page .p-band{font-size:8.8pt;font-weight:700;letter-spacing:.14em;border-bottom:1.5px solid #000;padding-bottom:1.2mm;margin-top:6mm}
.page .p-group{margin-top:2.4mm;padding-bottom:1.6mm;border-bottom:1px solid #a9a9a9;font-size:9.8pt;line-height:1.45}
.page .p-group b{display:block;font-weight:700}
.page .p-row{display:grid;grid-template-columns:max-content 1fr;column-gap:2.4mm;border-bottom:1px solid #a9a9a9;padding:1.6mm 0;font-size:9.4pt}
.page .p-row span:first-child{font-weight:700}
.page .p-row .p-red{color:#d4001f;font-weight:700}
.page .p-desc{margin:2.4mm 0 3.2mm;font-size:9.4pt;font-weight:650}
.page .p-desc .p-under{text-decoration:underline;text-underline-offset:1.2pt}
.page table{width:100%;border-collapse:collapse;table-layout:fixed}
.page th{font-size:7.4pt;font-weight:650;text-align:center;padding:1.3mm .6mm;border:1px solid #000;line-height:1.3;letter-spacing:.01em}
.page td{border:1px solid #000;text-align:center;height:6.8mm;font-size:8.8pt;padding:0 .6mm;overflow:hidden}
.page td.c-name{text-align:left;padding-left:1.7mm;white-space:nowrap;text-overflow:ellipsis;font-size:8.6pt}
.page td.c-id{font-size:8.4pt}
.page.x-dense1 td{height:5.4mm;font-size:8.2pt}
.page.x-dense1 .p-band{margin-top:5mm}
.page.x-dense2 td{height:4.45mm;font-size:7.5pt}
.page.x-dense2 td.c-name{font-size:7.4pt}
.page.x-dense2 .p-title{margin-bottom:2.5mm}
.page.x-dense2 .p-band{margin-top:4mm}
.page.x-dense2 .p-group{margin-top:1.6mm;padding-bottom:1.2mm}
.page.x-dense2 .p-row{padding:1.2mm 0}
.page.x-dense2 .p-desc{margin:1.8mm 0 2.4mm}
.page.x-dense3 td{height:3.55mm;font-size:6.6pt}
.page.x-dense3 td.c-name{font-size:6.6pt}
.page.x-dense3 .p-title{margin-bottom:2mm}
.page.x-dense3 .p-band{margin-top:3.4mm}
.page.x-dense3 .p-group{margin-top:1.2mm;padding-bottom:1mm;font-size:9pt}
.page.x-dense3 .p-row{padding:1mm 0;font-size:8.6pt}
.page.x-dense3 .p-desc{margin:1.4mm 0 2mm;font-size:8.6pt}
.page .p-foot{margin-top:4mm;display:flex;justify-content:space-between;font-size:7.6pt;color:#444}

/* ---------- rapor ---------- */
.report{flex:1;overflow:auto;padding:16px 18px 40px}
.report-head{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:14px}
.report-head h1{font-size:17px;font-weight:650;letter-spacing:-.01em;flex:1;min-width:220px}
.report-head h1 small{display:block;font-size:11.5px;color:var(--muted);font-weight:400;letter-spacing:0;margin-top:2px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:11px;padding:11px 13px}
.kpi b{display:block;font-size:23px;font-weight:650;letter-spacing:-.02em;line-height:1.15}
.kpi span{font-size:10.5px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase}
.rep-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.card h3{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:10px 13px;border-bottom:1px solid var(--line);font-weight:600}
table.data{width:100%;border-collapse:collapse;font-size:12.2px}
table.data th{text-align:left;font-size:9.8px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:7px 13px;border-bottom:1px solid var(--line);font-weight:600}
table.data td{padding:7px 13px;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
table.data tr:last-child td{border-bottom:0}
table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}
table.data tbody tr:hover{background:var(--hover)}
.bar{height:5px;border-radius:3px;background:var(--chip);overflow:hidden;min-width:44px}
.bar i{display:block;height:100%;background:var(--accent);border-radius:3px}
.table-wrap{overflow:auto}

/* ---------- yönetim tabloları ---------- */
.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:16px 18px 10px}
.page-head h1{font-size:17px;font-weight:650;flex:1;min-width:200px}
.page-head h1 small{display:block;font-size:11.5px;color:var(--muted);font-weight:400;margin-top:2px}
.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:0 18px 14px}
.inline-form .field{min-width:150px}
.role-tag{font-size:10px;padding:1px 7px;border-radius:999px;background:var(--chip);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
tr.off td{opacity:.5}

/* ---------- modal / toast ---------- */
.modal{position:fixed;inset:0;background:var(--backdrop);display:flex;align-items:center;justify-content:center;padding:22px;z-index:70;backdrop-filter:blur(2px)}
.modal-card{width:100%;max-width:460px;max-height:88vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}
.modal-card h2{font-size:14.5px;font-weight:650}
.modal-card .modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}
.toast{
  position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:90;max-width:min(92vw,520px);
  background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;
  padding:10px 16px;font-size:12.5px;box-shadow:var(--shadow);
}
.toast.err{border-left-color:var(--bad)}
.toast.ok{border-left-color:var(--ok)}

/* filigran */
body.force-pw .tabs{display:none}

.print-mini{display:none}
.watermark{position:fixed;right:14px;bottom:10px;font-size:11px;color:var(--ink);opacity:.28;pointer-events:none;user-select:none;letter-spacing:.03em;z-index:5}

/* ---------- yazdırma ---------- */
#print-root{display:none}
@page{size:210mm 297mm;margin:0}
@media print{
  html,body{height:auto;overflow:visible;background:#fff;color:#000}
  body{display:block}
  .app,.login,.boot,.toast,.modal,.watermark,.preview-col{display:none!important}
  #print-root{display:block;width:210mm;margin:0;padding:0}
  #print-root .page{zoom:1;box-shadow:none;break-after:page;page-break-after:always;margin:0;min-height:0;height:auto;break-inside:avoid;page-break-inside:avoid}
  #print-root .page:last-child{break-after:auto;page-break-after:auto}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ---------- duyarlı ---------- */
@media (max-width:1180px){
  .workspace{grid-template-columns:260px minmax(300px,1fr)}
  .preview-col{display:none}
}
@media (max-width:1120px){
  .brand{min-width:0}
  .brand .brand-text{display:none}
}
@media (max-width:860px){
  body{overflow-x:hidden;overflow-y:auto}
  .app{height:auto;min-height:100dvh;overflow:visible}
  main{display:block;overflow:visible}
  .topbar{flex-wrap:wrap;gap:6px 8px;padding:8px 10px;min-height:0}
  .brand{order:1;flex:1 1 auto;min-width:0;gap:8px}
  .brand img{height:30px;max-width:64px}
  .brand strong{font-size:12px}
  .brand span{display:none}
  .top-right{order:2;gap:6px}
  .user-chip{display:none}
  .icon-btn{padding:5px 8px;font-size:11px}
  .tabs{order:3;flex:1 0 100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding-bottom:2px}
  .tabs::-webkit-scrollbar{display:none}
  .workspace{display:block;overflow:visible}
  .list-col{max-height:none;border-right:0;border-bottom:1px solid var(--line);padding:10px 10px 6px}
  .form-list{max-height:52vh;overflow-y:auto;overscroll-behavior:contain}
  .editor-col{border-right:0;overflow:visible}
  .editor-body{overflow:visible;padding:12px}
  .editor-foot{position:sticky;bottom:0;z-index:3;box-shadow:0 -6px 14px rgba(0,0,0,.18)}
  .print-mini{display:inline-flex}
  .rep-grid{grid-template-columns:1fr}
  .pad{padding:12px}
  .page-head{padding:12px 12px 8px}
  .watermark{position:static;display:block;text-align:center;opacity:.4;padding:8px 12px 20px;font-size:9.5px}
}
@media (max-width:560px){
  .list-filters{grid-template-columns:1fr 1fr}
  .week-actions{gap:5px}
  .editor-foot{gap:6px;padding:8px 10px}
  .editor-foot .save-state{flex:1 0 100%;text-align:left}
  .kpis{grid-template-columns:1fr 1fr}
  .pax-row{grid-template-columns:16px minmax(0,1fr) 54px 70px 16px;gap:3px;padding:4px 4px}
  .pax-row input,.pax-row select{padding:5px 4px;font-size:10.5px}
  .pax-row select{padding-right:2px}
}
