:root{color-scheme:light;--bg:#f4f7f5;--surface:#fff;--surface-soft:#edf5f1;--text:#18231e;--muted:#66756e;--border:#d9e3de;--primary:#167956;--primary-dark:#0f5f43;--primary-text:#fff;--negative:#bd4545;--positive:#167956;--warning:#a96213;--sidebar:#123f32;--sidebar-text:#effaf5;--shadow:0 16px 44px rgba(22,57,43,.12);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Thai",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}.app-shell{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:22px 14px;background:var(--sidebar);color:var(--sidebar-text);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:700;padding:0 8px 22px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--sidebar-text);color:var(--sidebar);font-weight:800}.main-nav{display:grid;gap:5px}.nav-item{border:0;border-radius:11px;padding:11px 12px;text-align:left;color:inherit;background:transparent;cursor:pointer}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.14)}.sidebar-user{margin-top:auto;padding:14px 8px 0;display:grid;gap:6px;border-top:1px solid rgba(255,255,255,.16)}.sidebar-user a{color:inherit;opacity:.78}.main-content{padding:24px;min-width:0}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.topbar h1,.topbar p{margin:0}.topbar p{margin-top:4px;color:var(--muted)}.icon-button{width:40px;height:40px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer}.view,.report-panel{display:none}.view.active,.report-panel.active{display:block}.tab-list{display:flex;gap:20px;border-bottom:1px solid var(--border);margin-bottom:18px}.tab{border:0;border-bottom:3px solid transparent;padding:10px 2px;background:transparent;color:var(--muted);cursor:pointer}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric,.surface,.setting-card{background:var(--surface);border:1px solid var(--border);border-radius:16px}.metric{padding:16px}.metric span,.metric strong,.metric small{display:block}.metric strong{font-size:1.45rem;margin:8px 0 3px}.metric small,.muted{color:var(--muted)}.positive{color:var(--positive)}.negative{color:var(--negative)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:14px}.surface{padding:18px}.surface h2{margin:0 0 14px;font-size:1.05rem}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h2,.section-head p{margin:0}.list{display:grid}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.list-row:last-child{border-bottom:0}.list-main{min-width:0}.list-main strong,.list-main small{display:block}.list-main small{color:var(--muted);margin-top:3px}.empty-state{color:var(--muted);padding:18px 0}.button{border:1px solid var(--border);border-radius:11px;padding:9px 13px;background:var(--surface);color:var(--text);cursor:pointer}.button.primary,.ai-button{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.button.primary:hover,.ai-button:hover{background:var(--primary-dark)}.button.secondary{background:var(--surface)}.button.small{padding:7px 10px}.text-button{border:0;background:transparent;color:var(--primary);cursor:pointer}.form-surface{max-width:760px}.stack-form{display:grid;gap:15px}.stack-form label,.field-grid label{display:grid;gap:6px;font-weight:600}.stack-form input,.stack-form select,.stack-form textarea,.field-grid input,.field-grid select{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font-weight:400}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.segmented{display:flex;gap:7px}.segment{border:1px solid var(--border);border-radius:11px;padding:9px 14px;background:var(--surface);cursor:pointer}.segment.active{color:var(--primary-text);background:var(--primary);border-color:var(--primary)}.amount-field{text-align:center;padding:16px 0;border-bottom:1px solid var(--border)}.amount-field>span{display:block;color:var(--muted)}.amount-field label{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:5px;font-size:1.7rem}.amount-field input{width:220px;border:0;background:transparent;padding:0;text-align:center;font-size:inherit;font-weight:700}.check-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px}.check-row input{width:auto}.conditional-box{padding:14px;background:var(--surface-soft);border-radius:13px}.inline-summary{padding-top:12px;margin-top:8px;border-top:1px solid var(--border);color:var(--muted)}.split-row,.debt-choice{display:grid;grid-template-columns:minmax(140px,1fr) minmax(110px,.6fr) auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border)}.debt-choice{grid-template-columns:auto minmax(140px,1fr) minmax(110px,.6fr)}.form-actions{display:flex;justify-content:flex-end;gap:9px}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.setting-card{display:grid;text-align:left;gap:4px;padding:16px;cursor:pointer;color:var(--text)}.setting-card span{color:var(--muted)}.setting-card:hover{border-color:var(--primary)}.status-chip{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted)}.progress{height:8px;border-radius:999px;background:var(--surface-soft);overflow:hidden;margin-top:7px}.progress>span{display:block;height:100%;background:var(--primary)}.alert{padding:12px 14px;border-radius:11px;margin-bottom:15px;background:var(--surface-soft)}.alert-error{color:#8e2828;background:#fff0f0;border:1px solid #f3caca}.alert-success{color:#0c6342;background:#eef9f4;border:1px solid #bfe4d2}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(430px,100%);background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.auth-card h1{margin-bottom:6px}.auth-card .brand-mark{margin-bottom:14px}.dialog-card{min-width:min(650px,90vw);max-width:850px;border:0;border-radius:18px;padding:24px;background:var(--surface);color:var(--text);position:relative}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:1.5rem;cursor:pointer}dialog{border:0;border-radius:18px;padding:0;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(10,22,17,.55)}.card-report{padding:20px}.credit-card-panel{padding:18px;border-radius:17px;background:var(--sidebar);color:var(--sidebar-text);margin-bottom:14px}.credit-card-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.credit-card-metrics span,.credit-card-metrics strong{display:block}.ai-review-grid{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:14px}.document-preview{min-height:360px;padding:18px;background:#fff;color:#202521;border:1px solid #d8d4ca}.review-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-field{padding:10px;border-bottom:1px solid var(--border)}.review-field span,.review-field strong{display:block}.review-field span{color:var(--muted)}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:12px}.brand{justify-content:center;padding-bottom:10px}.main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-item{text-align:center;padding:9px 4px;font-size:.82rem}.sidebar-user{display:none}.main-content{padding:15px}.metric-grid,.dashboard-grid,.settings-grid,.field-grid,.ai-review-grid{grid-template-columns:1fr}.credit-card-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{flex-direction:column-reverse}.form-actions .button{width:100%}}@media(max-width:430px){.main-nav{grid-template-columns:repeat(5,1fr)}.nav-item{font-size:0}.nav-item::first-letter{font-size:1rem}.metric strong{font-size:1.25rem}.split-row,.debt-choice{grid-template-columns:auto minmax(0,1fr)}.split-row input,.debt-choice input[type=number]{grid-column:1/-1}.dialog-card{min-width:94vw;padding:20px}}

