[hidden]{display:none!important}
.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#173725 0,transparent 36%),radial-gradient(circle at 80% 90%,#352919 0,transparent 34%),var(--bg)}
.auth-card{width:min(430px,100%);padding:34px;border:1px solid var(--line);border-radius:24px;background:rgb(25 23 24 / 94%);box-shadow:0 30px 100px rgb(0 0 0 / 45%)}
.auth-card>.brand-mark{margin-bottom:24px}.auth-card h1{margin:0;font-size:30px;line-height:1.12}.auth-copy{margin:12px 0 24px;color:var(--muted);line-height:1.5}
.google-button{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;padding:12px 16px;border:1px solid #5b5759;border-radius:13px;background:#fff;color:#202124;text-decoration:none;font-weight:700}.google-button span{font-size:20px;color:#4285f4}
.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--line)}
.auth-form,.settings-form{display:grid;gap:14px}.auth-form label,.settings-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.auth-form input,.settings-form input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;outline:none;background:var(--surface-2);color:var(--text)}.auth-form input:focus,.settings-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgb(69 200 129 / 12%)}
.auth-form .password-visibility{display:flex;align-items:center;gap:9px;color:var(--text);font-size:14px;font-weight:400;cursor:pointer}.auth-form .password-visibility input{width:18px;height:18px;margin:0;padding:0;accent-color:var(--green)}
.settings-grid{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(320px,1fr);gap:16px}.settings-card{padding-bottom:22px}.settings-card>.secondary,.settings-form,.profile-details{margin:20px 22px 0}.profile-details{display:grid;gap:14px}.profile-details div{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--line)}.profile-details dt{color:var(--muted);font-size:12px}.profile-details dd{margin:0;font-weight:700}.settings-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.success-message{color:var(--green)}
@media(max-width:760px){.settings-grid{grid-template-columns:1fr}.auth-card{padding:26px 22px}}
.category-settings-copy{margin:16px 22px 10px}.category-settings-list{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0 22px}.category-settings-list label{display:grid;min-width:0;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.category-settings-list select{width:100%;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text)}.category-settings-list select:focus{outline:2px solid var(--green)}.category-path-preview{margin:14px 0 0;padding:10px 12px;border-radius:10px;background:var(--green-soft);color:var(--green);font-size:13px}
.receipt-card{padding-bottom:0}.receipt-card>summary{cursor:pointer;list-style:none;border-bottom:0}.receipt-card>summary::-webkit-details-marker{display:none}.receipt-card>summary:after{content:"⌄";color:var(--muted);font-size:24px;line-height:1}.receipt-card[open]>summary{border-bottom:1px solid var(--line)}.receipt-card[open]>summary:after{transform:rotate(180deg)}.receipt-card>summary:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.receipt-card-content>.settings-hint{margin:16px 22px 0}.receipt-card-content>.settings-form{margin:20px 22px 0}
#category-form{padding:24px}
