@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Nunito+Sans:wght@400;500;600;700;800;900&family=Instrument+Serif:ital@0;1&display=swap";:root{--alann-graphite: #0E1114;--alann-graphite-mid: #2A2F36;--alann-graphite-ink: #0E1114;--alann-silver: #8A95A3;--alann-silver-soft: #B7BEC8;--alann-silver-tint: #DDE1E6;--alann-chrome: linear-gradient(180deg, #2A2F36 0%, #0E1114 100%);--alann-chrome-hi: linear-gradient(180deg, #3A4048 0%, #0E1114 100%);--canvas: #EEF0F3;--surface: #FFFFFF;--surface-alt: #E4E8ED;--neutral-100: #F5F7F9;--neutral-200: #DDE1E6;--neutral-300: #C9CFD6;--neutral-400: #B7BEC8;--ink: #0E1114;--ink-2: #0E1114;--ink-soft: rgba(14, 17, 20, .6);--ink-muted: rgba(14, 17, 20, .4);--ink-hairline: rgba(14, 17, 20, .1);--ink-wash: rgba(14, 17, 20, .04);--success: #16A34A;--warning: #F59E0B;--danger: #E23D3D;--info: var(--alann-silver);--fg-1: var(--ink);--fg-2: var(--ink-soft);--fg-3: var(--ink-muted);--fg-on-graphite: #F3F5F8;--bg-1: var(--canvas);--bg-2: var(--surface);--bg-3: var(--surface-alt);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--font-display: "Nunito Sans", "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-ui: "Inter", system-ui, sans-serif;--font-serif: "Instrument Serif", "Georgia", serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--fs-display: 56px;--fs-h1: 32px;--fs-h2: 24px;--fs-h3: 20px;--fs-body-lg: 17px;--fs-body: 15px;--fs-body-sm: 13px;--fs-caption: 12px;--fs-micro: 10px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 900;--lh-tight: 1;--lh-snug: 1.15;--lh-reading: 1.35;--lh-loose: 1.5;--track-tight: -.025em;--track-nudge: -.005em;--track-normal: 0;--track-wide: .02em;--s-0: 0;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 32px;--s-8: 40px;--s-9: 56px;--s-10: 72px;--bottom-nav-height: max(84px, calc(51px + env(safe-area-inset-bottom, 0px)) );--r-xs: 4px;--r-sm: 8px;--r-md: 10px;--r-lg: 16px;--r-xl: 24px;--r-pill: 999px;--r-bubble-in: 10px 10px 10px 2px;--r-bubble-out: 10px 10px 2px 10px;--shadow-0: none;--shadow-1: 0 1px 2px rgba(14, 17, 20, .06);--shadow-2: 0 4px 12px rgba(14, 17, 20, .08);--shadow-3: 0 16px 64px rgba(14, 17, 20, .2);--shadow-chrome: 0 10px 28px rgba(14, 17, 20, .28), inset 0 1px 0 rgba(255,255,255,.12);--shadow-silver: 0 8px 24px rgba(138, 149, 163, .28);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .36s;--border-hair: 1px solid var(--ink-hairline);--border-soft: 1px solid var(--neutral-300);--border-card: 1px solid rgba(14, 17, 20, .12)}.h1{font-family:var(--font-display);font-size:var(--fs-h1);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--track-tight);color:var(--ink-2)}.h2{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--track-tight);color:var(--ink-2)}.h3{font-family:var(--font-sans);font-size:var(--fs-h3);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--track-tight);color:var(--ink-2)}.title{font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-bold);line-height:var(--lh-reading);letter-spacing:var(--track-tight);color:var(--ink-2)}.body{font-family:var(--font-sans);font-size:var(--fs-body-lg);line-height:var(--lh-reading);color:var(--ink)}.body-sm{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-reading);color:var(--ink)}.meta{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-reading);letter-spacing:var(--track-nudge);color:var(--ink-soft)}.caption{font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--ink-soft)}.micro{font-family:var(--font-sans);font-size:var(--fs-micro);line-height:var(--lh-tight);color:var(--ink)}.tab-label{font-family:var(--font-ui);font-size:11px;font-weight:var(--fw-medium);line-height:var(--lh-reading);color:var(--ink)}.mono{font-family:var(--font-mono);font-size:var(--fs-body-sm)}.quote{font-family:var(--font-serif);font-style:italic;font-size:var(--fs-h1);line-height:var(--lh-snug);color:var(--ink-2)}.app-loading-text{display:flex;flex:1 1 auto;align-items:center;justify-content:center;min-height:60vh;padding:var(--s-7) var(--s-5);text-align:center;font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink-soft)}:root{font-family:var(--font-sans);line-height:var(--lh-reading);font-weight:var(--fw-regular);letter-spacing:var(--track-nudge);color-scheme:light;color:var(--ink);background-color:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;align-items:stretch}:root{--font-main: var(--fs-body);--font-small: var(--fs-body-sm);--font-xs: var(--fs-caption);font-size:16px}:root{--form-bg: var(--surface);--form-text: var(--ink);--form-border: var(--neutral-300);--form-placeholder: var(--ink-muted);--form-disabled-bg: var(--neutral-100)}html,body{margin:0;padding:0;width:100%;max-width:100%;display:block;overflow-x:hidden;overscroll-behavior:none}body{font-family:var(--font-sans);color:var(--ink);background-color:var(--canvas)}*,*:before,*:after{box-sizing:border-box}a{font-weight:var(--fw-medium);color:var(--ink);text-decoration:inherit}a:hover{color:var(--alann-graphite-mid)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink-2);letter-spacing:var(--track-tight);line-height:var(--lh-snug);font-weight:var(--fw-bold);margin:0}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}button{border-radius:var(--r-pill);border:1px solid transparent;padding:10px 18px;font-size:var(--fs-body);font-weight:var(--fw-semibold);font-family:inherit;letter-spacing:var(--track-nudge);background:var(--alann-chrome);color:var(--fg-on-graphite);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out);box-shadow:var(--shadow-chrome)}button:hover{background:var(--alann-chrome-hi)}button:active{transform:scale(.98)}button:focus,button:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.form-input{padding:10px 12px;border:var(--border-soft);border-radius:var(--r-sm);background-color:var(--form-bg);color:var(--form-text);font-family:var(--font-sans);font-size:16px!important;letter-spacing:var(--track-nudge);box-sizing:border-box;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.form-input:focus{outline:none;border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.form-input::placeholder{color:var(--form-placeholder)}.form-input:disabled{background-color:var(--form-disabled-bg);color:var(--form-placeholder);cursor:not-allowed}textarea.form-input{font-family:var(--font-sans);font-size:16px!important;background-color:var(--form-bg);color:var(--form-text)}@media(max-width:380px){:root{font-size:14px}}#root{max-width:1280px;margin:0 auto;padding:0;text-align:center}.logo{height:6em;padding:var(--s-6);will-change:filter;transition:filter var(--dur-slow) var(--ease-out)}.logo:hover{filter:drop-shadow(0 0 1.5em rgba(14,17,20,.3))}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:var(--s-7);background:var(--surface);border:var(--border-card);border-radius:var(--r-lg)}.read-the-docs{color:var(--ink-soft)}.app-container{width:100%;text-align:center;max-width:100%;margin:0 auto;min-height:100vh;overflow-x:hidden;background-color:var(--canvas);color:var(--ink)}.app-container h1{margin-bottom:var(--s-6);font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.page-content{padding-left:var(--s-1);padding-right:var(--s-1);padding-bottom:max(94px,calc(61px + env(safe-area-inset-bottom,0px)))}.page-content:has(.calendar),.page-content:has(.chat-page),.page-content:has(.email-page),.page-content:has(.email-details-container),.page-content:has(.settings-page),.page-content:has(.home){padding-bottom:0}.page-content:has(.calendar),.page-content:has(.chat-page),.page-content:has(.email-page),.page-content:has(.email-details-container),.page-content:has(.settings-page){padding-left:0;padding-right:0}.app-container.web{padding-left:232px;max-width:none}.app-container.web .page-content{padding-bottom:0}:root:has(.app-container.web) #root,#root:has(.app-container.web){max-width:none;text-align:left}.todo-input{width:300px;padding:var(--s-2) var(--s-3);margin-top:var(--s-3);border:var(--border-soft);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink);background:var(--surface)}.loading-screen{display:flex;justify-content:center;align-items:center;height:100vh;font-family:var(--font-sans);font-size:var(--fs-body-lg);color:var(--ink-soft);background:var(--canvas)}.button-column{display:flex;flex-direction:column;gap:var(--s-4);margin-top:var(--s-5)}.home-btn{padding:12px 18px;background:var(--alann-chrome);color:var(--fg-on-graphite);border:none;border-radius:var(--r-pill);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer;box-shadow:var(--shadow-chrome);transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.home-btn:hover{background:var(--alann-chrome-hi)}.home-btn:active{transform:scale(.98)}.voice-button{margin-top:var(--s-3)}.content-left{text-align:left}.home{margin-left:calc(-1 * var(--s-1));margin-right:calc(-1 * var(--s-1));text-align:left}.app-container:not(.web) .home{display:flex;flex-direction:column;height:calc(100dvh - var(--bottom-nav-height));overflow:hidden;background:var(--surface)}.app-container:not(.web) .home-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.home .app-topbar--sticky{border-bottom:none}.home-feed{display:flex;flex-direction:column;gap:6px;padding:6px 0 24px;background:var(--surface)}.home-feed>.app-loading-text{padding:8px 20px}.home-feed-loading{padding:14px 20px 8px;text-align:center;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.app-container.web .home-feed,.app-container.web .home-header{max-width:760px}.home-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;padding:14px 24px;background:var(--canvas);border-bottom:1px solid var(--ink-hairline)}.app-container.web .home-header{position:static}.home-crumbs{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;color:var(--ink-soft)}.home-crumbs-now{color:var(--ink);font-weight:600}.home-search-field{margin-left:16px;flex:1;max-width:420px;min-width:0;display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:999px;background:var(--surface);border:1px solid var(--ink-hairline);color:var(--ink-muted);font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;cursor:pointer;text-align:left;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.home-search-field:hover{background:var(--neutral-100);border-color:#0e11142e}.home-search-field svg{width:14px;height:14px;flex-shrink:0}.home-search-field span:first-of-type{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-search-kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;padding:0 5px;border-radius:4px;background:var(--ink-wash);color:var(--ink-muted);font-family:var(--font-mono);font-size:10px;font-weight:600;flex-shrink:0}.home-topbar-spacer{flex:0 0 auto;min-width:4px}.app-nav-drawer{position:fixed;inset:0;background:#0e111452;z-index:1100;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}.app-nav-drawer.open{opacity:1;pointer-events:auto}.app-nav-drawer-card{position:absolute;left:0;top:0;bottom:0;width:82%;max-width:320px;background:var(--surface);transform:translate(-100%);transition:transform .26s var(--ease-out);display:flex;flex-direction:column;box-shadow:8px 0 32px #0e11142e;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.app-nav-drawer.open .app-nav-drawer-card{transform:translate(0)}.app-nav-head{padding:16px 12px 12px;border-bottom:1px solid var(--ink-hairline)}.app-nav-acct{display:flex;align-items:center;gap:10px;width:100%;padding:6px;border:0;border-radius:12px;background:transparent;box-shadow:none;cursor:pointer;text-align:left;color:inherit;transition:background var(--dur-fast) var(--ease-out)}.app-nav-acct:hover{background:var(--neutral-100)}.app-nav-acct:focus,.app-nav-acct:focus-visible{outline:none}.app-nav-acct:active{transform:none}.app-nav-acct-av{width:40px;height:40px;flex:0 0 40px;border-radius:var(--r-pill);object-fit:cover;display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-bold);letter-spacing:-.01em;color:var(--ink)}.app-nav-acct-av-fallback{background:linear-gradient(180deg,#dde1e6,#b7bec8);box-shadow:inset 0 1px #ffffffb3}.app-nav-acct-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.app-nav-acct-name{font-family:var(--font-sans);font-size:14px;font-weight:var(--fw-bold);line-height:1.15;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-nav-acct-email{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);line-height:1.15;letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-nav-drawer-body{flex:1;overflow-y:auto;padding:6px 0 12px;scrollbar-width:thin}.app-nav-drawer-body::-webkit-scrollbar{width:0}.app-nav-section{padding:14px 20px 6px;font-family:var(--font-mono);font-size:9px;font-weight:600;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.app-nav-row{position:relative;display:grid;grid-template-columns:18px 1fr auto;gap:12px;align-items:center;padding:11px 18px;cursor:pointer;border:0;background:transparent;width:100%;text-align:left;box-shadow:none;margin:0;border-radius:0;font-family:inherit;color:inherit;transition:background var(--dur-fast) var(--ease-out)}.app-nav-row:hover{background:var(--neutral-100)}.app-nav-row:active{transform:none}.app-nav-row:focus,.app-nav-row:focus-visible{outline:none}.app-nav-row.on{background:var(--neutral-100)}.app-nav-row.on:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--alann-graphite);border-radius:0 2px 2px 0}.app-nav-row-ic{color:var(--ink-soft);display:flex;align-items:center;justify-content:center}.app-nav-row.on .app-nav-row-ic{color:var(--ink-2)}.app-nav-row-ic svg{width:16px;height:16px}.app-nav-row-nm{font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);line-height:1.2;letter-spacing:-.005em;color:var(--ink)}.app-nav-row.on .app-nav-row-nm{color:var(--ink-2);font-weight:var(--fw-bold)}.app-nav-row-meta{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.04em;color:var(--ink-muted)}.app-nav-row-soon{cursor:default}.app-nav-row-soon:hover{background:transparent}.app-nav-row-soon .app-nav-row-nm{color:var(--ink-muted);font-weight:var(--fw-medium)}.app-nav-soon-tag{height:16px;padding:0 7px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);display:inline-flex;align-items:center;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.app-nav-foot{border-top:1px solid var(--ink-hairline);padding:6px 0 10px}.app-topbar{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface);flex:0 0 auto}.app-topbar--sticky{position:sticky;top:0;z-index:20;padding-top:calc(6px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--ink-hairline)}.app-topbar-icon{width:36px;height:36px;flex:0 0 36px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;box-shadow:none;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.app-topbar-icon:hover,.app-topbar-icon:active{background:var(--ink-wash)}.app-topbar-icon:focus,.app-topbar-icon:focus-visible{outline:none}.app-topbar-search{flex:1;min-width:0;height:36px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--neutral-100);box-shadow:none;color:var(--ink-muted);cursor:pointer;font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-medium);letter-spacing:-.005em;transition:background var(--dur-fast) var(--ease-out)}.app-topbar-search:hover{background:var(--surface-alt)}.app-topbar-search:focus,.app-topbar-search:focus-visible{outline:none}.app-topbar-search svg{width:15px;height:15px;flex:0 0 15px}.app-topbar-search-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ptr-content{position:relative;transition:transform .22s cubic-bezier(.22,1,.36,1)}.ptr-content-dragging{transition:none}.ptr-indicator{position:absolute;left:0;right:0;bottom:100%;height:96px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:14px;pointer-events:none;opacity:var(--ptr-progress, 0)}.ptr-spinner{box-sizing:border-box;width:22px;height:22px;border-radius:50%;border:2px solid var(--ink-hairline);border-top-color:var(--ink-soft);transform:scale(calc(.6 + .4 * var(--ptr-progress, 0)))}.ptr-indicator-ready .ptr-spinner{border-top-color:var(--ink)}.ptr-indicator-spin{opacity:1}.ptr-indicator-spin .ptr-spinner{transform:none;animation:ptr-rotate .75s linear infinite}@keyframes ptr-rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ptr-indicator-spin .ptr-spinner{animation-duration:1.4s}}.ptr-sr-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.home-toast{position:fixed;left:16px;right:16px;bottom:calc(var(--bottom-nav-height, 84px) + 12px + env(safe-area-inset-bottom,0px));z-index:1200;display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:var(--r-md);background:var(--alann-graphite);color:var(--fg-on-graphite);box-shadow:var(--shadow-2);font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);line-height:1.3;letter-spacing:var(--track-nudge);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.home-toast.on{opacity:1;transform:none;pointer-events:auto}.home-toast-msg{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-toast-undo{margin-left:auto;flex:0 0 auto;padding:4px 2px;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--fg-on-graphite);cursor:pointer;font-family:var(--font-mono);font-size:10.5px;font-weight:var(--fw-bold);line-height:1;letter-spacing:.1em;text-transform:uppercase;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.home-toast-undo:hover,.home-toast-undo:active,.home-toast-undo:focus{background:transparent;box-shadow:none;transform:none;outline:none}.home-toast-undo:hover{text-decoration:underline}.home-toast-undo:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.app-container.web .home-toast{left:auto;right:24px;bottom:24px;max-width:360px}.home-sec{display:flex;flex-direction:column;text-align:left}.home-sec-hd{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;row-gap:2px;padding:6px 20px}.home-sec-toggle{position:absolute;inset:0;z-index:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.home-sec-toggle:hover,.home-sec-toggle:active,.home-sec-toggle:focus{background:transparent;box-shadow:none;transform:none;outline:none}.home-sec-toggle:focus-visible{outline:2px solid var(--alann-silver);outline-offset:-3px}.home-sec-l1,.home-sec-chev,.home-sec-ct{position:relative;z-index:1;pointer-events:none}.home-sec-l1{grid-column:1;grid-row:1;display:flex;align-items:center;gap:7px;min-width:0}.home-sec-name{flex:0 0 auto;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-bold);line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.home-sec-name--link{pointer-events:auto;display:inline-flex;align-items:center;gap:4px;padding:2px 0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--ink-2);cursor:pointer;text-decoration:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;transition:color var(--dur-fast) var(--ease-out)}.home-sec-name--link:hover,.home-sec-name--link:active,.home-sec-name--link:focus{background:transparent;box-shadow:none;transform:none;outline:none}.home-sec-name--link:hover{color:var(--ink)}.home-sec-name--link:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.home-sec-live{width:5px;height:5px;flex:0 0 5px;border-radius:var(--r-pill);background:var(--success);animation:home-sec-pulse 2.4s var(--ease-out) infinite}@keyframes home-sec-pulse{0%{box-shadow:0 0 #16a34a80}70%{box-shadow:0 0 0 5px #16a34a00}to{box-shadow:0 0 #16a34a00}}.home-sec-chev{grid-column:2;grid-row:1 / 3;justify-self:end;align-self:center;display:inline-flex;margin-right:2px;color:var(--ink-muted)}.home-sec-chev svg{width:12px;height:12px;transition:transform var(--dur-base) var(--ease-out)}.home-sec.collapsed .home-sec-chev svg{transform:rotate(-90deg)}.home-sec-ct{grid-column:1;grid-row:2;min-width:0;font-family:var(--font-sans);font-size:11px;font-weight:var(--fw-medium);line-height:1.2;letter-spacing:var(--track-nudge);color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-sec-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows var(--dur-base) var(--ease-out)}.home-sec.collapsed .home-sec-body{grid-template-rows:0fr}.home-sec-inner{overflow:hidden;min-height:0;display:flex;flex-direction:column;padding:4px 0 2px}.home-sec.collapsed .home-sec-inner{padding:0}.swrow{position:relative;overflow:hidden}.swrow-bg{position:absolute;inset:0;display:flex;align-items:stretch;justify-content:space-between}.swrow-act{display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;width:0;min-width:0;overflow:hidden;white-space:nowrap;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-bold);line-height:1;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-on-graphite)}.swrow-act-lbl{overflow:hidden;text-overflow:clip}.swrow-act svg{width:14px;height:14px;flex:0 0 14px}.swrow-act-mark{width:13px;height:14px;flex:0 0 13px;background:url(/alann-logo.svg) center / contain no-repeat;filter:invert(1)}.swrow-act--danger{background:var(--danger)}.swrow-act--danger.armed{background:#c22b2b}.swrow-act--graphite{background:var(--alann-graphite)}.swrow-act--graphite.armed{background:#000}.swrow-fg{position:relative;background:var(--surface);touch-action:pan-y;will-change:transform}.task-stream-filters{display:flex;gap:6px;padding:2px 20px 0;overflow-x:auto;scrollbar-width:none}.task-stream-filters::-webkit-scrollbar{display:none}.task-chip{flex:0 0 auto;height:30px;padding:0 13px;border-radius:var(--r-pill);border:var(--border-hair);background:var(--neutral-100);color:var(--ink);font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:-.01em;cursor:pointer;box-shadow:none;-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;gap:7px;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.task-chip:hover{background:var(--surface-alt)}.task-chip:active,.task-chip:focus{transform:none;box-shadow:none;outline:none}.task-chip:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.task-chip.on{background:var(--ink);color:var(--fg-on-graphite);border-color:var(--ink);box-shadow:none}.task-chip-n{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.02em;opacity:.55}.task-chip.on .task-chip-n{opacity:.8}.task-list{margin-top:4px}.task-swipe+.task-swipe{border-top:var(--border-hair)}.task-row{display:grid;grid-template-columns:22px 1fr auto;gap:12px;align-items:flex-start;padding:12px 20px;background:transparent;transition:background var(--dur-fast) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.task-row:hover{background:var(--neutral-100)}.task-row:hover .task-dismiss{opacity:1}.task-check{width:18px;height:18px;margin-top:1px;flex:0 0 18px;padding:0;border:1.5px solid var(--neutral-400);border-radius:5px;background:var(--surface);box-shadow:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:all var(--dur-fast) var(--ease-out)}.task-row.suggested .task-check{border-style:dashed;border-color:var(--alann-silver)}.task-check:hover{background-color:var(--surface);border-color:var(--alann-graphite)}.task-check:active,.task-check:focus{transform:none;box-shadow:none;outline:none}.task-check:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.task-row.done .task-check{background-color:var(--alann-graphite);border-color:var(--alann-graphite);border-style:solid;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 6.3l2 2 4-4.6'/></svg>");background-repeat:no-repeat;background-position:center}.task-body{min-width:0;display:flex;flex-direction:column;gap:5px;cursor:pointer;-webkit-tap-highlight-color:transparent}.task-title{font-family:var(--font-sans);font-size:14px;font-weight:var(--fw-semibold);line-height:1.35;letter-spacing:-.01em;color:var(--ink-2);text-wrap:pretty}.task-row.done .task-title{color:var(--ink-muted);text-decoration:line-through;text-decoration-thickness:1px}.task-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.task-src{display:inline-flex;align-items:center;gap:5px;height:18px;padding:0 7px 0 3px;border-radius:var(--r-pill);background:var(--surface-alt);font-family:var(--font-sans);font-size:10px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:var(--track-nudge);color:var(--ink-2);white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.task-src-icon{width:14px;height:14px;flex:0 0 14px;border-radius:3px;background:var(--alann-graphite);color:var(--fg-on-graphite);display:inline-flex;align-items:center;justify-content:center}.task-src-icon svg{width:9px;height:9px;display:block}.task-when,.task-by{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.04em;color:var(--ink-muted)}.task-suggested-tag{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 7px;border-radius:var(--r-pill);background:#f59e0b24;color:#7a4a00;font-family:var(--font-mono);font-size:8.5px;font-weight:var(--fw-bold);line-height:1;letter-spacing:.08em;text-transform:uppercase}.task-suggested-dot{width:5px;height:5px;border-radius:var(--r-pill);background:currentColor;opacity:.65}.task-right{display:flex;align-items:center;justify-content:flex-end;gap:4px;align-self:center}.task-dismiss{width:22px;height:22px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;box-shadow:none;color:var(--ink-muted);cursor:pointer;opacity:.5;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;justify-content:center;transition:opacity var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.task-dismiss:hover,.task-dismiss:active,.task-dismiss:focus{background:var(--surface-alt);color:#9c1f1f;transform:none;box-shadow:none;outline:none}.task-dismiss:focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.task-dismiss svg{width:11px;height:11px}.task-spacer{width:22px;height:22px;flex:0 0 22px}.task-empty{padding:26px 20px;text-align:center;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--fw-medium);line-height:1.4;color:var(--ink-muted)}.task-foot{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;margin-top:4px;border-top:var(--border-hair)}.task-progress{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.04em;color:var(--ink-soft)}.task-bar{width:60px;height:3px;background:var(--ink-hairline);border-radius:var(--r-pill);overflow:hidden}.task-bar-fill{height:100%;background:var(--alann-graphite);border-radius:var(--r-pill);transition:width var(--dur-base) var(--ease-out)}.home-header{position:sticky;top:0;z-index:5;display:flex;flex-direction:column;gap:2px;padding:8px 20px 14px;background:var(--surface);text-align:left}@supports (padding-top: env(safe-area-inset-top)){.home-header{padding-top:calc(8px + env(safe-area-inset-top,0px))}}.app-container:not(.web) .home-header{position:static;padding-top:8px}.home-header-eyebrow{display:block;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.home-header .home-header-title{margin:2px 0 0;font-family:var(--font-display);font-weight:800;font-size:26px;line-height:1;letter-spacing:-.035em;color:var(--ink-2)}.home-header-who{color:var(--ink-2)}.home-header-sub{margin:2px 0 0;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);line-height:1.35;letter-spacing:var(--track-nudge);color:var(--ink-soft);max-width:320px;text-wrap:pretty}.wfrow{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;padding:11px 20px;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out)}.wfrow:focus-visible{outline:2px solid var(--alann-silver);outline-offset:-2px}.wfrow:hover{background:var(--neutral-100)}.wfrow-ic{width:20px;height:20px;flex:0 0 20px;margin-top:-1px;border-radius:6px;background:var(--alann-graphite);color:var(--fg-on-graphite);display:flex;align-items:center;justify-content:center}.wfrow-mark{width:11px;height:12px;background:url(/alann-logo.svg) center / contain no-repeat;filter:invert(1)}.wfrow--waiting .wfrow-ic{background:#9c1f1f}.wfrow--done .wfrow-ic,.wfrow--cancelled .wfrow-ic{background:var(--surface-alt)}.wfrow--done .wfrow-mark,.wfrow--cancelled .wfrow-mark{filter:none;opacity:.55}.wfrow-body{min-width:0;display:flex;flex-direction:column;gap:6px}.wfrow-top{display:flex;align-items:center;gap:8px}.wfrow-title{flex:1;min-width:0;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--fw-semibold);line-height:1.25;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wfrow-sub{margin:0;font-family:var(--font-sans);font-size:11.5px;font-weight:var(--fw-medium);line-height:1.4;letter-spacing:var(--track-nudge);color:var(--ink-soft);text-wrap:pretty}.wfrow-prog{display:flex;align-items:center;gap:9px}.wfrow-bar{flex:1;height:3px;background:var(--ink-hairline);border-radius:var(--r-pill);overflow:hidden}.wfrow-bar-fill{display:block;height:100%;border-radius:var(--r-pill);background:var(--alann-graphite)}.wfrow-eta{flex:0 0 auto;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.04em;color:var(--ink-muted)}.wfrow-state{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;height:18px;padding:0 8px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:8.5px;font-weight:var(--fw-bold);line-height:1;letter-spacing:.08em;text-transform:uppercase;background:var(--ink-wash);color:var(--ink-2)}.wfrow-state:before{content:"";width:5px;height:5px;border-radius:var(--r-pill);background:var(--success);animation:runband-pulse 2.4s var(--ease-out) infinite}.wfrow-state.input{background:#f59e0b29;color:#8a5300}.wfrow-state.input:before{animation:none;background:var(--warning)}.wfrow-state.done{background:#16a34a1f;color:#106e32}.wfrow-state.done:before{animation:none;background:var(--success)}.wfrow-state.failed{background:#e23d3d1f;color:#9c1f1f}.wfrow-state.failed:before{animation:none;background:var(--danger)}.wfrow-state.cancelled{background:var(--ink-wash);color:var(--ink-muted)}.wfrow-state.cancelled:before{animation:none;background:var(--neutral-400, #aaa)}@keyframes runband-pulse{0%{box-shadow:0 0 #16a34a80}70%{box-shadow:0 0 0 5px #16a34a00}to{box-shadow:0 0 #16a34a00}}.runband-more{align-self:stretch;margin:2px 20px 0;border:0;border-radius:var(--r-pill);box-shadow:none;background:transparent;cursor:pointer;padding:8px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-sans);font-size:11px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:var(--track-nudge);color:var(--ink-soft);white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.runband-more:hover,.runband-more:active,.runband-more:focus{background:var(--neutral-100);color:var(--ink);transform:none;box-shadow:none;outline:none}.runband-more:focus-visible{outline:2px solid var(--alann-silver);outline-offset:-2px}.runband-more svg{width:11px;height:11px;transition:transform var(--dur-base) var(--ease-out)}.runband-more[aria-expanded=true] svg{transform:rotate(180deg)}.compose-page{max-width:680px;margin:0 auto;text-align:left;background:var(--surface);color:var(--ink);font-family:var(--font-sans)}.compose-page input,.compose-page textarea{font-size:16px}.compose-topbar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);padding-top:calc(var(--s-2) + env(safe-area-inset-top,0px));background:var(--surface);border-bottom:1px solid var(--ink-hairline)}.compose-cancel{justify-self:start;background:transparent;border:0;box-shadow:none;padding:var(--s-2) var(--s-1);cursor:pointer;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge)}.compose-cancel:hover{background:transparent;color:var(--ink-soft)}.compose-title{justify-self:center;min-width:0;text-align:center}.compose-title .ttl{display:block;font-family:var(--font-display);font-size:var(--fs-body-sm);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compose-topbar-spacer{justify-self:end}.compose-send{justify-self:end;display:inline-flex;align-items:center;gap:var(--s-1);height:32px;padding:0 var(--s-3) 0 10px;border:0;border-radius:var(--r-pill);cursor:pointer;background:var(--alann-chrome);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.compose-send svg{width:12px;height:12px}.compose-send:hover:not(:disabled){background:var(--alann-chrome-hi)}.compose-send:active:not(:disabled){transform:scale(.98)}.compose-send:disabled{background:var(--neutral-200);color:var(--ink-muted);box-shadow:none;cursor:not-allowed}.compose-scroll{display:flex;flex-direction:column}.c-field{display:flex;align-items:flex-start;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--ink-hairline);min-height:46px}.c-lbl{flex:0 0 42px;padding-top:6px;font-family:var(--font-mono);font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--ink-muted)}.c-val{flex:1 1 auto;min-width:0}.c-input{width:100%;border:0;outline:0;background:transparent;padding:4px 0;font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink)}.c-input::placeholder{color:var(--ink-muted)}.c-toggle{align-self:center;flex:0 0 auto;background:transparent;border:0;box-shadow:none;cursor:pointer;padding:var(--s-1) var(--s-2);font-family:var(--font-mono);font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--ink-soft)}.c-toggle:hover{background:transparent;color:var(--ink)}.c-field.from .c-val{padding-top:2px}.from-pill{display:inline-flex;align-items:center;gap:var(--s-2);max-width:100%;padding:5px 10px;border-radius:var(--r-pill);background:var(--neutral-100);border:1px solid var(--ink-hairline)}.from-pill .em{font-family:var(--font-mono);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-field.subject{padding:var(--s-4)}.c-subject-input{width:100%;border:0;outline:0;background:transparent;padding:0;font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.c-subject-input::placeholder{color:var(--ink-muted);font-weight:var(--fw-semibold)}.c-body{width:100%;border:0;outline:0;resize:none;background:transparent;padding:var(--s-4);min-height:44vh;font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-loose);letter-spacing:var(--track-nudge);color:var(--ink)}.c-body::placeholder{color:var(--ink-muted)}.compose-page .error-msg{color:var(--danger);font-family:var(--font-sans);font-size:var(--fs-body-sm)}.compose-page .success-msg{color:var(--success);font-family:var(--font-sans);font-size:var(--fs-body-sm);padding:var(--s-3) var(--s-4) 0}.compose-scroll .c-banner{margin:var(--s-3) var(--s-4) 0}.compose-page .btn-link{background:transparent;border:0;box-shadow:none;padding:0;cursor:pointer;color:var(--ink-2);font:inherit;font-weight:var(--fw-semibold);text-decoration:underline}.compose-page .btn-link:hover{background:transparent}.compose-status{padding:var(--s-6);display:flex;flex-direction:column;align-items:center;gap:var(--s-3);color:var(--ink-soft)}.compose-page .btn-secondary{padding:var(--s-2) var(--s-5);border-radius:var(--r-pill);border:var(--border-soft);background:var(--surface);color:var(--ink);box-shadow:none;cursor:pointer;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm)}.compose-done{padding:var(--s-8) var(--s-6);text-align:center}.compose-done h3{font-family:var(--font-sans);font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);letter-spacing:var(--track-tight);color:var(--ink-2);margin-bottom:var(--s-3)}.compose-done p{color:var(--ink-soft);font-size:var(--fs-body-sm);margin-bottom:var(--s-4)}.compose-done .success-buttons{display:flex;justify-content:center;gap:var(--s-4);margin-top:var(--s-5)}.compose-done .success-buttons button{padding:var(--s-2) var(--s-5);border:0;border-radius:var(--r-pill);background:var(--alann-chrome);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);cursor:pointer;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);transition:background var(--dur-base) var(--ease-out)}.compose-done .success-buttons button:hover{background:var(--alann-chrome-hi)}.permission-gate{display:flex;align-items:center;justify-content:center;padding:var(--s-6);min-height:60vh}.permission-gate-card{width:100%;max-width:380px;padding:var(--s-6);background:var(--surface);border:var(--border-card);border-radius:var(--r-lg);text-align:center}.permission-gate-icon{width:48px;height:48px;margin:0 auto var(--s-4)}.permission-gate-icon svg{width:100%;height:100%}.permission-gate-icon--lock{color:var(--ink-soft)}.permission-gate-icon--warning{color:var(--color-warning, #b45309)}.permission-gate-card h3{font-family:var(--font-sans);font-size:var(--fs-title-sm);color:var(--ink);margin:0 0 var(--s-3)}.permission-gate-card p{font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink-soft);line-height:var(--lh-reading);letter-spacing:var(--track-nudge);margin:0 0 var(--s-6)}.permission-gate-overlay{position:fixed;inset:0;background:#0000007a;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--s-4)}.permission-gate-overlay .permission-gate{min-height:0}.reply-container{padding:var(--s-6);max-width:600px;margin:0 auto;text-align:left;background:var(--canvas);color:var(--ink);font-family:var(--font-sans)}.reply-title{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);line-height:var(--lh-snug);color:var(--ink-2);margin-bottom:var(--s-5)}.form-label{margin-bottom:var(--s-2);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-soft)}.error-text{color:var(--danger);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);margin-bottom:var(--s-3)}.success-text{color:var(--success);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);margin-bottom:var(--s-3)}.reply-btn-primary,.reply-btn-secondary{padding:10px var(--s-5);background:var(--alann-chrome);color:var(--fg-on-graphite);border:none;border-radius:var(--r-pill);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body);letter-spacing:var(--track-nudge);cursor:pointer;box-shadow:var(--shadow-chrome);transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.reply-btn-primary:hover:not(:disabled),.reply-btn-secondary:hover:not(:disabled){background:var(--alann-chrome-hi)}.reply-btn-primary:active,.reply-btn-secondary:active{transform:scale(.98)}.reply-btn-primary:disabled{background:var(--neutral-300);color:var(--ink-muted);box-shadow:none;cursor:not-allowed}.reply-actions{display:flex;gap:var(--s-4);margin-top:var(--s-5)}.reply-quoted{margin-top:var(--s-4);padding:var(--s-3);border-left:3px solid var(--neutral-300);background:var(--ink-wash);color:var(--ink-soft);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);line-height:var(--lh-reading);border-radius:0 var(--r-xs) var(--r-xs) 0}.notifications-container{margin:var(--s-3) 0 var(--s-5)}.notification-item{background:var(--surface);border:var(--border-card);border-radius:var(--r-lg);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-2);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-reading);letter-spacing:var(--track-nudge);color:var(--ink)}.wf-progress-container{width:100%}.wf-progress-container--home{padding:12px 16px 4px}.wf-progress-container--chat{padding:8px 12px}.wf-card-tap-wrapper{display:block;width:100%;cursor:pointer;outline:none}.wf-card-tap-wrapper:focus-visible{outline:2px solid #007aff;border-radius:12px}.wf-card{background:var(--color-surface, #f5f5f7);border-radius:12px;padding:12px 14px 10px;margin-bottom:8px;border:1px solid transparent;transition:border-color .2s}.wf-card--active{border-color:#007aff33}.wf-card--completed{border-color:#34c7594d}.wf-card--failed{border-color:#ff3b304d}.wf-card--cancelled{border-color:#00000014}.wf-card--waiting_for_user{border-color:#ff95004d}.wf-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.wf-intent{font-size:13px;font-weight:600;color:var(--color-text-primary, #1c1c1e);text-transform:capitalize}.wf-fraction{font-size:11px;color:var(--color-text-secondary, #8e8e93)}.wf-bar-track{height:4px;background:var(--color-fill-tertiary, #e5e5ea);border-radius:2px;overflow:hidden;margin-bottom:10px}.wf-bar-fill{height:100%;background:#007aff;border-radius:2px;transition:width .4s ease}.wf-card--completed .wf-bar-fill{background:#34c759}.wf-card--failed .wf-bar-fill{background:#ff3b30}.wf-card--cancelled .wf-bar-fill{background:#c7c7cc}.wf-steps{display:flex;flex-direction:column;gap:4px}.wf-step{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--color-text-secondary, #8e8e93)}.wf-step-icon{width:14px;height:14px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px}.wf-step--queued .wf-step-icon{background:#c7c7cc}.wf-step--in_progress .wf-step-icon{background:#007aff;animation:wf-pulse 1.2s ease-in-out infinite}.wf-step--in_progress{color:var(--color-text-primary, #1c1c1e)}.wf-step--done .wf-step-icon{background:#34c759}.wf-step--done .wf-step-icon:after{content:"✓";color:#fff;font-size:8px;font-weight:700;line-height:1}.wf-step--done{color:var(--color-text-secondary, #8e8e93)}.wf-step--waiting_on_user .wf-step-icon{background:#ff9500}.wf-step--waiting_on_user{color:#ff9500;font-weight:600}.wf-step--failed .wf-step-icon{background:#ff3b30}.wf-step--failed .wf-step-icon:after{content:"✕";color:#fff;font-size:7px;font-weight:700;line-height:1}.wf-step--failed{color:#ff3b30}.wf-step--skipped .wf-step-icon{background:#e5e5ea}.wf-step--skipped .wf-step-label{text-decoration:line-through;opacity:.5}.wf-step--cancelled .wf-step-icon{background:#e5e5ea}.wf-step--cancelled .wf-step-label{opacity:.4}.wf-step-error{font-size:11px;color:#ff3b30;margin-left:auto}@keyframes wf-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.wf-clarification{margin-top:10px;border-top:1px solid var(--color-separator, #e5e5ea);padding-top:10px;display:flex;flex-direction:column;gap:8px}.wf-clarification-text{font-size:13px;color:var(--color-text-primary, #1c1c1e);margin:0;line-height:1.4;text-align:left}.wf-clarification-chips{display:flex;flex-wrap:wrap;gap:6px}.wf-clarification-chip{font-size:12px;padding:5px 12px;border-radius:14px;border:1.5px solid #007aff;background:transparent;color:#007aff;cursor:pointer;transition:background .15s,color .15s;white-space:normal;text-align:left;overflow-wrap:anywhere}.wf-clarification-chip:active{background:#007aff;color:#fff}.wf-clarification-input-row{display:flex;align-items:center;gap:6px;background:var(--color-fill-secondary, #ebebf0);border-radius:10px;padding:6px 6px 6px 10px}.wf-clarification-input{flex:1;border:none;background:transparent;font-size:13px;color:var(--color-text-primary, #1c1c1e);outline:none;min-width:0}.wf-clarification-input::placeholder{color:var(--color-text-secondary, #8e8e93)}.wf-clarification-send{width:28px;height:28px;padding:0;border-radius:50%;background:#007aff;color:#fff;border:none;box-shadow:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.wf-clarification-send:hover{background:#0062cc}.wf-clarification-send:disabled{background:var(--color-fill-tertiary, #e5e5ea);color:var(--color-text-tertiary, #aeaeb2);cursor:default}.wf-clarification-send svg{width:14px;height:14px}.wf-chip--deny{border-color:#ff3b30;color:#ff3b30}.wf-chip--deny:active{background:#ff3b30;color:#fff}.wf-chip--edit{border-color:var(--color-text-secondary, #8e8e93);color:var(--color-text-secondary, #8e8e93)}.wf-chip--edit:active{background:var(--color-text-secondary, #8e8e93);color:#fff}.wf-clarification-multi{display:flex;flex-direction:column;gap:12px}.wf-clarification-subq{display:flex;flex-direction:column;gap:6px}.wf-chip--selected{background:#007aff;color:#fff}.wf-clarification-submit{align-self:flex-start;font-size:13px;font-weight:600;padding:7px 16px;border-radius:14px;border:none;box-shadow:none;background:#007aff;color:#fff;cursor:pointer;transition:background .15s}.wf-clarification-submit:hover{background:#0062cc}.wf-clarification-submit:disabled{background:var(--color-fill-tertiary, #e5e5ea);color:var(--color-text-tertiary, #aeaeb2);cursor:default}.wf-preview-card{background:var(--color-fill-secondary, #f2f2f7);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:12px}.wf-preview-field{display:flex;gap:6px;align-items:baseline}.wf-preview-label{font-weight:600;color:var(--color-text-secondary, #8e8e93);min-width:44px;flex-shrink:0}.wf-preview-value{color:var(--color-text-primary, #1c1c1e);word-break:break-word}.wf-preview-body{margin-top:6px;color:var(--color-text-primary, #1c1c1e);line-height:1.5;white-space:pre-wrap;word-break:break-word;border-top:1px solid var(--color-separator, #e5e5ea);padding-top:6px}.wf-preview-hl{background:#ffcc0073;border-radius:2px;padding:0 1px;font-weight:600;font-style:normal}.wf-preview-unresolved{margin:2px 0 0;font-size:12px;font-weight:600;color:#ff9500;word-break:break-word}.wf-preview-warning{margin:6px 0 0;padding:6px 8px;font-size:12px;font-weight:600;color:#b26a00;background:#ff95001f;border-left:3px solid #ff9500;border-radius:4px;word-break:break-word}.home-voice-btn.degraded{opacity:.5;filter:grayscale(1)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;min-height:var(--bottom-nav-height);padding-top:14px;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--neutral-100);border-top:1px solid var(--ink-hairline);display:flex;align-items:flex-start;z-index:1000}.bottom-nav-tab{flex:1 1 0;min-width:0;background:transparent;border:0;outline:none;-webkit-appearance:none;padding:2px 10px;border-radius:0;box-shadow:none;display:flex;flex-direction:column;align-items:center;gap:4px;font-family:var(--font-sans);font-size:10px;font-weight:var(--fw-medium);letter-spacing:-.005em;line-height:1.1;color:var(--ink-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.bottom-nav-tab:focus,.bottom-nav-tab:focus-visible{outline:none}.bottom-nav-tab:hover,.bottom-nav-tab:active{background:transparent}.bottom-nav-tab.on{color:var(--ink-2)}.bottom-nav-icon{height:22px;display:flex;align-items:center;justify-content:center}.bottom-nav-tab svg{color:inherit;display:block}.bottom-nav-label{color:inherit}.bottom-nav-spacer{flex:1 1 0;min-width:72px;visibility:hidden}.bottom-nav-center{position:absolute;left:50%;top:-22px;transform:translate(-50%);width:72px;height:72px;border-radius:50%;background:var(--neutral-100);padding:5px;box-shadow:var(--shadow-chrome);z-index:2;overflow:visible}.bottom-nav-center .home-voice-btn{position:relative;width:100%;height:100%;border:0;border-radius:50%;background:var(--surface);box-shadow:none;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:visible;transform:none;transition:transform var(--dur-base) var(--ease-spring)}.bottom-nav-center .home-voice-btn:hover{background:var(--surface);box-shadow:none}.bottom-nav-center .home-voice-btn:active{transform:scale(.96)}.bottom-nav-center .home-voice-btn .voice-mark{width:36px;height:36px;filter:none;position:relative;z-index:3;transition:transform var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.bottom-nav-center .home-voice-btn.listening .voice-mark{animation:voice-breathe 2.4s cubic-bezier(.45,.05,.55,1) infinite}@keyframes voice-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.bottom-nav-center .home-voice-btn .voice-waves{position:absolute;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%);border-radius:999px;pointer-events:none;z-index:0}.bottom-nav-center .home-voice-btn .voice-waves span{position:absolute;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%) scale(1);border-radius:999px;border:1px solid rgba(14,17,20,.18);opacity:0}.bottom-nav-center .home-voice-btn.listening .voice-waves span{animation:voice-wave 2.8s cubic-bezier(.22,1,.36,1) infinite}.bottom-nav-center .home-voice-btn.listening .voice-waves span:nth-child(2){animation-delay:.7s}.bottom-nav-center .home-voice-btn.listening .voice-waves span:nth-child(3){animation-delay:1.4s}@keyframes voice-wave{0%{transform:translate(-50%,-50%) scale(1);opacity:.55}80%{opacity:0}to{transform:translate(-50%,-50%) scale(1.85);opacity:0}}.bottom-nav-center .home-voice-btn .voice-orbit{position:absolute;left:50%;top:50%;width:13px;height:13px;margin-top:-10px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:4;opacity:0}.bottom-nav-center .home-voice-btn.listening .voice-orbit{opacity:1;animation:voice-spin 1.8s linear infinite}.bottom-nav-center .home-voice-btn .voice-orbit i{position:absolute;left:50%;top:0;width:3px;height:3px;border-radius:50%;background:var(--alann-silver);transform:translate(-50%,-50%);box-shadow:0 0 6px #8a95a3f2,0 0 12px #8a95a373}@keyframes voice-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.bottom-nav-center .home-voice-btn .voice-wf{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:3px;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}.bottom-nav-center .home-voice-btn .voice-wf span{display:block;width:3px;height:8px;border-radius:999px;background:var(--ink-2)}.bottom-nav-center .home-voice-btn.speaking .voice-mark,.bottom-nav-center .home-voice-btn.speaking .voice-orbit{opacity:0;animation:none}.bottom-nav-center .home-voice-btn.speaking .voice-wf{opacity:1}.bottom-nav-center .home-voice-btn.speaking .voice-wf span{animation:voice-wf-bar .9s ease-in-out infinite}.bottom-nav-center .home-voice-btn.speaking .voice-wf span:nth-child(1){animation-delay:0s}.bottom-nav-center .home-voice-btn.speaking .voice-wf span:nth-child(2){animation-delay:.1s}.bottom-nav-center .home-voice-btn.speaking .voice-wf span:nth-child(3){animation-delay:.2s}.bottom-nav-center .home-voice-btn.speaking .voice-wf span:nth-child(4){animation-delay:.15s}.bottom-nav-center .home-voice-btn.speaking .voice-wf span:nth-child(5){animation-delay:.05s}@keyframes voice-wf-bar{0%,to{height:6px}50%{height:24px}}.bottom-nav-center .home-voice-btn.degraded{opacity:.5;filter:grayscale(1)}@media(prefers-reduced-motion:reduce){.bottom-nav-center .home-voice-btn .voice-mark,.bottom-nav-center .home-voice-btn .voice-waves span,.bottom-nav-center .home-voice-btn .voice-orbit,.bottom-nav-center .home-voice-btn .voice-wf span{animation:none!important}}.wfd-page{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;position:relative;height:100dvh;padding-top:env(safe-area-inset-top,0px);overflow:hidden}.wfd-page.wfd-has-nav{height:calc(100dvh - var(--bottom-nav-height))}body.wfd-active.keyboard-open{position:fixed;inset:0;overflow:hidden}body.wfd-active.keyboard-open .wfd-page{height:calc(100dvh - var(--keyboard-height, 0px))}.wfd-topbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:var(--s-2) 16px 6px;background:var(--surface);border-bottom:1px solid var(--ink-hairline)}.wfd-icon-btn{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:transparent;color:var(--ink);box-shadow:none;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-appearance:none;appearance:none;transition:background var(--dur-fast) var(--ease-out)}.wfd-topbar .wfd-icon-btn:first-child{margin-left:-8px}.wfd-topbar .wfd-icon-btn:last-child{margin-right:-8px}.wfd-icon-btn:hover{background:var(--ink-wash)}.wfd-icon-btn:active{transform:scale(.96)}.wfd-icon-btn svg{width:18px;height:18px}.wfd-topbar-title{font-family:var(--font-display);font-size:15px;font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:1;color:var(--ink-2)}.wfd-feed{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 18px 16px;background:var(--surface);scrollbar-width:none}.wfd-feed::-webkit-scrollbar{width:0;display:none}.wfd-title{margin:0;text-align:center;font-family:var(--font-display);font-size:20px;font-weight:800;line-height:1.25;letter-spacing:-.025em;color:var(--ink-2);text-wrap:balance}.wfd-ack{margin:6px 0 0;text-align:center;font-size:14px;color:var(--ink-3);line-height:1.4}.wfd-meta-row{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:14px}.wfd-badge{height:21px;padding:0 9px;border-radius:var(--r-pill);font-family:var(--font-sans);font-size:11px;font-weight:800;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:5px;background:var(--ink-wash);color:var(--ink-soft)}.wfd-badge svg{width:11px;height:11px}.wfd-badge--active:before,.wfd-badge--in_progress:before,.wfd-badge--created:before{content:"";width:5px;height:5px;border-radius:var(--r-pill);background:var(--alann-graphite);animation:wfd-pulse 1.6s var(--ease-in-out) infinite}.wfd-badge--completed{background:#16a34a1f;color:#106e32}.wfd-badge--active,.wfd-badge--in_progress,.wfd-badge--created{background:var(--ink-wash);color:var(--ink-2)}.wfd-badge--waiting_for_user,.wfd-badge--awaiting_approval,.wfd-badge--awaiting_auth{background:#f59e0b29;color:#8a5300}.wfd-badge--failed,.wfd-badge--partially_failed{background:#e23d3d1f;color:#9c1f1f}.wfd-badge--cancelled{background:#ea580c1f;color:#9a3412}.wfd-badge--cancelling{background:#ea580c14;color:#9a3412}.wfd-updated{font-size:13px;font-weight:var(--fw-medium);letter-spacing:-.005em;color:var(--ink-soft)}.wfd-bar-track{margin-top:14px;height:5px;border-radius:var(--r-pill);background:var(--ink-hairline);overflow:hidden}.wfd-bar-fill{height:100%;border-radius:var(--r-pill);background:var(--alann-graphite);transition:width var(--dur-slow) var(--ease-out)}.wfd-fraction{display:block;text-align:center;margin-top:9px;font-size:12px;font-weight:var(--fw-medium);letter-spacing:-.005em;color:var(--ink-soft)}.wfd-steps{margin-top:18px;display:flex;flex-direction:column}.wfd-step-wrapper{padding:14px 0}.wfd-step-wrapper+.wfd-step-wrapper{border-top:1px solid var(--ink-hairline)}.wfd-step{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:flex-start}.wfd-tick{width:18px;height:18px;flex:0 0 18px;margin-top:1px;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:10px;font-weight:var(--fw-bold);color:#fff}.wfd-tick svg{width:11px;height:11px}.wfd-tick--done{background:var(--success)}.wfd-tick--failed{background:var(--danger)}.wfd-tick--waiting{background:var(--warning)}.wfd-tick--active{background:var(--alann-graphite);box-shadow:var(--shadow-chrome)}.wfd-tick--active .wfd-tick-dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--fg-on-graphite);animation:wfd-pulse 1.4s var(--ease-in-out) infinite}.wfd-tick--queued{background:transparent;border:1.5px solid var(--ink-hairline)}.wfd-tick--skipped{background:var(--neutral-200)}.wfd-tick--cancelled{background:var(--neutral-200);opacity:.5}.wfd-bar-track--cancelled .wfd-bar-fill{background:var(--ink-soft)}.wfd-step-body{min-width:0;display:flex;flex-direction:column;gap:4px}.wfd-step-title{font-size:14px;font-weight:var(--fw-semibold);line-height:1.3;letter-spacing:-.01em;color:var(--ink-2)}.wfd-step--skipped .wfd-step-title{color:var(--ink-muted);text-decoration:line-through}.wfd-step--queued .wfd-step-title{color:var(--ink-soft)}.wfd-step-detail{font-size:12.5px;font-weight:var(--fw-regular);line-height:1.4;letter-spacing:-.005em;color:var(--ink-soft);text-wrap:pretty}.wfd-step-detail--error{color:var(--danger)}.wfd-step-time{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);letter-spacing:.02em;color:var(--ink-muted)}.wfd-step-time .val{color:var(--ink-soft)}@keyframes wfd-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.82)}}.wfd-feed .wf-clarification{margin:8px 0 0;border:1px solid var(--ink-hairline);border-radius:var(--r-md);padding:12px 14px}.wfd-feed .wf-clarification-chip{border-color:var(--alann-graphite);color:var(--alann-graphite)}.wfd-feed .wf-clarification-chip:active{background:var(--alann-graphite);color:var(--fg-on-graphite)}.wfd-feed .wf-chip--deny{border-color:var(--danger);color:var(--danger)}.wfd-feed .wf-chip--deny:active{background:var(--danger);color:#fff}.wfd-feed .wf-clarification-send{background:var(--alann-chrome);box-shadow:var(--shadow-chrome)}.wfd-feed .wf-clarification-send:disabled{background:var(--neutral-300);box-shadow:none}.wfd-polling-hint{margin:10px 0 0;padding:0;text-align:center;font-size:13px;letter-spacing:-.005em;color:var(--ink-soft)}.wfd-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;color:var(--ink-soft);font-size:14px;text-align:center}.wfd-retry{font-size:14px;font-weight:var(--fw-semibold);color:var(--fg-on-graphite);background:var(--alann-chrome);box-shadow:var(--shadow-chrome);border:0;border-radius:var(--r-pill);cursor:pointer;padding:8px 18px}.wfd-cancel-btn{display:block;margin:24px auto 8px;padding:0;background:transparent;border:0;box-shadow:none;font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-medium);letter-spacing:-.005em;color:var(--ink-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);-webkit-appearance:none;appearance:none}.wfd-cancel-btn:hover:not(:disabled){color:var(--danger)}.wfd-cancel-btn:disabled{opacity:.45;cursor:not-allowed}.wfd-composer{flex:0 0 auto;padding:var(--s-2) var(--s-3) 10px;background:var(--surface);border-top:1px solid var(--ink-hairline);display:flex;flex-direction:column;gap:var(--s-2)}.wfd-compose-row{display:flex;align-items:center;gap:var(--s-2)}.wfd-input-wrap{flex:1;min-width:0;height:36px;box-sizing:border-box;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:var(--r-pill);padding:0 6px 0 14px;display:flex;align-items:center;gap:8px;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.wfd-input-wrap:focus-within{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e11140f}.wfd-search-ic{flex:0 0 16px;color:var(--ink-muted);display:flex;align-items:center}.wfd-search-ic svg{width:16px;height:16px}.wfd-ask-input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-regular);line-height:1.35;letter-spacing:var(--track-nudge);color:var(--ink);padding:0;align-self:center}.wfd-ask-input::placeholder{color:var(--ink-muted)}.wfd-slash{height:24px;padding:0 8px;border-radius:6px;background:var(--ink-wash);color:var(--ink);font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:.04em;align-self:center;flex-shrink:0;display:inline-flex;align-items:center}.wfd-send{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:var(--alann-chrome);color:var(--fg-on-graphite);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-chrome);flex-shrink:0;box-sizing:border-box;padding:0;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-base) var(--ease-out)}.wfd-send:hover:not(:disabled){background:var(--alann-chrome-hi)}.wfd-send:active:not(:disabled){transform:scale(.94)}.wfd-send:disabled{background:var(--neutral-300);color:var(--ink-muted);box-shadow:none;cursor:not-allowed}.wfd-send svg{width:16px;height:16px}.work-page{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;position:relative;height:100dvh;padding-top:env(safe-area-inset-top,0px);overflow:hidden}.work-page.work-has-nav{height:calc(100dvh - var(--bottom-nav-height))}.work-topbar{flex:0 0 auto;display:flex;align-items:center;padding:6px 12px;background:var(--surface)}.work-back{display:inline-flex;align-items:center;gap:4px;margin-left:-4px;padding:6px;border:0;border-radius:10px;background:transparent;box-shadow:none;cursor:pointer;font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:1;color:var(--ink-2);-webkit-appearance:none;appearance:none;transition:background var(--dur-fast) var(--ease-out)}.work-back:hover{background:var(--ink-wash)}.work-back:active{transform:scale(.98)}.work-back svg{width:18px;height:18px}.work-feed{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:var(--canvas);scrollbar-width:none;padding:0 16px 24px}.work-feed::-webkit-scrollbar{width:0;display:none}.work-top{background:var(--surface);margin:0 -16px;padding:0 16px}.work-head{padding:4px 4px 8px;display:flex;flex-direction:column;gap:2px}.work-head h1{margin:2px 0 0;font-family:var(--font-display);font-weight:var(--fw-black);font-size:26px;line-height:1.05;letter-spacing:-.035em;color:var(--ink-2)}.work-sub{margin:6px 0 0;font-size:13px;font-weight:var(--fw-medium);line-height:1.35;letter-spacing:-.005em;color:var(--ink-soft);max-width:320px}.work-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 0 12px}.work-stat{display:flex;flex-direction:column;gap:4px;padding:10px 11px;border-radius:12px;background:var(--ink-wash);color:var(--ink-2)}.work-stat-n{display:flex;align-items:baseline;gap:5px;font-family:var(--font-display);font-weight:var(--fw-black);font-size:19px;line-height:1;letter-spacing:-.03em}.work-stat-dot{width:6px;height:6px;flex:0 0 6px;border-radius:var(--r-pill);background:var(--success);transform:translateY(-2px)}.work-stat-l{font-family:var(--font-mono);font-size:8.5px;font-weight:var(--fw-semibold);line-height:1.1;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.work-tools{position:sticky;top:0;z-index:4;background:var(--surface);margin:0 -16px 2px;padding:8px 16px 12px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--ink-hairline)}.work-srch{height:36px;display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--neutral-100);color:var(--ink-muted);transition:border-color var(--dur-base) var(--ease-out)}.work-srch:focus-within{border-color:var(--alann-graphite)}.work-srch>svg{width:15px;height:15px;flex:0 0 15px}.work-srch input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-medium);letter-spacing:-.005em;color:var(--ink)}.work-srch input::placeholder{color:var(--ink-muted)}.work-srch-clear{flex:0 0 auto;width:20px;height:20px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;box-shadow:none;color:var(--ink-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.work-srch-clear:hover{background:var(--surface-alt);color:var(--ink)}.work-srch-clear svg{width:12px;height:12px}.work-fbar{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.work-fbar::-webkit-scrollbar{display:none}.work-fchip{flex:0 0 auto;height:30px;padding:0 13px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--neutral-100);color:var(--ink);font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);letter-spacing:-.01em;cursor:pointer;display:inline-flex;align-items:center;gap:6px;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.work-fchip:hover{background:var(--surface-alt)}.work-fchip.on{background:var(--ink);color:var(--fg-on-graphite);border-color:var(--ink)}.work-fn{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.02em;opacity:.55}.work-fchip.on .work-fn{opacity:.8}.work-group{display:flex;flex-direction:column;gap:8px}.work-daysec{display:flex;align-items:center;gap:9px;padding:16px 2px 8px}.work-d{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-bold);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}.work-m{font-size:10.5px;font-weight:var(--fw-medium);letter-spacing:-.005em;color:var(--ink-muted)}.work-line{flex:1;height:1px;background:var(--ink-hairline)}.work-run{background:var(--surface);border:1px solid var(--ink-hairline);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-1)}.work-run-hd{display:grid;grid-template-columns:8px 1fr auto;gap:11px;align-items:start;width:100%;padding:12px 13px;background:transparent;border:0;box-shadow:none;border-radius:0;text-align:left;color:inherit;cursor:pointer}.work-run-hd:hover{background:var(--neutral-100)}.work-pip{width:8px;height:8px;border-radius:3px;margin-top:5px;background:var(--alann-silver)}.work-run[data-s=done] .work-pip{background:var(--success)}.work-run[data-s=running] .work-pip{background:var(--success);animation:work-pulse 2.4s var(--ease-out) infinite}.work-run[data-s=waiting] .work-pip{background:var(--warning)}.work-run[data-s=cancelled] .work-pip{background:var(--neutral-400)}.work-run[data-s=failed] .work-pip{background:var(--danger)}@keyframes work-pulse{0%{box-shadow:0 0 #16a34a80}70%{box-shadow:0 0 0 6px #16a34a00}to{box-shadow:0 0 #16a34a00}}.work-run-body{min-width:0;display:flex;flex-direction:column;gap:5px}.work-run-title{font-size:13.5px;font-weight:var(--fw-semibold);line-height:1.3;letter-spacing:-.01em;color:var(--ink-2);text-wrap:pretty}.work-run[data-s=cancelled] .work-run-title{color:var(--ink-soft)}.work-run-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-family:var(--font-mono);font-size:10.5px;font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--ink-muted)}.work-dot{width:3px;height:3px;border-radius:var(--r-pill);background:var(--ink-muted)}.work-run-bar{width:140px;max-width:46vw;height:3px;border-radius:var(--r-pill);background:var(--ink-hairline);overflow:hidden}.work-run-bar-fill{display:block;height:100%;border-radius:var(--r-pill);background:var(--alann-graphite);transition:width var(--dur-slow) var(--ease-out)}.work-run-out{font-size:11.5px;font-weight:var(--fw-medium);line-height:1.4;letter-spacing:-.005em;color:var(--ink-soft);text-wrap:pretty}.work-run-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;align-self:center}.work-state{height:18px;padding:0 8px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:8.5px;font-weight:var(--fw-bold);letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;white-space:nowrap;background:var(--surface-alt);color:var(--ink-soft)}.work-state.done{background:#16a34a1f;color:#106e32}.work-state.running{background:#16a34a24;color:#106e32}.work-state.waiting{background:#f59e0b29;color:#8a5300}.work-state.failed{background:#e23d3d1f;color:#9c1f1f}.work-state.cancelled{background:var(--surface-alt);color:var(--ink-muted)}.work-chev{width:11px;height:11px;color:var(--ink-muted);transition:transform var(--dur-base) var(--ease-out)}.work-run.open .work-chev{transform:rotate(180deg)}.work-det{border-top:1px solid var(--ink-hairline);background:var(--neutral-100)}.work-det-pad{padding:11px 13px 12px;display:flex;flex-direction:column;gap:10px}.work-log{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.work-log li{display:grid;grid-template-columns:14px 1fr auto;gap:9px;align-items:start;padding:5px 0;position:relative}.work-log li:before{content:"";position:absolute;left:6px;top:16px;bottom:-5px;width:1px;background:var(--ink-hairline)}.work-log li:last-child:before{display:none}.work-tick{width:13px;height:13px;border-radius:var(--r-pill);margin-top:2px;display:inline-flex;align-items:center;justify-content:center;z-index:1;background:var(--surface);border:1.5px solid var(--neutral-400);color:#fff}.work-tick svg{width:7px;height:7px}.work-tick.ok{background:var(--success);border-color:var(--success)}.work-tick.warn{background:var(--danger);border-color:var(--danger)}.work-tick.stop{background:var(--neutral-400);border-color:var(--neutral-400)}.work-lt{font-size:11.5px;font-weight:var(--fw-medium);line-height:1.4;letter-spacing:-.005em;color:var(--ink);text-wrap:pretty}.work-lw{font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-medium);letter-spacing:.04em;color:var(--ink-muted);white-space:nowrap}.work-log-empty{margin:0;font-size:12px;font-weight:var(--fw-medium);color:var(--ink-muted)}.work-det-acts{display:flex;gap:6px;flex-wrap:wrap}.work-b{height:28px;padding:0 12px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:11.5px;font-weight:var(--fw-semibold);letter-spacing:-.005em;cursor:pointer;display:inline-flex;align-items:center;gap:5px;box-shadow:none}.work-b:hover{background:var(--surface-alt)}.work-b.primary{background:var(--alann-graphite);color:var(--fg-on-graphite);border-color:transparent;box-shadow:var(--shadow-chrome)}.work-b.primary:hover{background:var(--alann-graphite-mid)}.work-empty{padding:40px 10px;text-align:center;font-size:12.5px;font-weight:var(--fw-medium);line-height:1.5;color:var(--ink-muted)}.work-empty-full{padding:48px 16px;text-align:center;display:flex;flex-direction:column;gap:6px}.work-empty-full p{margin:0;font-size:14px;font-weight:var(--fw-semibold);color:var(--ink-2)}.work-empty-full .work-empty-hint{font-size:12.5px;font-weight:var(--fw-medium);color:var(--ink-muted)}.side-nav{position:fixed;top:0;left:0;bottom:0;width:232px;background:var(--canvas);border-right:1px solid var(--ink-hairline);display:flex;flex-direction:column;padding:20px 14px;text-align:left;z-index:1000;overflow-y:auto;overflow-x:hidden}.side-nav::-webkit-scrollbar{width:6px}.side-nav::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:999px}.side-nav-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 22px}.side-nav-brand-mark{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center}.side-nav-brand-mark img{width:100%;height:100%;object-fit:contain}.side-nav-brand-name{font-family:var(--font-display);font-weight:800;font-size:17px;letter-spacing:-.03em;color:var(--ink-2)}.side-nav-brand-dot{width:5px;height:5px;border-radius:999px;background:var(--alann-silver);margin-left:auto}.side-nav-section-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);padding:4px 12px 8px}.side-nav-section-label-spaced{margin-top:18px}.side-nav-list{display:flex;flex-direction:column;gap:2px}.side-nav-item{display:flex;align-items:center;gap:12px;height:36px;width:100%;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:-.005em;cursor:pointer;text-align:left;box-shadow:none;transition:background var(--dur-fast) var(--ease-out)}.side-nav-item:hover{background:var(--ink-wash)}.side-nav-item:focus,.side-nav-item:focus-visible{outline:none}.side-nav-item.active{background:var(--surface);box-shadow:0 1px 2px #0e11140f,inset 0 0 0 1px #0e11140f;font-weight:600}.side-nav-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);flex-shrink:0}.side-nav-icon svg{width:100%;height:auto}.side-nav-label{flex:1;font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav-count{margin-left:auto;font-family:var(--font-mono);font-weight:600;font-size:11px;line-height:1;color:var(--ink-muted);letter-spacing:0}.side-nav-folders{display:flex;flex-direction:column;gap:1px;margin-top:4px}.side-nav-folder{display:flex;align-items:center;gap:10px;padding:6px 12px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;width:100%;box-shadow:none;transition:background var(--dur-fast) var(--ease-out)}.side-nav-folder:hover{background:var(--ink-wash)}.side-nav-folder:focus,.side-nav-folder:focus-visible{outline:none}.side-nav-folder.active{background:var(--ink-wash)}.side-nav-folder-sw{width:10px;height:10px;border-radius:3px;flex-shrink:0;background:var(--alann-silver)}.sw-inbox{background:var(--alann-graphite)}.sw-starred{background:var(--alann-silver)}.sw-important{background:var(--warning)}.sw-sent{background:var(--alann-silver-tint);border:1px solid rgba(14,17,20,.2)}.sw-drafts{background:transparent;border:1px dashed rgba(14,17,20,.35)}.side-nav-folder-nm{flex:1;font-family:var(--font-sans);font-weight:500;font-size:12px;line-height:1;letter-spacing:-.005em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav-folder.active .side-nav-folder-nm{color:var(--ink-2);font-weight:600}.side-nav-folder-ct{margin-left:auto;font-family:var(--font-mono);font-weight:500;font-size:10px;line-height:1;color:var(--ink-muted)}.side-nav-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px;padding:8px 2px 2px}.side-nav-launcher{position:relative;margin:6px 4px 2px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:14px;background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);font:inherit;text-align:left;cursor:pointer;appearance:none;-webkit-appearance:none;overflow:visible;transition:transform var(--dur-fast) var(--ease-out)}.side-nav-launcher:hover{transform:translateY(-1px)}.side-nav-launcher:active{transform:translateY(0)}.side-nav-launcher:disabled{cursor:default}.side-nav-launcher:focus{outline:none}.side-nav-launcher:focus-visible{outline:2px solid var(--alann-silver-tint);outline-offset:2px}.side-nav-launcher-mark{position:relative;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.side-nav-launcher-mark img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;filter:invert(1);transform-origin:center;transition:opacity var(--dur-base) var(--ease-out)}.side-nav-launcher-copy{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.side-nav-launcher-t1{font-family:var(--font-sans);font-weight:600;font-size:12px;line-height:1.15;letter-spacing:-.015em}.side-nav-launcher-t2{font-family:var(--font-mono);font-weight:500;font-size:10px;line-height:1.15;letter-spacing:.06em;text-transform:uppercase;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav-launcher.active .side-nav-launcher-mark img{animation:side-nav-breathe 2.4s cubic-bezier(.45,.05,.55,1) infinite}@keyframes side-nav-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.side-nav-launcher-waves{position:absolute;left:50%;top:50%;width:22px;height:22px;transform:translate(-50%,-50%);border-radius:999px;pointer-events:none;z-index:0}.side-nav-launcher-waves span{position:absolute;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%) scale(1);border-radius:999px;border:1px solid rgba(255,255,255,.32);opacity:0}.side-nav-launcher.active .side-nav-launcher-waves span{animation:side-nav-wave 2.8s cubic-bezier(.22,1,.36,1) infinite}.side-nav-launcher.active .side-nav-launcher-waves span:nth-child(2){animation-delay:.7s}.side-nav-launcher.active .side-nav-launcher-waves span:nth-child(3){animation-delay:1.4s}@keyframes side-nav-wave{0%{transform:translate(-50%,-50%) scale(1);opacity:.55}80%{opacity:0}to{transform:translate(-50%,-50%) scale(2.4);opacity:0}}.side-nav-launcher-orbit{position:absolute;left:50%;top:50%;width:4px;height:4px;margin-top:-3px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:3;opacity:0}.side-nav-launcher.active .side-nav-launcher-orbit{opacity:1;animation:side-nav-spin 1.8s linear infinite}.side-nav-launcher-orbit i{position:absolute;left:50%;top:0;width:2px;height:2px;border-radius:50%;background:var(--alann-silver-tint);transform:translate(-50%,-50%);box-shadow:0 0 4px #fffffff2,0 0 8px #dde1e699}@keyframes side-nav-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.side-nav-launcher-wf{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:2px;height:22px;opacity:0;pointer-events:none;z-index:2;transition:opacity var(--dur-base) var(--ease-out)}.side-nav-launcher-wf span{display:block;width:2px;height:5px;border-radius:999px;background:var(--fg-on-graphite)}.side-nav-launcher.speaking .side-nav-launcher-mark img,.side-nav-launcher.speaking .side-nav-launcher-orbit{opacity:0;animation:none}.side-nav-launcher.speaking .side-nav-launcher-wf{opacity:1}.side-nav-launcher.speaking .side-nav-launcher-wf span{animation:side-nav-wf-bar .9s ease-in-out infinite}.side-nav-launcher.speaking .side-nav-launcher-wf span:nth-child(1){animation-delay:0s}.side-nav-launcher.speaking .side-nav-launcher-wf span:nth-child(2){animation-delay:.1s}.side-nav-launcher.speaking .side-nav-launcher-wf span:nth-child(3){animation-delay:.2s}.side-nav-launcher.speaking .side-nav-launcher-wf span:nth-child(4){animation-delay:.15s}.side-nav-launcher.speaking .side-nav-launcher-wf span:nth-child(5){animation-delay:.05s}@keyframes side-nav-wf-bar{0%,to{height:4px}50%{height:14px}}.side-nav-launcher.active{animation:side-nav-pill-breath 2.4s cubic-bezier(.45,.05,.55,1) infinite}@keyframes side-nav-pill-breath{0%,to{box-shadow:var(--shadow-chrome)}50%{box-shadow:0 14px 36px #0e111457,inset 0 1px #ffffff29,0 0 0 1px #ffffff0a}}.side-nav-launcher-scan{position:absolute;left:0;right:0;bottom:0;height:14px;overflow:hidden;pointer-events:none;border-radius:0 0 14px 14px;opacity:0;transition:opacity var(--dur-base) var(--ease-out)}.side-nav-launcher.active .side-nav-launcher-scan,.side-nav-launcher.speaking .side-nav-launcher-scan{opacity:1}.side-nav-launcher-scan:after{content:"";position:absolute;left:10%;right:10%;bottom:5px;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0) 20%,rgba(255,255,255,.6) 50%,rgba(255,255,255,0) 80%,transparent 100%)}.side-nav-launcher.active .side-nav-launcher-scan:after,.side-nav-launcher.speaking .side-nav-launcher-scan:after{animation:side-nav-scan-h 2.4s cubic-bezier(.45,.05,.55,1) infinite}@keyframes side-nav-scan-h{0%,to{transform:translate(-22%);opacity:.35}50%{transform:translate(22%);opacity:.95}}@media(prefers-reduced-motion:reduce){.side-nav-launcher.active,.side-nav-launcher.active .side-nav-launcher-mark img,.side-nav-launcher .side-nav-launcher-waves span,.side-nav-launcher .side-nav-launcher-orbit,.side-nav-launcher .side-nav-launcher-wf span,.side-nav-launcher .side-nav-launcher-scan:after{animation:none!important}}.side-nav-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.side-nav-user:hover{background:var(--ink-wash)}.side-nav-user-avatar{width:28px;height:28px;border-radius:999px;flex-shrink:0;object-fit:cover}.side-nav-user-avatar-fallback{background:linear-gradient(180deg,var(--alann-silver-tint),var(--alann-silver-soft));display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-weight:700;font-size:11px;line-height:1;letter-spacing:-.02em;color:var(--ink);box-shadow:inset 0 1px #ffffffb3}.side-nav-user-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.side-nav-user-name{font-family:var(--font-sans);font-weight:600;font-size:12px;line-height:1.1;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav-user-email{font-family:var(--font-mono);font-weight:500;font-size:10px;line-height:1.1;letter-spacing:.04em;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header{position:sticky;top:0;z-index:10;min-height:48px;display:flex;align-items:center;background:var(--neutral-200);border-bottom:var(--border-hair)}@supports (padding-top: env(safe-area-inset-top)){.app-header{height:calc(58px + min(env(safe-area-inset-top),40px));padding-top:min(env(safe-area-inset-top),40px);padding-bottom:10px}}.home-nav-btn{display:inline-flex;align-items:center;gap:var(--s-2);background:none;border:none;box-shadow:none;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);line-height:1;cursor:pointer;padding:var(--s-2) var(--s-1);border-radius:var(--r-sm);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.home-nav-btn:hover{background:var(--ink-wash)}.home-icon{font-size:18px;line-height:1}.home-label{line-height:1;display:inline-flex;align-items:center}.home-nav-btn:active{transform:scale(.96)}.back-icon{font-size:22px;line-height:1;display:inline-flex;align-items:center;position:relative;top:-1.5px}.revoked-banner{width:100%;background:var(--color-warning-surface, #fffbeb);border-bottom:1px solid var(--color-warning-border, #fcd34d);padding:var(--s-3) var(--s-4);display:flex;align-items:flex-start;flex-wrap:wrap;gap:var(--s-2) var(--s-4);font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--color-warning-ink, #92400e);box-sizing:border-box}.revoked-banner-text{flex:1 1 200px;line-height:var(--lh-reading);letter-spacing:var(--track-nudge)}.revoked-banner-link{background:none;border:none;padding:0;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--color-warning-ink, #92400e);text-decoration:underline;white-space:nowrap;flex-shrink:0}.revoked-banner-link:hover{opacity:.75}.email-item{display:grid;grid-template-columns:10px 1fr auto;gap:var(--s-3);align-items:flex-start;padding:11px var(--s-5);cursor:pointer;position:relative;background:transparent;font-family:var(--font-sans);border-radius:0;transition:background var(--dur-fast) var(--ease-out)}.email-item+.email-item{border-top:1px solid var(--ink-hairline)}.email-item:active,.email-item:hover{background:var(--neutral-100)}.email-item-dotcol{padding-top:6px;display:flex;justify-content:center}.email-item-dot{width:7px;height:7px;border-radius:50%;background:var(--alann-graphite)}.email-item.read .email-item-dot{background:transparent;border:1px solid var(--ink-hairline)}.email-item-body{min-width:0;display:flex;flex-direction:column;gap:2px}.email-item-line1{display:flex;align-items:baseline;gap:var(--s-2);min-width:0}.email-item-sender{font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-bold);letter-spacing:-.01em;line-height:1.2;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.email-item.read .email-item-sender{font-weight:var(--fw-medium);color:var(--ink-2)}.email-item-when{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);letter-spacing:.04em;line-height:1;color:var(--ink-muted);flex-shrink:0}.email-item.unread .email-item-when{color:var(--ink-2);font-weight:var(--fw-semibold)}.email-item-subject{font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.005em;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-item.read .email-item-subject{font-weight:var(--fw-regular);color:var(--ink)}.email-item-snippet{font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-regular);line-height:1.3;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-item-chev{align-self:center;color:var(--ink-muted);display:inline-flex;align-items:center;justify-content:center}.email-item-chev svg{width:10px;height:10px}.email-item-swipe{position:relative;overflow:hidden;background:var(--surface)}.email-item-swipe-reveal{position:absolute;inset:0;z-index:0;display:flex;align-items:center;gap:var(--s-2);padding-left:var(--s-5);background:var(--danger);color:#fff;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase}.email-item-swipe-reveal svg{width:13px;height:13px}.email-item.email-item-swipeable{position:relative;z-index:1;background:var(--surface);touch-action:pan-y}.email-item.email-item-swipeable:hover,.email-item.email-item-swipeable:active{background:var(--neutral-100)}.email-item.email-item-swipeable.swiping{background:var(--surface);will-change:transform}.app-container.web .email-item{display:grid;grid-template-columns:14px minmax(0,1fr);column-gap:14px;align-items:center;padding:7px 28px;height:36px;border-radius:0;border-left:2px solid transparent;transition:background .12s ease;background:var(--surface)}.app-container.web .email-item+.email-item{border-top:1px solid var(--ink-hairline)}.app-container.web .email-item:hover,.app-container.web .email-item:active{background:var(--ink-wash)}.app-container.web .email-item-dotcol{padding-top:0}.app-container.web .email-item-body{display:flex;align-items:baseline;gap:8px;min-width:0;flex-direction:row}.app-container.web .email-item-line1{display:contents}.app-container.web .email-item-sender{order:1;flex:0 0 200px;font-family:var(--font-sans);font-size:12.5px;font-weight:700;letter-spacing:-.01em;line-height:1.2;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.app-container.web .email-item.read .email-item-sender{font-weight:500;color:var(--ink-soft)}.app-container.web .email-item-subject{order:2;flex:0 1 auto;max-width:42%;font-family:var(--font-sans);font-size:12.5px;font-weight:600;letter-spacing:-.01em;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-container.web .email-item.read .email-item-subject{font-weight:500;color:var(--ink-soft)}.app-container.web .email-item-snippet{order:3;flex:1 1 0;min-width:0;font-family:var(--font-sans);font-size:12.5px;font-weight:400;line-height:1.3;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-container.web .email-item-snippet:before{content:"— ";color:var(--ink-muted);margin-right:2px}.app-container.web .email-item-when{order:4;margin-left:auto;flex:0 0 auto;text-align:right;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--ink-muted);white-space:nowrap}.app-container.web .email-item.unread .email-item-when{color:var(--ink-2);font-weight:600}.app-container.web .email-item-chev{display:none}.search-bar{display:flex;align-items:center;width:95%;margin:0 auto var(--s-4);background:var(--surface);border:var(--border-soft);border-radius:var(--r-md);transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);overflow:hidden}.search-bar:focus-within{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.search-field-select{flex-shrink:0;appearance:none;background:transparent;border:none;outline:none;padding:10px var(--s-2) 10px var(--s-3);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-soft);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%238A95A3' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:var(--s-6)}.search-field-select:hover{color:var(--ink)}.search-divider{width:1px;height:18px;background:var(--ink-hairline);flex-shrink:0}.search-input{flex:1;border:none;outline:none;background:transparent;padding:10px var(--s-3);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink);min-width:0}.search-input::placeholder{color:var(--ink-muted)}.search-input::-webkit-search-cancel-button{display:none}.search-clear{flex-shrink:0;background:none;border:none;box-shadow:none;cursor:pointer;padding:0 var(--s-3);font-family:var(--font-sans);font-size:var(--fs-caption);color:var(--ink-muted);line-height:1;border-radius:0;transition:color var(--dur-fast) var(--ease-out)}.search-clear:hover{background:transparent;color:var(--ink)}.mail-account-switcher{display:flex;flex-direction:column;gap:8px}.mail-account-switcher .acct-sr-only,.mail-account-switcher .acct-sr-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.mail-account-switcher .acct-switch{display:flex;align-items:center;gap:10px;width:100%;padding:6px;margin:0;border:0;border-radius:12px;background:transparent;box-shadow:none;color:inherit;text-align:left;font:inherit;letter-spacing:normal;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.mail-account-switcher .acct-switch:hover{background:var(--neutral-100)}.mail-account-switcher .acct-switch:active{transform:none}.mail-account-switcher .acct-who{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.mail-account-switcher .acct-switch .acct-nm{font-family:var(--font-sans);font-size:14px;font-weight:700;line-height:1.15;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account-switcher .acct-switch .acct-em{font-family:var(--font-mono);font-size:11px;font-weight:500;line-height:1.15;letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account-switcher .acct-chev{color:var(--ink-soft);display:inline-flex;flex:0 0 auto}.mail-account-switcher .acct-chev svg{width:14px;height:14px;transition:transform var(--dur-base) var(--ease-out)}.mail-account-switcher .acct-chev.open svg{transform:rotate(180deg)}.mail-account-switcher .acct-av{border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-weight:700;color:var(--ink-2);box-shadow:inset 0 1px #ffffffb3;object-fit:cover}.mail-account-switcher .acct-av-lg{width:36px;height:36px;flex:0 0 36px;font-size:12px}.mail-account-switcher .acct-av-sm{width:28px;height:28px;flex:0 0 28px;font-size:10px}.mail-account-switcher .acct-av.tint-0{background:linear-gradient(180deg,#dde1e6,#b7bec8)}.mail-account-switcher .acct-av.tint-1{background:linear-gradient(180deg,#f2e6cc,#d9c18a)}.mail-account-switcher .acct-av.tint-2{background:linear-gradient(180deg,#d8dce2,#a6adb7)}.mail-account-switcher .acct-av.unified{background:var(--alann-chrome);box-shadow:var(--shadow-chrome);color:var(--fg-on-graphite)}.mail-account-switcher .acct-av.unified svg{width:15px;height:15px}.mail-account-switcher .acct-list{max-height:60vh;overflow-y:auto}.mail-account-switcher .acct-list:empty{display:none}.mail-account-switcher .acct-list::-webkit-scrollbar{width:0}.mail-account-switcher .acct-list-inner{display:flex;flex-direction:column;gap:2px;padding:4px 2px 2px;animation:acct-list-in var(--dur-base) var(--ease-out)}@keyframes acct-list-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.mail-account-switcher .acct-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;width:100%;padding:8px;margin:0;border:0;border-radius:10px;background:transparent;box-shadow:none;color:inherit;text-align:left;font:inherit;letter-spacing:normal;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.mail-account-switcher button.acct-row:hover{background:var(--neutral-100)}.mail-account-switcher button.acct-row:active{transform:none}.mail-account-switcher .acct-row.on{background:var(--neutral-100)}.mail-account-switcher .acct-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.mail-account-switcher .acct-row .acct-nm{font-family:var(--font-sans);font-size:12.5px;font-weight:600;line-height:1.15;letter-spacing:-.005em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account-switcher .acct-row.on .acct-nm{font-weight:700}.mail-account-switcher .acct-row .acct-em{font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1.15;letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account-switcher .acct-ct{font-family:var(--font-mono);font-size:10px;font-weight:600;line-height:1;color:var(--ink-soft)}.mail-account-switcher .acct-row-unified{cursor:default;opacity:.75}.mail-account-switcher .acct-soon{font-family:var(--font-mono);font-size:9px;font-weight:700;line-height:1;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:var(--neutral-100);border:1px solid var(--ink-hairline);border-radius:999px;padding:3px 7px}.mail-account-switcher .acct-add{display:flex;align-items:center;gap:8px;width:100%;margin:4px 0 0;padding:9px 10px;border:1px dashed var(--ink-hairline);border-radius:10px;background:transparent;box-shadow:none;color:var(--ink-soft);text-align:left;font-family:var(--font-sans);font-size:11.5px;font-weight:600;letter-spacing:-.005em;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.mail-account-switcher .acct-add:hover{background:var(--neutral-100);color:var(--ink-2)}.mail-account-switcher .acct-add:active{transform:none}.mail-account-switcher .acct-add-ic{display:inline-flex}.mail-account-switcher .acct-add-ic svg{width:12px;height:12px}.mail-account-switcher .acct-error{margin:4px 6px 0;font-family:var(--font-sans);font-size:11px;line-height:1.3;color:var(--danger)}.mail-account-switcher .acct-bar{display:flex;align-items:center;gap:8px;padding:2px 6px}.mail-account-switcher .acct-dot{width:8px;height:8px;border-radius:999px;background:var(--alann-graphite);flex:0 0 8px}.mail-account-switcher .acct-bar-em{font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account-switcher .acct-spinner{width:14px;height:14px;border-radius:999px;border:2px solid var(--ink-hairline);border-top-color:var(--ink-soft);animation:acct-spin .7s linear infinite;flex:0 0 14px}@keyframes acct-spin{to{transform:rotate(360deg)}}.mail-account-switcher .acct-switch:focus,.mail-account-switcher .acct-row:focus,.mail-account-switcher .acct-add:focus{outline:none}.mail-account-switcher .acct-switch:focus-visible,.mail-account-switcher .acct-row:focus-visible,.mail-account-switcher .acct-add:focus-visible{outline:2px solid var(--alann-silver);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.mail-account-switcher .acct-chev svg{transition:none}.mail-account-switcher .acct-list-inner{animation:none}.mail-account-switcher .acct-spinner{animation-duration:1.2s}}.folder-drawer{position:absolute;inset:0;background:#0e111452;z-index:18;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}.folder-drawer.open{opacity:1;pointer-events:auto}.folder-drawer-card{position:absolute;left:0;top:0;bottom:0;width:78%;max-width:340px;background:var(--surface);transform:translate(-100%);transition:transform .26s var(--ease-out);display:flex;flex-direction:column;box-shadow:8px 0 32px #0e11142e;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.folder-drawer.open .folder-drawer-card{transform:translate(0)}.folder-drawer-head{padding:14px 10px 12px;border-bottom:1px solid var(--ink-hairline)}.folder-drawer-body{flex:1;overflow-y:auto;padding:6px 0 24px;scrollbar-width:thin}.folder-drawer-body::-webkit-scrollbar{width:0}.folder-drawer-section{padding:14px 20px 6px;font-family:var(--font-mono);font-size:9px;font-weight:600;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.folder-drawer .fldr{position:relative;display:grid;grid-template-columns:18px 1fr auto;gap:12px;align-items:center;padding:10px 18px;cursor:pointer;border:0;background:transparent;width:100%;text-align:left;box-shadow:none;margin:0;border-radius:0;font-family:inherit;color:inherit;transition:background var(--dur-fast) var(--ease-out)}.folder-drawer .fldr:hover{background:var(--neutral-100)}.folder-drawer .fldr:active{transform:none}.folder-drawer .fldr:focus,.folder-drawer .fldr:focus-visible{outline:none}.folder-drawer .fldr.on{background:var(--neutral-100)}.folder-drawer .fldr.on:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--alann-graphite);border-radius:0 2px 2px 0}.folder-drawer .fldr-ic{color:var(--ink-soft);display:flex;align-items:center;justify-content:center}.folder-drawer .fldr.on .fldr-ic{color:var(--ink-2)}.folder-drawer .fldr-ic svg{width:16px;height:16px}.folder-drawer .fldr-nm{font-family:var(--font-sans);font-size:13px;font-weight:600;line-height:1.2;letter-spacing:-.005em;color:var(--ink)}.folder-drawer .fldr.on .fldr-nm{color:var(--ink-2);font-weight:700}.folder-drawer .fldr-ct{font-family:var(--font-mono);font-size:11px;font-weight:500;line-height:1;letter-spacing:.04em;color:var(--ink-muted)}.folder-drawer .fldr.on .fldr-ct{color:var(--ink-2);font-weight:600}.folder-drawer .fldr .fldr-ct.alert{background:var(--alann-graphite);color:var(--fg-on-graphite);height:18px;min-width:18px;padding:0 6px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:10px;font-weight:700}.email-page{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;position:relative;height:calc(100vh - var(--bottom-nav-height));height:calc(100dvh - var(--bottom-nav-height));padding-top:env(safe-area-inset-top,0px)}.app-container.web .email-page{height:100dvh}.email-page-header{flex:0 0 auto;background:var(--surface)}.email-page-topbar{padding:var(--s-2) 11px 6px 11px;display:flex;align-items:center;gap:6px;background:transparent}.email-page-topbar-btn{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:transparent;color:var(--ink);box-shadow:none;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-fast) var(--ease-out)}.email-page-topbar-btn:hover{background:var(--ink-wash)}.email-page-topbar-btn:active{transform:scale(.96)}.email-page-topbar-btn svg{width:18px;height:18px}.email-page-topbar-title{flex:1;font-family:var(--font-display);font-size:15px;font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:1;color:var(--ink-2);text-align:center}.email-page-head{padding:8px 20px 6px;display:flex;align-items:flex-end;gap:10px}.email-page-head-title{display:block;text-align:left}.email-page-fld{display:inline-flex;align-items:flex-end;gap:8px;background:transparent;border:0;cursor:pointer;padding:0;margin:0;color:inherit;text-align:left;box-shadow:none}.email-page-fld:hover{background:transparent}.email-page-fld:hover .email-page-title{color:var(--ink)}.email-page-fld:focus,.email-page-fld:focus-visible{outline:none}.email-page-fld:active{transform:none}.email-page-fld-caret{width:18px;height:18px;border-radius:6px;background:var(--neutral-100);border:1px solid var(--ink-hairline);display:inline-flex;align-items:center;justify-content:center;color:var(--ink-soft);margin-bottom:4px;flex:0 0 18px}.email-page-fld-caret svg{width:9px;height:9px}.email-page-eyebrow{display:block;font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:4px}.email-page-head .email-page-title{margin:0;font-family:var(--font-display);font-weight:800;font-size:26px;line-height:1;letter-spacing:-.035em;color:var(--ink-2)}.email-page-meta{margin-left:auto;align-self:flex-end;font-family:var(--font-mono);font-size:11px;font-weight:500;line-height:1;letter-spacing:.04em;color:var(--ink-muted);padding-bottom:4px;white-space:nowrap}.email-list{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--s-4)}.email-loading,.email-empty,.email-error,.email-loading-more,.email-list-end{padding:var(--s-6);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);color:var(--ink-soft);text-align:center}.scroll-sentinel{height:1px}.compose-fab{position:fixed;right:var(--s-4);bottom:calc(var(--bottom-nav-height) + var(--s-5));height:48px;padding:0 var(--s-4) 0 14px;display:inline-flex;align-items:center;gap:var(--s-2);border:0;border-radius:var(--r-pill);background:var(--ink);color:var(--fg-on-graphite);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.005em;cursor:pointer;box-shadow:0 10px 24px #0e111440;z-index:1100;transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.compose-fab:hover{background:var(--alann-graphite-mid)}.compose-fab:active{transform:scale(.96)}.compose-fab svg{width:14px;height:14px}.email-page.drawer-open .compose-fab{opacity:0;pointer-events:none}@media(max-width:480px){.compose-label{display:none}.compose-fab{width:48px;height:48px;justify-content:center;border-radius:50%;padding:0}}.email-search-overlay{position:absolute;inset:0;background:var(--surface);display:flex;flex-direction:column;transform:translateY(100%);transition:transform var(--dur-slow) var(--ease-out);z-index:14;padding-top:calc(env(safe-area-inset-top,0px) + var(--s-2));pointer-events:none}.email-search-overlay.open{transform:translateY(0);pointer-events:auto}.email-search-overlay-top{padding:var(--s-2) var(--s-3) var(--s-3);display:flex;align-items:center;gap:var(--s-2)}.email-search-overlay-top>:first-child{flex:1;margin:0}.email-search-cancel{background:transparent;border:0;box-shadow:none;color:var(--ink);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.005em;cursor:pointer;padding:0 var(--s-1);border-radius:var(--r-sm);transition:background var(--dur-fast) var(--ease-out)}.email-search-cancel:hover{background:var(--ink-wash)}.email-search-results{flex:1;overflow-y:auto;padding-bottom:var(--s-4)}.email-page-topbar-desktop{display:none}@media(min-width:768px){.app-container.web .email-page{height:100vh;height:100dvh;background:var(--surface)}.app-container.web .email-page-topbar-mobile{display:none}.app-container.web .email-page-topbar-desktop{display:inline-flex}.app-container.web .email-page-topbar{padding:14px 24px;gap:12px;border-bottom:1px solid var(--ink-hairline);background:var(--canvas)}.email-page-crumbs{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;color:var(--ink-soft)}.email-page-crumbs-sep{color:var(--ink-muted)}.email-page-crumbs-now{color:var(--ink);font-weight:600}.email-page-search-field{margin-left:16px;flex:1;max-width:420px;min-width:0;display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border-radius:999px;background:var(--surface);border:1px solid var(--ink-hairline);color:var(--ink-muted);font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;cursor:pointer;text-align:left;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.email-page-search-field:hover{background:var(--neutral-100);border-color:#0e11142e}.email-page-search-field svg{width:14px;height:14px;flex-shrink:0}.email-page-search-field span:first-of-type{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-page-search-kbd{display:inline-flex;align-items:center;justify-content:center;height:18px;padding:0 5px;border-radius:4px;background:var(--ink-wash);color:var(--ink-muted);font-family:var(--font-mono);font-size:10px;font-weight:600;flex-shrink:0}.email-page-topbar-spacer{flex:0 0 auto;min-width:4px}.app-container.web .email-page-head{padding:20px 28px 10px;align-items:center;background:var(--surface)}.app-container.web .email-page-head .email-page-eyebrow{display:none}.app-container.web .email-page-head .email-page-title{font-size:26px;letter-spacing:-.03em}.app-container.web .email-page-fld-caret{background:var(--canvas);margin-bottom:0;align-self:center}.app-container.web .email-page-fld{align-items:center}.app-container.web .email-page-meta{margin-left:12px;padding-bottom:0;align-self:center}.app-container.web .email-page-head .email-page-meta{margin-left:12px}.email-page-compose-pill{margin-left:auto;height:28px;padding:0 12px 0 10px;border-radius:999px;border:0;cursor:pointer;background:var(--ink);color:var(--fg-on-graphite);font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:6px;flex-shrink:0;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.email-page-compose-pill:hover{background:var(--alann-graphite-mid)}.email-page-compose-pill:active{transform:scale(.97)}.email-page-compose-pill svg{width:11px;height:11px}.app-container.web .email-list{padding-bottom:20px;background:var(--surface)}.app-container.web .email-list::-webkit-scrollbar{width:10px}.app-container.web .email-list::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:999px;border:3px solid var(--surface)}.app-container.web .compose-fab{display:none}}.event-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px calc(76px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.event-modal-sheet{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:calc(100dvh - 124px - env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:24px;position:relative;font-family:inherit}.event-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#666;padding:0}.event-modal-close:hover{color:#111}.event-modal-title{margin:0 0 16px;font-size:20px;font-weight:700;padding-right:32px}.event-modal-loading,.event-modal-error{padding:16px 0;color:#666}.event-modal-actions{display:flex;gap:8px;margin-top:24px}.event-section{margin-top:var(--s-5);font-family:var(--font-sans);color:var(--ink)}.guest-list{list-style:none;padding:0;margin:0}.guest-item{padding:var(--s-2) 0;border-bottom:var(--border-hair)}.guest-info{display:block;justify-content:space-between;align-items:center}.guest-name{font-family:var(--font-sans);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink)}.guest-status{font-family:var(--font-sans);font-size:var(--fs-caption);letter-spacing:var(--track-nudge);text-transform:capitalize;color:var(--ink-soft)}.status-accepted{color:var(--success)}.status-declined{color:var(--danger)}.status-tentative{color:var(--warning)}.status-needsAction{color:var(--ink-muted)}.self-guest{font-weight:var(--fw-semibold)}.edit-modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px calc(76px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.edit-modal-sheet{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:calc(100dvh - 124px - env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;overflow:hidden;position:relative;font-family:inherit}.edit-modal-header{flex-shrink:0;padding:24px 24px 12px;position:relative}.edit-modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 24px 8px}.edit-modal-footer{flex-shrink:0;padding:12px 24px 24px;border-top:1px solid #eee;background:#fff}.edit-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#666;padding:0}.edit-modal-close:hover{color:#111}.edit-modal-title{margin:0;font-size:20px;font-weight:700;padding-right:32px}.edit-modal-loading{padding:16px 0;color:#666}.edit-event-container{max-width:420px;margin:auto;padding:var(--s-5);background:var(--canvas);color:var(--ink);font-family:var(--font-sans)}.edit-event-container h2{text-align:center;margin-bottom:var(--s-4);font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.edit-message{text-align:center;font-family:var(--font-sans);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink);margin-bottom:var(--s-4)}.edit-form{display:flex;flex-direction:column;gap:var(--s-3)}.edit-form input,.edit-form textarea{padding:10px var(--s-3);font-size:16px!important;font-family:var(--font-sans);letter-spacing:var(--track-nudge);border-radius:var(--r-sm);border:var(--border-soft);background:var(--surface);color:var(--ink);outline:none;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.edit-form input:focus,.edit-form textarea:focus{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.edit-event-save-btn{margin-top:var(--s-4);padding:12px var(--s-5);background:var(--alann-chrome);color:var(--fg-on-graphite);border:none;border-radius:var(--r-pill);box-shadow:var(--shadow-chrome);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer;transition:background var(--dur-base) var(--ease-out)}.edit-event-save-btn:hover{background:var(--alann-chrome-hi)}.edit-event-back-btn{margin-top:var(--s-3);width:100%;padding:12px var(--s-5);background:transparent;color:var(--ink);border:var(--border-soft);border-radius:var(--r-pill);box-shadow:none;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.edit-event-back-btn:hover{background:var(--ink-wash)}.edit-calendar-container{max-width:500px;margin:auto;padding:var(--s-5)}.form-row{margin-bottom:var(--s-4);display:flex;flex-direction:column}.form-row label{font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-soft);margin-bottom:var(--s-2)}.form-row input,.form-row textarea{padding:var(--s-2) var(--s-3);border:var(--border-soft);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-family:var(--font-sans);letter-spacing:var(--track-nudge);font-size:16px!important;outline:none;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.form-row input:focus,.form-row textarea:focus{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}[contenteditable=true]{font-size:16px!important}.save-button{padding:10px var(--s-4);background:var(--alann-chrome);color:var(--fg-on-graphite);border:none;border-radius:var(--r-pill);box-shadow:var(--shadow-chrome);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer}.save-button:hover{background:var(--alann-chrome-hi)}.error-text{color:var(--danger);font-family:var(--font-sans);font-size:var(--fs-body-sm)}.success-text{color:var(--success);font-family:var(--font-sans);font-size:var(--fs-body-sm)}.edit-btn-primary,.edit-btn-secondary{display:inline-block;width:100%;padding:12px var(--s-4);margin-top:var(--s-3);border-radius:var(--r-pill);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer;border:none;transition:background var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}.edit-btn-primary{background:var(--alann-chrome);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome)}.edit-btn-primary:hover{background:var(--alann-chrome-hi)}.edit-btn-primary:disabled{opacity:.6;cursor:not-allowed}.edit-btn-secondary{background:transparent;color:var(--ink);border:var(--border-soft);box-shadow:none}.edit-btn-secondary:hover{background:var(--ink-wash)}.prefilled-notice{background:var(--neutral-100);border:var(--border-soft);border-radius:var(--r-sm);padding:10px 14px;margin-bottom:var(--s-3);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);color:var(--ink)}.field-prefilled{border:2px solid var(--alann-silver)!important;background:var(--neutral-100)!important}.cce-scrim{position:fixed;inset:0;z-index:1200;display:flex;align-items:flex-end;justify-content:center;background:#0e111457;animation:cce-scrim-in var(--dur-base) var(--ease-out) both}@keyframes cce-scrim-in{0%{opacity:0}to{opacity:1}}.cce-sheet{width:100%;max-width:460px;max-height:calc(100dvh - 48px - env(safe-area-inset-top,0px));display:flex;flex-direction:column;background:var(--surface);border-radius:26px 26px 0 0;box-shadow:0 -20px 56px #0e11143d;padding-bottom:env(safe-area-inset-bottom,0px);font-family:var(--font-sans);color:var(--ink);animation:cce-sheet-in var(--dur-slow) var(--ease-out) both}@keyframes cce-sheet-in{0%{transform:translateY(103%)}to{transform:translateY(0)}}.cce-grab{flex:0 0 auto;width:38px;height:4px;border-radius:var(--r-pill);background:var(--ink-hairline);margin:9px auto 0}.cce-sheet-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px 6px}.cce-sh-t{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.cce-sheet-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 18px 8px}.cce-sh-x,.cce-disc,.cce-switch,.cce-chip,.cce-cbtn,.cce-color,.cce-btn,.guest-chip-remove{font:inherit;cursor:pointer;border:0;background:transparent;box-shadow:none;border-radius:var(--r-pill);padding:0;color:inherit;letter-spacing:normal;transition:none}.cce-sh-x{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-muted)}.cce-sh-x:hover{background:var(--ink-wash);color:var(--ink)}.cce-f-title{width:100%;border:0;outline:0;background:transparent;padding:6px 0 12px;font-family:var(--font-display);font-weight:800;font-size:22px;line-height:1.15;letter-spacing:-.03em;color:var(--ink-2)}.cce-f-title::placeholder{color:var(--ink-muted);opacity:.75}.cce-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid var(--ink-hairline)}.cce-ico{flex:0 0 18px;width:18px;height:18px;color:var(--ink-muted);margin-top:2px}.cce-stack{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.cce-k{font-family:var(--font-sans);font-size:11px;color:var(--ink-muted)}.cce-v{width:100%;border:0;outline:0;background:transparent;padding:0;font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-semibold);line-height:1.3;letter-spacing:-.015em;color:var(--ink-2)}.cce-v::placeholder{color:var(--ink-muted);font-weight:var(--fw-medium)}.cce-notes{resize:vertical;min-height:22px}.cce-when{position:relative;display:flex;flex-direction:column;gap:11px}.cce-when:before{content:"";position:absolute;left:4.25px;top:16px;bottom:16px;width:1.5px;background:var(--ink-hairline)}.cce-wd{flex:0 0 10px;width:10px;height:10px;border-radius:var(--r-pill);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--ink-hairline);position:relative;z-index:1}.cce-wd-on{background:var(--ink-2);box-shadow:none}.cce-when-line{display:flex;align-items:center;gap:7px;min-width:0}.cce-sep{flex:0 0 auto;font-size:13px;color:var(--ink-muted)}.cce-dt{border:0;outline:0;background:transparent;padding:2px 0;font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-semibold);letter-spacing:-.02em;color:var(--ink-2);border-bottom:1.5px solid transparent;min-width:0}.cce-dt:hover{border-bottom-color:var(--ink-hairline)}.cce-dt:focus{border-bottom-color:var(--ink-2)}.cce-tm{flex:0 0 auto}.cce-dur{margin-left:auto;font-family:var(--font-sans);font-size:11px;color:var(--ink-muted);white-space:nowrap}.cce-when-allday .cce-when-line{flex-wrap:nowrap}.cce-chips{display:flex;gap:6px;flex-wrap:wrap}.cce-chip{height:30px;padding:0 12px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--neutral-100);font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);letter-spacing:-.005em;color:var(--ink-soft);display:inline-flex;align-items:center}.cce-chip:hover{background:var(--surface-alt);color:var(--ink)}.cce-chip-on{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);border-color:transparent;box-shadow:var(--shadow-chrome)}.cce-disc{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;max-width:100%}.cce-dchev{width:11px;height:11px;flex:0 0 11px;color:var(--ink-muted);transition:transform var(--dur-fast) var(--ease-out)}.cce-disc[aria-expanded=true] .cce-dchev{transform:rotate(-90deg)}.cce-disc-l{font-family:var(--font-sans);font-size:11px;color:var(--ink-soft);border-bottom:1.5px solid transparent}.cce-disc:hover .cce-disc-l{color:var(--ink);border-bottom-color:var(--ink-hairline)}.cce-more{display:flex;flex-direction:column;gap:11px;padding-top:4px}.cce-switch-row,.cce-aa{display:flex;align-items:center;justify-content:space-between;gap:10px}.cce-sl{font-family:var(--font-sans);font-size:14px;font-weight:var(--fw-semibold);letter-spacing:-.015em;color:var(--ink-2)}.cce-mline{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.cce-ml-k{flex:0 0 auto;font-family:var(--font-sans);font-size:11px;color:var(--ink-muted)}.cce-switch{flex:0 0 40px;width:40px;height:24px;border-radius:var(--r-pill);background:var(--ink-hairline);position:relative;transition:background var(--dur-fast) var(--ease-out)}.cce-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:var(--r-pill);background:var(--surface);box-shadow:0 1px 3px #0e111440;transition:transform var(--dur-fast) var(--ease-spring)}.cce-switch-on{background:var(--alann-chrome-hi);box-shadow:var(--shadow-chrome)}.cce-switch-on:after{transform:translate(16px)}.cce-sel{height:32px;max-width:100%;padding:0 8px;border-radius:var(--r-md);border:1px solid var(--ink-hairline);background:var(--neutral-100);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.01em;color:var(--ink-2);outline:0}.cce-mline .cce-sel{border:0;background:transparent;height:auto;padding:0 2px 0 0;max-width:68%;text-align:right;text-align-last:right;color:var(--ink-2)}.cce-conf{display:flex;flex-direction:column;gap:7px}.cce-conf-row{display:flex;gap:6px;flex-wrap:wrap}.cce-conf-note{font-family:var(--font-sans);font-size:11px;line-height:1.35;color:var(--ink-muted)}.cce-cbtn{position:relative;display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--ink-hairline);background:var(--neutral-100);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.01em;color:var(--ink-2)}.cce-cbtn:not(.cce-cbtn-off):not(.cce-cbtn-on):hover{background:var(--surface-alt)}.cce-cg{flex:0 0 16px;width:16px;height:16px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:8px;font-weight:var(--fw-bold);background:var(--ink-2);color:var(--fg-on-graphite)}.cce-cbtn-on{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);border-color:transparent;box-shadow:var(--shadow-chrome)}.cce-cbtn-on .cce-cg{background:var(--alann-silver-tint);color:var(--ink-2)}.cce-cbtn-off{opacity:.42;cursor:default}.cce-cbtn-off .cce-cg{background:var(--ink-muted)}.cce-aa-s{flex:1;min-width:0;font-family:var(--font-sans);font-size:12px;line-height:1.45;color:var(--ink-soft)}.cce-cal-pick{display:flex;align-items:center;gap:6px;min-width:0}.cce-cal-sel{flex:1;min-width:0}.cce-cal-single{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cce-color{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--ink-hairline);background:var(--neutral-100)}.cce-color:hover{background:var(--surface-alt)}.cce-color-sw{width:11px;height:11px;border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px #0e11141f}.cce-color-name{font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);color:var(--ink-2)}.cce-sheet-foot{flex:0 0 auto;padding:12px 18px 18px;border-top:1px solid var(--ink-hairline);background:var(--surface)}.cce-foot-error{margin-bottom:var(--s-2)}.cce-foot-actions{display:flex;gap:8px}.cce-btn{flex:1;height:42px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--ink-2);color:var(--ink);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.005em}.cce-btn:hover{background:var(--ink-wash)}.cce-btn-primary{flex:1.6;background:var(--alann-chrome-hi);color:var(--fg-on-graphite);border-color:transparent;box-shadow:var(--shadow-chrome)}.cce-btn-primary:hover{filter:brightness(1.06);background:var(--alann-chrome-hi)}.cce-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.cce-notice{font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--ink-soft);margin:8px 0}.event-error{color:var(--danger);font-family:var(--font-sans);font-size:var(--fs-body-sm);margin:8px 0}.cce-scrim .btn-link{border:0;background:transparent;box-shadow:none;border-radius:0;padding:0;color:var(--ink-2);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body-sm);letter-spacing:normal;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.guest-chips-container{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:36px;border:1px solid var(--ink-hairline);border-radius:var(--r-md);background:var(--neutral-100);padding:6px 8px;cursor:text}.guest-chips-container:focus-within{border-color:var(--ink-2);box-shadow:0 0 0 3px #0e111414}.guest-chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--ink-hairline);border-radius:var(--r-pill);padding:3px 8px 3px 4px;font-family:var(--font-sans);font-size:12px;font-weight:var(--fw-semibold);letter-spacing:-.01em;color:var(--ink-2);max-width:240px}.guest-chip-avatar{width:22px;height:22px;border-radius:var(--r-pill);color:var(--fg-on-graphite);font-family:var(--font-mono);font-size:9px;font-weight:var(--fw-bold);display:flex;align-items:center;justify-content:center;flex-shrink:0}.guest-chip-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-status-dot{width:8px;height:8px;border-radius:var(--r-pill);flex-shrink:0}.guest-status-dot--free{background:var(--success)}.guest-status-dot--busy{background:var(--danger)}.guest-status-dot--unknown{background:var(--neutral-300)}.guest-status-dot--loading{background:var(--neutral-300);animation:cce-fb-pulse 1s ease-in-out infinite}@keyframes cce-fb-pulse{0%,to{opacity:1}50%{opacity:.3}}.guest-chip-remove{margin-left:2px;color:var(--ink-muted);font-size:16px;line-height:1;display:flex;align-items:center;flex-shrink:0}.guest-chip-remove:hover{color:var(--danger)}.guest-input-field{border:none;outline:none;font-size:16px;flex:1;min-width:120px;padding:2px 0;background:transparent;color:var(--ink);font-family:var(--font-sans)}.cce-disc:hover,.guest-chip-remove:hover{background:transparent}.cce-switch:hover{background:var(--ink-hairline)}.cce-switch-on:hover{background:var(--alann-chrome-hi)}.cce-chip-on:hover{background:var(--alann-chrome-hi);color:var(--fg-on-graphite)}.cce-cbtn-off:hover{background:var(--neutral-100)}@media(min-width:768px){.cce-sheet{border-radius:26px;margin-bottom:24px;max-height:min(760px,calc(100dvh - 96px))}}:root{--slot-h: 52px}.calendar{width:100%;text-align:left;display:flex;flex-direction:column;height:calc(100dvh - var(--bottom-nav-height));overflow:hidden;background:var(--surface);color:var(--ink);font-family:var(--font-sans);padding-top:env(safe-area-inset-top,0px)}.app-container.web .calendar{height:100dvh}.calendar-fab{position:fixed;right:16px;bottom:calc(var(--bottom-nav-height) + 16px);z-index:900;width:52px;height:52px;padding:0;border:0;border-radius:var(--r-pill);background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);display:flex;align-items:center;justify-content:center;cursor:pointer}.calendar-fab:hover{filter:brightness(1.07);background:var(--alann-chrome-hi)}.calendar-fab:active{transform:scale(.96)}.calendar .calendar-topbar{padding:8px 11px 6px;display:flex;align-items:center;gap:6px;background:transparent;flex-shrink:0}.calendar .calendar-topbar-btn{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:transparent;color:var(--ink);box-shadow:none;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-fast) var(--ease-out)}.calendar .calendar-topbar-btn:hover{background:var(--ink-wash)}.calendar .calendar-topbar-btn:focus,.calendar .calendar-topbar-btn:focus-visible{outline:none}.calendar .calendar-topbar-btn:active{transform:scale(.96)}.calendar .calendar-topbar-btn svg{width:18px;height:18px}.calendar .calendar-topbar-title{flex:1;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--ink-2);text-align:center;margin:0}.calendar .cal-head{padding:8px 16px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}.calendar .month-trigger{background:transparent;border:0;box-shadow:none;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;gap:6px;color:inherit;text-align:left;min-width:0;transition:none}.calendar .month-trigger:hover{background:transparent}.calendar .month-trigger:focus,.calendar .month-trigger:focus-visible{outline:none}.calendar .month-trigger:active{transform:none}.calendar .cal-month{margin:0;padding:0;font-family:var(--font-display);font-weight:800;font-size:26px;line-height:1;letter-spacing:-.035em;color:var(--ink-2);white-space:nowrap;text-align:left}.calendar .cal-month .year{font-family:var(--font-display);color:var(--ink-muted);font-weight:500;margin-left:4px}.calendar .month-trigger .caret{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:6px;color:var(--ink-muted);transition:transform var(--dur-base) var(--ease-out)}.calendar .month-trigger.open .caret{transform:rotate(180deg);color:var(--ink)}.calendar .month-trigger:hover .caret{background:var(--ink-wash);color:var(--ink)}.calendar .head-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.calendar .today-btn{display:inline-flex;align-items:center;justify-content:center;height:28px;min-width:28px;padding:0 4px;background:var(--alann-chrome-hi);border:0;border-radius:999px;color:var(--fg-on-graphite);cursor:pointer;box-shadow:var(--shadow-chrome);transition:filter var(--dur-base) var(--ease-out)}.calendar .today-btn:hover{filter:brightness(1.06);background:var(--alann-chrome-hi)}.calendar .today-btn:focus,.calendar .today-btn:focus-visible{outline:none}.calendar .today-btn .tnum{font-family:var(--font-display);font-weight:700;font-size:13px;line-height:1;letter-spacing:-.02em;padding:0 6px;color:var(--fg-on-graphite)}.calendar .chev{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;color:var(--ink-muted);background:transparent;border:0;box-shadow:none;padding:0;margin:0;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.calendar .chev:hover{background:var(--ink-wash);color:var(--ink)}.calendar .chev:focus,.calendar .chev:focus-visible{outline:none}.calendar .chev:active{transform:none}.calendar .view-picker{position:relative;margin-left:4px}.calendar .vp-trigger{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 6px 0 10px;background:var(--neutral-100);border:1px solid var(--ink-hairline);border-radius:999px;cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:600;line-height:1;letter-spacing:-.01em;color:var(--ink-2);box-shadow:0 1px 2px #0e11140a;margin:0}.calendar .vp-trigger:hover{background:var(--neutral-100)}.calendar .vp-trigger:focus,.calendar .vp-trigger:focus-visible{outline:none}.calendar .vp-trigger:active{transform:none}.calendar .vp-trigger .vp-caret{display:inline-flex;align-items:center;justify-content:center;color:var(--ink-muted);transition:transform var(--dur-base) var(--ease-out)}.calendar .vp-trigger.open .vp-caret{transform:rotate(180deg);color:var(--ink)}.calendar .vp-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:148px;padding:4px;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:12px;box-shadow:0 14px 40px #0e11142e,0 2px 6px #0e11140f;z-index:30;transform-origin:top right;animation:vpIn .14s var(--ease-out)}@keyframes vpIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.calendar .vp-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:0;background:transparent;box-shadow:none;cursor:pointer;border-radius:8px;font-family:var(--font-sans);font-size:13px;font-weight:500;line-height:1;letter-spacing:-.01em;color:var(--ink-2);text-align:left;margin:0;transition:background var(--dur-fast) var(--ease-out)}.calendar .vp-item:hover{background:var(--ink-wash)}.calendar .vp-item:focus,.calendar .vp-item:focus-visible{outline:none}.calendar .vp-item:active{transform:none}.calendar .vp-item .vp-check{opacity:0;color:var(--ink-2)}.calendar .vp-item.on{background:var(--surface-alt);font-weight:600}.calendar .vp-item.on .vp-check{opacity:1}.calendar .vp-item .vp-key{font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.08em;color:var(--ink-muted);text-transform:uppercase;margin-left:auto}.calendar .view-panel{flex:1;min-height:0;display:flex;flex-direction:column}.calendar .view-panel.hidden{display:none}.calendar .date-strip{margin:0 12px 12px;padding:8px 6px 6px;background:var(--neutral-100);border:1px solid var(--ink-hairline);border-radius:14px;flex-shrink:0;touch-action:pan-y}.calendar .ds-head{display:grid;grid-template-columns:repeat(7,1fr);padding:0 0 6px}.calendar .ds-head span{text-align:center;font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.calendar .ds-head span.weekend{color:var(--ink-muted);opacity:.65}.calendar .ds-rows{display:flex;flex-direction:column;gap:2px}.calendar .ds-row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;overflow:hidden;max-height:40px;opacity:1;transition:max-height .32s cubic-bezier(.2,.7,.2,1),opacity .22s ease,margin .28s ease}.calendar .date-strip:not(.expanded) .ds-row.other{max-height:0;opacity:0;margin:0;pointer-events:none}.calendar .day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;height:36px;cursor:pointer;border-radius:10px;position:relative;border:0;background:transparent;box-shadow:none;padding:0;margin:0;color:var(--ink-2);font-family:var(--font-display);transition:none}.calendar .day:hover{background:transparent}.calendar .day:focus,.calendar .day:focus-visible{outline:none}.calendar .day:active{transform:none}.calendar .day .n{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:14px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--ink-2)}.calendar .day.muted .n{color:var(--ink-muted);opacity:.55}.calendar .day.weekend .n{color:var(--ink-muted)}.calendar .day:hover .n{background:var(--ink-wash)}.calendar .day.today .n{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:none}.calendar .day.today:hover .n{background:var(--alann-chrome-hi)}.calendar .day.selected:not(.today) .n{box-shadow:inset 0 0 0 1.5px var(--ink-2)}.calendar .allday-chip{margin:0 16px 8px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:var(--neutral-100);border:1px solid var(--ink-hairline);font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.1;letter-spacing:-.005em;color:var(--ink-soft);flex-shrink:0}.calendar .allday-chip .dot{width:6px;height:6px;border-radius:999px;background:var(--alann-silver);flex-shrink:0}.calendar .allday-chip .k{font-family:var(--font-sans);font-weight:700;color:var(--ink)}.calendar .t-allday{display:grid;grid-template-columns:44px 1fr;gap:8px;padding:4px 0 8px;border-bottom:1px solid var(--ink-hairline);margin-bottom:4px}.calendar .t-allday-lbl{text-align:right;padding-top:6px;font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;overflow:hidden}.calendar .t-allday-track{display:flex;flex-direction:column;gap:4px;padding:2px 4px}.calendar .ad-chip{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--ink-hairline);cursor:pointer;border:0;margin:0;width:100%;text-align:left}.calendar .ad-chip:hover{background:var(--surface-alt);filter:brightness(.98)}.calendar .ad-chip:focus,.calendar .ad-chip:focus-visible{outline:none}.calendar .ad-chip:active{transform:none}.calendar .ad-chip .ad-rail{width:3px;align-self:stretch;border-radius:999px;background:var(--evt-rail, var(--alann-silver))}.calendar .ad-chip .ad-t{flex:1;min-width:0;font-family:var(--font-sans);font-size:12px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar .ad-chip .ad-s{font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);flex-shrink:0}.calendar .mg-allday{display:grid;padding:0 0 6px;border-bottom:1px solid var(--ink-hairline);margin-bottom:6px}.calendar .mg-allday-lbl{text-align:right;padding-right:6px;font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;align-self:center}.calendar .mg-allday-cell{display:flex;flex-direction:column;gap:2px;padding:0 2px;min-height:18px;min-width:0;overflow:hidden}.calendar .mg-ad-chip{font-family:var(--font-sans);font-size:9px;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:var(--ink-2);background:var(--surface-alt);border:0;border-radius:4px;padding:3px 4px;box-shadow:inset 0 0 0 1px var(--ink-hairline);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block;cursor:pointer;margin:0;text-align:left}.calendar .mg-ad-chip:hover{filter:brightness(.97)}.calendar .mg-ad-chip:focus,.calendar .mg-ad-chip:focus-visible{outline:none}.calendar .mg-ad-chip:active{transform:none}.calendar .timeline{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 12px;scrollbar-width:thin}.calendar .timeline::-webkit-scrollbar{width:0}.calendar .t-row{display:grid;grid-template-columns:44px 1fr;gap:8px;position:relative;min-height:var(--slot-h)}.calendar .t-hour{text-align:right;padding-top:2px;font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.06em;color:var(--ink-muted);text-transform:uppercase;transform:translateY(-4px)}.calendar .t-line{border-top:1px solid var(--ink-hairline);position:relative;padding:4px 0 4px 4px;min-height:var(--slot-h)}.calendar .t-row.first .t-line{border-top-color:transparent}.calendar .evt{margin:4px 4px 4px 8px;border-radius:12px;padding:10px 12px 10px 14px;display:flex;flex-direction:column;gap:2px;position:relative;cursor:pointer;box-shadow:inset 0 0 0 1px var(--ink-hairline);background:var(--neutral-100);-webkit-user-select:none;user-select:none}.calendar .evt+.evt{margin-top:6px}.calendar .evt.dragging{opacity:.4}.calendar .evt.guest-overlay,.calendar .mg-evt.guest-overlay,.calendar .mv-pill.guest-overlay,.calendar .ad-chip.guest-overlay,.calendar .mg-ad-chip.guest-overlay{opacity:.55;cursor:default;pointer-events:none}.calendar .evt .rail{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:999px;background:var(--evt-rail, var(--alann-silver));transform:translate(-2px)}.calendar .evt .time{font-family:var(--font-mono);font-size:10px;font-weight:600;line-height:1;letter-spacing:.04em;color:var(--ink-muted);margin-bottom:4px}.calendar .evt .t{display:block;font-family:var(--font-sans);font-size:13px;font-weight:600;line-height:1.25;letter-spacing:-.015em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar .evt.needs-action{background:transparent;box-shadow:inset 0 0 0 1px var(--alann-silver)}.calendar .evt.needs-action .t{color:var(--alann-silver);font-weight:600}.calendar .evt.tentative{background:repeating-linear-gradient(45deg,rgba(14,17,20,.06),rgba(14,17,20,.06) 3px,transparent 3px,transparent 6px),var(--neutral-100)}.calendar .evt.declined{display:none}.calendar .now-line{position:absolute;left:-52px;right:4px;display:flex;align-items:center;gap:6px;pointer-events:none;z-index:3}.calendar .now-line .lab{font-family:var(--font-mono);font-size:9px;font-weight:600;line-height:1;color:var(--alann-graphite);background:var(--surface);padding:2px 5px;border-radius:4px}.calendar .now-line .dot{width:7px;height:7px;border-radius:999px;background:var(--alann-graphite);box-shadow:0 0 0 3px var(--surface)}.calendar .now-line .line{flex:1;height:1.5px;background:var(--alann-graphite)}.calendar .multi{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 12px;scrollbar-width:thin;position:relative}.calendar .multi::-webkit-scrollbar{width:0}.calendar .multi-sticky-header{position:sticky;top:0;z-index:4;background:var(--surface)}.calendar .multi-head{padding:2px 0 10px;margin-bottom:2px;display:grid}.calendar .multi-head:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--ink-hairline) 14%,var(--ink-hairline) 86%,transparent)}.calendar .multi-head .col{display:flex;flex-direction:column;align-items:center;gap:2px;padding:2px 0}.calendar .multi-head .col .dow{font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.calendar .multi-head .col .dn{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--ink-2)}.calendar .multi-head .col.weekend .dn{color:var(--ink-muted)}.calendar .multi-head .col.weekend .dow{opacity:.65}.calendar .multi-head .col.today .dn{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome)}.calendar .multi-grid{display:grid;position:relative}.calendar .multi-grid>.gutter{display:flex;flex-direction:column}.calendar .mg-hour{height:var(--slot-h);text-align:right;padding-right:6px;padding-top:0;font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.06em;color:var(--ink-muted);text-transform:uppercase;transform:translateY(-4px);position:relative}.calendar .multi-col{position:relative;border-left:1px solid var(--ink-hairline);display:flex;flex-direction:column}.calendar .multi-col.first{border-left-color:transparent}.calendar .mg-line{height:var(--slot-h);border-top:1px solid var(--ink-hairline);position:relative;box-sizing:border-box}.calendar .mg-line:first-child{border-top-color:transparent}.calendar .mg-evt{position:absolute;left:3px;right:3px;border-radius:8px;padding:5px 7px;background:var(--neutral-100);box-shadow:inset 0 0 0 1px var(--ink-hairline);overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:2}.calendar .mg-evt.dragging{opacity:.4}.calendar .mg-evt .mt{font-family:var(--font-sans);font-size:10px;font-weight:600;line-height:1.15;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar .mg-evt .mtime{font-family:var(--font-mono);font-size:8px;font-weight:500;line-height:1;letter-spacing:.04em;color:var(--ink-muted);margin-top:2px}.calendar .mg-evt.needs-action{background:transparent;box-shadow:inset 0 0 0 1px var(--alann-silver)}.calendar .mg-evt.needs-action .mt{color:var(--alann-silver)}.calendar .mg-evt.tentative{background:repeating-linear-gradient(45deg,rgba(14,17,20,.06),rgba(14,17,20,.06) 3px,transparent 3px,transparent 6px),var(--neutral-100)}.calendar .mg-evt.declined{display:none}.calendar .mg-now{position:absolute;left:0;right:0;height:0;border-top:1.5px solid var(--alann-graphite);z-index:3;pointer-events:none}.calendar .mg-now:before{content:"";position:absolute;left:-3px;top:-4px;width:7px;height:7px;border-radius:999px;background:var(--alann-graphite)}.calendar .month-view{padding:0 12px 12px}.calendar .mv-head{display:grid;grid-template-columns:repeat(7,1fr);padding:0 0 6px;flex-shrink:0}.calendar .mv-head span{text-align:center;font-family:var(--font-mono);font-size:9px;font-weight:500;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.calendar .mv-head span.weekend{opacity:.65}.calendar .mv-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:1fr;background:var(--neutral-100);border:1px solid var(--ink-hairline);border-radius:14px;overflow:hidden;flex:1;min-height:0}.calendar .mv-cell{min-width:0;border-right:1px solid var(--ink-hairline);border-bottom:1px solid var(--ink-hairline);padding:5px 6px 4px;display:flex;flex-direction:column;gap:3px;position:relative;background:var(--neutral-100);cursor:pointer;box-sizing:border-box}.calendar .mv-cell:nth-child(7n){border-right:none}.calendar .mv-cell.last-row{border-bottom:none}.calendar .mv-cell:hover{background:var(--ink-wash)}.calendar .mv-cell.muted{background:transparent;opacity:.7}.calendar .mv-cell .mvn{width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:11px;font-weight:600;line-height:1;letter-spacing:-.02em;color:var(--ink-2);align-self:flex-start}.calendar .mv-cell.muted .mvn{color:var(--ink-muted);opacity:.55}.calendar .mv-cell.weekend .mvn{color:var(--ink-muted)}.calendar .mv-cell.today .mvn{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome)}.calendar .mv-cell.selected:not(.today) .mvn{box-shadow:inset 0 0 0 1.5px var(--ink-2)}.calendar .mv-pills{display:flex;flex-direction:column;gap:2px;overflow:hidden}.calendar .mv-pill{height:4px;border-radius:999px;background:var(--alann-silver);cursor:grab;-webkit-user-select:none;user-select:none}.calendar .mv-pill.dragging{opacity:.4}.calendar .mv-pill.needs-action{background:transparent;box-shadow:inset 0 0 0 1px var(--alann-silver)}.calendar .mv-pill.tentative{background:var(--ink-muted)}.calendar .mv-more{font-family:var(--font-mono);font-size:8px;font-weight:500;line-height:1;letter-spacing:.06em;color:var(--ink-muted);text-transform:uppercase;margin-top:auto;align-self:flex-start}.calendar .drag-over{outline:2px dashed var(--alann-graphite);outline-offset:-2px}.calendar .drag-over-top{background:linear-gradient(to bottom,rgba(14,17,20,.12) 50%,transparent 50%)!important}.calendar .drag-over-bottom{background:linear-gradient(to bottom,transparent 50%,rgba(14,17,20,.12) 50%)!important}.app-container.web .calendar{background:var(--canvas);padding-top:0}.calendar-topbar-desktop{display:none}.app-container.web .calendar .calendar-topbar{padding:14px 24px;gap:12px;background:var(--canvas);border-bottom:1px solid var(--ink-hairline)}.app-container.web .calendar .calendar-topbar-mobile{display:none}.app-container.web .calendar .calendar-topbar-desktop{display:inline-flex}.app-container.web .calendar .calendar-topbar-crumbs{align-items:center;gap:8px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;color:var(--ink-soft);padding-right:16px}.app-container.web .calendar .calendar-topbar-crumbs-sep{color:var(--ink-muted)}.app-container.web .calendar .calendar-topbar-crumbs-now{color:var(--ink);font-weight:600}.app-container.web .calendar .calendar-topbar-btn[aria-label=Search]{flex:1;max-width:420px;width:auto;height:32px;padding:0 12px;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:999px;color:var(--ink-muted);justify-content:flex-start;gap:8px}.app-container.web .calendar .calendar-topbar-btn[aria-label=Search]:hover{background:var(--surface);color:var(--ink-soft)}.app-container.web .calendar .calendar-topbar-btn[aria-label=Search] svg{width:14px;height:14px;flex-shrink:0}.app-container.web .calendar .calendar-topbar-btn[aria-label=Search]:after{content:"Search events, people, places";font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:-.005em;color:var(--ink-muted)}.app-container.web .calendar .cal-head.web{padding:22px 24px 16px;background:var(--surface);border-bottom:1px solid var(--ink-hairline);display:flex;align-items:flex-end;gap:16px;flex-shrink:0}.app-container.web .calendar .cal-head.web .month{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0}.app-container.web .calendar .title-trigger{background:transparent;border:0;box-shadow:none;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:baseline;gap:8px;color:inherit;text-align:left;border-radius:0;line-height:1}.app-container.web .calendar .title-trigger:hover{background:transparent}.app-container.web .calendar .title-trigger:active{transform:none}.app-container.web .calendar .title-trigger:focus,.app-container.web .calendar .title-trigger:focus-visible{outline:none}.app-container.web .calendar .title-trigger:disabled{cursor:default;opacity:1}.app-container.web .calendar .title-trigger .caret{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;color:var(--ink-muted);transition:transform var(--dur-base) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);align-self:center;margin-bottom:4px}.app-container.web .calendar .title-trigger:hover .caret{background:var(--ink-wash);color:var(--ink)}.app-container.web .calendar .title-trigger.open .caret{transform:rotate(180deg);color:var(--ink)}.app-container.web .calendar .cal-head.web .eyebrow{font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.app-container.web .calendar .cal-head.web .cal-month{margin:0;padding:0;font-family:var(--font-display);font-weight:800;font-size:32px;line-height:1;letter-spacing:-.035em;color:var(--ink-2);white-space:nowrap}.app-container.web .calendar .cal-head.web .cal-month .year{font-family:var(--font-display);font-weight:500;color:var(--ink-muted);margin-left:6px}.app-container.web .calendar .cal-head.web .cal-range{font-family:var(--font-mono);font-size:12px;font-weight:500;line-height:1.1;letter-spacing:.06em;color:var(--ink-soft);padding-bottom:5px;white-space:nowrap}.app-container.web .calendar .cal-head.web .head-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0}.app-container.web .calendar .view-switch{display:inline-flex;align-items:center;padding:3px;gap:2px;background:var(--surface-alt);border-radius:999px;border:1px solid var(--ink-hairline)}.app-container.web .calendar .view-switch button{height:26px;padding:0 12px;border:0;background:transparent;cursor:pointer;border-radius:999px;font-family:var(--font-sans);font-size:11px;font-weight:600;line-height:1;letter-spacing:-.005em;color:var(--ink-soft);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);box-shadow:none;margin:0}.app-container.web .calendar .view-switch button:hover{color:var(--ink);background:transparent}.app-container.web .calendar .view-switch button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0e11140f}.app-container.web .calendar .view-switch button:focus,.app-container.web .calendar .view-switch button:focus-visible{outline:none}.app-container.web .calendar .cal-head.web .today-btn{height:32px;min-width:0;padding:0 14px;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:999px;color:var(--ink);box-shadow:none;font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.app-container.web .calendar .cal-head.web .today-btn:hover{background:var(--ink-wash);filter:none}.app-container.web .calendar .nav-arrows{display:inline-flex;align-items:center;height:32px;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:999px;overflow:hidden}.app-container.web .calendar .nav-arrows button.arrow{width:32px;height:32px;border:0;background:transparent;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;box-shadow:none;border-radius:0;transition:background var(--dur-fast) var(--ease-out)}.app-container.web .calendar .nav-arrows button.arrow:hover{background:var(--ink-wash)}.app-container.web .calendar .nav-arrows button.arrow:focus,.app-container.web .calendar .nav-arrows button.arrow:focus-visible{outline:none}.app-container.web .calendar .nav-arrows .divider{width:1px;height:18px;background:var(--ink-hairline)}.app-container.web .calendar .nav-arrows .unit{padding:0 12px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);min-width:56px;text-align:center}.app-container.web .calendar .new-event{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 14px 0 12px;background:var(--alann-chrome-hi);color:var(--fg-on-graphite);border-radius:999px;border:0;cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:-.005em;line-height:1;box-shadow:var(--shadow-chrome);margin:0}.app-container.web .calendar .new-event:hover{filter:brightness(1.06);background:var(--alann-chrome-hi)}.app-container.web .calendar .new-event:focus,.app-container.web .calendar .new-event:focus-visible{outline:none}.app-container.web .calendar .new-event svg{width:12px;height:12px}.app-container.web .calendar .view-panel{background:var(--surface)}.app-container.web .calendar .multi{padding:0;background:var(--surface)}.app-container.web .calendar .multi-sticky-header{background:var(--surface)}.app-container.web .calendar .multi-head{padding:0;margin:0;border-bottom:1px solid var(--ink-hairline)}.app-container.web .calendar .multi-head:after{display:none}.app-container.web .calendar .multi-head .gutter{border-right:1px solid var(--ink-hairline);align-self:stretch}.app-container.web .calendar .multi-head .col{align-items:flex-start;padding:10px 12px 12px;gap:6px;border-left:1px solid var(--ink-hairline)}.app-container.web .calendar .multi-head .gutter+.col{border-left-color:transparent}.app-container.web .calendar .multi-head .col .dow{font-size:10px;letter-spacing:.14em}.app-container.web .calendar .multi-head .col .dn{width:auto;height:auto;border-radius:0;background:transparent;box-shadow:none;color:var(--ink-2);font-size:18px;font-weight:700;letter-spacing:-.03em;justify-content:flex-start;padding:0}.app-container.web .calendar .multi-head .col.today .dn{width:26px;height:26px;border-radius:999px;background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);font-size:13px;justify-content:center}.app-container.web .calendar .multi-head .col.weekend:not(.today) .dn,.app-container.web .calendar .multi-head .col.weekend .dow{color:var(--ink-muted);opacity:1}.app-container.web .calendar .mg-allday{padding:6px 0;margin:0;border-bottom:1px solid var(--ink-hairline);background:var(--surface)}.app-container.web .calendar .mg-allday-lbl{font-size:10px;letter-spacing:.08em;padding-right:8px}.app-container.web .calendar .mg-allday-cell{padding:2px 6px}.app-container.web .calendar .mg-ad-chip{font-size:11px;padding:4px 8px;border-radius:6px;background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--ink-hairline);border-left:3px solid var(--alann-graphite)}.app-container.web .calendar .multi-grid{background:var(--surface)}.app-container.web .calendar .multi-grid>.gutter{border-right:1px solid var(--ink-hairline)}.app-container.web .calendar .mg-hour{padding-right:8px;font-size:10px;letter-spacing:.06em;transform:translateY(-6px)}.app-container.web .calendar .multi-col{border-left:1px solid var(--ink-hairline)}.app-container.web .calendar .multi-col.first{border-left-color:transparent}.app-container.web .calendar .mg-evt{left:6px;right:6px;border-radius:12px;padding:8px 10px 10px;background:#f4f6f9;box-shadow:inset 0 0 0 1px var(--ink-hairline);transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.app-container.web .calendar .mg-evt:hover{transform:translateY(-1px);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--ink-hairline)}.app-container.web .calendar .mg-evt:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:999px;background:var(--evt-rail, var(--alann-silver));transform:translate(2px)}.app-container.web .calendar .mg-evt .mt{font-size:12px;font-weight:600;letter-spacing:-.015em;color:var(--ink-2)}.app-container.web .calendar .mg-evt .mtime{font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:-.005em;color:var(--ink-soft);text-transform:none;margin-top:2px}.app-container.web .calendar .mg-now{border-top:1.5px solid var(--alann-graphite)}.app-container.web .calendar .mg-now:before{width:8px;height:8px;left:-4px;top:-4.5px;box-shadow:0 0 0 3px var(--surface)}.app-container.web .calendar .timeline{padding:8px 24px 24px;background:var(--surface)}.app-container.web .calendar .t-row{grid-template-columns:64px 1fr;gap:12px}.app-container.web .calendar .t-hour{font-size:10px;letter-spacing:.06em;transform:translateY(-5px)}.app-container.web .calendar .t-line{padding:4px 0 4px 6px}.app-container.web .calendar .evt{margin:4px 4px 4px 0;border-radius:12px;padding:10px 14px;background:var(--neutral-100);box-shadow:inset 0 0 0 1px var(--ink-hairline)}.app-container.web .calendar .evt:hover{transform:translateY(-1px);box-shadow:0 1px 2px #0e11140f,inset 0 0 0 1px var(--ink-hairline)}.app-container.web .calendar .evt .rail{transform:translate(-10px);top:10px;bottom:10px}.app-container.web .calendar .evt .time{font-size:10px;margin-bottom:3px}.app-container.web .calendar .evt .t{font-size:14px}.app-container.web .calendar .allday-chip{margin:14px 24px 4px;padding:10px 14px;font-size:13px}.app-container.web .calendar .t-allday{grid-template-columns:64px 1fr;gap:12px;padding:4px 0 8px}.app-container.web .calendar .t-allday-lbl{font-size:10px}.app-container.web .calendar .date-strip{display:none}.app-container.web .calendar .title-popover{position:absolute;top:calc(100% + 10px);left:0;z-index:30;width:264px;padding:12px;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:12px;box-shadow:0 14px 40px #0e11142e,0 2px 6px #0e11140f;transform-origin:top left;animation:tpIn .14s var(--ease-out)}@keyframes tpIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-container.web .calendar .tp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.app-container.web .calendar .tp-title{font-family:var(--font-display);font-weight:700;font-size:13px;line-height:1;letter-spacing:-.02em;color:var(--ink-2)}.app-container.web .calendar .tp-title .tp-year{color:var(--ink-muted);font-weight:500;margin-left:4px}.app-container.web .calendar .tp-nav{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--ink-muted);border-radius:6px;cursor:pointer;padding:0;margin:0;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.app-container.web .calendar .tp-nav:hover{background:var(--ink-wash);color:var(--ink)}.app-container.web .calendar .tp-nav:focus,.app-container.web .calendar .tp-nav:focus-visible{outline:none}.app-container.web .calendar .tp-nav:active{transform:none}.app-container.web .calendar .tp-dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.app-container.web .calendar .tp-dow span{text-align:center;font-family:var(--font-mono);font-size:9px;font-weight:600;line-height:1;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);padding:4px 0}.app-container.web .calendar .tp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.app-container.web .calendar .tp-day{aspect-ratio:1;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;box-shadow:none;padding:0;margin:0;cursor:pointer;font-family:var(--font-sans);font-size:11px;font-weight:500;line-height:1;color:var(--ink);transition:background var(--dur-fast) var(--ease-out)}.app-container.web .calendar .tp-day:hover{background:var(--ink-wash)}.app-container.web .calendar .tp-day:focus,.app-container.web .calendar .tp-day:focus-visible{outline:none}.app-container.web .calendar .tp-day:active{transform:none}.app-container.web .calendar .tp-day.mute{color:var(--ink-muted);opacity:.5}.app-container.web .calendar .tp-day.sel{background:var(--surface-alt);color:var(--ink);font-weight:700}.app-container.web .calendar .tp-day.today{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);font-weight:700;box-shadow:var(--shadow-chrome)}.app-container.web .calendar .month-view{padding:0;background:var(--surface);border-top:1px solid var(--ink-hairline);flex:1;min-height:0;display:flex;flex-direction:column}.app-container.web .calendar .mv-head{padding:0;background:var(--surface);border-bottom:1px solid var(--ink-hairline)}.app-container.web .calendar .mv-head span{text-align:left;padding:12px 14px;font-size:10px;letter-spacing:.14em;border-right:1px solid var(--ink-hairline)}.app-container.web .calendar .mv-head span:last-child{border-right:0}.app-container.web .calendar .mv-grid{background:transparent;border:0;border-radius:0;flex:1;min-height:0}.app-container.web .calendar .mv-cell{background:var(--surface);padding:6px 8px 8px;gap:4px;border-right:1px solid var(--ink-hairline);border-bottom:1px solid var(--ink-hairline)}.app-container.web .calendar .mv-cell:hover{background:#0e111404}.app-container.web .calendar .mv-cell.muted:not(.today){background:#0e111403;opacity:1}.app-container.web .calendar .mv-cell.weekend:not(.today):not(.muted){background:#0e111404}.app-container.web .calendar .mv-cell.today{background:linear-gradient(180deg,#0e111408,#0e111403)}.app-container.web .calendar .mv-cell .mvn{width:auto;height:auto;background:transparent;box-shadow:none;color:var(--ink-2);font-size:14px;font-weight:700;letter-spacing:-.02em;padding:2px 0 4px}.app-container.web .calendar .mv-cell.today .mvn{width:22px;height:22px;border-radius:999px;background:var(--alann-chrome-hi);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome);font-size:12px;justify-content:center}.app-container.web .calendar .mv-cell.muted:not(.today) .mvn{color:var(--ink-muted);opacity:1}.app-container.web .calendar .mv-cell.weekend:not(.today) .mvn{color:var(--ink-2)}.app-container.web .calendar .mv-pills{gap:3px}.app-container.web .calendar .year-view{background:var(--surface);border-top:1px solid var(--ink-hairline);flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app-container.web .calendar .year-bar{display:flex;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid var(--ink-hairline);flex-shrink:0}.app-container.web .calendar .year-bar .lead{font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.2;letter-spacing:-.005em;color:var(--ink-soft)}.app-container.web .calendar .year-bar .lead b{color:var(--ink);font-weight:700}.app-container.web .calendar .year-bar .legend{margin-left:auto;display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.app-container.web .calendar .year-bar .legend .item{display:flex;align-items:center;gap:6px}.app-container.web .calendar .year-bar .legend .sw{width:10px;height:10px;border-radius:3px;background:var(--alann-silver-tint)}.app-container.web .calendar .year-bar .legend .sw.m{background:var(--alann-silver)}.app-container.web .calendar .year-bar .legend .sw.h{background:var(--alann-graphite)}.app-container.web .calendar .year-grid{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(280px,auto)}.app-container.web .calendar .ymonth{padding:16px 18px 18px;border-radius:0;border:0;border-right:1px solid var(--ink-hairline);border-bottom:1px solid var(--ink-hairline);display:flex;flex-direction:column;gap:8px;cursor:pointer;background:transparent;text-align:left;font:inherit;color:inherit;box-shadow:none;margin:0;transition:background var(--dur-fast) var(--ease-out);min-width:0}.app-container.web .calendar .ymonth:active{transform:none}.app-container.web .calendar .ymonth:hover{background:#0e111404}.app-container.web .calendar .ymonth:nth-child(4n){border-right:0}.app-container.web .calendar .year-grid .ymonth:nth-last-child(-n+4){border-bottom:0}.app-container.web .calendar .ymonth.current{background:linear-gradient(180deg,#0e111406,#0e111403)}.app-container.web .calendar .ymonth:focus,.app-container.web .calendar .ymonth:focus-visible{outline:none}.app-container.web .calendar .ymonth .yh{display:flex;align-items:baseline;justify-content:space-between}.app-container.web .calendar .ymonth .yh .nm{font-family:var(--font-display);font-weight:800;font-size:18px;line-height:1;letter-spacing:-.03em;color:var(--ink-2)}.app-container.web .calendar .ymonth.past .yh .nm{color:var(--ink-muted)}.app-container.web .calendar .ymonth .yh .ct{font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.app-container.web .calendar .ymonth.current .yh .ct{color:var(--ink-soft);font-weight:600}.app-container.web .calendar .ymini{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:auto repeat(6,1fr);gap:1px;flex:1;min-height:0}.app-container.web .calendar .ymini .yd{display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:10px;font-weight:500;line-height:1;color:var(--ink);border-radius:5px;position:relative;z-index:0;isolation:isolate;padding:2px 0;min-width:0;min-height:0}.app-container.web .calendar .ymini .yd.dow{color:var(--ink-muted);font-family:var(--font-mono);font-size:8px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:0 0 2px}.app-container.web .calendar .ymini .yd.mute{color:var(--ink-muted);opacity:.5}.app-container.web .calendar .ymini .yd.weekend{color:var(--ink-soft)}.app-container.web .calendar .ymini .yd.has:after,.app-container.web .calendar .ymini .yd.has-m:after,.app-container.web .calendar .ymini .yd.has-h:after{content:"";position:absolute;inset:1px;border-radius:4px;z-index:-1}.app-container.web .calendar .ymini .yd.has:after{background:var(--alann-silver-tint)}.app-container.web .calendar .ymini .yd.has-m:after{background:var(--alann-silver)}.app-container.web .calendar .ymini .yd.has-h:after{background:var(--alann-graphite)}.app-container.web .calendar .ymini .yd.has-h{color:var(--fg-on-graphite);font-weight:600}.app-container.web .calendar .ymini .yd.today{background:var(--alann-chrome-hi);color:var(--fg-on-graphite);font-weight:700;box-shadow:var(--shadow-chrome)}.app-container.web .calendar .ymini .yd.today:after{display:none}.alann-loader-stage{--alann-loader-size: 96px;width:var(--alann-loader-size);height:var(--alann-loader-size);position:relative;display:flex;align-items:center;justify-content:center}.alann-loader-logo-wrap{position:relative;width:100%;height:100%}.alann-loader-logo{width:100%;height:100%;display:block;object-fit:contain;transform-origin:center;animation:alann-loader-breathe 2.4s cubic-bezier(.45,.05,.55,1) infinite;filter:drop-shadow(0 18px 32px rgba(14,17,20,.18))}@keyframes alann-loader-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}.alann-loader-halo{position:absolute;left:50%;top:50%;width:160%;height:160%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 50% 50%,#8a95a338,#8a95a31a 28%,#8a95a300 60%);animation:alann-loader-halo 2.4s cubic-bezier(.45,.05,.55,1) infinite;pointer-events:none}@keyframes alann-loader-halo{0%,to{opacity:.55;transform:translate(-50%,-50%) scale(.96)}50%{opacity:.95;transform:translate(-50%,-50%) scale(1.06)}}.alann-loader-rings{position:absolute;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%);pointer-events:none}.alann-loader-rings span{position:absolute;left:50%;top:50%;width:100%;height:100%;border-radius:50%;border:1px solid rgba(14,17,20,.1);transform:translate(-50%,-50%) scale(1);animation:alann-loader-ripple 2.8s cubic-bezier(.22,1,.36,1) infinite}.alann-loader-rings span:nth-child(2){animation-delay:.7s}.alann-loader-rings span:nth-child(3){animation-delay:1.4s}@keyframes alann-loader-ripple{0%{transform:translate(-50%,-50%) scale(1);opacity:.55}80%{opacity:0}to{transform:translate(-50%,-50%) scale(1.85);opacity:0}}.alann-loader-orbit{position:absolute;left:50%;top:44%;width:34%;height:34%;transform:translate(-50%,-50%);border-radius:50%;animation:alann-loader-spin 1.8s linear infinite;pointer-events:none}.alann-loader-orbit i{position:absolute;left:50%;top:0;width:5px;height:5px;border-radius:50%;background:var(--alann-silver, #8A95A3);transform:translate(-50%,-50%);box-shadow:0 0 10px #8a95a3d9,0 0 20px #8a95a359}.alann-loader-orbit-trail{position:absolute;inset:0;border-radius:50%;animation:alann-loader-spin 1.8s linear infinite;animation-delay:-90ms;opacity:.55;pointer-events:none}.alann-loader-orbit-trail i{position:absolute;left:50%;top:0;width:4px;height:4px;border-radius:50%;background:#8a95a38c;transform:translate(-50%,-50%);box-shadow:0 0 8px #8a95a366}.alann-loader-orbit-trail2{position:absolute;inset:0;border-radius:50%;animation:alann-loader-spin 1.8s linear infinite;animation-delay:-.18s;opacity:.28;pointer-events:none}.alann-loader-orbit-trail2 i{position:absolute;left:50%;top:0;width:4px;height:4px;border-radius:50%;background:#8a95a38c;transform:translate(-50%,-50%);box-shadow:0 0 8px #8a95a366}@keyframes alann-loader-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.alann-boot-loader{position:fixed;inset:0;z-index:9999;background:var(--canvas, #EEF0F3);display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;font-family:var(--font-sans, "Inter", system-ui, sans-serif)}.alann-boot-loader-screen{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;min-height:100%}.alann-boot-loader-brand{display:flex;flex-direction:column;align-items:center;gap:36px;transform:translateY(-32px)}.alann-boot-loader-wordmark{font:700 13px/1 var(--font-sans, "Inter", system-ui, sans-serif);letter-spacing:.32em;text-transform:uppercase;color:var(--ink-soft, rgba(14,17,20,.55));margin-top:-8px}.alann-boot-loader-status{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;min-height:48px}.alann-boot-loader-label{font:600 17px/1.3 var(--font-sans, "Inter", system-ui, sans-serif);letter-spacing:-.015em;color:var(--ink, #0E1114)}.alann-boot-loader-sub{font:400 13px/1.4 var(--font-sans, "Inter", system-ui, sans-serif);letter-spacing:-.005em;color:var(--ink-soft, rgba(14,17,20,.6));max-width:240px}.alann-boot-loader-word{display:inline-block;transition:opacity .24s cubic-bezier(.22,1,.36,1),transform .24s cubic-bezier(.22,1,.36,1)}.alann-boot-loader-word.out{opacity:0;transform:translateY(-4px)}.alann-boot-loader-word.in{opacity:1;transform:translateY(0)}.alann-boot-loader-progress{position:absolute;left:32px;right:32px;bottom:48px;height:2px;border-radius:2px;background:#0e111414;overflow:hidden}.alann-boot-loader-progress:after{content:"";position:absolute;top:0;bottom:0;width:36%;left:-36%;background:linear-gradient(90deg,#0e111400,#0e11148c,#0e111400);animation:alann-boot-loader-indeterminate 1.8s cubic-bezier(.65,0,.35,1) infinite}@keyframes alann-boot-loader-indeterminate{0%{left:-36%}to{left:100%}}.consent-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--canvas);color:var(--ink)}.consent-card{width:100%;padding:var(--s-6);background:var(--surface);border:var(--border-card);border-radius:var(--r-lg);text-align:center}.consent-email-badge{display:inline-block;margin:var(--s-3) auto var(--s-2);padding:var(--s-1) var(--s-3);border:var(--border-card);border-radius:var(--r-pill);background:var(--neutral-100);font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--ink-soft);letter-spacing:var(--track-nudge)}.consent-back-btn{display:block;margin:var(--s-3) auto 0;background:none;border:none;padding:var(--s-2) var(--s-4);cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--ink-soft);text-decoration:underline}.consent-back-btn:hover{color:var(--ink)}.reauth-message{background:var(--neutral-100);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--track-nudge);padding:var(--s-3);border-radius:var(--r-sm);margin-bottom:var(--s-4);border:var(--border-soft)}.provider-picker-status{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);margin-top:var(--s-5);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink-soft);line-height:var(--lh-reading)}.signin-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--canvas);color:var(--ink)}.signin-card{width:100%;padding:var(--s-6);background:var(--surface);border:var(--border-card);border-radius:var(--r-lg);text-align:center}.signin-notice{margin:var(--s-3) 0 var(--s-4);padding:var(--s-3) var(--s-4);font-family:var(--font-sans);font-size:var(--fs-body);color:var(--color-warning, #92400e);background:var(--color-warning-bg, #fffbeb);border:1px solid var(--color-warning-border, #fde68a);border-radius:var(--r-md);line-height:var(--lh-reading)}.signin-description{margin:var(--s-3) 0 var(--s-6);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink-soft);line-height:var(--lh-reading)}.offline-toast{position:fixed;bottom:var(--s-4);left:50%;transform:translate(-50%);background:var(--alann-chrome);color:var(--fg-on-graphite);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);padding:10px var(--s-4);border-radius:var(--r-pill);box-shadow:var(--shadow-chrome);z-index:9999}.chat-row{display:flex;padding:2px var(--s-4)}.chat-row.in{justify-content:flex-start}.chat-row.out{justify-content:flex-end}.chat-row+.chat-row{margin-top:1px}.chat-row.gap-top{margin-top:10px}.chat-bubble{max-width:82%;font-family:var(--font-sans);font-size:var(--fs-body-lg);font-weight:var(--fw-regular);line-height:1.35;letter-spacing:var(--track-nudge);padding:10px 14px;word-break:break-word}.chat-row.in .chat-bubble{background:var(--ink-wash);color:var(--ink);border-radius:var(--r-bubble-in)}.chat-row.out .chat-bubble{background:var(--alann-chrome);color:var(--fg-on-graphite);border-radius:var(--r-bubble-out);box-shadow:var(--shadow-chrome)}.chat-bubble-text>*:first-child{margin-top:0}.chat-bubble-text>*:last-child{margin-bottom:0}.chat-clarification{margin-top:10px;display:flex;flex-direction:column;gap:8px}.chat-clarification-hint{font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.chat-options{display:flex;flex-wrap:wrap;gap:6px}.chat-option-chip{padding:6px 14px;border-radius:var(--r-pill);border:1.5px solid var(--alann-graphite);background:transparent;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-medium);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.chat-option-chip:hover{background:var(--alann-graphite);color:var(--fg-on-graphite)}.chat-option-chip:active{transform:scale(.97)}.chat-bubble--pending{opacity:.5}.chat-bubble-ts{display:block;margin-top:4px;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-medium);line-height:1;letter-spacing:.04em}.chat-row.in .chat-bubble-ts{color:var(--ink-muted)}.chat-row.out .chat-bubble-ts{color:#ffffff80;text-align:right}.chat-page{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;position:relative;height:calc(100dvh - var(--bottom-nav-height));padding-top:env(safe-area-inset-top,0px);overflow:hidden}.app-container.web .chat-page{height:100dvh}body.chat-active.keyboard-open{position:fixed;inset:0;overflow:hidden}body.chat-active.keyboard-open .chat-page{height:calc(100dvh - var(--keyboard-height, 0px))}.chat-topbar{flex:0 0 auto;padding:var(--s-2) 11px 6px 11px;display:flex;align-items:center;gap:6px;background:var(--surface)}.chat-icon-btn{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:transparent;color:var(--ink);box-shadow:none;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--dur-fast) var(--ease-out)}.chat-icon-btn:hover{background:var(--ink-wash)}.chat-icon-btn:active{transform:scale(.96)}.chat-icon-btn svg{width:18px;height:18px}.chat-topbar-title{flex:1;font-family:var(--font-display);font-size:15px;font-weight:var(--fw-bold);letter-spacing:-.02em;line-height:1;color:var(--ink-2);text-align:center}.chat-head{flex:0 0 auto;padding:6px var(--s-3) 12px var(--s-4);display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--ink-hairline);background:var(--surface)}.chat-head-ava{width:34px;height:34px;border-radius:var(--r-pill);background:var(--alann-chrome);box-shadow:var(--shadow-chrome);position:relative;flex-shrink:0}.chat-head-ava:after{content:"A";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:var(--fw-black);font-size:16px;letter-spacing:-.04em;color:var(--fg-on-graphite)}.chat-head-pres{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:var(--r-pill);background:#6fb17b;box-shadow:0 0 0 2px var(--surface);z-index:1;transition:background .3s ease}.chat-head-pres--offline{background:var(--neutral-400, #aaa)}.chat-head-meta{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.chat-head-name{font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-bold);line-height:1.1;letter-spacing:-.02em;color:var(--ink-2)}.chat-head-sub{font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);line-height:1.1;letter-spacing:.04em;color:var(--ink-soft)}.chat-head-hist{margin-left:auto;flex-shrink:0;width:36px;height:36px;padding:0;border-radius:var(--r-pill);background:transparent;border:0;box-shadow:none;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.chat-head-hist:hover{background:var(--ink-wash)}.chat-head-hist:active{transform:scale(.96)}.chat-head-hist svg{width:19px;height:19px}.chat-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 0 14px;background:var(--surface);scrollbar-width:none}.chat-scroll::-webkit-scrollbar{width:0;display:none}.chat-loading-older{display:flex;align-items:center;justify-content:center;padding:8px var(--s-5) 10px;color:var(--ink-soft);font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);letter-spacing:.04em;text-align:center}.chat-day{display:flex;align-items:center;gap:10px;padding:10px var(--s-6) 6px}.chat-day-line{flex:1;height:1px;background:var(--ink-hairline)}.chat-day-label{font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.chat-state{display:flex;align-items:center;justify-content:center;padding:var(--s-8) var(--s-5);color:var(--ink-soft);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);text-align:center}.chat-typing{display:flex;align-items:center;gap:8px;padding:6px var(--s-4) 8px}.chat-typing-pill{background:var(--ink-wash);border-radius:var(--r-bubble-in);padding:10px 14px;display:inline-flex;gap:4px;align-items:center}.chat-typing-pill span{width:6px;height:6px;border-radius:var(--r-pill);background:var(--ink-muted);animation:chat-typing-bounce 1.2s infinite}.chat-typing-pill span:nth-child(2){animation-delay:.15s}.chat-typing-pill span:nth-child(3){animation-delay:.3s}@keyframes chat-typing-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-3px);opacity:1}}.chat-composer{flex:0 0 auto;padding:var(--s-2) var(--s-3) 10px;background:var(--surface);border-top:1px solid var(--ink-hairline);display:flex;flex-direction:column;gap:var(--s-2)}.chat-compose-row{display:flex;align-items:center;gap:var(--s-2)}.chat-plus{width:36px;height:36px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--ink-hairline);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;padding:0;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.chat-plus:hover{background:var(--ink-wash)}.chat-plus:active{transform:scale(.96)}.chat-plus svg{width:16px;height:16px}.chat-input-wrap{flex:1;min-width:0;height:36px;box-sizing:border-box;background:var(--surface);border:1px solid var(--ink-hairline);border-radius:var(--r-pill);padding:0 6px 0 14px;display:flex;align-items:center;gap:6px;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.chat-input-wrap:focus-within{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e11140f}.chat-textarea{flex:1;border:0;outline:none;background:transparent;resize:none;font-family:var(--font-sans);font-size:15px;font-weight:var(--fw-regular);line-height:1.35;letter-spacing:var(--track-nudge);color:var(--ink);padding:0;height:20px;align-self:center}.chat-textarea::placeholder{color:var(--ink-muted)}.chat-textarea:disabled{opacity:.6;cursor:not-allowed}.chat-slash{height:24px;padding:0 8px;border-radius:6px;background:var(--ink-wash);color:var(--ink);font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-semibold);line-height:1;letter-spacing:.04em;align-self:center;flex-shrink:0;display:inline-flex;align-items:center}.chat-voice{width:30px;height:30px;align-self:center}.chat-voice svg{width:16px;height:16px}.chat-send{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:var(--alann-chrome);color:var(--fg-on-graphite);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-chrome);flex-shrink:0;box-sizing:border-box;padding:0;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-base) var(--ease-out)}.chat-send:hover:not(:disabled){background:var(--alann-chrome-hi)}.chat-send:active:not(:disabled){transform:scale(.94)}.chat-send:disabled{background:var(--neutral-300);color:var(--ink-muted);box-shadow:none;cursor:not-allowed}.chat-send svg{width:16px;height:16px}.chat-reconnecting-banner{flex:0 0 auto;padding:6px 16px;background:var(--neutral-100, #f5f5f5);color:var(--ink-muted, #888);font-size:12px;text-align:center;border-top:1px solid var(--neutral-200, #e5e5e5)}.chat-pending-banner{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;padding:10px 14px 10px 16px;background:var(--surface-raised, #fafafa);border-bottom:1px solid var(--ink-hairline);position:relative}.chat-pending-banner-text{font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-bold);color:var(--ink-2);padding-right:24px}.chat-pending-banner-links{display:flex;flex-direction:column;gap:3px}.chat-pending-banner-link{all:unset;font-family:var(--font-sans);font-size:12px;color:var(--alann-chrome);cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-align:left}.chat-pending-banner-link:hover{opacity:.75}.chat-pending-banner-dismiss{all:unset;position:absolute;top:8px;right:12px;font-size:18px;line-height:1;color:var(--ink-muted, #888);cursor:pointer;padding:2px 4px}.chat-pending-banner-dismiss:hover{color:var(--ink-2)}.settings-page{height:calc(100dvh - var(--bottom-nav-height));overflow:hidden;text-align:left;color:var(--ink);font-family:var(--font-sans)}.app-container.web .settings-page{height:100dvh;max-width:640px}.set-screen{height:100%;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:var(--s-5)}.settings-page :where(button){margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:inherit;transition:background var(--dur-fast) var(--ease-out)}.settings-page :where(button):hover{background:transparent}.settings-page :where(button):active{transform:none}.settings-page :where(button):focus{outline:none}.settings-page :where(button):focus-visible{outline:2px solid var(--alann-silver);outline-offset:2px}.set-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);padding:calc(var(--s-2) + env(safe-area-inset-top)) var(--s-3) var(--s-2);background:var(--canvas)}.set-back{display:inline-flex;align-items:center;gap:var(--s-1);height:36px;padding:0 var(--s-2) 0 var(--s-1);border:0;background:transparent;cursor:pointer;color:var(--ink-soft);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);border-radius:var(--r-pill)}.set-back:hover{background:var(--ink-wash)}.set-topbar-title{position:absolute;left:50%;transform:translate(-50%);white-space:nowrap;font-family:var(--font-display);font-size:var(--fs-body);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.set-topbar-right{display:flex;align-items:center}.set-topbar-spacer{width:36px;height:36px;display:inline-block}.set-iconbtn{width:36px;height:36px;border-radius:var(--r-pill);border:0;cursor:pointer;background:transparent;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center}.set-iconbtn:hover{background:var(--ink-wash)}.set-saving{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--ink-muted);padding-right:var(--s-2)}.set-eyebrow{padding:var(--s-3) var(--s-6) var(--s-2);font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.set-group{margin:0 var(--s-4) var(--s-5);background:var(--surface);border:var(--border-hair);border-radius:var(--r-lg);overflow:hidden}.set-subtext{margin:0 0 var(--s-4);padding:0 var(--s-6);font-family:var(--font-sans);font-size:var(--fs-body-sm);line-height:var(--lh-reading);color:var(--ink-soft)}.set-subtext--err{color:var(--danger)}.set-loaderr{display:flex;align-items:center;gap:var(--s-3);padding:0 var(--s-6) var(--s-4)}.set-loaderr .set-subtext{padding:0;margin:0}.set-retry{height:30px;padding:0 var(--s-3);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);border:var(--border-hair);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);cursor:pointer}.set-retry:hover{background:var(--ink-wash)}.set-foot{display:flex;justify-content:space-between;margin:var(--s-1) var(--s-4) var(--s-6);padding:0 var(--s-1);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.set-row{display:flex;align-items:center;gap:var(--s-3);width:100%;min-height:56px;padding:13px var(--s-3);background:transparent;border:0;border-bottom:var(--border-hair);text-align:left;cursor:pointer;font:inherit;color:inherit}.set-row:last-child{border-bottom:0}.set-row:hover:not(:disabled){background:var(--ink-wash)}.set-row:disabled{cursor:default}.set-row-ic{width:34px;height:34px;border-radius:var(--r-md);flex-shrink:0;background:var(--surface-alt);color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center}.set-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.set-row-ttl{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-2)}.set-row-sub{font-family:var(--font-sans);font-size:var(--fs-caption);color:var(--ink-soft)}.set-row-right{display:flex;align-items:center;gap:var(--s-2);flex-shrink:0;color:var(--ink-muted)}.set-row-v{font-size:var(--fs-body-sm);font-weight:var(--fw-medium);color:var(--ink-soft)}.set-row--danger .set-row-ttl{color:var(--danger)}.set-row--danger .set-row-ic{background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger)}.set-svc-dot{width:34px;height:34px;border-radius:var(--r-md);flex-shrink:0;background:var(--surface-alt);color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--fs-caption)}.set-connect{height:30px;padding:0 var(--s-3);border-radius:var(--r-pill);background:var(--alann-chrome);box-shadow:var(--shadow-1);color:var(--fg-on-graphite);font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:var(--fw-semibold);display:inline-flex;align-items:center}.set-soon{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);background:var(--ink-wash);padding:3px var(--s-2);border-radius:var(--r-pill)}.set-idcard{margin:var(--s-3) var(--s-4) var(--s-5);background:var(--surface);border:var(--border-hair);border-radius:20px;padding:18px var(--s-4);display:flex;align-items:center;gap:var(--s-4)}.set-ava{width:56px;height:56px;border-radius:var(--r-pill);flex-shrink:0;object-fit:cover;background:var(--alann-graphite);box-shadow:var(--shadow-chrome);display:flex;align-items:center;justify-content:center;color:var(--fg-on-graphite);font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight)}.set-idcard-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.set-idcard-nm{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:800;letter-spacing:var(--track-tight);color:var(--ink-2)}.set-idcard-em{font-family:var(--font-sans);font-size:var(--fs-body-sm);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-idcard-edit{width:34px;height:34px;flex-shrink:0;border-radius:var(--r-pill);border:var(--border-soft);background:transparent;color:var(--ink-soft);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.set-idcard-edit:hover{background:var(--ink-wash);color:var(--ink-2)}.set-acct{display:flex;align-items:center;gap:var(--s-3);padding:13px var(--s-3);min-height:56px;border-bottom:var(--border-hair)}.set-acct-dot{width:34px;height:34px;border-radius:var(--r-pill);flex-shrink:0;object-fit:cover;background:var(--alann-graphite-mid);color:var(--fg-on-graphite);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-bold)}.set-acct-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.set-acct-ttl{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-switch-btn{height:30px;padding:0 var(--s-3);border-radius:var(--r-pill);border:var(--border-soft);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-caption);font-weight:var(--fw-semibold);display:inline-flex;align-items:center;gap:var(--s-1);cursor:pointer;flex-shrink:0}.set-switch-btn:hover{background:var(--ink-wash)}.set-chip{align-self:flex-start;height:22px;padding:0 9px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);background:var(--ink-wash)}.set-chip-dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--success)}.set-chip--warn{color:var(--warning)}.set-chip--warn .set-chip-dot{background:var(--warning)}.set-scope{display:flex;align-items:center;gap:var(--s-3);padding:11px var(--s-3);border-bottom:var(--border-hair)}.set-scope:last-child{border-bottom:0}.set-scope-nm{flex:1;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--ink-2)}.set-scope-st{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.set-scope-st--ok{color:var(--success)}.set-perm{display:flex;align-items:center;gap:var(--s-3);padding:11px var(--s-3);border-bottom:var(--border-hair)}.set-perm:last-child{border-bottom:0}.set-perm--stacked{flex-direction:column;align-items:stretch;gap:var(--s-3)}.set-perm-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.set-perm-nm{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-2)}.set-perm-hint{font-family:var(--font-sans);font-size:var(--fs-body-sm);line-height:var(--lh-reading);color:var(--ink-soft)}.set-ro{font-family:var(--font-mono);font-size:var(--fs-caption);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);flex-shrink:0}.set-toggle{width:44px;height:26px;border-radius:var(--r-pill);border:0;flex-shrink:0;background:var(--surface-alt);cursor:pointer;padding:3px;display:flex;align-items:center;transition:background var(--dur-fast) var(--ease-out)}.set-toggle-knob{width:20px;height:20px;border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--shadow-1);transition:transform var(--dur-fast) var(--ease-out)}.set-toggle[aria-checked=true]{background:var(--alann-chrome)}.set-toggle[aria-checked=true] .set-toggle-knob{transform:translate(18px)}.set-toggle:disabled{opacity:.5;cursor:not-allowed}.set-toggle:hover{background:var(--surface-alt)}.set-toggle[aria-checked=true]:hover{background:var(--alann-chrome)}.set-seg{display:flex;gap:0;background:var(--surface-alt);border-radius:var(--r-md);padding:3px}.set-seg button{flex:1;height:30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--r-sm);background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-soft)}.set-seg button[aria-pressed=true]{background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow-1)}.set-chips{display:flex;flex-wrap:wrap;gap:var(--s-2)}.set-chip-opt{height:34px;padding:0 var(--s-4);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);border:var(--border-hair);background:var(--surface);color:var(--ink-soft);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer}.set-chip-opt:hover{background:var(--ink-wash)}.set-chip-opt[aria-pressed=true]{background:var(--alann-chrome);border-color:transparent;color:var(--fg-on-graphite);box-shadow:var(--shadow-1)}.set-stepper{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-1)}.set-stepper button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-md);border:var(--border-hair);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);line-height:1;cursor:pointer}.set-stepper button:hover:not(:disabled){background:var(--ink-wash)}.set-stepper button:disabled{opacity:.4;cursor:not-allowed}.set-stepper-val{font-family:var(--font-mono);font-size:var(--fs-body-sm);color:var(--ink-2);min-width:90px;text-align:center}.set-timeinput,.set-select{height:32px;padding:0 var(--s-3);border-radius:var(--r-md);border:var(--border-hair);background:var(--surface);color:var(--ink-2);cursor:pointer;flex-shrink:0}.set-timeinput{font-family:var(--font-mono);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);letter-spacing:.02em}.set-select{max-width:190px;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);appearance:none;-webkit-appearance:none;padding-right:28px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 20 20' fill='none' stroke='%230E1114' stroke-opacity='0.5' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='m5 8 5 5 5-5'/></svg>");background-repeat:no-repeat;background-position:right 10px center}.set-timeinput:focus,.set-select:focus{outline:none;border-color:var(--alann-silver);box-shadow:0 0 0 3px #8a95a32e}.set-tinput{width:100%;border:var(--border-soft);border-radius:var(--r-md);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-reading);letter-spacing:var(--track-nudge);padding:var(--s-2) var(--s-3);resize:none}.set-tinput:focus{outline:none;border-color:var(--alann-silver);box-shadow:0 0 0 3px #8a95a32e}.set-counter{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);align-self:flex-end}.set-valfield{height:32px;padding:0 var(--s-3);border-radius:var(--r-md);border:var(--border-hair);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);cursor:pointer;display:inline-flex;align-items:center;gap:var(--s-1);flex-shrink:0}.set-valfield:hover{background:var(--ink-wash)}.set-valfield--wide{max-width:190px}.set-valfield span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-pill-btn{height:32px;padding:0 var(--s-4);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-pill);border:var(--border-hair);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);cursor:pointer;flex-shrink:0}.set-pill-btn:hover:not(:disabled){background:var(--ink-wash)}.set-pill-btn:disabled{opacity:.5;cursor:not-allowed}.set-dim{opacity:.45;pointer-events:none}.set-searchwrap{padding:var(--s-1) var(--s-4) var(--s-3);display:flex;flex-direction:column;gap:var(--s-3)}.set-searchfield{display:flex;align-items:center;gap:var(--s-2);height:44px;padding:0 var(--s-3);border-radius:var(--r-md);background:var(--surface);border:var(--border-soft);box-shadow:var(--shadow-1);color:var(--ink-muted)}.set-searchfield:focus-within{border-color:var(--alann-silver);box-shadow:var(--shadow-1),0 0 0 3px #8a95a32e}.set-searchfield input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink-2);font-family:var(--font-sans);font-size:var(--fs-body)}.set-searchfield input::placeholder{color:var(--ink-muted)}.set-searchwrap .set-subtext{margin:0;padding:0 var(--s-1)}.set-acard{margin:0 var(--s-4) var(--s-4);background:var(--surface);border:var(--border-hair);border-radius:var(--r-lg);overflow:hidden}.set-acard-head{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3);border-bottom:var(--border-hair)}.set-acard-dot{width:38px;height:38px;border-radius:var(--r-pill);flex-shrink:0;background:var(--surface-alt);color:var(--ink-2);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-bold)}.set-acard-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--s-1)}.set-acard-em{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-acard-caphead{padding:11px var(--s-3) 5px;font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.set-acard-consent{border-top:var(--border-hair)}.set-disc{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px var(--s-3);min-height:52px;border:0;border-top:var(--border-hair);background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--danger)}.set-disc:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 6%,transparent)}.set-disc:disabled{opacity:.6;cursor:default}.set-scrim{position:fixed;inset:0;background:#0e11146b;z-index:1200;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out)}.set-scrim--on{opacity:1;pointer-events:auto}.set-sheet{position:fixed;left:0;right:0;bottom:0;z-index:1201;background:var(--neutral-100);border-radius:var(--r-xl) var(--r-xl) 0 0;padding:var(--s-2) 0 calc(var(--s-6) + env(safe-area-inset-bottom));transform:translateY(102%);transition:transform var(--dur-slow) var(--ease-out);box-shadow:var(--shadow-3);max-height:88vh;overflow-y:auto}.set-sheet--on{transform:translateY(0)}.app-container.web .set-scrim,.app-container.web .set-sheet{left:232px}.set-sheet-grab{width:38px;height:4px;border-radius:var(--r-pill);background:var(--ink-hairline);margin:var(--s-1) auto var(--s-3)}.set-sheet-title{margin:0 0 2px;padding:0 var(--s-6);font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.set-sheet-lede{margin:0 0 var(--s-4);padding:0 var(--s-6);font-family:var(--font-sans);font-size:var(--fs-body-sm);line-height:var(--lh-reading);color:var(--ink-soft)}.set-sheet .set-group{margin:0 var(--s-4) var(--s-3)}.set-sheet-btns{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-1) var(--s-4) 0}.set-btn{height:48px;border-radius:var(--r-lg);border:var(--border-soft);background:var(--surface);color:var(--ink-2);cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);display:flex;align-items:center;justify-content:center}.set-btn--primary{border:0;background:var(--alann-chrome);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome)}.set-btn--danger{border:0;background:var(--danger);color:#fff}.set-btn:hover{background:var(--ink-wash)}.set-btn--primary:hover{background:var(--alann-chrome-hi)}.set-btn--danger:hover{background:var(--danger);filter:brightness(.94)}.set-opt{display:flex;align-items:center;gap:var(--s-3);width:100%;text-align:left;padding:var(--s-3);min-height:60px;background:transparent;border:0;border-bottom:var(--border-hair);cursor:pointer;font:inherit;color:inherit}.set-opt:last-child{border-bottom:0}.set-opt:hover:not(:disabled){background:var(--ink-wash)}.set-opt--disabled{opacity:.6;cursor:not-allowed}.set-opt-dot{width:34px;height:34px;border-radius:var(--r-pill);flex-shrink:0;background:var(--surface-alt);color:var(--ink-2);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-bold)}.set-opt-dot--unified{background:var(--alann-chrome);color:var(--fg-on-graphite)}.set-opt-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.set-opt-ttl{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-2)}.set-opt-sub{font-family:var(--font-sans);font-size:var(--fs-caption);color:var(--ink-soft)}.set-radio{width:20px;height:20px;border-radius:var(--r-pill);border:1.5px solid var(--neutral-300);flex-shrink:0;display:flex;align-items:center;justify-content:center}.set-opt[aria-checked=true] .set-radio{border-color:var(--alann-graphite);background:var(--alann-graphite)}.set-opt[aria-checked=true] .set-radio:after{content:"";width:7px;height:7px;border-radius:var(--r-pill);background:var(--fg-on-graphite)}.set-spinner{width:18px;height:18px;border:2px solid var(--neutral-300);border-top-color:var(--ink-soft);border-radius:var(--r-pill);flex-shrink:0;animation:set-spin .7s linear infinite}@keyframes set-spin{to{transform:rotate(360deg)}}.settings-add-account-btn{display:flex;align-items:center;gap:var(--s-3);width:100%;padding:13px var(--s-3);min-height:52px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink-2);text-align:left;transition:background var(--dur-fast) var(--ease-out)}.settings-add-account-btn:hover{background:var(--ink-wash)}.settings-add-account-btn:disabled{opacity:.6;cursor:default}.settings-add-account-icon{width:34px;height:34px;border-radius:var(--r-md);background:var(--surface-alt);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ink-soft)}.settings-account-spinner{width:16px;height:16px;border:2px solid var(--neutral-300);border-top-color:var(--ink-soft);border-radius:var(--r-pill);flex-shrink:0;animation:set-spin .7s linear infinite}.email-details-container{width:100%;max-width:100%;margin:0;height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;padding-top:env(safe-area-inset-top,0px);padding-bottom:var(--bottom-nav-height, 0px)}.app-container.web .email-details-container{padding-bottom:0}.email-details-topbar{flex:0 0 auto;padding:var(--s-2) 11px 6px 11px;display:flex;align-items:center;gap:4px;background:var(--surface)}.email-details-back{height:36px;padding:0 10px 0 6px;border-radius:var(--r-pill);background:transparent;border:0;color:var(--ink);font-family:var(--font-sans);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:-.005em;display:inline-flex;align-items:center;gap:4px;cursor:pointer;box-shadow:none;transition:background var(--dur-fast) var(--ease-out)}.email-details-back:hover{background:var(--ink-wash)}.email-details-back:active{transform:scale(.96)}.email-details-back svg{width:14px;height:14px}.email-details-topbar-sp{flex:1}.email-details-body{flex:1;min-height:0;overflow-y:auto;padding:0 var(--s-4);display:flex;flex-direction:column}.email-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s-4)}.email-subject{margin:0;font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);color:var(--ink-2)}.email-actions button{margin-left:var(--s-2)}.email-meta{font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink-soft);margin-bottom:var(--s-4)}.email-preview-box{background:var(--surface);border:var(--border-card);padding:var(--s-3);border-radius:var(--r-sm);margin-bottom:var(--s-4)}.email-preview-header{font-family:var(--font-sans);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink);margin-bottom:var(--s-1)}.email-subject-multiline{margin-top:0;margin-bottom:var(--s-3);font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);line-height:var(--lh-snug);color:var(--ink-2);word-break:break-word;text-align:left}.email-header-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:12px 0;margin-bottom:var(--s-4);border-top:1px solid var(--ink-hairline);border-bottom:1px solid var(--ink-hairline)}.sender-avatar{width:38px;height:38px;border-radius:var(--r-pill);background:var(--alann-graphite);color:var(--fg-on-graphite);font-family:var(--font-sans);font-weight:var(--fw-bold);font-size:12px;line-height:1;letter-spacing:-.02em;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-chrome)}.email-header-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.email-from-name{font-family:var(--font-sans);font-weight:var(--fw-bold);font-size:13px;line-height:1.2;letter-spacing:-.01em;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-recipients{font-family:var(--font-mono);font-weight:500;font-size:11px;line-height:1.3;letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-recipients-label{color:var(--ink-soft);font-family:var(--font-sans);text-transform:none;letter-spacing:-.005em}.email-when{text-align:right;font-family:var(--font-mono);font-weight:500;font-size:11px;line-height:1.3;letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap}.email-body-frame-wrap{display:block;width:100%;margin:var(--s-4) 0;flex-shrink:0}.email-body-frame{display:block;width:100%;border:0;min-height:120px}.email-details-tray{position:sticky;bottom:0;margin:var(--s-4) calc(var(--s-4) * -1) 0;padding:10px 14px;background:var(--surface);border-top:1px solid var(--ink-hairline);display:grid;grid-template-columns:1fr 1fr auto;gap:var(--s-2);align-items:center;z-index:4;box-shadow:0 -8px 20px #0e11140a;margin-top:auto}.email-details-tray-btn{height:40px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--ink-hairline);background:var(--neutral-100);color:var(--ink);font-family:var(--font-sans);font-size:12.5px;font-weight:var(--fw-semibold);letter-spacing:-.005em;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);cursor:pointer;box-shadow:none;transition:background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.email-details-tray-btn:hover{background:var(--surface-alt)}.email-details-tray-btn:active{transform:scale(.97)}.email-details-tray-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.email-details-tray-btn svg{width:14px;height:14px}.email-details-tray-btn.primary{background:var(--alann-graphite);color:var(--fg-on-graphite);border-color:transparent;box-shadow:var(--shadow-chrome)}.email-details-tray-btn.primary:hover{background:var(--alann-graphite-mid)}.email-details-tray-btn.danger{width:44px;padding:0;color:var(--danger);background:var(--surface)}.email-details-tray-btn.danger:hover{background:#e23d3d14;color:var(--danger)}.email-details-tray-btn.danger svg{width:18px;height:18px}.inline-error-banner{display:flex;align-items:center;gap:var(--s-3);margin:var(--s-3) 0;padding:10px var(--s-3);background:#e23d3d14;color:var(--danger);border:1px solid rgba(226,61,61,.25);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge)}.btn-link{background:none;border:none;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);cursor:pointer;padding:0;text-decoration:underline;box-shadow:none}.email-attachments{margin-top:var(--s-5)}.attachments-header{font-family:var(--font-sans);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);color:var(--ink);margin-bottom:var(--s-3)}.attachments-grid{display:flex;flex-wrap:wrap;gap:var(--s-3)}.attachment-card{position:relative;width:180px;height:120px;background:var(--surface);border:var(--border-card);border-radius:var(--r-sm);overflow:hidden;cursor:pointer;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);display:flex;align-items:center;justify-content:center}.attachment-card:hover{transform:scale(1.02);box-shadow:var(--shadow-1)}.attachment-preview-image{max-width:100%;max-height:100%;object-fit:contain;display:block}.attachment-preview-generic{max-width:80%;max-height:80%;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--neutral-100);border-radius:var(--r-xs)}.attachment-meta{position:absolute;bottom:0;left:0;right:0;background:#0e111499;color:var(--fg-on-graphite);padding:var(--s-1) var(--s-2);display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity var(--dur-base) var(--ease-out);font-family:var(--font-sans);font-size:var(--fs-caption)}.attachment-card:hover .attachment-meta{opacity:1}.attachment-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-size{font-size:var(--fs-micro)}.attachment-meta button{font-size:var(--fs-micro);padding:2px var(--s-1);background:#fff3;color:var(--fg-on-graphite);border:1px solid rgba(255,255,255,.35);border-radius:var(--r-xs);cursor:pointer;box-shadow:none;font-weight:var(--fw-medium);letter-spacing:var(--track-nudge)}.attachment-meta button:hover{background:#ffffff59}.app-container.web .email-details-container{background:var(--surface)}.app-container.web .email-details-topbar{padding:14px 28px 10px;background:var(--canvas);border-bottom:1px solid var(--ink-hairline);gap:10px}.app-container.web .email-details-back{height:28px;padding:0 12px 0 8px;background:var(--surface);border:1px solid var(--ink-hairline);font-size:11px;letter-spacing:-.005em;border-radius:999px}.app-container.web .email-details-back svg{width:11px;height:11px}.app-container.web .email-details-body{padding:6px 40px 0}.app-container.web .email-details-body::-webkit-scrollbar{width:10px}.app-container.web .email-details-body::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:999px;border:3px solid var(--surface)}.app-container.web .email-subject-multiline{margin:16px 0;font-family:var(--font-display);font-weight:800;font-size:26px;line-height:1.15;letter-spacing:-.025em;color:var(--ink-2);max-width:720px}.app-container.web .email-header-row{max-width:720px;grid-template-columns:38px 1fr auto;padding:14px 0;margin-bottom:0;border-top:1px solid var(--ink-hairline);border-bottom:1px solid var(--ink-hairline)}.app-container.web .sender-avatar{background:var(--surface-alt);color:var(--ink);box-shadow:inset 0 1px #fff9}.app-container.web .email-body-frame-wrap{max-width:680px}.app-container.web .email-attachments{max-width:720px}.app-container.web .email-details-tray{display:flex;align-items:center;gap:var(--s-2);margin:22px -40px 0;padding:12px 40px;background:var(--surface);border-top:1px solid var(--ink-hairline);box-shadow:0 -8px 20px #0e11140a;grid-template-columns:none}.app-container.web .email-details-tray-btn{height:32px;padding:0 14px;font-size:12px;flex:0 0 auto}.app-container.web .email-details-tray-btn.danger{margin-left:auto;width:36px}.app-container.web .email-details-tray-btn.danger svg{width:14px;height:14px}.swipe-back{position:relative;height:100vh;height:100dvh;overflow:hidden;isolation:isolate}.swipe-back-fore{position:relative;z-index:1;height:100%}.swipe-back:not([data-phase=idle]) .swipe-back-fore{transform:translate3d(var(--sb-x, 0px),0,0);will-change:transform}.swipe-back-fore:before{content:"";position:absolute;top:0;bottom:0;left:0;width:18px;transform:translate(-18px);background:linear-gradient(to left,#0e111433,#0e111400);opacity:var(--sb-p, 0);pointer-events:none}.swipe-back-curtain{position:absolute;inset:0;z-index:0;background:var(--canvas);transform:translate3d(calc((var(--sb-p, 0) - 1) * 24%),0,0)}.swipe-back:not([data-phase=idle]) .swipe-back-curtain{will-change:transform}.swipe-back-scrim{position:absolute;inset:0;background:var(--alann-graphite);opacity:calc((1 - var(--sb-p, 0)) * .28)}.swipe-back[data-phase=settling] .swipe-back-fore,.swipe-back[data-phase=settling] .swipe-back-curtain{transition:transform var(--dur-base) var(--ease-out)}.swipe-back[data-phase=settling] .swipe-back-scrim,.swipe-back[data-phase=settling] .swipe-back-fore:before{transition:opacity var(--dur-base) var(--ease-out)}@media(prefers-reduced-motion:reduce){.swipe-back-curtain{transform:none}}.propose-container{max-width:520px;margin:0 auto;padding:var(--s-4);background:var(--canvas);color:var(--ink);font-family:var(--font-sans)}.propose-header{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);line-height:var(--lh-snug);color:var(--ink-2);margin-bottom:var(--s-4)}.propose-field{display:flex;flex-direction:column;margin-bottom:14px}.propose-field label{font-family:var(--font-sans);font-size:var(--fs-body-sm);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-soft);margin-bottom:var(--s-2)}.propose-field input,.propose-field textarea{border:var(--border-soft);border-radius:var(--r-sm);padding:10px var(--s-3);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);background:var(--surface);color:var(--ink);outline:none;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.propose-field input:focus,.propose-field textarea:focus{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.propose-field textarea{min-height:80px;resize:vertical}.propose-title{padding:10px var(--s-3);border-radius:var(--r-sm);background:var(--surface);border:var(--border-card);font-family:var(--font-sans);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);font-size:var(--fs-body);color:var(--ink)}.propose-actions{display:flex;gap:var(--s-3);margin-top:var(--s-5)}.propose-btn{flex:1;padding:12px var(--s-4);border-radius:var(--r-pill);border:none;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer;transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.propose-btn:active{transform:scale(.98)}.propose-btn-primary{background:var(--alann-chrome);color:var(--fg-on-graphite);box-shadow:var(--shadow-chrome)}.propose-btn-primary:hover{background:var(--alann-chrome-hi)}.propose-btn-secondary{background:transparent;color:var(--ink);border:var(--border-soft);box-shadow:none}.propose-btn-secondary:hover{background:var(--ink-wash)}@media(max-width:480px){.propose-container{padding:14px}.propose-btn{font-size:var(--fs-body-sm);padding:11px}}.search-page{width:100%;max-width:100%;padding-bottom:calc(var(--bottom-nav-height) + var(--s-4));overflow-x:hidden;background:var(--canvas);color:var(--ink)}.search-permission-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-4);padding:var(--s-8) var(--s-6);text-align:center}.search-permission-text{font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink-soft);letter-spacing:var(--track-nudge);line-height:var(--lh-reading);max-width:280px;margin:0}.search-page-bar{display:flex;align-items:center;width:95%;margin:var(--s-3) auto var(--s-4);background:var(--surface);border:var(--border-soft);border-radius:var(--r-md);overflow:hidden;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.search-page-bar:focus-within{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.search-page-input{flex:1;border:none;outline:none;background:transparent;padding:10px var(--s-3);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);color:var(--ink);min-width:0}.search-page-input::placeholder{color:var(--ink-muted)}.search-page-input::-webkit-search-cancel-button{display:none}.search-page-clear{flex-shrink:0;background:none;border:none;box-shadow:none;cursor:pointer;padding:0 var(--s-3);font-family:var(--font-sans);font-size:var(--fs-caption);color:var(--ink-muted);line-height:1;transition:color var(--dur-fast) var(--ease-out)}.search-page-clear:hover{background:transparent;color:var(--ink)}.search-page-loading,.search-page-empty,.search-page-error,.search-page-prompt{padding:var(--s-6);font-family:var(--font-sans);font-size:var(--fs-body);color:var(--ink-soft)}.search-file-list{list-style:none;margin:0;padding:0}.search-file-item{display:flex;align-items:center;gap:var(--s-3);padding:10px var(--s-4);width:100%;border:none;border-bottom:var(--border-hair);background:none;box-shadow:none;text-align:left;cursor:pointer;color:var(--ink);font-family:var(--font-sans);border-radius:0}.search-file-item:active,.search-file-item:hover{background:var(--ink-wash)}.search-file-item--loading{opacity:.6;cursor:default}.search-file-spinner{flex-shrink:0;width:16px;height:16px;border:2px solid var(--ink-hairline);border-top-color:var(--alann-graphite);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.search-file-icon{width:24px;height:24px;flex-shrink:0}.search-file-info{flex:1;min-width:0}.search-file-name{font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-file-meta{font-size:var(--fs-caption);color:var(--ink-soft);letter-spacing:var(--track-nudge);margin-top:2px}.create-doc-fab{position:fixed;bottom:calc(var(--bottom-nav-height) + var(--s-5));right:var(--s-5);width:56px;height:56px;border-radius:50%;background:var(--alann-chrome);color:var(--fg-on-graphite);font-size:28px;line-height:1;border:none;cursor:pointer;box-shadow:var(--shadow-chrome);z-index:1100;display:flex;align-items:center;justify-content:center;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-base) var(--ease-out)}.create-doc-fab:hover{background:var(--alann-chrome-hi)}.create-doc-fab:active{transform:scale(.96)}.create-doc-overlay{position:fixed;inset:0;background:#0e111466;display:flex;align-items:center;justify-content:center;z-index:1200}.create-doc-modal{background:var(--surface);border:var(--border-card);border-radius:var(--r-lg);padding:var(--s-6) var(--s-5) var(--s-5);width:min(340px,90vw);box-shadow:var(--shadow-2)}.create-doc-title{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:var(--fw-bold);letter-spacing:var(--track-tight);margin:0 0 var(--s-4);color:var(--ink-2)}.create-doc-input,.create-doc-textarea{width:100%;box-sizing:border-box;padding:10px var(--s-3);border:var(--border-soft);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:var(--fs-body);letter-spacing:var(--track-nudge);background:var(--surface);color:var(--ink);outline:none;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.create-doc-textarea{margin-top:var(--s-3);resize:vertical}.create-doc-input:focus,.create-doc-textarea:focus{border-color:var(--alann-graphite);box-shadow:0 0 0 3px #0e111414}.create-doc-error{margin:var(--s-2) 0 0;font-size:var(--fs-caption);color:var(--danger)}.create-doc-actions{display:flex;justify-content:flex-end;gap:var(--s-2);margin-top:var(--s-5)}.create-doc-cancel{padding:var(--s-2) var(--s-4);border-radius:var(--r-pill);border:none;background:transparent;box-shadow:none;font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--track-nudge);color:var(--ink-soft);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}.create-doc-cancel:hover{background:var(--ink-wash)}.create-doc-confirm{padding:var(--s-2) var(--s-5);border-radius:var(--r-pill);border:none;background:var(--alann-chrome);color:var(--fg-on-graphite);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-semibold);letter-spacing:var(--track-nudge);cursor:pointer;box-shadow:var(--shadow-chrome);transition:background var(--dur-base) var(--ease-out)}.create-doc-confirm:hover:not(:disabled){background:var(--alann-chrome-hi)}.create-doc-confirm:disabled{opacity:.5;cursor:default}
