/* Black Point Yönetim Paneli */
:root{--ink:#16171a;--ink2:#4a4d55;--mut:#8a8d96;--line:#e4e2dc;--bg:#f4f3ef;--card:#fff;--acc:#16171a;--acc-soft:#ecebe6;--ok:#1d7a4a;--okbg:#e3f3ea;--err:#b42318;--errbg:#fde8e6;--warn:#8a5a00;--warnbg:#fdf1d3;--r:10px}
body.s-ajans{--acc:#b8860b;--acc-soft:#f7efd9}
body.s-cafe{--acc:#2f6b4f;--acc-soft:#e2efe8}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:inherit}
h1{font-size:21px;margin:0;letter-spacing:-.01em}h1 small{font-size:13px;font-weight:500;color:var(--mut);margin-left:8px}
h2{font-size:15px;margin:22px 0 8px}h3{font-size:14px;margin:0 0 10px}h3 small{font-weight:400}h4{font-size:13px;margin:18px 0 8px;color:var(--ink2)}
.muted{color:var(--mut)}.neg{color:var(--err)}.pos{color:var(--ok)}.r{text-align:right}.c{text-align:center}
.num{font-variant-numeric:tabular-nums;white-space:nowrap}
td.r,th.r,.kpi b{font-variant-numeric:tabular-nums}

/* üst bar */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;background:#0f1012;color:#fff;padding:0 16px;height:54px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.tabs{display:flex;gap:2px;flex:1;overflow-x:auto;align-self:stretch}
.tabs a{display:flex;align-items:center;padding:0 14px;text-decoration:none;color:#b9bbc2;font-weight:600;font-size:13px;border-bottom:3px solid transparent;white-space:nowrap}
.tabs a:hover{color:#fff}.tabs a.on{color:#fff;border-bottom-color:#fff}
.tabs a.t-ajans.on{border-bottom-color:#e0b040}.tabs a.t-cafe.on{border-bottom-color:#5fb58b}
.who{display:flex;align-items:center;gap:10px;font-size:13px;color:#b9bbc2;white-space:nowrap}.who .link{color:#fff}
.burger{display:none;background:none;border:0;color:#fff;font-size:20px;cursor:pointer;padding:6px}
.logo{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:7px;padding:4px 6px;height:32px;min-width:32px}
.logo.dark{background:#0f1012}.logo img{max-height:24px;max-width:110px;display:block}
.logo.big{height:64px;padding:10px 14px}.logo.big img{max-height:44px;max-width:200px}
.top .logo.dark{background:transparent;padding:0}

/* iskelet */
.shell{display:flex;min-height:calc(100vh - 54px)}
.side{width:232px;flex:none;background:var(--card);border-right:1px solid var(--line);padding:14px 10px 40px;position:sticky;top:54px;height:calc(100vh - 54px);overflow-y:auto}
.side-co{display:flex;align-items:center;gap:8px;padding:4px 8px 12px;font-size:13px;line-height:1.3}
.side h4{margin:16px 8px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mut)}
.side a{display:block;padding:7px 10px;border-radius:7px;text-decoration:none;color:var(--ink2);font-weight:500}
.side a:hover{background:var(--acc-soft)}.side a.on{background:var(--acc);color:#fff}
main{flex:1;min-width:0;padding:20px 24px 60px;max-width:1500px}
.page-h{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}

/* kart, tablo */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px}
.card.tw{padding:0;overflow-x:auto}.card.empty{text-align:center;color:var(--mut);padding:36px 16px}
.card-h{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.card-h h3{margin:0}
.tbl{width:100%;border-collapse:collapse}
.tbl th{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:#fbfaf8}
.tbl th.r{text-align:right}.tbl th.c{text-align:center}
.tbl td{padding:9px 12px;border-bottom:1px solid #efede8;vertical-align:middle}
.tbl tbody tr:hover{background:#faf9f6}.tbl tr:last-child td{border-bottom:0}
.tbl tfoot td{background:#fbfaf8;border-top:1px solid var(--line)}
.rowlink{font-weight:600;text-decoration:none}.rowlink:hover{text-decoration:underline}
.acts{white-space:nowrap;text-align:right}.acts a,.acts .link{margin-left:10px;font-size:13px;color:var(--ink2)}
.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600;background:#eeede9;color:var(--ink2);border:0;white-space:nowrap}
button.badge{cursor:pointer}
.badge.ok{background:var(--okbg);color:var(--ok)}.badge.err{background:var(--errbg);color:var(--err)}.badge.warn{background:var(--warnbg);color:var(--warn)}
.tag{font-size:11px;background:var(--acc-soft);padding:1px 6px;border-radius:4px;color:var(--ink2)}

/* butonlar, form */
.btn{display:inline-block;background:var(--acc);color:#fff;border:1px solid var(--acc);padding:8px 14px;border-radius:8px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap}
.btn:hover{filter:brightness(1.1)}.btn.ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn.ghost:hover{background:var(--acc-soft);filter:none}
.btn.sm{padding:4px 10px;font-size:13px}
.link{background:none;border:0;padding:0;font:inherit;color:var(--ink2);text-decoration:underline;cursor:pointer}.link.danger{color:var(--err)}
input,select,textarea{font:inherit;color:inherit;border:1px solid #cfcdc6;border-radius:7px;padding:7px 9px;background:#fff;max-width:100%}
input:focus,select:focus,textarea:focus,.btn:focus-visible,a:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
textarea{width:100%;resize:vertical}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px 16px}
.fld label{display:block;font-size:12.5px;font-weight:600;color:var(--ink2);margin-bottom:4px}
.fld input:not([type=checkbox]):not([type=file]),.fld select{width:100%}.fld.wide{grid-column:1/-1}
.fld .ro{padding:7px 0}.req{color:var(--err)}
.actions{margin:14px 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.actions.sticky{position:sticky;bottom:0;background:var(--bg);padding:10px 0;z-index:5}
.files{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}.file{padding:4px 0}.file small{color:var(--mut);margin-left:6px}.upl{margin-top:8px}
form.inline{display:inline}form.del{margin-top:6px}
.filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.hint{font-size:13px;color:var(--ink2);background:var(--acc-soft);border-radius:8px;padding:8px 12px;margin:0 0 12px}
.flash{padding:10px 14px;border-radius:8px;margin-bottom:12px;font-weight:600;background:var(--okbg);color:var(--ok)}.flash.err{background:var(--errbg);color:var(--err)}
.pager{margin:12px 0}.pager a,.pager b{padding:4px 9px;border-radius:6px;text-decoration:none}.pager b{background:var(--acc);color:#fff}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:12px;background:#fff}.seg a{padding:6px 14px;text-decoration:none;font-weight:600;color:var(--ink2)}.seg a.on{background:var(--acc);color:#fff}
.quick input{width:100px}.quick select{padding:5px}
code{background:#eeede9;padding:1px 5px;border-radius:4px}

/* özet */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:14px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;border-top:3px solid var(--acc)}
.kpi span{display:block;font-size:12px;color:var(--mut);font-weight:600}.kpi b{display:block;font-size:19px;letter-spacing:-.01em;margin-top:2px}.kpi small{color:var(--mut);font-size:12px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;align-items:start}.cols h2:first-child{margin-top:0}
.card.co{text-decoration:none;display:block}.card.co:hover{border-color:#b9b6ad}
.card.co.t-ajans{border-top:3px solid #b8860b}.card.co.t-cafe{border-top:3px solid #2f6b4f}
.co-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}.co-h h3{margin:0;font-size:16px}
.co-n{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.co-n span{display:block;font-size:12px;color:var(--mut)}.co-n b{font-size:16px;font-variant-numeric:tabular-nums}
.alerts{list-style:none;margin:0;padding:0}.alerts li{padding:7px 10px 7px 12px;border-left:3px solid var(--mut);margin-bottom:6px;background:#faf9f6;border-radius:0 6px 6px 0}
.alerts li.err{border-color:var(--err);background:var(--errbg)}.alerts li.warn{border-color:#d99a00;background:var(--warnbg)}.alerts a{text-decoration:none}.alerts a:hover{text-decoration:underline}
.kv2{width:100%;border-collapse:collapse}.kv2 th{text-align:left;font-weight:500;color:var(--ink2);padding:6px 0}.kv2 td{text-align:right;padding:6px 0;font-variant-numeric:tabular-nums}.kv2 tr+tr th,.kv2 tr+tr td{border-top:1px solid #efede8}
.quicks{display:flex;gap:8px;flex-wrap:wrap}
.chart{display:flex;gap:10px;align-items:flex-end;height:150px}.chart .col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.chart .bars{flex:1;display:flex;gap:3px;align-items:flex-end;width:100%;justify-content:center;border-bottom:1px solid var(--line)}
.chart .bars i{width:38%;max-width:26px;min-height:2px;border-radius:4px 4px 0 0;display:block}.chart i.g,.lg.g{background:#2f6b4f}.chart i.x,.lg.x{background:#c9a23a}
.chart small{font-size:11px;color:var(--mut)}.chart small.neg{color:var(--err)}.chart small.pos{color:var(--ok)}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--ink2);margin:10px 0 0}.lg{display:inline-block;width:10px;height:10px;border-radius:2px}
.bar{display:inline-block;width:90px;height:8px;background:#eeede9;border-radius:4px;vertical-align:middle;overflow:hidden}.bar.big{width:100%;height:12px}.bar i{display:block;height:100%;background:var(--acc)}

/* puantaj */
.grid-t th,.grid-t td{padding:4px 3px}.grid-t th.c{min-width:34px}.grid-t .we{background:#f6f4ee}
.grid-t .stick{position:sticky;left:0;background:#fff;z-index:2;padding:6px 12px;white-space:nowrap;border-right:1px solid var(--line)}
.pc{width:34px;padding:3px 0;text-align:center;text-align-last:center;border-radius:5px;font-weight:700;appearance:none;-webkit-appearance:none}
input.pc.mh{width:36px;font-weight:500}
.st-C{background:#e3f3ea;color:#1d7a4a}.st-Y{background:#eaf3d9;color:#4f6b12}.st-I{background:#e1ecfb;color:#1b4f9c}.st-R{background:#efe4fa;color:#6a2fa0}.st-U{background:#fdf1d3;color:#8a5a00}.st-D{background:#fde8e6;color:#b42318}.st-T{background:#e6f4f6;color:#11616d}.st-H{background:#eeede9;color:#4a4d55}
.legend b[class^=st-]{display:inline-block;width:22px;text-align:center;border-radius:4px;margin-right:4px}.ponly{display:none}
input.shift{width:84px;text-align:center}

/* satış girişi */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:start}.pcat{margin:0}
.prow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 6px;border-radius:6px}.prow.has{background:var(--acc-soft)}
.prow .pn small{color:var(--mut);margin-left:4px}.prow input{width:76px;text-align:right}

/* giriş */
body.login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#0f1012;padding:16px}
.login-box{background:#fff;border-radius:14px;padding:28px;width:100%;max-width:360px;display:flex;flex-direction:column;gap:12px}.login-box.wide{max-width:460px}
.login-box h1{font-size:19px}.login-box p{margin:0}.login-box h3{margin:10px 0 0}.login-box label{font-size:12.5px;font-weight:600;color:var(--ink2);display:flex;flex-direction:column;gap:4px}
.login-box .logo{align-self:flex-start}.login-box .btn{background:#0f1012;border-color:#0f1012;padding:10px;margin-top:6px}

/* yazdırma belgeleri */
body.printpage{background:#e9e8e4}.pbar{padding:12px;text-align:center}
.sheet{background:#fff;width:210mm;max-width:100%;min-height:270mm;margin:0 auto 16px;padding:16mm;box-shadow:0 1px 6px rgba(0,0,0,.12);page-break-after:always;font-size:13px}
.sh-head{display:flex;gap:16px;align-items:center;border-bottom:2px solid #16171a;padding-bottom:12px}.sh-head h2{margin:0;font-size:18px}.sh-head p{margin:2px 0 0;color:var(--ink2);font-size:12px}
.doc-t{text-align:center;font-size:18px;letter-spacing:.08em;margin:18px 0 4px}.doc-s{text-align:center;color:var(--ink2);margin:0 0 14px}.doc-f{color:var(--mut);font-size:11px;margin-top:20px}
.kv{width:100%;border-collapse:collapse;margin-bottom:14px}.kv th,.kv td{border:1px solid #cfcdc6;padding:6px 9px;text-align:left}.kv th{background:#f6f5f1;width:20%;font-weight:600}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.sheet .tbl{border:1px solid #cfcdc6}.sheet .tbl td,.sheet .tbl th{border-bottom:1px solid #e4e2dc}.sheet .tot td{font-weight:700;background:#f6f5f1}
.net{margin:16px 0;border:2px solid #16171a;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700;letter-spacing:.04em}.net b{font-size:20px}
.signs{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:46px}.signs div{border-top:1px solid #16171a;padding-top:6px;font-size:12px}

@media (max-width:900px){
 .burger{display:block}.brand span{display:none}.who span{display:none}
 .side{position:fixed;left:0;top:54px;z-index:15;transform:translateX(-100%);transition:transform .2s;box-shadow:4px 0 20px rgba(0,0,0,.15)}
 body.nav-open .side{transform:none}main{padding:14px 12px 60px}.two{grid-template-columns:1fr}.cols{grid-template-columns:1fr}
}
@media print{
 .noprint,.top,.side{display:none!important}body,body.printpage{background:#fff}main{padding:0;max-width:none}.shell{display:block}
 .card{border:0;padding:0}.card.tw{overflow:visible}.tbl th{background:none}.sheet{box-shadow:none;margin:0;padding:8mm;width:auto;min-height:0}
 select.pc{display:none}.ponly{display:inline;font-weight:700}.grid-t .stick{position:static}
 a{text-decoration:none}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
