:root{font-family:Inter,Arial,Helvetica,sans-serif;color:#183248;background:#f4f7fb;line-height:1.5;font-size:16px;font-synthesis:none;--navy:#142f43;--teal:#12647a;--line:#dce5ec;--muted:#587080}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,.button{cursor:pointer;border:1px solid #d7e0e7;background:white;color:#183248;border-radius:8px;padding:10px 15px;font-size:.9rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;line-height:1.5}button:hover,.button:hover{background:#edf4f7}button:disabled{opacity:.55;cursor:wait}.primary{background:var(--teal);border-color:var(--teal);color:white}.primary:hover{background:#0b5064}.danger{color:#a42d38}.ghost{border:0;background:transparent}a{color:#12647a}h1,h2,h3,p{margin-top:0}h1{font-size:2rem;line-height:1.2;letter-spacing:-.04em;margin-bottom:10px}h2{font-size:1.15rem}h3{font-size:1rem}p{color:var(--muted)}small,.muted{color:var(--muted);font-size:.875rem}.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.shell{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:white;padding:32px 20px;display:flex;flex-direction:column;gap:25px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.2rem}.sidebar .eyebrow{color:#a9c1d1;margin:0 12px 10px}.account-nav{display:grid;gap:7px}.account-nav button{justify-content:flex-start;text-align:left;background:transparent;border-color:transparent;color:#cfdee9;font-weight:400;overflow-wrap:anywhere}.account-nav button.active{background:#274b61;color:white;border-color:#3b627a}.account-nav .mark{font-size:.8rem;border:1px solid #658298;border-radius:5px;min-width:28px;padding:2px;text-align:center}.sidebar .new-account{border:1px dashed #638199;color:#dcebf4;background:transparent;width:100%;margin-top:10px}.sidebar-foot{margin-top:auto;font-size:.875rem;color:#a9c1d1}.sidebar-foot button{color:#dbe7ef}.main{padding:40px clamp(20px,4vw,64px);max-width:1560px;width:100%;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:32px}.topbar p{margin:0}.actions{display:flex;gap:9px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:26px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:22px}.stat.accent{background:var(--navy);color:white;border-color:var(--navy)}.stat.accent .muted{color:#b5cbd9}.stat-label{font-size:.875rem;margin-bottom:10px}.stat-value{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:700;letter-spacing:-.03em;overflow-wrap:anywhere}.stat .muted{margin:8px 0 0;display:block}.negative{color:#ae2c37}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-head{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:.9rem}th{background:#f7f9fb;font-size:.8rem;color:var(--muted);font-weight:500;white-space:nowrap}th,td{padding:15px 20px;border-bottom:1px solid #edf1f5;vertical-align:top}td.amount{text-align:right;white-space:nowrap;font-weight:650}td.description{min-width:210px;max-width:420px;white-space:pre-wrap;overflow-wrap:anywhere}.row-sub{display:block;font-size:.8rem;color:var(--muted);margin-top:4px}.pill{display:inline-block;padding:4px 8px;border-radius:5px;background:#edf4f7;color:#28576e;font-size:.75rem;white-space:nowrap}.empty{padding:55px 24px;text-align:center}.empty-icon{width:62px;height:62px;border-radius:16px;display:grid;place-items:center;background:#e8f2f6;margin:0 auto 18px;font-size:1.7rem}.empty p{max-width:460px;margin:0 auto 22px}.account-help{margin-top:24px;display:flex;gap:15px;padding:20px 23px;border-left:3px solid #42869a;background:#eaf2f6;border-radius:0 8px 8px 0}.account-help p{margin:0;font-size:.9rem}.auth-card{max-width:460px;margin:8vh auto;padding:32px;background:white;border:1px solid var(--line);border-radius:15px}.auth-card img{margin-bottom:20px}form{display:grid;gap:17px}label,.field{display:grid;gap:7px;font-size:.9rem;font-weight:600}input,select,textarea{width:100%;padding:11px 12px;color:#183248;border:1px solid #c9d6e0;border-radius:7px;background:white;min-height:44px}textarea{resize:vertical;min-height:94px;font-weight:400}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #81bdcc;outline-offset:2px}input[type=checkbox]{width:20px;min-height:20px;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}.form-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:5px}dialog{border:1px solid var(--line);border-radius:14px;padding:0;width:min(720px,calc(100% - 28px));max-height:90vh;color:#183248;box-shadow:0 25px 100px #0a263633}dialog::backdrop{background:#0c2437a6;backdrop-filter:blur(2px)}#modal-body{padding:27px}.modal-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.modal-head h2{font-size:1.4rem;margin-bottom:7px}.modal-head p{font-size:.9rem;margin:0}.upload{border:1px dashed #80a8bb;background:#f1f8fb;border-radius:10px;padding:20px}.upload label{cursor:pointer}.upload small{font-weight:400}.upload input{background:white;font-size:.85rem}.scan-status{font-size:.875rem;margin-top:10px;color:#1d6277}.scan-results{padding:15px;border:1px solid #94bdca;background:#eff8fa;border-radius:8px}.scan-results p{font-size:.875rem;margin-bottom:10px}.scan-results button{font-size:.8rem}.error{color:#a52d38;background:#fff0f1;border:1px solid #eec1c5;border-radius:7px;padding:12px;font-size:.9rem}.notice{padding:13px;border-radius:8px;background:#ecf5f8;font-size:.9rem;color:#275b6e;margin-bottom:16px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#173a50;color:white;box-shadow:0 8px 24px #16354a22;padding:13px 22px;border-radius:9px;max-width:calc(100vw - 24px);z-index:100;display:none}.shared-banner{background:#dcecf3;padding:11px 20px;text-align:center;font-size:.875rem}.shared .main{max-width:1250px}.share-link{font-size:.85rem;overflow-wrap:anywhere;padding:12px;background:#f3f7fa;border:1px solid var(--line);border-radius:6px;margin:16px 0}.receipt-preview{max-width:100%;max-height:260px;object-fit:contain;border-radius:6px;background:#eef2f5}.import-item{padding:15px 0;border-top:1px solid var(--line);display:flex;align-items:flex-start;gap:12px}.import-item p{margin:4px 0;white-space:pre-wrap;font-size:.85rem}.import-item>div{flex:1;min-width:0;overflow-wrap:anywhere}.import-item button{flex-shrink:0}.import-list{max-height:45vh;overflow:auto}.inline-check{display:flex;align-items:center;gap:9px;font-weight:400}.nowrap{white-space:nowrap}.warning{color:#8c5a0c}.loading{padding:30px}.export-progress{color:#285f73;margin-top:15px}@media(max-width:1000px){.shell{grid-template-columns:220px minmax(0,1fr)}.main{padding:30px 22px}.topbar{flex-direction:column}.stats{gap:10px}.stat{padding:17px}}@media(max-width:700px){.shell{display:block}.sidebar{padding:18px;gap:14px}.brand{font-size:1rem}.sidebar .eyebrow,.sidebar-foot{display:none}.account-nav{display:flex;overflow:auto}.account-nav button{flex-shrink:0;max-width:220px}.sidebar .new-account{width:auto;margin:0}.sidebar-section{display:flex;gap:8px;align-items:center;min-width:0}.sidebar-section .account-nav{flex:1}.new-account{white-space:nowrap}.main{padding:24px 16px}.stats{grid-template-columns:1fr}.stat{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.stat-label{margin:0}.stat-value{text-align:right;font-size:1.3rem}.stat .muted{grid-column:1/-1;font-size:.8rem}.topbar{margin-bottom:20px}h1{font-size:1.7rem}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}#modal-body{padding:20px}.panel-head{padding:16px;align-items:flex-start;flex-direction:column}.auth-card{margin:24px 14px}.account-help{padding:15px}.actions button,.actions .button{font-size:.85rem;padding:9px 12px}}

.import-controls{display:grid;gap:4px;flex:0!important;min-width:116px!important}.import-controls button{font-size:.8rem;padding:8px 10px}

.sidebar-foot a{color:#dbe7ef}
