.auth-spinner,.loading-spin{animation:1s linear infinite auth-spin}.app-loading{background:var(--bg);min-height:100dvh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:14px;display:flex}.app-loading>svg{color:#638544;animation:1s linear infinite auth-spin}.app-loading>strong{color:var(--ink);font-family:var(--heading);letter-spacing:-1px;font-size:27px;font-weight:800}.app-loading>.brand-icon{border-radius:15px;width:50px;height:50px}.preview-banner,.sync-banner{color:#4a6136;background:#eff5e6;border:1px solid #dfebce;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 18px;font-size:13px;line-height:1.6;display:flex}.preview-banner p,.sync-banner p{margin:0}.preview-banner strong{color:#2b431c}.preview-banner .button,.sync-banner .button{flex-shrink:0;min-height:38px;padding:0 14px;font-size:13px}.preview-banner>button{color:#fff;background:#25351d;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:0 14px;font-size:13px;font-weight:650;display:inline-flex}.preview-banner>button:hover{background:#3d542e}.sync-banner{color:#8c4a2f;background:#fff2eb;border-color:#f0d9c9}.sync-banner:has(.loading-spin){color:#52683f;background:#f1f5eb;border-color:#e1e8d8;justify-content:flex-start}.sync-banner>.text-button{color:#8c4a2f;flex-shrink:0;min-height:40px;padding:0 8px;font-size:13px;font-weight:700}.sync-status{color:#687663;white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:inline-flex}.sync-status.synced{color:#53753c}.sync-status.error{color:#a24e36}.sync-status.preview>span{background:#8fa971;border-radius:50%;width:7px;height:7px}.sync-status.loading>svg,.sync-status.saving>svg{animation:1s linear infinite auth-spin}.account-actions{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;padding-top:22px;display:grid}.account-actions>p,.account-actions>span{color:var(--muted);overflow-wrap:anywhere;font-size:13px;line-height:1.6}.account-actions>div{flex-direction:column;grid-column:1/-1;gap:5px;margin-bottom:5px;display:flex}.account-actions>div>strong{color:var(--ink);font-size:15px;font-weight:750}.account-actions>div>span{color:var(--muted);overflow-wrap:anywhere;font-size:13px;line-height:1.6}.account-actions>button{border:1px solid var(--line);color:#415238;text-align:left;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 12px;font-size:13px;font-weight:650;display:inline-flex}.account-actions>button:hover:not(:disabled){background:#f1f5ea;border-color:#d5e0c7}.account-actions>.account-delete-link{color:#9b4934;background:0 0;border-color:#0000;grid-column:1/-1;justify-content:flex-start;width:fit-content;min-height:40px}.account-actions>.account-delete-link:hover:not(:disabled){background:#fff0e9;border-color:#0000}.account-actions .button{min-height:42px;padding:0 14px;font-size:13px}.account-actions .button-danger{color:#913e31}.account-delete-warning{color:#8d4731;background:#fff2eb;border:1px solid #eccfc2;border-radius:12px;flex-direction:column;gap:12px;padding:16px;font-size:13px;line-height:1.6;display:flex}.account-delete-warning h3{color:#713727;font-size:17px}.account-delete-warning>div{flex-wrap:wrap;gap:10px;display:flex}.account-delete-warning{margin-bottom:22px}.delete-confirm{color:#415138;cursor:pointer;align-items:flex-start;gap:12px;min-height:48px;font-size:14px;font-weight:500;line-height:1.6;display:flex}.delete-confirm input{accent-color:#993f2e;cursor:pointer;flex:0 0 20px;width:20px;height:20px;margin:1px 0 0}.legal-page{max-width:820px;margin:0 auto;padding:40px 28px 72px}.legal-page>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:64px;display:flex}.legal-page>header>a:last-child{color:#526d3c;font-size:13px;font-weight:650}.legal-page h1{letter-spacing:-1.8px;margin-bottom:16px;font-size:42px;line-height:1.15}.legal-intro{color:var(--muted);margin-bottom:36px;font-size:17px;line-height:1.7}.legal-page section{border-top:1px solid var(--line);padding:25px 0}.legal-page h2{letter-spacing:-.5px;margin-bottom:12px;font-size:21px;font-weight:800}.legal-page section p{color:#5f6b55;font-size:15px;line-height:1.8}.legal-page section p+p{margin-top:12px}.legal-page section a,.legal-page footer a{text-underline-offset:3px;color:#415d31;text-decoration:underline}.legal-page footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:24px;margin-top:16px;padding-top:25px;font-size:13px;display:flex}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (max-width:760px){.sync-status{max-width:130px;font-size:11px}.preview-banner,.sync-banner{flex-wrap:wrap;gap:12px;margin-bottom:22px;padding:14px}.preview-banner{flex-wrap:nowrap;gap:10px;margin-bottom:22px;padding:10px 12px;font-size:11px;line-height:1.6}.preview-banner strong{display:block}.preview-banner>button{gap:6px;width:auto;min-height:44px;padding:0 10px;font-size:11px}.legal-page{padding:28px 22px 50px}.legal-page>header{flex-wrap:wrap;margin-bottom:46px}.legal-page h1{font-size:36px}.legal-page .brand{font-size:22px}.legal-page>header>a:last-child,.legal-page footer a{align-items:center;min-height:44px;display:inline-flex}.account-actions>button{white-space:normal;min-height:48px;padding-block:10px;line-height:1.5}.sync-banner>.text-button{min-height:44px}.legal-page{padding-top:calc(28px + env(safe-area-inset-top));padding-bottom:calc(50px + env(safe-area-inset-bottom));padding-left:calc(22px + env(safe-area-inset-left));padding-right:calc(22px + env(safe-area-inset-right))}.legal-page .brand{min-height:44px}}
