@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800&family=Poppins:wght@500;600;700&family=Roboto:wght@400;500;700&display=swap";:root{--beige:#f5ede0;--beige-dark:#e8dcc8;--beige-deep:#d4c4a8;--cream:#fff8f0;--sand:#c9b896;--warm-white:#fffcf7;--ink:#3d3429;--ink-soft:#6b5e4e;--ink-muted:#9a8b78;--surface-border:#c9b896a6;--panel-shine:#ffffffd9;--backdrop:#3d342959;--body-bg:radial-gradient(ellipse at 20% 0%, #f2cc8f59, transparent 45%), radial-gradient(ellipse at 90% 10%, #81b29a38, transparent 40%), radial-gradient(ellipse at 50% 100%, #7eb8d42e, transparent 50%), linear-gradient(165deg, #faf3e8 0%, #f0e4d2 45%, #e8d9c4 100%);--nav-bg:linear-gradient(180deg, #fff8f0eb, #e8dcc8f5);--input-bg:linear-gradient(180deg, #fff 0%, var(--cream) 100%);--btn-bg:linear-gradient(180deg, #fffaf3 0%, var(--beige-dark) 100%);--ghost-bg:linear-gradient(180deg, #fffcf7b3, #e8dcc880);--list-bg:linear-gradient(180deg, #fffcf7e6, #f5ede0d9);--chip-bg:linear-gradient(180deg, #fff6e8, var(--beige-dark));--icon-stroke:var(--ink-soft);--add-fg:#3a2a18;--add-icon:#3a2a18;--terracotta:#e07a5f;--sage:#81b29a;--sky:#7eb8d4;--butter:#f2cc8f;--blush:#f4a5ae;--mint:#a8d5ba;--coral:#ff8a7a;--alert:#e85d4c;--alert-soft:#ffe8e4;--highlight:#fff3c4;--highlight-green:#d4f0e0;--highlight-blue:#d6eef8;--highlight-pink:#ffe4e8;--light-blue:#8ec8f0;--btn-primary-top:#f4c89a;--btn-primary-bot:#e2a86a;--btn-primary-border:#b4824680;--btn-primary-fg:#3a2a18;--btn-sage-top:#b8dcc8;--btn-sage-bot:#81b29a;--btn-sage-border:#508c6e66;--btn-sage-fg:#1e3d2c;--btn-sky-top:#b8daf0;--btn-sky-bot:#7eb8d4;--btn-sky-border:#4682a066;--btn-sky-fg:#1a3344;--btn-danger-top:#ffc4ba;--btn-danger-bot:#ff8a7a;--btn-danger-border:#c8503c66;--btn-danger-fg:#4a2018;--btn-fab-top:#f6d4a8;--btn-fab-bot:#e4a96a;--btn-default-border:#c9b896b3;--raised:inset 0 1px 0 #ffffffbf, inset 0 -2px 4px #3d342914, 0 4px 12px #3d342924, 0 1px 2px #3d34291a;--pressed:inset 0 3px 8px #3d34292e, inset 0 1px 2px #3d34291a;--soft:0 6px 20px #3d34291f, 0 2px 4px #3d342914;--float:0 10px 28px #3d34292e;--font-display:"Roboto", "Segoe UI", sans-serif;--font-body:"Roboto", "Segoe UI", sans-serif;--font-numbers:"Poppins", "Segoe UI", sans-serif;--nav-h:72px;--safe-bottom:env(safe-area-inset-bottom,0px)}[data-theme=dark]{--beige:#16233a;--beige-dark:#1c2b45;--beige-deep:#243552;--cream:#1a2942;--sand:#5a6d88;--warm-white:#1e2f4a;--ink:#eef3fb;--ink-soft:#c2cfe0;--ink-muted:#8fa0b8;--surface-border:#5a6d888c;--panel-shine:#ffffff0f;--backdrop:#080e1cb8;--body-bg:radial-gradient(ellipse at 15% 0%, #3c64a047, transparent 48%), radial-gradient(ellipse at 90% 20%, #28467859, transparent 42%), radial-gradient(ellipse at 50% 100%, #1e325a73, transparent 55%), linear-gradient(165deg, #0f1a2e 0%, #15233c 45%, #1a2a44 100%);--nav-bg:linear-gradient(180deg, #16233af5, #0f1a2efa);--input-bg:linear-gradient(180deg, #1e2f4a 0%, #16233a 100%);--list-bg:linear-gradient(180deg, #1e2f4af2, #16233ae6);--chip-bg:linear-gradient(180deg, #243552, #1c2b45);--icon-stroke:var(--light-blue);--alert-soft:#3a2430;--highlight:#3a3420;--highlight-green:#1e3a30;--highlight-blue:#1e3348;--highlight-pink:#3a2834;--raised:inset 0 1px 0 #ffffff14, inset 0 -2px 4px #00000059, 0 4px 14px #00000059, 0 1px 2px #00000040;--pressed:inset 0 3px 10px #00000073, inset 0 1px 2px #0000004d;--soft:0 6px 20px #00000059, 0 2px 4px #00000040;--float:0 10px 28px #00000073;--btn-bg:linear-gradient(180deg, #2a3d5c 0%, #1c2b45 100%);--ghost-bg:linear-gradient(180deg, #243552 0%, #1a2942 100%);--btn-primary-top:#b87a3c;--btn-primary-bot:#8a5524;--btn-primary-border:#8c5a28a6;--btn-primary-fg:#fff5e8;--btn-sage-top:#4a7a62;--btn-sage-bot:#2f5644;--btn-sage-border:#32644ba6;--btn-sage-fg:#e8f6ee;--btn-sky-top:#3a6a88;--btn-sky-bot:#274d66;--btn-sky-border:#326482a6;--btn-sky-fg:#e8f4fb;--btn-danger-top:#c45a4a;--btn-danger-bot:#8f382c;--btn-danger-border:#a03c32a6;--btn-danger-fg:#ffe8e4;--btn-fab-top:#c48a48;--btn-fab-bot:#8f5c28;--btn-default-border:#5a6d888c;--add-fg:#fff5e8;--add-icon:#fff}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--body-bg);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;transition:background .25s,color .2s}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.app-shell{max-width:480px;min-height:100dvh;padding-bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px);margin:0 auto;position:relative}.app-shell:has(.landing-page){height:100dvh;max-height:100dvh;padding-bottom:0;overflow:hidden}.app-shell:has(.auth-page){height:100dvh;max-height:100dvh;padding-bottom:0;overflow:hidden}.page{max-width:100%;padding:20px 18px 24px;animation:.45s both riseIn;overflow-x:clip}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseSoft{0%,to{box-shadow:var(--raised)}50%{box-shadow:0 0 0 3px #e85d4c40, var(--raised)}}.brand-mark{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.85rem;font-weight:700}.brand-sub{color:var(--ink-soft);margin:4px 0 0;font-size:.95rem}.section-title{font-family:var(--font-display);margin:0 0 4px;font-size:1.35rem}.section-sub{color:var(--ink-muted);margin:0 0 16px;font-size:.9rem}.sk-panel{background:linear-gradient(180deg, var(--warm-white) 0%, var(--beige) 100%);border:1px solid var(--surface-border);box-shadow:var(--raised);border-radius:20px;padding:16px;position:relative}.sk-panel:before{content:"";pointer-events:none;box-shadow:inset 0 1px 0 var(--panel-shine);border-radius:19px;position:absolute;top:1px;bottom:1px;left:1px;right:1px}.sk-panel.alert-red{background:linear-gradient(180deg, #fff5f3 0%, var(--alert-soft) 100%);border-color:#e85d4c8c;animation:2.2s ease-in-out infinite pulseSoft}[data-theme=dark] .sk-panel.alert-red{background:linear-gradient(180deg, #3a2430 0%, var(--alert-soft) 100%)}.sk-btn{border:1px solid var(--btn-default-border);background:var(--btn-bg);box-shadow:var(--raised);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--ink);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:700;transition:transform .12s,box-shadow .12s,background .2s,color .2s;display:inline-flex}.sk-btn:hover{transform:translateY(-1px)}.sk-btn:active{box-shadow:var(--pressed);transform:translateY(1px)}.sk-btn.primary{background:linear-gradient(180deg, var(--btn-primary-top) 0%, var(--btn-primary-bot) 100%);border-color:var(--btn-primary-border);color:var(--btn-primary-fg)}.sk-btn.sage{background:linear-gradient(180deg, var(--btn-sage-top) 0%, var(--btn-sage-bot) 100%);border-color:var(--btn-sage-border);color:var(--btn-sage-fg)}.sk-btn.sky{background:linear-gradient(180deg, var(--btn-sky-top) 0%, var(--btn-sky-bot) 100%);border-color:var(--btn-sky-border);color:var(--btn-sky-fg)}.sk-btn.danger{background:linear-gradient(180deg, var(--btn-danger-top) 0%, var(--btn-danger-bot) 100%);border-color:var(--btn-danger-border);color:var(--btn-danger-fg)}.sk-btn.ghost{background:var(--ghost-bg);border-color:var(--btn-default-border)}.sk-btn.fab{background:linear-gradient(145deg, var(--btn-fab-top), var(--btn-fab-bot));width:58px;height:58px;box-shadow:var(--float);color:var(--btn-primary-fg);border:2px solid #ffffff59;border-radius:50%;padding:0;font-size:1.6rem}.sk-btn.btn-add,.sk-btn.primary.btn-add{color:var(--add-fg)}.sk-btn.btn-add svg,.sk-btn.primary svg,.sk-btn.fab svg{color:var(--add-icon);stroke:var(--add-icon)}.sk-input,.sk-textarea,.sk-select{border:1px solid var(--surface-border);background:var(--input-bg);width:100%;min-width:0;max-width:100%;box-shadow:var(--pressed);border-radius:12px;outline:none;padding:12px 14px}.sk-input[type=date],.sk-input[type=datetime-local],.sk-input[type=month],.sk-input[type=week],.sk-input[type=time]{-webkit-appearance:none;appearance:none;width:100%;min-width:0;max-width:100%;padding-inline-start:10px;padding-inline-end:10px;font-size:.92rem;line-height:1.3;display:block}.sk-input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.2em}.sk-input:focus,.sk-textarea:focus,.sk-select:focus{border-color:var(--sky);box-shadow:var(--pressed), 0 0 0 3px #7eb8d440}.sk-textarea{resize:vertical;min-height:90px}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field label{color:var(--ink-soft);font-size:.85rem;font-weight:700}.field-hint{color:var(--ink-muted);font-size:.78rem}.sk-check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.sk-check input{-webkit-appearance:none;appearance:none;width:24px;height:24px;box-shadow:var(--raised);cursor:pointer;background:linear-gradient(145deg,#ffe08a,#f0b429);border:2px solid #ffffffb3;border-radius:8px;flex-shrink:0;position:relative}.sk-check input:checked{background:linear-gradient(145deg,#9be7b8,#4caf7a)}.sk-check input:checked:after{content:"✓";color:#fff;text-shadow:0 1px 1px #0003;place-items:center;font-size:.9rem;font-weight:800;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{box-shadow:var(--raised);cursor:pointer;background:var(--chip-bg);border:1px solid #ffffff80;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.chip.active.expense{background:linear-gradient(180deg, #ffd0c6, var(--coral));color:#4a2018}.chip.active.credit{background:linear-gradient(180deg, #c5efd4, var(--sage));color:#1e3d2c}.chip.active.neutral{background:linear-gradient(180deg, #cfe8f5, var(--sky))}.icon-badge{width:36px;height:36px;box-shadow:var(--raised);color:var(--icon-stroke);border:1px solid #ffffff8c;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.icon-badge svg{color:var(--icon-stroke);stroke:var(--icon-stroke)}.icon-badge.mint{background:linear-gradient(145deg, #c8efd8, var(--mint))}.icon-badge.sky{background:linear-gradient(145deg, #c5e6f7, var(--sky))}.icon-badge.butter{background:linear-gradient(145deg, #ffe6b0, var(--butter))}.icon-badge.blush{background:linear-gradient(145deg, #ffcdd4, var(--blush))}.icon-badge.coral{background:linear-gradient(145deg, #ffc2b6, var(--coral))}[data-theme=dark] .icon-badge{border-color:#8ec8f059}[data-theme=dark] .icon-badge.mint,[data-theme=dark] .icon-badge.sky,[data-theme=dark] .icon-badge.butter,[data-theme=dark] .icon-badge.blush,[data-theme=dark] .icon-badge.coral{color:var(--light-blue);background:linear-gradient(145deg,#2a4060,#1e3348)}[data-theme=dark] .icon-badge svg{color:var(--light-blue);stroke:var(--light-blue)}.row-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.grid-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.grid-2>*{min-width:0;max-width:100%}.date-range-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.date-range-grid>.field{min-width:0;margin-bottom:0}@media (max-width:420px){.date-range-grid{grid-template-columns:1fr}}.muted{color:var(--ink-muted)}.money{font-family:var(--font-numbers);font-variant-numeric:tabular-nums;font-weight:600}.money.expense{color:#c44b38}.money.credit{color:#2f7a56}[data-theme=dark] .money.expense{color:#ff8a7a}[data-theme=dark] .money.credit{color:#7dcea0}.stat-tile{background:linear-gradient(180deg, var(--warm-white), var(--beige));border:1px solid var(--surface-border);box-shadow:var(--raised);border-radius:16px;padding:14px}.stat-tile .label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.stat-tile .value{font-family:var(--font-numbers);font-variant-numeric:tabular-nums;margin-top:4px;font-size:1.25rem;font-weight:600}.stat-tile.highlight{background:linear-gradient(180deg, #fff9e0, var(--highlight))}.stat-tile.highlight-green{background:linear-gradient(180deg, #eefaf3, var(--highlight-green))}.stat-tile.highlight-blue{background:linear-gradient(180deg, #eef7fc, var(--highlight-blue))}.stat-tile.highlight-pink{background:linear-gradient(180deg, #fff0f3, var(--highlight-pink))}[data-theme=dark] .stat-tile.highlight{background:linear-gradient(180deg, #2e2a1c, var(--highlight))}[data-theme=dark] .stat-tile.highlight-green{background:linear-gradient(180deg, #1a3028, var(--highlight-green))}[data-theme=dark] .stat-tile.highlight-blue{background:linear-gradient(180deg, #1a2c3e, var(--highlight-blue))}[data-theme=dark] .stat-tile.highlight-pink{background:linear-gradient(180deg, #2e1e28, var(--highlight-pink))}.bottom-nav{width:min(480px,100%);height:calc(var(--nav-h) + var(--safe-bottom));padding:8px 10px calc(8px + var(--safe-bottom));background:var(--nav-bg);border-top:1px solid var(--surface-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:50;grid-template-columns:repeat(5,1fr);gap:4px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -6px 24px #3d34291a}[data-theme=dark] .bottom-nav{box-shadow:0 -6px 24px #0006}.nav-item{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 2px;font-size:.68rem;font-weight:700;display:flex}.nav-item.active{color:var(--ink);box-shadow:var(--raised);background:linear-gradient(#ffffffb3,#f2cc8f73)}[data-theme=dark] .nav-item{color:var(--ink-muted)}[data-theme=dark] .nav-item svg{color:var(--light-blue);stroke:var(--light-blue)}[data-theme=dark] .nav-item.active{color:#fff;background:linear-gradient(#3c64a08c,#28467873)}[data-theme=dark] .nav-item.active svg{color:#fff;stroke:#fff}.nav-item svg{width:22px;height:22px;color:var(--icon-stroke);stroke:var(--icon-stroke)}.fab-wrap{right:max(18px,50% - 220px);bottom:calc(var(--nav-h) + var(--safe-bottom) + 16px);z-index:40;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed}.empty-state{text-align:center;color:var(--ink-soft);padding:36px 20px}.empty-state h3{font-family:var(--font-display);margin:12px 0 6px}.map-frame{border:1px solid var(--surface-border);width:100%;height:180px;box-shadow:var(--pressed);background:var(--beige-dark);border-radius:14px;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%}.receipt-preview{object-fit:cover;border:1px solid var(--surface-border);width:100%;max-height:220px;box-shadow:var(--raised);border-radius:14px}.modal-backdrop{background:var(--backdrop);z-index:10000;width:100vw;height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));place-items:center;margin:0;animation:.2s fadeIn;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-sheet{background:linear-gradient(180deg, var(--warm-white), var(--beige));width:min(440px,100%);max-height:90dvh;box-shadow:var(--float);border:1px solid var(--surface-border);border-radius:24px;padding:20px;animation:.3s riseIn;overflow:auto}.passcode-modal-sheet{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lock-overlay{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:40px 20px;display:flex}.passcode-dots{gap:10px;margin:8px 0;display:flex}.passcode-dots span{background:var(--beige-deep);width:14px;height:14px;box-shadow:var(--pressed);border-radius:50%}.passcode-dots span.filled{box-shadow:var(--raised);background:linear-gradient(145deg,#f2cc8f,#d4a05a)}.progress-bar{background:var(--beige-dark);height:12px;box-shadow:var(--pressed);border-radius:999px;overflow:hidden}.progress-bar>i{background:linear-gradient(90deg, var(--sage), var(--mint));border-radius:999px;height:100%;display:block;box-shadow:inset 0 1px #ffffff80}.progress-bar.over>i{background:linear-gradient(90deg, var(--coral), var(--alert))}.list-item{background:var(--list-bg);border:1px solid var(--surface-border);box-shadow:var(--raised);cursor:pointer;border-radius:16px;align-items:center;gap:12px;padding:12px;transition:transform .12s;display:flex}.list-item:active{box-shadow:var(--pressed);transform:scale(.98)}.chart-wrap{width:100%;height:240px;margin-top:8px}.tag{background:var(--highlight);color:var(--ink-soft);border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.tag svg{color:var(--icon-stroke);stroke:var(--icon-stroke)}.tag.db{background:var(--highlight-blue)}.tag.lock{background:var(--highlight-pink)}.tag.ok{background:var(--highlight-green)}[data-theme=dark] .sk-btn svg{color:var(--light-blue);stroke:var(--light-blue)}[data-theme=dark] .sk-btn.primary svg,[data-theme=dark] .sk-btn.sage svg,[data-theme=dark] .sk-btn.sky svg,[data-theme=dark] .sk-btn.danger svg,[data-theme=dark] .sk-btn.btn-add svg,[data-theme=dark] .sk-btn.fab svg{color:#fff;stroke:#fff}[data-theme=dark] .sk-btn.ghost svg,[data-theme=dark] .page-header-back svg,[data-theme=dark] .muted svg{color:var(--light-blue);stroke:var(--light-blue)}[data-theme=dark] .chip.active.expense{background:linear-gradient(180deg, var(--btn-danger-top), var(--btn-danger-bot));color:var(--btn-danger-fg)}[data-theme=dark] .chip.active.credit{background:linear-gradient(180deg, var(--btn-sage-top), var(--btn-sage-bot));color:var(--btn-sage-fg)}[data-theme=dark] .chip.active.neutral{background:linear-gradient(180deg, var(--btn-sky-top), var(--btn-sky-bot));color:var(--btn-sky-fg)}[data-theme=dark] .theme-switch.on{background:linear-gradient(90deg, var(--btn-sky-bot), var(--btn-sky-top))}.theme-toggle{border:1px solid var(--surface-border);background:var(--list-bg);width:100%;box-shadow:var(--raised);cursor:pointer;color:var(--ink);text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-weight:700;display:flex}.theme-toggle .theme-toggle-meta{flex-direction:column;gap:2px;display:flex}.theme-toggle .theme-toggle-meta span:last-child{color:var(--ink-muted);font-size:.78rem;font-weight:500}.theme-toggle svg{color:var(--icon-stroke);stroke:var(--icon-stroke);flex-shrink:0}.theme-switch{background:var(--beige-deep);width:48px;height:28px;box-shadow:var(--pressed);border-radius:999px;flex-shrink:0;transition:background .2s;position:relative}.theme-switch:after{content:"";background:linear-gradient(145deg, #fff, var(--butter));width:22px;height:22px;box-shadow:var(--raised);border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.theme-switch.on{background:linear-gradient(90deg, #3a5a8a, var(--sky))}.theme-switch.on:after{background:linear-gradient(145deg, #fff, var(--light-blue));transform:translate(20px)}.avatar-picker-backdrop{place-items:center}.avatar-picker-sheet{flex-direction:column;gap:14px;width:min(440px,100%);max-height:min(92dvh,720px);padding:18px 16px 16px;animation:.3s cubic-bezier(.22,1,.36,1) modalPop;display:flex}@keyframes modalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.avatar-picker-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.avatar-picker-close{min-width:40px;padding:10px!important}.avatar-preview-stage{flex-direction:column;align-items:center;gap:10px;padding:8px 0 4px;animation:.35s cubic-bezier(.22,1,.36,1) previewPop;display:flex}@keyframes previewPop{0%{opacity:.4;transform:scale(.86)}to{opacity:1;transform:scale(1)}}.avatar-preview-ring{background:linear-gradient(145deg, var(--warm-white), var(--beige-dark));width:120px;height:120px;box-shadow:var(--raised);border:3px solid #0000;border-radius:32px;place-items:center;transition:border-color .2s,transform .2s,box-shadow .2s;display:grid;overflow:hidden}.avatar-preview-ring.has-pick{border-color:var(--sky);box-shadow:0 0 0 4px #7eb8d440, var(--raised)}.avatar-preview-img{object-fit:cover;width:100%;height:100%;display:block}.avatar-preview-empty{color:var(--ink-muted);place-items:center;display:grid}.avatar-preview-meta{text-align:center;flex-direction:column;gap:2px;display:flex}.avatar-preview-meta strong{text-transform:capitalize;font-size:1.05rem}.avatar-preview-meta span{text-transform:capitalize;font-size:.8rem}.avatar-cat-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:2px 2px 6px;display:flex;overflow-x:auto}.avatar-cat-row::-webkit-scrollbar{display:none}.avatar-cat-chip{border:1px solid var(--surface-border);background:var(--chip-bg);color:var(--ink-soft);cursor:pointer;box-shadow:var(--raised);border-radius:999px;flex:none;padding:8px 14px;font-size:.8rem;font-weight:700;transition:transform .15s,background .15s,color .15s}.avatar-cat-chip:active{transform:scale(.96)}.avatar-cat-chip.active{background:linear-gradient(180deg, #cfe8f5, var(--sky));color:#143246;border-color:#4682a073}[data-theme=dark] .avatar-cat-chip.active{color:var(--btn-sky-fg);background:linear-gradient(180deg, var(--btn-sky-top), var(--btn-sky-bot));border-color:var(--btn-sky-border)}.avatar-grid{scroll-behavior:smooth;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:min(38dvh,320px);padding:4px 2px 8px;display:grid;overflow:auto}.avatar-tile{aspect-ratio:1;cursor:pointer;background:var(--list-bg);box-shadow:var(--raised);border:2px solid #0000;border-radius:18px;padding:0;transition:transform .18s cubic-bezier(.22,1,.36,1),border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.avatar-tile img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.avatar-tile:hover{transform:translateY(-2px)scale(1.03)}.avatar-tile:hover img{transform:scale(1.06)}.avatar-tile:active{transform:scale(.96)}.avatar-tile.selected{border-color:var(--sky);box-shadow:0 0 0 3px #7eb8d459, var(--raised);transform:scale(1.04)}.avatar-tile-check{color:#fff;background:linear-gradient(145deg,#9be7b8,#4caf7a);border-radius:50%;place-items:center;width:22px;height:22px;animation:.25s cubic-bezier(.22,1,.36,1) checkIn;display:grid;position:absolute;bottom:6px;right:6px;box-shadow:0 2px 6px #0003}@keyframes checkIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.avatar-picker-error{color:var(--alert);margin:0;font-size:.88rem;font-weight:700}.avatar-picker-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.avatar-picker-actions .sk-btn.primary{grid-column:1/-1}.sk-input.input-invalid{box-shadow:var(--pressed), 0 0 0 3px #e85d4c2e;border-color:#e85d4cbf}.sk-input.input-valid{box-shadow:var(--pressed), 0 0 0 3px #4caf7a2e;border-color:#4caf7abf}.matte-input.input-invalid{border-color:#e85d4cbf;box-shadow:0 0 0 3px #e85d4c2e}.matte-input.input-valid{border-color:#4caf7abf;box-shadow:0 0 0 3px #4caf7a2e}.pw-success-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:280px;padding:36px 20px 32px;display:flex;position:relative;overflow:hidden}.pw-confetti{pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.pw-success-check{color:#fff;width:96px;height:96px;box-shadow:0 0 0 8px #4caf7a38, 0 0 0 18px #4caf7a1f, var(--raised);z-index:1;background:radial-gradient(circle at 30% 25%,#9be7b8,#2f9e62 58%,#1f7a4a 100%);border-radius:50%;place-items:center;animation:.55s cubic-bezier(.22,1,.36,1) pwCheckPop;display:grid;position:relative}.pw-success-check svg{color:#fff;stroke:#fff;animation:.45s .15s both pwTickDraw}.pw-success-title{font-family:var(--font-display);color:#1f7a4a;z-index:1;margin:8px 0 0;font-size:1.55rem;font-weight:700;animation:.45s .2s both pwFadeUp;position:relative}[data-theme=dark] .pw-success-title{color:#9be7b8}@keyframes pwCheckPop{0%{opacity:0;transform:scale(.45)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes pwTickDraw{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes pwFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-page{padding-top:12px;position:relative;overflow:hidden}.brand-hero{justify-content:center;align-items:center;min-height:200px;margin:0 0 20px;animation:.55s both riseIn;display:flex;position:relative}.brand-hero.compact{min-height:168px;margin-bottom:16px}.float-backdrop{pointer-events:none;z-index:0;position:absolute;top:-8px;bottom:-8px;left:-4px;right:-4px}.float-chip{width:46px;height:46px;box-shadow:none;opacity:.5;animation:floatDrift var(--float-dur,18s) ease-in-out var(--float-delay,0s) infinite;will-change:transform;border:none;border-radius:14px;place-items:center;margin-top:-23px;margin-left:-23px;display:grid;position:absolute}.brand-hero.compact .float-chip{width:40px;height:40px;margin-top:-20px;margin-left:-20px}.float-chip svg{color:inherit;stroke:currentColor}.float-currency{font-family:var(--font-numbers);font-size:1.2rem;font-weight:700;line-height:1}.float-chip.tone-butter{color:#d4a04a;background:0 0}.float-chip.tone-sage{color:#5a9a78;background:0 0}.float-chip.tone-sky{color:#5a9ec0;background:0 0}.float-chip.tone-mint{color:#6cb892;background:0 0}.float-chip.tone-blush{color:#d47888;background:0 0}.float-chip.tone-coral{color:#e07060;background:0 0}[data-theme=dark] .float-chip.tone-butter{color:#e2a86a}[data-theme=dark] .float-chip.tone-sage{color:#81b29a}[data-theme=dark] .float-chip.tone-sky{color:#8ec8f0}[data-theme=dark] .float-chip.tone-mint{color:#a8d5ba}[data-theme=dark] .float-chip.tone-blush{color:#f4a5ae}[data-theme=dark] .float-chip.tone-coral{color:#ff8a7a}.brand-hero-copy{z-index:1;text-align:center;padding:28px 12px 8px;animation:.6s 60ms both riseIn;position:relative}.brand-hero-title{font-family:var(--font-numbers);letter-spacing:-.04em;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.02em;margin:0;font-size:clamp(2.6rem,11vw,3.35rem);font-weight:700;line-height:1;display:flex}.brand-letter{animation:.5s cubic-bezier(.22,1,.36,1) both letterPop;display:inline-block}.brand-letter.tone-0{color:#2f9e62}.brand-letter.tone-1{color:#e07a5f}.brand-letter.tone-2{color:#7eb8d4}.brand-letter.tone-3{color:#c4a040}.brand-letter.tone-4{color:#81b29a}.brand-letter.tone-5{color:#e07a5f}.brand-letter.tone-6{color:#7eb8d4}.brand-letter.tone-7{color:#c4a040}.brand-letter.tone-8{color:#3a7ab8}.brand-letter.letter-currency{transform-origin:bottom;font-size:1.08em}.brand-letter.letter-dollar{color:#2f9e62;text-shadow:0 2px #2f9e622e}.brand-letter.letter-euro{color:#3a7ab8;text-shadow:0 2px #3a7ab82e}.brand-hero-sub{max-width:18.5rem;color:var(--ink-soft);margin:14px auto 0;font-size:1.02rem;font-weight:500;line-height:1.45}.auth-card{z-index:1;background:color-mix(in srgb, var(--warm-white) 92%, transparent);border:1px solid color-mix(in srgb, var(--sand) 55%, transparent);box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:18px;padding:20px 18px;animation:.5s both riseIn;position:relative}[data-theme=dark] .auth-card{background:#1e2f4ae0;border-color:#5a6d8873}.auth-card-title{font-family:var(--font-display);color:var(--ink);margin:0 0 14px;font-size:1.2rem;font-weight:700}.auth-card .field label{color:var(--ink-muted);letter-spacing:.01em;font-size:.82rem;font-weight:600}.matte-input{border:1px solid color-mix(in srgb, var(--sand) 70%, transparent);background:color-mix(in srgb, var(--cream) 80%, #fff);width:100%;box-shadow:none;color:var(--ink);border-radius:12px;outline:none;padding:12px 14px;transition:border-color .15s,background .15s}[data-theme=dark] .matte-input{background:#16233a;border-color:#5a6d888c}.matte-input:focus{border-color:var(--sky);background:var(--warm-white)}[data-theme=dark] .matte-input:focus{border-color:var(--light-blue);background:#1a2942}.matte-btn{cursor:pointer;width:auto;box-shadow:none;-webkit-user-select:none;user-select:none;color:inherit;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:700;text-decoration:none;transition:background .15s,transform .1s,opacity .15s;display:inline-flex}.matte-btn:active{transform:scale(.98)}.matte-btn:disabled{opacity:.65;cursor:not-allowed}.matte-btn.primary{color:#fff8f0;background:#d4924a;border-color:#c4843e}.matte-btn.sky{color:#f4fbff;background:#5a9ec0;border-color:#4f90b0}.matte-btn.ghost{color:var(--ink-soft);border-color:color-mix(in srgb, var(--sand) 60%, transparent);background:0 0}[data-theme=dark] .matte-btn.primary{color:#fff5e8;background:#8a5524;border-color:#7a4a1e}[data-theme=dark] .matte-btn.sky{color:#e8f4fb;background:#274d66;border-color:#1e3f54}[data-theme=dark] .matte-btn.ghost{color:var(--ink-soft);border-color:#5a6d8880}.auth-divider{text-align:center;color:var(--ink-muted);margin:14px 0;font-size:.85rem;font-weight:600}.auth-form{animation:.5s both riseIn}@keyframes floatDrift{0%,to{transform:translate(0,0)rotate(-3deg)}25%{transform:translate(12px,-16px)rotate(4deg)}50%{transform:translate(-10px,-24px)rotate(-2deg)}75%{transform:translate(14px,-12px)rotate(3deg)}}@keyframes letterPop{0%{opacity:0;transform:translateY(10px)scale(.86)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.float-chip,.brand-letter{animation:none!important}}@media (min-width:768px){.app-shell{max-width:520px;box-shadow:0 0 0 1px var(--surface-border), 0 20px 60px #3d34291f;background:linear-gradient(#fffcf780,#0000)}[data-theme=dark] .app-shell{box-shadow:0 0 0 1px var(--surface-border), 0 20px 60px #00000073;background:linear-gradient(#1e2f4a59,#0000)}}.toast-stack{top:max(12px, env(safe-area-inset-top));z-index:12000;pointer-events:none;flex-direction:column;gap:10px;width:min(440px,100vw - 24px);margin:0;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast-box{pointer-events:auto;color:#5c2118;background:linear-gradient(#fff8f6,#ffe9e4);border:1px solid #e4b4a8;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:14px 14px 14px 12px;display:grid;box-shadow:0 10px 28px #3d28202e}.toast-box-error{color:#5c2118;background:linear-gradient(#fff8f6,#ffe9e4);border-color:#e4b4a8}.toast-box-info{color:#243a22;background:linear-gradient(#f7fbf4,#e8f3e2);border-color:#b9c9b0}.toast-box-icon{color:#c23b2a;justify-content:center;align-items:center;width:28px;height:28px;margin-top:1px;display:flex}.toast-box-info .toast-box-icon{color:#3d6b38}.toast-box-message{word-break:break-word;margin:0;font-size:.92rem;font-weight:650;line-height:1.4}.toast-box-close{-webkit-appearance:none;appearance:none;color:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px;line-height:0}.toast-box-close:hover{opacity:1;outline-offset:2px;outline:2px solid}.toast-box-close:focus-visible{opacity:1;outline-offset:2px;outline:2px solid}[data-theme=dark] .toast-box{color:#ffd3cb;background:linear-gradient(#3a2422,#2c1b1a);border-color:#7a3a32;box-shadow:0 12px 32px #00000073}[data-theme=dark] .toast-box-info{color:#d7ecd2;background:linear-gradient(#243328,#1b271d);border-color:#3f5a3c}.member-row{border-bottom:1px solid var(--surface-border);grid-template-columns:1fr auto;align-items:center;gap:8px 10px;padding:10px 0;display:grid}.member-row:last-child{border-bottom:0}.member-row-pending{align-items:start}.member-row-main{min-width:0}.member-row-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.member-row-email{padding-left:2px}.member-row-name:has(.member-shield-btn)+.member-row-email{padding-left:40px}.member-row-main:has(.member-shield-btn) .member-row-email{padding-left:40px}.member-shield-btn{-webkit-appearance:none;appearance:none;color:#3f6b55;cursor:pointer;background:linear-gradient(160deg,#ffffffeb 0%,#e8f4ecf2 48%,#a8d5ba8c 100%);border:1px solid #81b29a73;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s,color .15s;display:inline-flex;box-shadow:inset 0 1px #ffffffe6,inset 0 -1px 2px #3d34290f,0 2px 6px #3f6b551f}.member-shield-btn:hover{color:#2f5643;border-color:#81b29abf;transform:translateY(-1px);box-shadow:inset 0 1px #fffffff2,0 4px 12px #3f6b552e}.member-shield-btn:active{box-shadow:var(--pressed);transform:translateY(0)}.member-row-actions{align-items:center;gap:8px;display:inline-flex}.member-perms-sheet{max-width:min(420px,100%)}.member-perms-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.member-perms-badge{color:#3f6b55;background:linear-gradient(160deg,#fffffff2 0%,#e8f4ecfa 50%,#a8d5ba99 100%);border:1px solid #81b29a73;border-radius:14px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;box-shadow:inset 0 1px #ffffffe6,0 3px 10px #3f6b5524}.perm-check-list{flex-direction:column;gap:10px;display:flex}.perm-check{border:1px solid var(--surface-border);cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(#fffcf7f2,#f5ede0b8);border-radius:16px;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid;box-shadow:inset 0 1px #ffffffb3}.perm-check.is-on{background:linear-gradient(#fffffffa,#e8f4ece0);border-color:#81b29aa6;box-shadow:inset 0 1px #ffffffd9,0 2px 8px #3f6b5514}.perm-check-box{flex-shrink:0;width:26px;height:26px;margin-top:1px;position:relative}.perm-check-box input{-webkit-appearance:none;appearance:none;z-index:1;width:100%;height:100%;box-shadow:var(--pressed);cursor:pointer;background:linear-gradient(#fffefb,#f3e9da);border:1.5px solid #9a8b788c;border-radius:9px;margin:0;position:absolute;top:0;bottom:0;left:0;right:0}.perm-check-mark{pointer-events:none;z-index:2;opacity:0;background:linear-gradient(145deg,#9fd4b5,#5ea882);border-radius:9px;place-items:center;transition:opacity .14s,transform .14s;display:grid;position:absolute;top:0;bottom:0;left:0;right:0;transform:scale(.86);box-shadow:inset 0 1px #ffffff73,0 1px 3px #2f564333}.perm-check-mark:after{content:"";border:2.5px solid #fff;border-width:0 2.5px 2.5px 0;width:7px;height:12px;transform:rotate(40deg)translateY(-1px)}.perm-check-box input:checked+.perm-check-mark{opacity:1;transform:scale(1)}.perm-check-box input:checked{box-shadow:none;background:0 0;border-color:#0000}.perm-check-box input:focus-visible{outline-offset:2px;outline:2px solid #7eb8d4b3}.perm-check-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.perm-check-copy strong{color:var(--ink);font-size:.95rem;font-weight:700}.perm-check-copy span{color:var(--ink-muted);font-size:.78rem;line-height:1.35}[data-theme=dark] .member-shield-btn,[data-theme=dark] .member-perms-badge{color:#b7e0c8;background:linear-gradient(160deg,#243552 0%,#1e3a2f 100%);border-color:#81b29a59;box-shadow:inset 0 1px #ffffff0f,0 2px 8px #00000040}[data-theme=dark] .perm-check{background:linear-gradient(#1e2f4af2,#16233ae6)}[data-theme=dark] .perm-check.is-on{background:linear-gradient(#243a30f2,#1e2f4ae6);border-color:#81b29a73}[data-theme=dark] .perm-check-box input{background:linear-gradient(#243552,#1c2b45);border-color:#8fa0b873}.icon-btn{-webkit-appearance:none;appearance:none;border:1px solid var(--surface-border);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.icon-btn.book{color:#3d5a80}.icon-btn.book.active,.icon-btn.book:hover{background:#e8eef6;border-color:#b7c7db}.icon-btn.danger{color:var(--alert)}.icon-btn.danger:hover{background:#ffe8e4}.invite-action-sheet{border:1px solid var(--surface-border);background:linear-gradient(#ffffffe6,#f6f1e9f2);border-radius:12px;flex-direction:column;grid-column:1/-1;gap:8px;padding:12px;display:flex}.invite-action-status{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.invite-action-sheet .sk-btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.invite-result-box{color:#243a22;background:linear-gradient(#f7fbf4,#e8f3e2);border:1px solid #b9c9b0;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:10px;padding:12px;display:grid}.invite-result-box.err{color:#5c2118;background:linear-gradient(#fff8f6,#ffe9e4);border-color:#e4b4a8}.invite-result-icon{color:#3d6b38;display:flex}.invite-result-box.err .invite-result-icon{color:#c23b2a}.invite-result-close{-webkit-appearance:none;appearance:none;color:inherit;opacity:.75;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px;line-height:0}.invite-result-close:hover{opacity:1}[data-theme=dark] .invite-action-sheet{background:linear-gradient(#28374ef2,#1c283afa)}[data-theme=dark] .icon-btn.book.active,[data-theme=dark] .icon-btn.book:hover{color:#c9daf0;background:#2a3d58;border-color:#4a6280}[data-theme=dark] .invite-result-box{color:#d7ecd2;background:linear-gradient(#243328,#1b271d);border-color:#3f5a3c}[data-theme=dark] .invite-result-box.err{color:#ffd3cb;background:linear-gradient(#3a2422,#2c1b1a);border-color:#7a3a32}.legal-doc{padding:18px 16px 22px;line-height:1.55}.legal-doc .legal-lead{margin:0 0 10px;font-size:.98rem}.legal-doc .legal-meta{margin:0 0 18px;font-size:.82rem}.legal-doc section{margin-bottom:1.35rem}.legal-doc h2{font-family:var(--font-display);margin:0 0 .55rem;font-size:1.12rem;line-height:1.3}.legal-doc h3{margin:.85rem 0 .4rem;font-size:.98rem;font-weight:700}.legal-doc p{color:var(--text);margin:0 0 .65rem;font-size:.92rem}.legal-doc ul{margin:0 0 .75rem;padding-left:1.2rem}.legal-doc li{margin-bottom:.4rem;font-size:.92rem}.legal-doc code{background:#0000000f;border-radius:6px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84em}[data-theme=dark] .legal-doc code{background:#ffffff14}.legal-doc a{font-weight:600}.privacy-accept{margin:4px 0 14px}.privacy-accept-heading{margin-bottom:4px;font-weight:700;display:block}.privacy-scroll-hint{color:var(--alert);margin:0 0 8px;font-size:.82rem;font-weight:700}.privacy-scroll-hint.unlocked{color:#2f7a56}.privacy-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#ffffff8c;border:1.5px solid #0000001f;border-radius:14px;outline:none;max-height:min(42vh,320px);overflow:auto}.privacy-scroll:focus-visible{border-color:var(--sky,#5a9ec0);box-shadow:0 0 0 3px #5a9ec040}[data-theme=dark] .privacy-scroll{background:#121c2aa6;border-color:#ffffff24}.legal-doc-compact{box-shadow:none;background:0 0;padding:14px 14px 8px}.legal-doc-compact:before{display:none}.privacy-accept-end{background:#ffffffb8;border-top:1px solid #0000001a;padding:14px}[data-theme=dark] .privacy-accept-end{background:#162030d9;border-top-color:#ffffff1f}.privacy-accept-label{cursor:pointer;align-items:flex-start;gap:10px;font-size:.9rem;font-weight:600;line-height:1.35;display:flex}.privacy-accept-label.locked{opacity:.55;cursor:not-allowed}.privacy-accept-label input{accent-color:#2f7a56;flex-shrink:0;width:18px;height:18px;margin-top:3px}.privacy-accept-label.checked{color:#2f7a56}.landing-page{--land-display:"Outfit", var(--font-numbers);isolation:isolate;flex-direction:column;height:100%;min-height:0;max-height:100%;margin:0;padding:0;animation:none;display:flex;position:relative;overflow:hidden}.landing-page.is-ready .landing-top,.landing-page.is-ready .landing-carousel,.landing-page.is-ready .landing-cta{opacity:1;transform:none}.landing-atmosphere{z-index:0;pointer-events:none;position:absolute;top:-8%;bottom:0;left:-16%;right:-16%;overflow:hidden}.land-blob{filter:blur(34px);opacity:.5;border-radius:50%;animation:18s ease-in-out infinite landBlobDrift;position:absolute}.land-blob-a{background:radial-gradient(circle at 30% 30%,#b8dcc8,#81b29a 55%,#0000 70%);width:220px;height:220px;top:2%;left:-6%}.land-blob-b{background:radial-gradient(circle at 40% 40%,#ffc4ba,#e07a5f 50%,#0000 72%);width:240px;height:240px;animation-duration:22s;animation-delay:-4s;top:6%;right:-10%}.land-blob-c{background:radial-gradient(circle at 50% 40%,#b8daf0,#7eb8d4 52%,#0000 70%);width:200px;height:200px;animation-duration:20s;animation-delay:-8s;bottom:4%;left:34%}.landing-shell{z-index:1;min-height:0;padding:max(8px, env(safe-area-inset-top)) 14px max(8px, env(safe-area-inset-bottom));flex-direction:column;flex:1;justify-content:space-between;gap:8px;display:flex;position:relative;overflow:hidden}.landing-orbs{pointer-events:none;z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.landing-orb{opacity:.55;transform:translate3d(calc(var(--px,0) * 8px), calc(var(--py,0) * 6px), 0);animation:landOrbFloat var(--orb-dur,16s) ease-in-out var(--orb-delay,0s) infinite;border-radius:50%;margin-top:-50%;margin-left:-50%;transition:transform .35s ease-out;position:absolute;box-shadow:inset 0 2px 6px #ffffffa6,inset 0 -6px 14px #3d34291f,0 12px 24px #3d34291a}.landing-orb.tone-sage{background:linear-gradient(145deg,#d8f0e4,#81b29a 60%,#5a9a78)}.landing-orb.tone-coral{background:linear-gradient(145deg,#ffd4cc,#ff8a7a 55%,#e07a5f)}.landing-orb.tone-sky{background:linear-gradient(145deg,#d6eef8,#7eb8d4 55%,#5a9ec0)}.landing-orb.tone-butter{background:linear-gradient(145deg,#fff0d0,#f2cc8f 55%,#e2a86a)}.landing-top{z-index:2;text-align:center;opacity:0;flex-direction:column;flex:none;align-items:center;transition:opacity .55s,transform .55s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translateY(12px)}.landing-top .brand-hero,.landing-top .brand-hero.compact{width:100%;min-height:108px;margin:0 0 2px}.landing-top .brand-hero-title{filter:drop-shadow(0 6px 14px #3d34291a);font-size:clamp(2.2rem,9.5vw,2.85rem)}.landing-top .brand-hero-copy{padding:10px 8px 0}.landing-top .float-backdrop{opacity:.28}.landing-top .float-chip{width:34px;height:34px;margin-top:-17px;margin-left:-17px}.landing-lead{max-width:20rem;font-family:var(--land-display);color:var(--ink-soft);margin:2px auto 0;font-size:.92rem;font-weight:500;line-height:1.35}.landing-cta{z-index:2;opacity:0;align-items:stretch;gap:10px;width:100%;max-width:340px;margin-top:12px;transition:opacity .55s 80ms,transform .55s cubic-bezier(.22,1,.36,1) 80ms;display:flex;position:relative;transform:translateY(10px)}.sk-cta{min-height:48px;font-family:var(--land-display);letter-spacing:.01em;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:1.5px solid #0000;border-radius:16px;flex:1 1 0;justify-content:center;align-items:center;padding:11px 8px;font-size:.98rem;font-weight:700;line-height:1.1;text-decoration:none;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex}.sk-cta:hover{filter:brightness(1.03);transform:translateY(-2px)}.sk-cta:active{transform:translateY(1px)scale(.985)}.sk-cta-signin{color:#163528;background:linear-gradient(#ffffff8c 0%,#0000 42%),linear-gradient(#c8e8d6 0%,#81b29a 100%);border-color:#508c6e59;box-shadow:inset 0 1px #ffffffbf,inset 0 -2px 4px #1e3d2c1f,0 10px 20px #81b29a6b,0 3px 6px #3d342914}.sk-cta-signin:active{box-shadow:inset 0 3px 10px #1e3d2c38,0 4px 10px #81b29a47}.sk-cta-create{color:#3a2a18;background:linear-gradient(#ffffff8c 0%,#0000 40%),linear-gradient(#f6d4a8 0%,#e07a5f 120%);border-color:#b4784666;box-shadow:inset 0 1px #ffffffb3,inset 0 -2px 4px #5a281e1a,0 10px 22px #e07a5f66,0 3px 6px #3d342914}.sk-cta-create:active{box-shadow:inset 0 3px 10px #5a281e33,0 4px 10px #e07a5f42}.landing-carousel{z-index:2;opacity:0;flex-direction:column;flex:auto;gap:8px;min-height:0;transition:opacity .6s .14s,transform .6s cubic-bezier(.22,1,.36,1) .14s;display:flex;position:relative;transform:translateY(14px)}.landing-carousel-head{justify-content:space-between;align-items:center;gap:10px;padding:0 2px;display:flex}.landing-carousel-label{align-items:center;gap:8px;min-width:0;display:inline-flex}.landing-features-kicker{font-family:var(--land-display);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.84rem;font-weight:700;overflow:hidden}.landing-slide-icon{background:linear-gradient(180deg, #fffefb, var(--beige-dark));width:28px;height:28px;box-shadow:var(--raised);color:var(--ink-soft);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.landing-slide-icon.tone-butter{color:#8a5a20;background:linear-gradient(#fff6e0,#f2cc8f)}.landing-slide-icon.tone-sage{color:#1e3d2c;background:linear-gradient(#e8f6ee,#81b29a)}.landing-slide-icon.tone-sky{color:#1a3344;background:linear-gradient(#e8f5fb,#7eb8d4)}.landing-slide-icon.tone-coral{color:#4a2018;background:linear-gradient(#ffe8e2,#ff8a7a)}.landing-slide-icon.tone-mint{color:#1e3d2c;background:linear-gradient(#eaf8f0,#a8d5ba)}.landing-carousel-nav{gap:6px;display:inline-flex}.landing-nav-btn{border:1px solid color-mix(in srgb, var(--sand) 55%, transparent);width:34px;height:34px;color:var(--ink-soft);cursor:pointer;background:linear-gradient(#fffcf7f2,#f5ede0d9);border-radius:12px;place-items:center;transition:transform .15s,box-shadow .15s;display:grid;box-shadow:inset 0 1px #fffc,0 6px 14px #3d342914}.landing-nav-btn:hover{transform:translateY(-1px)}.landing-nav-btn:active{box-shadow:var(--pressed);transform:translateY(1px)}.landing-carousel-viewport{touch-action:pan-y;border-radius:22px;flex:auto;min-height:0;position:relative;overflow:hidden}.landing-carousel-track{will-change:transform;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1);display:flex}.landing-slide{box-sizing:border-box;flex:0 0 100%;width:100%;height:100%;padding:0}.landing-slide-matte{-webkit-backdrop-filter:blur(12px)saturate(1.05);backdrop-filter:blur(12px)saturate(1.05);opacity:.55;filter:saturate(.85);background:linear-gradient(165deg,#ffffffc7,#fff8f094);border:1px solid #ffffffb3;border-radius:22px;flex-direction:column;gap:6px;height:100%;min-height:0;padding:12px 12px 10px;transition:transform .7s cubic-bezier(.22,1,.36,1),opacity .55s,filter .55s;display:flex;overflow:hidden;transform:scale(.965);box-shadow:0 14px 30px #3d34291a,inset 0 1px #ffffffe6}.landing-slide.is-active .landing-slide-matte{opacity:1;filter:none;transform:scale(1)}.landing-slide-copy{text-align:left;flex:none}.landing-feature-title{font-family:var(--land-display);color:var(--ink);margin:0 0 2px;font-size:1.05rem;font-weight:800;line-height:1.2}.landing-feature-blurb{color:var(--ink-soft);margin:0;font-size:.82rem;line-height:1.35}.landing-stage{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.landing-carousel-footer{flex-direction:column;flex:none;gap:8px;padding:0 2px;display:flex}.landing-dots{justify-content:center;gap:7px;display:flex}.landing-dot{cursor:pointer;background:color-mix(in srgb, var(--sand) 70%, transparent);border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:width .35s cubic-bezier(.22,1,.36,1),background .25s,border-radius .25s}.landing-dot.active{background:var(--sage);border-radius:999px;width:22px}.landing-dot.tone-butter.active{background:#e2a86a}.landing-dot.tone-sage.active{background:#81b29a}.landing-dot.tone-sky.active{background:#7eb8d4}.landing-dot.tone-coral.active{background:#e07a5f}.landing-dot.tone-mint.active{background:#6cb892}.landing-progress{background:color-mix(in srgb, var(--sand) 40%, transparent);border-radius:999px;height:3px;overflow:hidden}.landing-progress-bar{border-radius:inherit;background:linear-gradient(90deg,#81b29a,#7eb8d4,#e07a5f);width:0;height:100%;animation:4.2s linear both landProgress;display:block}.landing-foot{z-index:2;text-align:center;flex:none;margin:0;font-size:.75rem;line-height:1;position:relative}.land-demo{width:100%;padding:2px 0}.land-demo-ai{flex-direction:column;gap:8px;display:flex}.land-ai-prompt{background:linear-gradient(180deg, #fffefb, var(--beige-dark));border:1px solid var(--surface-border);box-shadow:var(--raised);color:var(--ink-soft);border-radius:14px;align-items:center;gap:8px;padding:10px 12px;font-size:.8rem;display:flex}.land-ai-prompt svg{color:#c4a040;flex-shrink:0}.land-typewriter{white-space:nowrap;border-right:2px solid color-mix(in srgb, var(--ink-muted) 60%, transparent);max-width:0;animation:2.1s steps(24,end) .2s both landType,.7s step-end infinite landCaret;display:inline-block;overflow:hidden}.land-typewriter.slow{animation:1.2s steps(4,end) .15s both landTypeShort,.7s step-end infinite landCaret}.land-ai-card{background:linear-gradient(180deg, #fff, var(--cream));border:1px solid var(--surface-border);box-shadow:var(--soft);opacity:0;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px;animation:.5s cubic-bezier(.22,1,.36,1) 1.1s both landPopIn;display:grid;transform:translateY(8px)scale(.97)}.land-ai-icon{color:#8a5a20;background:linear-gradient(#ffe8c8,#f2cc8f);border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.land-ai-card strong{color:var(--ink);font-size:.84rem;display:block}.land-ai-card span{color:var(--ink-muted);font-size:.72rem}.land-ai-card em{font-style:normal;font-family:var(--font-numbers);color:#2f9e62;font-size:.9rem;font-weight:700}.land-demo-track{flex-direction:column;gap:8px;width:100%;display:flex}.land-track-row{border:1px solid var(--surface-border);background:linear-gradient(180deg, var(--warm-white), var(--beige));box-shadow:var(--raised);opacity:0;color:var(--ink);border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px;font-size:.84rem;animation:.45s cubic-bezier(.22,1,.36,1) both landSlideIn;display:grid;transform:translate(-12px)}.land-track-row strong{font-family:var(--font-numbers)}.land-track-row.tone-sage svg{color:#5a9a78}.land-track-row.tone-sky svg{color:#5a9ec0}.land-demo-share{flex-direction:column;align-items:center;gap:10px;display:flex}.land-share-book{background:linear-gradient(180deg, #fffaf3, var(--beige-dark));border:1px solid var(--surface-border);box-shadow:var(--raised);color:var(--ink);border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:12px 18px;font-size:.88rem;font-weight:700;animation:.5s cubic-bezier(.22,1,.36,1) both landPopIn;display:flex}.land-share-book svg{color:#5a9ec0}.land-share-avatars{gap:8px;display:flex}.land-avatar{border:2px solid var(--warm-white);width:34px;height:34px;box-shadow:var(--soft);opacity:0;border-radius:50%;place-items:center;font-size:.8rem;font-weight:700;animation:.4s cubic-bezier(.22,1,.36,1) both landPopIn;display:grid}.land-avatar.a1{color:#1e3d2c;background:linear-gradient(#b8dcc8,#81b29a);animation-delay:.25s}.land-avatar.a2{color:#1a3344;background:linear-gradient(#b8daf0,#7eb8d4);animation-delay:.38s}.land-avatar.a3{color:#3a2a18;background:linear-gradient(#f6d4a8,#e4a96a);animation-delay:.5s}.land-demo-analytics{width:100%;padding-top:4px}.land-bars{justify-content:center;align-items:flex-end;gap:7px;height:84px;padding:0 4px;display:flex}.land-bar{max-width:24px;height:var(--bar-h,50%);transform-origin:bottom;background:linear-gradient(#b8dcc8,#81b29a);border-radius:7px 7px 3px 3px;flex:1;animation:.65s cubic-bezier(.22,1,.36,1) both landBarGrow;transform:scaleY(0);box-shadow:inset 0 1px #ffffff73,0 3px 8px #3d34291a}.land-bar:nth-child(2n){background:linear-gradient(#b8daf0,#7eb8d4)}.land-bar:nth-child(3n){background:linear-gradient(#f6d4a8,#e2a86a)}.land-demo-search{flex-direction:column;gap:8px;width:100%;display:flex}.land-search-box{background:linear-gradient(180deg, #fff, var(--cream));border:1px solid var(--surface-border);box-shadow:var(--raised);color:var(--ink-soft);border-radius:14px;align-items:center;gap:8px;padding:10px 12px;font-size:.88rem;display:flex}.land-search-box svg{color:var(--sky)}.land-search-hit{background:linear-gradient(180deg, var(--warm-white), var(--beige));border:1px solid var(--surface-border);color:var(--ink);opacity:0;border-radius:12px;justify-content:space-between;gap:8px;padding:10px 12px;font-size:.82rem;animation:.4s cubic-bezier(.22,1,.36,1) .75s both landPopIn;display:flex;transform:translateY(8px)}.land-search-hit strong{font-family:var(--font-numbers);color:#2f9e62}[data-theme=dark] .landing-slide-matte{background:linear-gradient(165deg,#1e2f4ad1,#16233ab8);border-color:#5a6d8866}[data-theme=dark] .landing-nav-btn{color:var(--ink-soft);background:linear-gradient(#243552,#1c2b45);border-color:#5a6d8873}[data-theme=dark] .sk-cta-signin{color:#e8f6ee}[data-theme=dark] .sk-cta-create{color:#fff5e8}@media (max-width:360px){.sk-cta{padding:10px 6px;font-size:.9rem}.landing-lead{font-size:.86rem}}@media (max-height:700px){.landing-top .brand-hero,.landing-top .brand-hero.compact{min-height:88px}.landing-top .brand-hero-title{font-size:clamp(1.95rem,8.5vw,2.4rem)}.landing-lead{font-size:.84rem}.landing-cta{margin-top:8px}.sk-cta{min-height:44px}.landing-orb{opacity:.35}}@media (min-height:820px){.landing-top .brand-hero,.landing-top .brand-hero.compact{min-height:128px}.landing-lead{font-size:.98rem}}@keyframes landBlobDrift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(14px,-16px)scale(1.06)}}@keyframes landOrbFloat{0%,to{transform:translate3d(calc(var(--px,0) * 8px), calc(var(--py,0) * 6px), 0) scale(1)}50%{transform:translate3d(calc(var(--px,0) * 8px + 6px), calc(var(--py,0) * 6px - 10px), 0) scale(1.05)}}@keyframes landProgress{0%{width:0%}to{width:100%}}@keyframes landType{0%{max-width:0}to{max-width:100%}}@keyframes landTypeShort{0%{max-width:0}to{max-width:4.2em}}@keyframes landCaret{50%{border-color:#0000}}@keyframes landPopIn{to{opacity:1;transform:translateY(0)scale(1)}}@keyframes landSlideIn{to{opacity:1;transform:translate(0)}}@keyframes landBarGrow{to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.land-blob,.landing-orb,.land-typewriter,.land-typewriter.slow,.land-ai-card,.land-track-row,.land-share-book,.land-avatar,.land-bar,.land-search-hit,.landing-progress-bar,.landing-carousel-track,.landing-slide-matte{transition:none!important;animation:none!important}.landing-page .landing-top,.landing-page .landing-cta,.landing-page .landing-carousel{opacity:1!important;transform:none!important}.land-typewriter,.land-typewriter.slow{border-right:none;max-width:100%}.land-ai-card,.land-track-row,.land-avatar,.land-search-hit,.landing-slide-matte{opacity:1;filter:none;transform:none}.land-bar{transform:scaleY(1)}.landing-progress-bar{width:100%}}
