
:root{
  --pink:#ef0074; --pink2:#ff4ca0; --cyan:#19bdf2; --yellow:#ffd42a; --black:#151d28;
  --bg:#f5f8fc; --text:#182033; --muted:#788397; --line:#e4eaf2; --green:#24b46b;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}
button,input{font:inherit}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:242px;background:linear-gradient(180deg,#111a26,#182332);color:#fff;padding:20px 12px;display:flex;flex-direction:column;z-index:20}
.brand{height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.brand img{max-width:205px;max-height:70px;object-fit:contain}
.brand-fallback{display:none;text-align:center;letter-spacing:.25em;font-size:10px}.brand-fallback strong{font-size:32px;letter-spacing:.05em}.brand-fallback span{font-size:9px}
.nav{display:flex;flex-direction:column;gap:6px}
.nav-item{border:0;background:transparent;color:#eaf0f7;text-align:left;padding:14px 14px;border-radius:11px;cursor:pointer;font-weight:600;font-size:14px}
.nav-item:hover{background:#202d3d}.nav-item.active{background:linear-gradient(90deg,#f00076,#ff147f);color:#fff}
.nav-item span{margin-left:10px}.divider{height:1px;background:#3a4553;margin:14px 8px}
.sidebar-quote{margin-top:auto;padding:16px 22px;color:#fff;font-family:cursive;font-size:24px;line-height:1.25;transform:rotate(-4deg)}
.main{margin-left:242px;min-height:100vh}
.topbar{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 28px;position:sticky;top:0;z-index:10}
.topbar h1{margin:0;font-size:28px}.topbar p{margin:4px 0 0;color:var(--muted)}
.top-actions{display:flex;align-items:center;gap:12px}.top-actions input{width:340px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fafcff}
.user-badge{width:42px;height:42px;border-radius:50%;background:var(--black);color:#fff;display:grid;place-items:center}.user-copy{display:flex;flex-direction:column;font-size:13px}.user-copy span{color:var(--muted)}
.section{display:none;padding:14px 20px 28px}.section.active{display:block}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}
.kpi{padding:18px;border-radius:14px;border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;min-height:110px}.kpi span{font-weight:700}.kpi strong{font-size:28px;margin:6px 0}.kpi small{color:#647084}
.kpi-pink{background:linear-gradient(135deg,#fff,#ffe6f2)}.kpi-blue{background:linear-gradient(135deg,#fff,#e5f7ff)}.kpi-yellow{background:linear-gradient(135deg,#fff,#fff6cd)}.kpi-green{background:linear-gradient(135deg,#fff,#e6faee)}
.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 6px 20px rgba(18,32,56,.04)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(260px,.8fr);gap:14px;margin-bottom:14px}
.upload-panel{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr);padding:16px;gap:18px}
.dropzone{border:2px dashed #cad5e3;border-radius:14px;min-height:265px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;transition:.2s}
.dropzone.dragover{border-color:var(--pink);background:#fff3f8}.cloud{font-size:52px;color:var(--pink);line-height:1}
.dropzone h2{margin:8px 0 4px}.dropzone p,.dropzone small{color:var(--muted)}.btn{border:0;border-radius:10px;padding:11px 18px;cursor:pointer;font-weight:700}.btn-primary{background:var(--pink);color:#fff;margin-top:16px}.btn-outline{background:#fff;border:1px solid var(--line);color:var(--text)}
.upload-info{display:flex;flex-direction:column;justify-content:center;gap:22px}.upload-info div{display:flex;flex-direction:column}.upload-info span{font-size:13px;color:var(--muted);margin-top:3px}
.activity{padding:16px}.panel-title{display:flex;align-items:center;justify-content:space-between}.panel-title h3{margin:0}.link-btn{border:0;background:none;color:var(--pink);cursor:pointer;font-weight:700}
.activity-list{margin-top:12px;display:flex;flex-direction:column;gap:10px}.activity-item{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.activity-item b{display:block}.activity-item span{color:var(--muted)}
.documents-panel{padding:0;overflow:hidden}.doc-toolbar{padding:12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}
.tabs{display:flex;gap:6px}.tab{border:0;background:#eef2f7;padding:10px 16px;border-radius:10px;cursor:pointer}.tab.active{background:var(--pink);color:#fff}.tab span{opacity:.8}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{background:#f5f7fa;color:#33415b}
.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700}.badge.invoice{background:#e3f3ff;color:#0870a8}.badge.payment{background:#fff1b7;color:#7a5a00}.badge.linked{background:#dcf8e8;color:#16814b}.badge.unlinked{background:#eceff3;color:#5b6470}
.actions{display:flex;gap:6px}.action-btn{border:0;border-radius:8px;padding:7px 9px;cursor:pointer;font-weight:700}.view{background:#edf1f7}.pdf{background:#ffe2ef;color:#c20058}.xml{background:#dff2ff;color:#0074b6}
.empty-state{padding:28px;text-align:center;color:var(--muted)}
.simple-page{padding:28px}.simple-page h2{margin-top:0}
.modal{position:fixed;inset:0;background:rgba(10,18,30,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}.modal.open{display:flex}.modal-card{background:#fff;border-radius:16px;width:min(760px,95vw);max-height:88vh;overflow:auto;padding:24px;position:relative}.modal-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:30px;cursor:pointer}.modal-body{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin-top:20px}.detail{background:#f7f9fc;border-radius:10px;padding:10px}.detail b{display:block;font-size:12px;color:#6e7b90}.detail span{word-break:break-word}
.toast{position:fixed;right:24px;bottom:24px;background:#161f2b;color:#fff;padding:13px 18px;border-radius:10px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none;z-index:60}.toast.show{opacity:1;transform:none}
@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.top-actions input{width:250px}}
@media (max-width:820px){.sidebar{width:76px;padding:16px 8px}.brand img{max-width:58px}.nav-item span,.sidebar-quote,.brand-fallback{display:none!important}.main{margin-left:76px}.topbar{height:auto;align-items:flex-start;gap:12px}.top-actions input{display:none}.user-copy{display:none}.upload-panel{grid-template-columns:1fr}.kpis{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.main{margin-left:0;padding-bottom:70px}.sidebar{left:0;right:0;top:auto;bottom:0;width:auto;height:64px;flex-direction:row;padding:7px;align-items:center}.brand,.sidebar-quote,.divider{display:none}.nav{width:100%;flex-direction:row;justify-content:space-around}.nav-item{padding:10px;font-size:18px}.nav-item:nth-child(n+5){display:none}.topbar{padding:14px 16px}.topbar h1{font-size:22px}.section{padding:10px}.kpis{grid-template-columns:1fr}.doc-toolbar{align-items:flex-start;gap:10px;flex-direction:column}.tabs{overflow:auto;width:100%}.modal-body{grid-template-columns:1fr}}
