:root{--navy:#101d3b;--navy-2:#182a50;--blue:#2563eb;--blue-soft:#edf4ff;--ink:#172033;--muted:#68738a;--line:#e5e9f1;--bg:#f5f7fb;--green:#119669;--amber:#d88718;--white:#fff;--shadow:0 8px 28px rgba(27,43,75,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}.app-shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--navy);color:#dfe7f7;display:flex;flex-direction:column;padding:24px 16px}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 26px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#3b82f6,#1d4ed8);font-weight:800;font-size:20px;box-shadow:0 8px 18px rgba(37,99,235,.3)}.brand strong,.brand small{display:block}.brand strong{font-size:16px;color:#fff}.brand small{font-size:11px;color:#90a0bf;margin-top:2px}.sidebar nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#aebbd1;text-align:left;border-radius:9px;padding:11px 13px;font:inherit;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:12px}.nav-item span{width:19px;text-align:center;font-weight:400}.nav-item:hover,.nav-item.active{background:var(--navy-2);color:#fff}.nav-item.active{box-shadow:inset 3px 0 0 #4c8dff}.sidebar-footer{margin-top:auto}.storage-label{display:flex;justify-content:space-between;font-size:10px;color:#8fa0bf;margin-bottom:8px}.storage-label strong{color:#bdc9dd}.progress{height:4px;background:#29395a;border-radius:8px;overflow:hidden}.progress span{display:block;width:5%;height:100%;background:#4c8dff}.account{display:grid;grid-template-columns:34px 1fr 20px;align-items:center;gap:9px;margin-top:22px;padding-top:18px;border-top:1px solid #29395a}.account .avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#304a78;color:#fff;font-size:11px;font-weight:700}.account strong,.account small{display:block}.account strong{font-size:12px;color:#fff}.account small{font-size:10px;color:#92a0b9;margin-top:2px}.account button{border:0;background:transparent;color:#aebbd1;font-size:18px}.main{min-width:0}.topbar{height:82px;padding:0 30px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar h1{font-size:21px;margin:0 0 4px}.topbar p{margin:0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:12px}.menu-button{display:none}.primary,.secondary,.text-button,.icon-button{border:0;font:inherit;cursor:pointer;border-radius:8px}.primary{background:var(--blue);color:#fff;padding:10px 16px;font-weight:700;box-shadow:0 5px 12px rgba(37,99,235,.18)}.primary:hover{background:#1e56d2}.secondary{background:#fff;color:#34415a;border:1px solid #dce2ec;padding:9px 14px;font-weight:650}.secondary:hover{border-color:#b9c4d5;background:#fafbfe}.secondary:disabled{opacity:.5;cursor:not-allowed}.icon-button{width:36px;height:36px;background:#fff;color:#9aa5b8;border:1px solid var(--line)}.topbar .icon-button{font-size:8px;color:#e64d5e}.content{padding:22px 30px 38px;max-width:1540px;margin:0 auto}.notice{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:11px;background:#eef5ff;border:1px solid #d9e8ff;color:#395575;padding:11px 14px;border-radius:9px;margin-bottom:18px}.notice-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:#2762b4;font-weight:800}.notice strong{font-size:12px}.notice p{display:inline;margin-left:7px;font-size:11px}.notice button{background:transparent;border:0;color:#7990ad;font-size:18px;cursor:pointer}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.summary-grid article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;align-items:center;gap:13px;box-shadow:0 2px 7px rgba(18,35,66,.025)}.summary-icon{width:42px;height:42px;border-radius:9px;display:grid;place-items:center;font-size:13px;font-weight:800}.summary-icon.blue{background:#e8f1ff;color:#2563eb}.summary-icon.green{background:#e7f8f0;color:#14855f}.summary-icon.amber{background:#fff2df;color:#c9750f}.summary-grid small,.summary-grid strong,.summary-grid em{display:block}.summary-grid small{color:var(--muted);font-size:11px;margin-bottom:4px}.summary-grid strong{font-size:18px}.summary-grid em{font-size:10px;font-style:normal;color:var(--green);margin-top:4px}.summary-grid .online:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:5px}.filter-card,.table-card,.page-card{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 7px rgba(18,35,66,.025)}.filter-card{padding:17px 18px;margin-bottom:18px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2{font-size:14px;margin:0 0 3px}.section-heading p{font-size:11px;color:var(--muted);margin:0}.text-button{background:transparent;color:var(--blue);font-weight:650;font-size:11px}.filter-grid{display:grid;grid-template-columns:1.35fr 1.35fr .75fr .85fr .85fr auto;align-items:end;gap:10px;margin-top:16px}.filter-grid label>span{display:block;font-size:10px;color:#536079;font-weight:700;margin:0 0 6px 2px}.filter-grid input{width:100%;height:38px;border:1px solid #dfe4ed;border-radius:7px;padding:0 10px;color:var(--ink);font:inherit;font-size:11px;outline:none;background:#fff}.filter-grid input:focus{border-color:#6ca0f5;box-shadow:0 0 0 3px #edf4ff}.input-wrap{position:relative}.input-wrap>span{position:absolute;left:11px;top:10px;color:#8894a8}.input-wrap input{padding-left:30px}.search-button{height:38px;background:#eef3fb;border-color:#dce5f2;color:#1e4e9e}.table-card{overflow:hidden}.results-heading{padding:17px 18px;border-bottom:1px solid var(--line)}.bulk-actions{display:flex;gap:8px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:#f8f9fc;color:#69758b;font-size:9px;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}td{padding:13px 12px;border-bottom:1px solid #edf0f5;font-size:11px;vertical-align:middle}tbody tr:hover{background:#fbfcff}th:first-child,td:first-child{padding-left:18px;width:35px}td strong{display:block;font-size:11px}td small{display:block;color:#7b879a;font-size:9px;margin-top:3px}.nf-number{color:#174eae;font-weight:750}.money{font-weight:750}.badge{display:inline-flex;align-items:center;background:#eff3f8;color:#536177;border-radius:20px;padding:4px 8px;font-size:9px;font-style:normal}.badge.success{background:#e7f8ef;color:#167553}.source{display:inline-flex;align-items:center;gap:6px}.source:before{content:"";width:7px;height:7px;border-radius:50%;background:#f59e0b}.source.manual:before{background:#8b5cf6}.actions{display:flex;gap:5px}.action-button{border:1px solid #e1e6ee;background:#fff;color:#607089;border-radius:6px;width:29px;height:29px;cursor:pointer}.action-button:hover{color:var(--blue);border-color:#b9cff7}.table-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;color:#798499;font-size:10px}.table-footer div{display:flex;gap:4px}.table-footer button{width:26px;height:26px;border:1px solid #e0e5ed;background:#fff;border-radius:6px;color:#778399}.table-footer button.current{background:var(--blue);color:#fff;border-color:var(--blue)}.empty-state{text-align:center;padding:42px 20px}.empty-state>span{font-size:30px;color:#a7b3c5}.empty-state h3{font-size:15px;margin:10px 0 5px}.empty-state p{color:var(--muted);font-size:11px}.page-card{max-width:850px;margin:10px auto;padding:40px}.page-card>.hero-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:13px;background:var(--blue-soft);color:var(--blue);font-size:24px;margin-bottom:18px}.page-card h2{font-size:22px;margin:0 0 8px}.page-card>p{color:var(--muted);line-height:1.6}.mini-table{margin-top:30px;border-top:1px solid var(--line)}.mini-table>div{display:grid;grid-template-columns:1fr 1fr auto;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.mini-table em{font-style:normal}.success{color:var(--green)}.integration-card{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:9px;margin-top:12px}.integration-logo{width:42px;height:42px;display:grid;place-items:center;background:#ffecdc;color:#ef6b1e;font-weight:900;border-radius:9px}.integration-logo.neutral{background:#ecf0f7;color:#506079}.integration-card p{margin:4px 0 0;color:var(--muted);font-size:11px}.api-card code{display:block;background:#101d3b;color:#e3ecfb;padding:13px 15px;border-radius:8px;margin:10px 0;font-size:12px;overflow:auto}.hint{background:#f7f9fc;padding:12px;border-radius:7px}.modal-backdrop{position:fixed;inset:0;background:rgba(10,20,40,.55);display:grid;place-items:center;padding:20px;z-index:10}.modal-backdrop[hidden]{display:none}.modal{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px rgba(4,12,28,.3)}.modal>header{display:flex;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.modal h2{margin:0;font-size:18px}.modal header p,.modal header small{margin:5px 0 0;color:var(--muted);font-size:11px}.modal header button{border:0;background:transparent;font-size:23px;color:#7c889d;cursor:pointer}.dropzone{display:grid;place-items:center;border:1.5px dashed #b8c8df;background:#f9fbff;margin:22px;border-radius:10px;padding:32px 20px;cursor:pointer}.dropzone.dragging{border-color:var(--blue);background:#edf4ff}.dropzone input{position:absolute;opacity:0;pointer-events:none}.upload-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#e8f1ff;color:var(--blue);font-size:22px;margin-bottom:11px}.dropzone p{margin:4px 0;color:var(--blue);font-size:11px}.dropzone small{margin-top:11px;color:#8a96a9;font-size:9px}.file-list{margin:0 22px}.file-item{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:8px}.file-item>span{display:grid;place-items:center;background:#e9f8f1;color:var(--green);width:30px;height:30px;border-radius:7px}.file-item strong,.file-item small{display:block}.file-item strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.file-item small{font-size:9px;color:var(--muted);margin-top:3px}.file-item button{border:0;background:transparent;color:#8995a7;cursor:pointer}.modal>footer{display:flex;justify-content:flex-end;gap:9px;padding:16px 22px;border-top:1px solid var(--line);margin-top:20px}.detail-modal{width:min(720px,100%)}#detailContent{padding:22px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.detail-field{background:#f8fafc;border:1px solid #edf0f5;border-radius:8px;padding:12px}.detail-field.wide{grid-column:span 2}.detail-field small,.detail-field strong{display:block}.detail-field small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.detail-field strong{font-size:11px;margin-top:5px;word-break:break-word}.detail-key{grid-column:1/-1;background:#eef5ff}.toast{position:fixed;right:24px;bottom:24px;z-index:20;background:#142341;color:#fff;padding:13px 18px;border-radius:9px;box-shadow:var(--shadow);font-size:12px;max-width:360px}.toast.success-toast{background:#126c52}.toast.error-toast{background:#9f2e3b}@media(max-width:1100px){.filter-grid{grid-template-columns:repeat(3,1fr)}.search-button{grid-column:3}.summary-grid{grid-template-columns:1fr}.summary-grid article{padding:13px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:9;transform:translateX(-100%);transition:.2s;width:238px}.sidebar.open{transform:translateX(0)}.topbar{height:auto;padding:16px}.topbar p{display:none}.menu-button{display:block;border:0;background:transparent;font-size:20px}.topbar>div:first-of-type{margin-right:auto}.content{padding:15px}.notice p{display:block;margin:3px 0 0}.filter-grid{grid-template-columns:1fr}.search-button{grid-column:auto}.summary-grid{gap:9px}.results-heading{align-items:flex-start}.bulk-actions .secondary{font-size:0}.bulk-actions .secondary:after{content:"↓";font-size:14px}.page-card{padding:24px}.detail-grid{grid-template-columns:1fr}.detail-field.wide{grid-column:auto}.detail-key{grid-column:1}.modal-backdrop{padding:10px}}
