/* ═══ StructurePrime Web Paneli — Style v58 — lacivert sidebar (prototip W2/W2b) ═══ */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#F6F7F9;--bg2:#ffffff;--text:#0B1220;--text2:#4A5568;--text3:#6B7686;
  --border:#E1E6EE;--line:#ECEFF4;--blue:#0F3FBF;--blue-dark:#0A2E8F;--green:#16A34A;--red:#DC2626;--amber:#D97706;--purple:#7C5CFF;
  --navy:#0A1E3F;--navy-deep:#071533;--on-navy:#5B9BFF;
  --shadow:0 1px 2px rgba(10,30,63,0.04);--shadow2:0 20px 50px -20px rgba(10,30,63,0.4);
  --radius:14px;--mono:'JetBrains Mono','SF Mono','Consolas',monospace;
}
body{font-family:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}
a{color:var(--blue);text-decoration:none}
code{font-family:var(--mono);font-size:12px;background:#f1f5f9;padding:2px 6px;border-radius:4px}

/* ═══ SHELL LAYOUT ═══ */
.shell{display:flex;height:100vh;overflow:hidden}
.sidebar{width:256px;min-width:256px;background:var(--navy);color:#fff;display:flex;flex-direction:column;overflow:hidden}
.content{flex:1;overflow-y:auto;padding:24px 32px}

/* ═══ SIDEBAR ═══ */
.sb-header{display:flex;align-items:center;gap:10px;padding:16px 18px}
.sb-logo{width:34px;height:34px;border-radius:9px;display:block;flex-shrink:0}
.sb-title{font-size:15px;font-weight:800;letter-spacing:-.3px;color:#fff} .sb-title b{color:var(--on-navy);font-weight:800}
.sb-sub{font-size:10.5px;color:rgba(255,255,255,.55)}

.sb-site{padding:4px 12px 10px}
.sb-site-select{width:100%;padding:9px 12px;border:none;border-radius:10px;font-size:13px;font-weight:600;font-family:inherit;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.sb-site-select option{color:var(--text);background:#fff}
.sb-site-select:focus{outline:2px solid var(--on-navy);outline-offset:1px}

.sb-nav{flex:1;overflow-y:auto;padding:4px 10px}
.sb-item{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:2px;border-radius:10px;cursor:pointer;font-size:13px;color:rgba(255,255,255,.75);transition:background .15s,color .15s}
.sb-item:hover{background:rgba(255,255,255,.07);color:#fff}
.sb-item.active{background:rgba(255,255,255,.12);color:#fff;font-weight:700}
.sb-item.sub{padding-left:30px;font-size:12.5px}
.sb-icon{font-size:16px;width:20px;text-align:center}
.sb-count{margin-left:auto;font-size:11px;color:rgba(255,255,255,.5);min-width:18px;text-align:right;font-variant-numeric:tabular-nums}
.sb-item.active .sb-count{color:rgba(255,255,255,.75)}
.sb-sep{height:1px;background:rgba(255,255,255,.1);margin:6px 12px}
.sb-nav::-webkit-scrollbar{width:6px}.sb-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}

.sb-group-hdr{display:flex;align-items:center;gap:8px;padding:14px 12px 6px;cursor:pointer;font-size:10.5px;font-weight:700;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.6px;user-select:none}
.sb-group-hdr:hover{color:rgba(255,255,255,.75)}
.sb-group-hdr .sb-icon{display:none}
.sb-arrow{margin-left:auto;font-size:10px;transition:transform .2s}
.sb-group:not(.collapsed) .sb-arrow{transform:rotate(90deg)}
.sb-group.collapsed .sb-group-items{display:none}

.sb-footer{border-top:1px solid rgba(255,255,255,.1);padding:14px 18px}
.sb-lic{font-size:12px;font-weight:600;margin-bottom:6px;color:#fff}
.sb-conn{font-size:11.5px;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:6px;margin-bottom:10px}
.conn-dot{width:8px;height:8px;border-radius:50%}
.conn-dot.green{background:#4ADE80}.conn-dot.amber{background:var(--amber)}.conn-dot.red{background:var(--red)}
.sb-disconnect{width:100%;padding:7px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:none;font-size:12px;font-family:inherit;color:rgba(255,255,255,.75);cursor:pointer}
.sb-disconnect:hover{border-color:#F87171;color:#fff;background:rgba(220,38,38,.25)}

/* ═══ PAGE HEADER ═══ */
.page-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.page-header h1{font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--text)}
.hdr-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.hdr-stat{font-size:12px;color:var(--text3);background:var(--bg2);padding:5px 10px;border-radius:999px;border:1px solid var(--border)}
.ro-badge{font-size:11.5px;font-weight:700;color:var(--amber);background:rgba(217,119,6,.12);padding:5px 10px;border-radius:999px}

/* ═══ BUTTONS ═══ */
.btn-pri{background:var(--blue);color:#fff;border:none;padding:8px 14px;border-radius:10px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer}
.btn-pri:hover{background:var(--blue-dark)}
.btn-sec{background:var(--bg2);color:var(--text);border:1px solid var(--border);padding:8px 14px;border-radius:10px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}
.btn-sec:hover{background:var(--bg)}
.btn-danger{background:var(--red);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}
.btn-danger:hover{background:#dc2626}
.btn-sm{padding:6px 12px;font-size:12px}
.btn-back{background:none;border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer;color:var(--text2)}
.btn-back:hover{background:var(--bg)}

/* ═══ STAT CARDS ═══ */
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}
.stat-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}
.stat-icon{font-size:28px}
.stat-val{font-size:22px;font-weight:800;color:var(--text)}
.stat-label{font-size:12px;color:var(--text3);font-weight:500}

.cash-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.cash-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;text-align:center;box-shadow:var(--shadow)}
.cash-label{font-size:12px;color:var(--text3);margin-bottom:4px}
.cash-val{font-size:20px;font-weight:800}
.cash-val.green{color:var(--green)}.cash-val.red{color:var(--red)}

/* ═══ DASHBOARD MODULES ═══ */
.dash-group{margin-bottom:16px}
.dash-group-title{font-size:11px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}
.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.dash-mod{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:10px 12px;cursor:pointer;transition:all .15s;display:flex;justify-content:space-between;align-items:center}
.dash-mod:hover{border-color:var(--blue);background:#F4F7FD}
.dash-mod-name{font-size:12px;font-weight:600;color:var(--text)}
.dash-mod-count{font-size:11px;color:var(--text3);background:var(--bg);padding:2px 7px;border-radius:6px}

/* ═══ SEARCH ═══ */
.search-wrap{margin-bottom:16px}
.search-input{width:100%;max-width:320px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:10px;font-size:13px;font-family:inherit;background:var(--bg2);color:var(--text)}
.search-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(15,63,191,0.1)}

/* ═══ TABLE ═══ */
.tbl-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.tbl{width:100%;border-collapse:collapse}
.tbl th{background:var(--bg);padding:12px 16px;font-size:11px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.4px;text-align:left;border-bottom:1px solid var(--line);cursor:pointer;user-select:none;white-space:nowrap}
.tbl th:hover{color:var(--text)}
.tbl td{padding:13px 16px;font-size:13px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;color:var(--text);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tbl tbody tr:hover{background:#F4F7FD}
.tbl.mini{font-size:12px}.tbl.mini th,.tbl.mini td{padding:6px 10px}
.tbl-empty{padding:40px;text-align:center;color:var(--text3);font-size:13px}
.cell-empty{color:var(--text3)}
.act-cell{white-space:nowrap}
.act-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 4px;border-radius:4px}
.act-btn:hover{background:var(--bg)}
.act-btn.act-danger:hover{background:#fef2f2}
.tbl-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:12.5px;color:var(--text3);border-top:1px solid var(--border)}
.pagi{display:flex;gap:4px}
.pg-btn{width:30px;height:30px;border:1px solid var(--border);border-radius:8px;background:none;font-size:12px;font-family:inherit;cursor:pointer;color:var(--text2)}
.pg-btn:hover{background:var(--bg)}.pg-btn.active{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:700}

/* ═══ BADGES ═══ */
.badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}
.b-green{background:#dcfce7;color:#166534}.b-red{background:#fee2e2;color:#991b1b}
.b-amber{background:#fef3c7;color:#92400e}.b-blue{background:rgba(15,63,191,.1);color:var(--blue)}
.b-purple{background:#ede9fe;color:#5b21b6}

/* ═══ DETAIL ═══ */
.detail-cards{display:flex;flex-direction:column;gap:16px}
.det-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.det-card-hdr{padding:12px 16px;font-size:13px;font-weight:700;background:var(--bg);border-bottom:1px solid var(--border);color:var(--text)}
.det-row{display:flex;padding:10px 16px;border-bottom:1px solid var(--line)}
.det-label{width:180px;min-width:180px;font-size:12px;font-weight:600;color:var(--text3)}
.det-value{font-size:13px;color:var(--text);word-break:break-word}

/* ═══ MEMBER/ENTRY/RECORD LISTS ═══ */
.list-section{margin-top:16px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.list-title{padding:12px 16px;font-size:13px;font-weight:700;background:var(--bg);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}
.list-badge{font-size:11px;background:var(--blue);color:#fff;padding:2px 8px;border-radius:10px}
.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;padding:12px}
.member-card{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg);border-radius:8px}
.member-avatar{width:32px;height:32px;border-radius:50%;background:rgba(15,63,191,.1);color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px}
.member-info{flex:1}
.member-name{font-size:13px;font-weight:600;color:var(--text)}
.member-role{font-size:11px;color:var(--text3)}

/* ═══ MODAL ═══ */
.modal-overlay{position:fixed;inset:0;background:rgba(7,21,51,0.45);z-index:1000;display:flex;align-items:center;justify-content:center}
.modal-box{background:var(--bg2);border-radius:14px;width:90%;max-width:560px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow2)}
.modal-box.small{max-width:400px}
.modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);font-weight:700;font-size:16px}
.modal-x{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text3);padding:4px 8px;border-radius:6px}
.modal-x:hover{background:var(--bg)}
.modal-body{padding:20px;overflow-y:auto;flex:1}
.modal-ft{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}

/* ═══ FORM ═══ */
.fg{margin-bottom:14px}
.fl{display:block;font-size:12px;font-weight:600;color:var(--text2);margin-bottom:4px}
.fi{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:13px;font-family:inherit;background:var(--bg2);color:var(--text)}
.fi:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(15,63,191,0.1)}
.ta{min-height:70px;resize:vertical}
.sel{cursor:pointer;appearance:auto}

/* ═══ TOAST ═══ */
#toast-container{position:fixed;top:16px;right:16px;z-index:2000;display:flex;flex-direction:column;gap:8px}
.toast{padding:10px 16px;border-radius:8px;font-size:13px;font-weight:500;box-shadow:var(--shadow2);animation:slideIn .3s ease}
.t-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}
.t-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}
.t-info{background:#E8EEFB;color:var(--blue);border:1px solid rgba(15,63,191,.2)}
.toast-exit{opacity:0;transform:translateX(40px);transition:all .3s ease}
@keyframes slideIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}

/* ═══ QR / SYNC SCREENS ═══ */
.center-screen{display:flex;align-items:center;justify-content:center;height:100vh;background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%)}
.qr-box{background:var(--bg2);border-radius:20px;padding:32px;text-align:center;box-shadow:0 30px 80px -30px rgba(0,0,0,0.6);max-width:420px}
.qr-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px}
.qr-logo-icon{width:44px;height:44px;border-radius:12px;display:block}
.qr-logo-text{font-size:18px;font-weight:800;letter-spacing:-.4px}.qr-logo-text b{color:var(--blue);font-weight:800}
.qr-logo-sub{font-size:13px;font-weight:500;color:var(--text3);letter-spacing:0;margin-left:4px}
.qr-canvas{margin:16px auto;display:inline-block;background:#fff;padding:8px;border-radius:8px;border:2px solid var(--border)}
.qr-steps{text-align:left;margin:16px 0}
.qr-step{padding:6px 0;font-size:13px;color:var(--text2)}.qr-step b{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;align-items:center;justify-content:center;font-size:11px;margin-right:8px}
.qr-code-text{font-family:var(--mono);font-size:10px;color:var(--text3);word-break:break-all;cursor:pointer;padding:8px;background:var(--bg);border-radius:6px;margin-top:12px}
.qr-code-text:hover{background:var(--line)}
.qr-status{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;font-size:12px;color:var(--text3)}
.qr-status-dot{width:8px;height:8px;border-radius:50%;background:var(--amber);animation:pulse 1.5s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

.sync-box{text-align:center;background:var(--bg2);border-radius:20px;padding:32px 40px;box-shadow:0 30px 80px -30px rgba(0,0,0,0.6)}
.center-screen > p{background:var(--bg2);padding:16px 22px;border-radius:14px}
.sync-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}
@keyframes spin{to{transform:rotate(360deg)}}
.sync-bar{width:300px;height:6px;background:var(--border);border-radius:3px;margin:12px auto 0;overflow:hidden}
.sync-fill{height:100%;background:var(--blue);border-radius:3px;transition:width .3s}

/* ═══ REPORTS ═══ */
.rpt-section{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow)}
.rpt-section h2{font-size:16px;font-weight:800;margin-bottom:14px;color:var(--text)}
.rpt-section h3{font-size:13px;font-weight:700;color:var(--text2);margin:14px 0 8px}
.rpt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.rpt-card{background:var(--bg);border-radius:8px;padding:14px;text-align:center}
.rpt-val{font-size:24px;font-weight:800;color:var(--text)}
.rpt-val.green{color:var(--green)}.rpt-val.red{color:var(--red)}.rpt-val.amber{color:var(--amber)}
.rpt-label{font-size:11px;color:var(--text3);margin-top:4px}

.att-chart{display:flex;align-items:flex-end;gap:8px;height:120px;padding:10px 0}
.att-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.att-bar{width:100%;max-width:40px;background:var(--blue);border-radius:4px 4px 0 0;margin-top:auto;min-height:4px;transition:height .3s}
.att-bar-val{font-size:11px;font-weight:700;color:var(--text);margin-top:4px}
.att-bar-label{font-size:10px;color:var(--text3)}

/* ═══ RESPONSIVE ═══ */
@media(max-width:768px){
  .sidebar{width:220px;min-width:220px}
  .content{padding:16px}
  .stat-row{grid-template-columns:repeat(2,1fr)}
  .cash-row{grid-template-columns:1fr}
}

/* ── Dil seçici (EN / TR) — i18n.js SPI18N.switcherHTML() ── */
.spi-lang{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;border:1px solid rgba(10,30,63,.14);background:rgba(10,30,63,.03);font-family:Onest,system-ui,sans-serif;line-height:1}
.spi-lang button{appearance:none;border:0;background:transparent;cursor:pointer;padding:5px 9px;border-radius:999px;font:700 11px/1 Onest,system-ui,sans-serif;letter-spacing:.4px;color:#0A1E3F;opacity:.65;transition:background .15s,opacity .15s}
.spi-lang button:hover{opacity:1;background:rgba(15,63,191,.08)}
.spi-lang button.on{opacity:1;background:#0A1E3F;color:#fff}
.spi-lang-qr{margin-top:18px}
.spi-lang-sb{margin-left:auto;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06)}
.spi-lang-sb button{color:#fff;padding:4px 7px;font-size:10.5px}
.spi-lang-sb button:hover{background:rgba(255,255,255,.12)}
.spi-lang-sb button.on{background:#fff;color:#0A1E3F}
.center-screen>.spi-lang{margin-left:12px;border-color:rgba(255,255,255,.2)}
.center-screen>.spi-lang button{color:#fff}
