.happ-web-shell{--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--slate-950:#020617;--sand-50:#faf7f2;--sand-100:#f4eee4;--sand-200:#e9dfce;--sand-300:#d9c9b0;--sand-400:#c3ad8c;--amber-300:#fbd089;--amber-400:#f7b948;--amber-500:#f5a623;--amber-600:#db8e12;--amber-700:#b5710c;--amber-800:#8f590c;--clay-300:#e0ad92;--clay-400:#d08a6a;--clay-500:#be6b47;--clay-600:#a1542f;--clay-700:#7f4124;--sage-200:#d4dac1;--sage-300:#b5be9e;--olive-500:#6e7b4f;--olive-600:#57633d;--olive-700:#44502f;--coffee-500:#8a6f5a;--coffee-600:#6b5544;--coffee-700:#4f3f33;--coffee-800:#43342a;--green-500:#5e7c4e;--green-600:#4c6740;--red-400:#d36450;--red-500:#c0432f;--red-600:#9e3322;--blue-500:#4a6b8a;--blue-600:#3a5571;--bg-page:var(--sand-50);--bg-list:#fff;--bg-subtle:#f1efe8;--bg-surface:#fff;--bg-elevated:#fff;--bg-inverse:var(--slate-900);--bg-accent-subtle:#fdf2dc;--bg-clay-subtle:#f6e8e0;--bg-sage-subtle:#eef0e6;--text-primary:var(--slate-900);--text-secondary:var(--slate-600);--text-tertiary:var(--slate-400);--text-disabled:var(--slate-300);--text-inverse:var(--slate-50);--text-accent:var(--amber-700);--text-on-accent:var(--slate-900);--text-link:var(--blue-600);--border-subtle:var(--slate-200);--border-default:var(--slate-300);--border-strong:var(--slate-400);--border-accent:var(--amber-500);--ring-focus:color-mix(in srgb, var(--amber-500) 35%, transparent);--success:var(--green-500);--success-bg:#eaf0e3;--warning:var(--amber-600);--warning-bg:#fdf2dc;--danger:var(--red-500);--danger-bg:#f8e6e1;--info:var(--blue-500);--info-bg:#e7edf2;--font-sans:"Hanken Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--shadow-xs:0 1px 2px #0f172a0d;--shadow-sm:0 1px 3px #0f172a0f, 0 1px 2px #0f172a0a;--shadow-md:0 4px 12px #0f172a14, 0 2px 4px #0f172a0a;--shadow-lg:0 12px 28px #0f172a1a, 0 4px 8px #0f172a0d;--shadow-xl:0 24px 48px #0f172a1f, 0 8px 16px #0f172a0f;--shadow-accent:0 6px 16px color-mix(in srgb, var(--amber-500) 28%, transparent);--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:.32s}.happ-web-shell button{transition:transform var(--dur-fast) var(--ease-out,ease)}.happ-web-shell button:active:not(:disabled){transform:scale(.97)}.happ-web-shell .web-row:active,.happ-web-shell .web-newai-btn:active,.happ-web-shell .web-ibtn:active{transform:scale(.985)}@media (prefers-reduced-motion:reduce){.happ-web-shell button:active:not(:disabled),.happ-web-shell .web-row:active,.happ-web-shell .web-newai-btn:active,.happ-web-shell .web-ibtn:active{transform:none}}.happ-web-shell .t-display-2xl{font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:-.03em;color:var(--text-primary);font-size:3.75rem;line-height:1.04}.happ-web-shell .t-body-lg{font-family:var(--font-sans);font-weight:var(--fw-regular);color:var(--text-secondary);font-size:1.125rem;line-height:1.6}.happ-web-shell .t-body{font-family:var(--font-sans);font-weight:var(--fw-regular);color:var(--text-secondary);font-size:1rem;line-height:1.6}.happ-web-shell .t-body-sm{font-family:var(--font-sans);font-weight:var(--fw-regular);color:var(--text-secondary);font-size:.875rem;line-height:1.55}.happ-web-shell{box-sizing:border-box}.happ-web-shell,.happ-web-shell{margin:0}.happ-web-shell{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#e8e6e1;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.happ-web-shell .m-screen{background:#fff;flex-direction:column;height:100%;display:flex;position:relative}.happ-web-shell .m-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.happ-web-shell .m-body::-webkit-scrollbar{display:none}.happ-web-shell .m-header{z-index:5;background:#fff;padding:3.75rem 1.125rem .75rem;position:sticky;top:0}.happ-web-shell .m-tabbar{border-top:1px solid var(--border-subtle);background:#fff;padding:.5rem .375rem 1.875rem;display:flex}.happ-web-shell .m-list{padding:.25rem 0}.happ-web-shell .m-msg{gap:.5625rem;margin:.875rem 0;display:flex}.happ-web-shell .avatar{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.happ-web-shell .pill{border-radius:999px;align-items:center;gap:.375rem;padding:.1875rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.happ-web-shell .pill .pd{border-radius:50%;width:6px;height:6px}@keyframes happBlink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.happ-web-shell .hm-screen{background:var(--slate-50);flex-direction:column;height:100%;display:flex}.happ-web-shell .hm-sheet{scrollbar-width:none;background:#fff;border-radius:22px 22px 0 0;flex:1;min-height:0;padding-bottom:6rem;overflow-y:auto;box-shadow:0 -2px 14px #0f172a0d}.happ-web-shell .hm-tiles{scrollbar-width:none;gap:.6875rem;padding:1.125rem 1rem .375rem;display:flex;overflow-x:auto}.happ-web-shell .hm-sec{border-top:1px solid var(--border-subtle);padding:.25rem 0}.happ-web-shell .ask-fab{z-index:20;border:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring);background:#fff;border-radius:999px;align-items:center;gap:.5rem;padding:.6875rem 1.25rem .6875rem .9375rem;display:inline-flex;position:absolute;bottom:86px;left:50%;transform:translate(-50%)}.happ-web-shell .nav-wrap{z-index:22;pointer-events:none;background:0 0;align-items:center;gap:.6875rem;padding:.5rem .875rem 1.625rem;display:flex;position:absolute;bottom:0;left:0;right:0}.happ-web-shell .act-sheet{z-index:41;border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);opacity:0;transform-origin:100% 100%;transition:transform var(--dur-base) var(--ease-out), opacity var(--dur-base) var(--ease-out);pointer-events:none;background:#fff;padding:.4375rem;position:absolute;bottom:96px;left:14px;right:14px;transform:translateY(12px)scale(.98)}.happ-web-shell .ts-head{z-index:5;border-bottom:1px solid var(--border-subtle);background:#fff;padding:3.375rem 1.125rem .875rem;position:sticky;top:0}.happ-web-shell .ts-body{scrollbar-width:none;flex:1;padding-bottom:6.25rem;overflow-y:auto}.happ-web-shell .ts-body::-webkit-scrollbar{display:none}.happ-web-shell .h-top{z-index:6;border-bottom:1px solid var(--border-subtle);background:#fff;padding:3.375rem .875rem 0;position:sticky;top:0}.happ-web-shell .chips{scrollbar-width:none;gap:.5rem;padding:.75rem .875rem;display:flex;overflow-x:auto}.happ-web-shell .ib-row{cursor:pointer;transition:background var(--dur-fast) var(--ease-out);align-items:center;gap:.75rem;padding:.8125rem 1rem;display:flex}.happ-web-shell .empty-hint{border:1px solid var(--border-subtle);border-radius:var(--radius-md);text-align:center;color:var(--text-tertiary);background:#f6f6f5;padding:.625rem .75rem;font-size:.8125rem;line-height:1.45}.happ-web-shell[data-theme=dark] .empty-hint{background:#17171a}.happ-web-shell .scrim{z-index:40;opacity:0;transition:opacity var(--dur-base) var(--ease-out);background:#0f172a6b;position:absolute;inset:0}.happ-web-shell .scrim.show{opacity:1}.happ-web-shell .sheet-body{scrollbar-width:none;flex:1;padding:1rem 1.125rem;overflow-y:auto}.happ-web-shell .sheet-body::-webkit-scrollbar{display:none}.happ-web-shell .field-lab{color:var(--slate-700);margin-bottom:.4375rem;font-size:.8125rem;font-weight:600}.happ-web-shell .person{border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast);align-items:center;gap:.75rem;padding:.6875rem .5rem;display:flex}.happ-web-shell .ch-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);align-items:center;gap:.8125rem;margin-bottom:.75rem;padding:.875rem;display:flex}.happ-web-shell .btn-pill{font-family:var(--font-sans);border-radius:var(--radius-md);border:1px solid var(--border-default);color:var(--slate-700);cursor:pointer;white-space:nowrap;transition:all var(--dur-fast);background:#fff;padding:.5rem .875rem;font-size:.8125rem;font-weight:600}.happ-web-shell .btn-pill:active{transform:scale(.96)}.happ-web-shell .btn-pill.joined{color:var(--text-tertiary);background:var(--slate-50)}.happ-web-shell .btn-pill.new-ch{color:var(--slate-800);font-weight:600}.happ-web-shell .fld-tile{background:var(--sand-200);border-radius:10px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.happ-web-shell .folder-foot{text-align:left;align-items:center;gap:.75rem;display:flex}.happ-web-shell .dash-back{border-bottom:1px solid var(--border-subtle);color:var(--slate-800);cursor:pointer;z-index:4;background:#fff;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:600;display:flex;position:sticky;top:0}.happ-web-shell .claude-badge .pd{background:var(--amber-600);border-radius:50%;width:7px;height:7px}.happ-web-shell .fade-in{animation:happRise var(--dur-base) var(--ease-out) both}@keyframes happRise{0%{transform:translateY(8px)}to{transform:translateY(0)}}.happ-web-shell .sys-menu{z-index:30;border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:150px;animation:happRise var(--dur-fast) var(--ease-out) both;background:#fff;padding:.375rem;position:absolute;top:92px;right:14px}.happ-web-shell{background:#cfd4d6}.happ-web-shell .hm-tile:active,.happ-web-shell .mod-card:active,.happ-web-shell .ch-card:active{transform:none!important}.happ-web-shell .nav-wrap{z-index:22;pointer-events:none;padding:0;display:block;position:absolute;bottom:0;left:0;right:0}.happ-web-shell .nav-wrap>*{pointer-events:auto}.happ-web-shell .m3-navbar{transition:transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);background:#fff;align-items:stretch;padding:.375rem 0 1.375rem;display:flex;box-shadow:0 -6px 20px #0f172a0d}.happ-web-shell .m3-navbar.hidden{box-shadow:none;transform:translateY(100%)}.happ-web-shell .m3-nav-item{cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;align-items:center;gap:.1875rem;min-width:0;display:flex}.happ-web-shell .m3-nav-pill{border-radius:var(--radius-full);width:52px;height:28px;color:var(--slate-500);transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.happ-web-shell .m3-nav-label{letter-spacing:.01em;color:var(--slate-600);white-space:nowrap;align-items:center;gap:.0625rem;font-size:.6875rem;font-weight:600;display:inline-flex}.happ-web-shell .m3-fab{z-index:24;border-radius:var(--radius-xl);background:var(--amber-500);width:60px;height:60px;color:var(--text-on-accent);cursor:pointer;box-shadow:0 3px 6px #0f172a29, 0 8px 22px color-mix(in srgb, var(--amber-500) 32%, transparent);transition:background var(--dur-fast), box-shadow var(--dur-base) var(--ease-out);border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:104px;right:16px}.happ-web-shell .m3-fab svg{transition:transform var(--dur-base) var(--ease-spring)}.happ-web-shell .m3-fab:active{box-shadow:0 1px 3px #0f172a33}.happ-web-shell .m3-fab.open{background:var(--bg-accent-subtle);color:var(--slate-900);box-shadow:0 2px 8px #0f172a1f}.happ-web-shell .m3-fab.open svg{transform:rotate(45deg)}.happ-web-shell .act-sheet{border-radius:var(--radius-md);transform-origin:100% 100%;border:none;width:280px;padding:.5rem;bottom:176px;left:auto;right:16px;box-shadow:0 2px 6px #0f172a1f,0 12px 32px #0f172a33}.happ-web-shell .hm-ico,.happ-web-shell .ts-iconbtn,.happ-web-shell .m-iconbtn,.happ-web-shell .h-icon{transition:background var(--dur-fast) var(--ease-out);background:0 0!important;border:none!important}.happ-web-shell .hm-search{background:var(--slate-100);border-radius:var(--radius-full);color:var(--slate-500);border:none;padding:.75rem 1rem;font-weight:500}.happ-web-shell .search-box{border-radius:var(--radius-xs);border-width:1.5px}.happ-web-shell .seg{gap:0;padding:.875rem 1.125rem .375rem}.happ-web-shell .chip{border-radius:var(--radius-xs);border-color:var(--border-strong);padding:.4375rem .875rem}.happ-web-shell .btn-pill{border-radius:var(--radius-full);border-color:var(--border-strong);padding:.5625rem 1.125rem}.happ-web-shell .btn-pill:active{background:var(--slate-100);transform:none}.happ-web-shell .btn-pill.joined{background:var(--bg-accent-subtle);color:var(--amber-800);border-color:#0000}.happ-web-shell .btn-pill.new-ch{background:var(--slate-900);color:#fff;border-color:#0000}.happ-web-shell .btn-pill.new-ch:active{background:var(--slate-800)}.happ-web-shell .m-card,.happ-web-shell .mod-card{border-radius:var(--radius-sm);border:none;box-shadow:0 1px 2px #0f172a14,0 1px 3px #0f172a0f}.happ-web-shell .m-composer{padding:.625rem .875rem 1.625rem}.happ-web-shell .ai-tab .m-composer{padding-bottom:6.5rem}.happ-web-shell .ai-modal{z-index:41;transition:transform var(--dur-slow) var(--ease-out);background:#fff;border-radius:28px 28px 0 0;flex-direction:column;display:flex;position:absolute;inset:40px 0 0;overflow:hidden;transform:translateY(100%);box-shadow:0 -10px 44px #0f172a3d}.happ-web-shell .ai-tab .m-header.flush{z-index:10;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--border-subtle);background:#fff;padding-top:3.125rem;position:absolute;top:0;left:0;right:0}.happ-web-shell .ai-tab .m-body{padding-top:9.375rem!important}.happ-web-shell .ai-tab .m-body:has(.ainx){padding-top:6.75rem!important}.happ-web-shell .ai-modal-screen .m-header.flush{z-index:12;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--border-subtle);background:#fff;border-radius:28px 28px 0 0;padding:.625rem 1.125rem .75rem;position:relative}.happ-web-shell .ai-modal-screen .m-body{padding-top:.5rem!important}.happ-web-shell .cb-bar{flex:1;align-items:center;gap:.25rem;width:100%;display:flex;position:relative}.happ-web-shell .cb-tools{opacity:1;max-width:92px;transition:max-width .28s cubic-bezier(.2,0,0,1), opacity .2s var(--ease-out), margin .28s cubic-bezier(.2,0,0,1);align-items:center;gap:.25rem;display:flex;overflow:visible}.happ-web-shell .cb-input{background:var(--slate-100);border-radius:var(--radius-full);min-width:0;height:44px;font-family:var(--font-sans);color:var(--slate-900);border:none;outline:none;flex:1;margin:0 .25rem;padding:0 1.125rem;font-size:.9375rem;font-weight:500}.happ-web-shell .ai-kb{flex:none;animation:.24s cubic-bezier(.2,0,0,1) both kbUp;overflow:hidden}@keyframes kbUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.happ-web-shell .cb-menu-scrim{z-index:40;position:fixed;inset:0}.happ-web-shell .cb-clock{gap:.375rem;padding:.25rem .25rem .375rem;display:flex}@keyframes cbMenuIn{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.happ-web-shell .ai-status{color:var(--olive-700);align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;display:inline-flex}@keyframes aiPulse{0%,to{box-shadow:0 0 0 2px #5e7c4e38}50%{box-shadow:0 0 0 5px #5e7c4e0f}}.happ-web-shell .ai-menu-scrim{z-index:30;position:fixed;inset:0}.happ-web-shell .ct-tabs{align-items:stretch;gap:.25rem;margin-top:.625rem;display:flex}.happ-web-shell .ct-empty{text-align:center;flex-direction:column;align-items:center;padding:3rem 1.5rem 1.75rem;display:flex}@keyframes ctPop{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes ctRise{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.happ-web-shell .ct-searchpill{border-radius:var(--radius-full);background:var(--slate-100);flex:1;align-items:center;gap:.5rem;height:42px;padding:0 .375rem 0 .875rem;display:flex}.happ-web-shell .m-bubble[style*="rgb(15, .happ-web-shell 23, .happ-web-shell 42)"] .ct-hl{background:color-mix(in srgb, var(--amber-500) 55%, transparent);color:#fff}.happ-web-shell .sheet-count-pill{border-radius:var(--radius-full);background:var(--slate-100);min-width:24px;height:24px;font-family:var(--font-sans);color:var(--slate-600);justify-content:center;align-items:center;margin-left:auto;padding:0 .5rem;font-size:.78125rem;font-weight:700;display:inline-flex}.happ-web-shell .foot-action .m3-filled,.happ-web-shell .foot-edit .m3-filled{flex:1}.happ-web-shell .m3-text{border-radius:var(--radius-full);height:40px;font-family:var(--font-sans);color:var(--slate-600);cursor:pointer;background:0 0;border:none;flex:none;padding:0 1.125rem;font-size:.875rem;font-weight:700}.happ-web-shell .m3-text:active{background:var(--slate-100)}.happ-web-shell .pf-identity{text-align:center;flex-direction:column;align-items:center;padding:.5rem 0 1.375rem;display:flex}.happ-web-shell .m3-dialog-scrim{z-index:60;opacity:0;transition:opacity var(--dur-base) var(--ease-out);background:#0f172a6b;justify-content:center;align-items:center;padding:1.75rem;display:flex;position:absolute;inset:0}.happ-web-shell .m3-dialog-scrim.show{opacity:1}.happ-web-shell .m3-dialog{text-align:center;opacity:0;width:min(320px,100%);transition:transform var(--dur-base) var(--ease-spring), opacity var(--dur-base) var(--ease-out);background:#fff;border-radius:28px;flex-direction:column;align-items:center;padding:1.5rem;display:flex;position:relative;transform:scale(.85);box-shadow:0 14px 50px #0f172a47}.happ-web-shell .m3-dialog-close{border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.happ-web-shell .m3-dialog-close:active{background:var(--sand-100)}.happ-web-shell .m3-dialog.show{opacity:1;transform:scale(1)}.happ-web-shell .m3-dialog-icon{border-radius:var(--radius-full);background:var(--bg-accent-subtle);justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;display:inline-flex}.happ-web-shell .m3-dialog-headline{font-family:var(--font-display);letter-spacing:-.01em;color:var(--slate-900);margin:0;font-size:1.375rem;font-weight:800}.happ-web-shell .m3-dialog-body{font-family:var(--font-sans);color:var(--slate-600);text-wrap:pretty;margin:.5625rem 0 0;font-size:.875rem;line-height:1.5}.happ-web-shell .m3-dialog-actions{gap:.625rem;width:100%;margin-top:1.5rem;display:flex}.happ-web-shell .m3-dialog-btn{border-radius:var(--radius-full);height:48px;font-family:var(--font-sans);cursor:pointer;transition:filter var(--dur-fast) var(--ease-out);border:none;flex:1;padding:0 1.125rem;font-size:.90625rem;font-weight:700}.happ-web-shell .m3-dialog-btn:active{filter:brightness(.96)}.happ-web-shell .m3-dialog-btn.tonal{background:var(--sand-100);color:var(--slate-800)}.happ-web-shell .m3-dialog-btn.filled{background:var(--amber-500);color:var(--text-on-accent)}.happ-web-shell .m3-dialog-btn.danger{background:var(--red-600);color:#fff}.happ-web-shell .m3-dialog-btn:disabled{background:var(--slate-100);color:var(--slate-400);cursor:default}.happ-web-shell .m3-dialog-field-wrap{text-align:left;flex-direction:column;gap:.375rem;width:100%;margin-top:1rem;display:flex}.happ-web-shell .m3-dialog-field-lab{font-family:var(--font-sans);color:var(--text-tertiary);font-size:.78125rem;font-weight:600}.happ-web-shell .m3-dialog-field{box-sizing:border-box;resize:none;background:var(--sand-100);width:100%;font-family:var(--font-sans);color:var(--slate-900);transition:outline-color var(--dur-fast) var(--ease-out);border:none;border-radius:14px;outline:2px solid #0000;padding:.75rem .875rem;font-size:.875rem;line-height:1.45}.happ-web-shell .m3-dialog-field:focus{outline-color:var(--amber-500)}.happ-web-shell .m3-dialog-field::placeholder{color:var(--slate-400)}.happ-web-shell .m3-dialog-detail{background:var(--sand-50);border-radius:16px;width:100%;margin-top:1rem;padding:.25rem .875rem}.happ-web-shell .m3-dd-row{border-bottom:1px solid var(--sand-200);justify-content:space-between;align-items:center;gap:.875rem;padding:.5625rem 0;display:flex}.happ-web-shell .m3-dd-row:last-child{border-bottom:none}.happ-web-shell .m3-dd-k{font-family:var(--font-sans);color:var(--text-tertiary);flex:none;font-size:.78125rem}.happ-web-shell .m3-dd-v{font-family:var(--font-sans);color:var(--slate-900);text-align:right;font-size:.8125rem;font-weight:600}.happ-web-shell .ap-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:stretch;gap:.125rem;margin:.625rem -1.125rem 0;padding:0 .875rem 0 .25rem;display:flex;overflow-x:auto}@keyframes apPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.6)}}.happ-web-shell .hxe-center{text-align:center;flex-direction:column;align-items:center;padding:3.5rem 1.125rem 0;display:flex}.happ-web-shell .nc-markall{white-space:nowrap;border-radius:var(--radius-full);background:var(--bg-accent-subtle);height:34px;color:var(--amber-800);font-family:var(--font-sans);cursor:pointer;transition:filter var(--dur-fast) var(--ease-out);border:none;flex:none;align-items:center;gap:.375rem;padding:0 .8125rem;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .ai-date-pill{background:var(--bg-accent-subtle);border-radius:var(--radius-full);flex:none;align-items:center;height:36px;padding:0 .25rem 0 .125rem;display:inline-flex}.happ-web-shell .dp-scrim{z-index:60;animation:happFade var(--dur-fast) var(--ease-out) both;background:#0f172a6b;position:absolute;inset:0}.happ-web-shell .dp-cell.has{background:var(--bg-accent-subtle);color:var(--amber-800);box-shadow:inset 0 0 0 2px var(--amber-400);font-weight:800}.happ-web-shell .dp-legend{border-top:1px solid var(--border-subtle);justify-content:center;align-items:center;gap:.5rem;margin-top:.375rem;padding:.6875rem .375rem .1875rem;display:flex}.happ-web-shell .ai-divider{justify-content:center;align-items:center;margin:1.125rem 0 .625rem;display:flex}.happ-web-shell .ai-bubble{overflow-wrap:anywhere;border-radius:18px;flex-direction:column;gap:.5rem;padding:.625rem .8125rem;font-size:.90625rem;line-height:1.5;display:flex}.happ-web-shell .ai-bubble[style*="rgb(15, .happ-web-shell 23, .happ-web-shell 42)"] .ai-file{background:#ffffff1f}.happ-web-shell .ai-bubble[style*="rgb(15, .happ-web-shell 23, .happ-web-shell 42)"] .ai-file-name{color:#fff}.happ-web-shell .ai-bubble[style*="rgb(15, .happ-web-shell 23, .happ-web-shell 42)"] .ai-file-meta{color:#ffffffb3}.happ-web-shell .ai-files-cap{letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);margin:.125rem .125rem .75rem;font-size:.75rem;font-weight:700}.happ-web-shell .aif-filters{scrollbar-width:none;gap:.5rem;margin-bottom:.25rem;padding:.125rem 0 .25rem;display:flex;overflow-x:auto}.happ-web-shell .sheet{border-radius:28px 28px 0 0}.happ-web-shell .person:active{background:var(--slate-100)}@keyframes happFade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:no-preference){.happ-web-shell .screen-anim{animation:m3FadeThrough .26s var(--ease-out)}}@keyframes m3FadeThrough{0%{opacity:0;transform:scale(.96)}40%{opacity:0}to{opacity:1;transform:scale(1)}}.happ-web-shell .sys-menu{border-radius:var(--radius-xs);border:none;box-shadow:0 2px 6px #0f172a1f,0 12px 32px #0f172a33}.happ-web-shell .sl-screen{background:#fff;flex-direction:column;height:100%;display:flex}.happ-web-shell .sl-bar{background:#fff;flex:none;align-items:center;gap:.625rem;padding:3.25rem .75rem .5rem 1.125rem;display:flex}.happ-web-shell .sl-feed{scrollbar-width:none;flex:1;min-height:0;padding:.375rem 1rem 7.5rem;overflow-y:auto}.happ-web-shell .nu-wrap{margin:.125rem 0 .75rem}.happ-web-shell .sl-filters{touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:.5rem;margin:0 -1rem .375rem;padding:.125rem 1rem .75rem;display:flex;overflow:auto hidden}.happ-web-shell .sl-chip{border-radius:var(--radius-full);border:1px solid var(--border-default);height:36px;color:var(--slate-700);font-family:var(--font-sans);letter-spacing:-.005em;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;flex:none;align-items:center;gap:.375rem;padding:0 .875rem;font-size:.84375rem;font-weight:600;display:inline-flex}.happ-web-shell .sl-chip:hover,.happ-web-shell .sl-chip:active{background:var(--slate-100)}.happ-web-shell .sl-chip.on{background:var(--bg-accent-subtle);color:var(--amber-800);border-color:#0000}.happ-web-shell .sl-chip.on:hover,.happ-web-shell .sl-chip.on:active{background:var(--sand-200)}.happ-web-shell .sl-chip-check{opacity:0;width:0;transition:width var(--dur-base) var(--ease-spring), margin var(--dur-base) var(--ease-spring), opacity var(--dur-fast) var(--ease-out);align-items:center;margin-left:-.375rem;display:inline-flex;overflow:hidden}.happ-web-shell .sl-chip.on .sl-chip-check{opacity:1;width:16px;margin-left:0}.happ-web-shell .sl-chip-ico{align-items:center;margin-left:-.1875rem;display:inline-flex}.happ-web-shell .sl-chip-count{border-radius:var(--radius-full);background:var(--slate-100);min-width:18px;height:18px;color:var(--slate-600);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 .3125rem;font-size:.71875rem;font-weight:700;line-height:1;display:inline-flex}.happ-web-shell .sl-chip.on .sl-chip-count{background:color-mix(in srgb, var(--amber-700) 16%, transparent);color:var(--amber-800)}.happ-web-shell .sl-chip-count.amber{background:var(--bg-accent-subtle);color:var(--amber-800)}.happ-web-shell .sl-shortcuts{touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;gap:.625rem;margin:0 -1rem .5rem;padding:.25rem 1rem .625rem;display:flex;overflow:auto hidden}.happ-web-shell .sl-sec{border-top:1px solid var(--border-subtle);padding:.25rem 0 .5rem}.happ-web-shell .bl-head{align-items:center;gap:.5rem;width:100%;padding:.8125rem .25rem .625rem;display:flex}.happ-web-shell .bv-screen{z-index:45;animation:bvIn .28s var(--ease-out);background:#fff;flex-direction:column;display:flex;position:absolute;inset:0}@keyframes bvIn{0%{transform:translateY(12px)}to{transform:none}}.happ-web-shell .bv-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:.25rem 1rem 1.375rem;overflow-y:auto}.happ-web-shell .bv-body::-webkit-scrollbar{display:none}.happ-web-shell .sl-acc{transition:height .32s cubic-bezier(.2,0,0,1),opacity .2s cubic-bezier(.2,0,0,1);overflow:hidden}.happ-web-shell .sl-acc>*{transform-origin:top;transition:transform .34s cubic-bezier(.2,0,0,1)}.happ-web-shell .sl-acc[aria-hidden=false]>*{transform:translateY(0)}.happ-web-shell .sl-acc[aria-hidden=true]>*{transform:translateY(-12px)}.happ-web-shell .sl-rows{flex-direction:column;display:flex}.happ-web-shell .sl-row.add .sl-row-name.muted{color:var(--slate-700);font-weight:600}.happ-web-shell{--amber-300:#fbd9a3;--amber-400:#f8c468;--amber-500:#f5a623;--amber-600:#db8c0a;--amber-700:#b8730a;--amber-800:#8a5408;--bg-accent-subtle:#fdf1dd;--border-accent:#f5a623;--ring-focus:color-mix(in srgb, var(--amber-500) 35%, transparent);--text-accent:#b8730a;--text-link:#b8730a;--shadow-accent:0 8px 22px color-mix(in srgb, var(--amber-500) 32%, transparent)}.happ-web-shell .hm-ws-tile,.happ-web-shell .h-logo{background:var(--amber-500);color:var(--text-on-accent)}.happ-web-shell .ts-iconbtn.accent{color:var(--text-accent)}.happ-web-shell .m3-fab{background:var(--amber-500);color:var(--text-on-accent);box-shadow:0 3px 6px #0f172a29, 0 8px 22px color-mix(in srgb, var(--amber-500) 32%, transparent)}.happ-web-shell .m3-fab:active{background:#db8c0a}.happ-web-shell .m3-fab.open{color:var(--slate-900);transform:rotate(45deg)}.happ-web-shell .m3-nav-pill{width:52px;height:28px}.happ-web-shell .m3-nav-item.on .m3-nav-pill{background:var(--bg-accent-subtle);color:var(--amber-800)}.happ-web-shell .m3-nav-item.on .m3-nav-label{color:var(--slate-900);font-weight:700}.happ-web-shell .m3-nav-item:active .m3-nav-pill{background:var(--slate-200)}.happ-web-shell .m3-nav-item.on:active .m3-nav-pill{background:var(--bg-accent-subtle)}.happ-web-shell .slb-tile{width:34px;height:34px;font-family:var(--font-display);background:var(--amber-500);color:var(--text-on-accent);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:1.0625rem;font-weight:800;display:inline-flex}.happ-web-shell .slc-row{cursor:pointer;text-align:left;width:100%;min-height:44px;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:10px;align-items:center;gap:.6875rem;padding:.3125rem .625rem;display:flex}.happ-web-shell .cu-screen{z-index:30;background:var(--slate-50);animation:happRise var(--dur-base) var(--ease-out) both;flex-direction:column;display:flex;position:absolute;inset:0}.happ-web-shell .sl-ws{font-size:1.5rem}.happ-web-shell .sl-sec-head{padding:.875rem .25rem}.happ-web-shell .sl-chip{height:44px;padding:0 1.0625rem;font-size:.96875rem;font-weight:600}.happ-web-shell .sl-chip-count{min-width:22px;height:22px;padding:0 .4375rem;font-size:.8125rem;font-weight:700}.happ-web-shell .slc-row{gap:.8125rem;min-height:64px;padding:.4375rem .625rem}.happ-web-shell .bl-card .id-title{font-size:1.0625rem;line-height:1.3}.happ-web-shell .cu-title{font-size:1.25rem}.happ-web-shell .sl-short{border:1px solid var(--border-subtle);height:72px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fff;padding:.5625rem .8125rem;box-shadow:0 1px 2px #0f172a0a}.happ-web-shell .sl-short.on .sl-short-ico{background:0 0}.happ-web-shell .sl-greet{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.happ-web-shell .sl-short.stat{justify-content:flex-start;gap:0}.happ-web-shell .act-sheet{transform-origin:bottom;background:#fff;border:none;border-radius:30px;flex-direction:column;gap:.125rem;width:auto;padding:.75rem;display:flex;bottom:92px;left:14px;right:14px;box-shadow:0 2px 8px #0f172a12,0 26px 64px #0f172a3d}.happ-web-shell .act-primary .m3-state{z-index:-1;background:var(--slate-900);opacity:0;transition:opacity var(--dur-fast) var(--ease-out);position:absolute;inset:0}.happ-web-shell .act-primary:hover .m3-state{opacity:.08}.happ-web-shell .act-primary:active .m3-state{opacity:.12}.happ-web-shell .fabm-scrim{z-index:23;animation:fabmFade var(--dur-fast) var(--ease-out) both;background:#0f172a52;position:absolute;inset:0}@keyframes fabmFade{0%{opacity:0}}.happ-web-shell .sl-groups{flex-direction:column;gap:.25rem;padding:.125rem .5rem .25rem;display:flex}.happ-web-shell .sl-convo{border-radius:14px;align-items:flex-start;gap:.75rem;margin:.125rem 0;padding:.75rem}.happ-web-shell .sl-screen{position:relative}.happ-web-shell .m3-tf{background:var(--slate-100);border:none;border-bottom:1px solid var(--border-strong);min-height:56px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border-radius:12px 12px 0 0;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.happ-web-shell .m3-tf.focus{background:var(--slate-200);border-bottom:2px solid var(--slate-500);padding-bottom:.4375rem}.happ-web-shell .m3-tf-wrap{flex:1;height:40px;position:relative}.happ-web-shell .m3-tf-label{white-space:nowrap;font-family:var(--font-sans);color:var(--slate-500);pointer-events:none;transition:top var(--dur-fast) var(--ease-out), font-size var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);font-size:1rem;position:absolute;top:50%;left:0;transform:translateY(-50%)}.happ-web-shell .m3-tf.focus .m3-tf-label,.happ-web-shell .m3-tf.filled .m3-tf-label{font-size:.71875rem;font-weight:600;top:3px;transform:none}.happ-web-shell .m3-tf.focus .m3-tf-label{color:var(--slate-700)}.happ-web-shell .m3-tf input{font-family:var(--font-sans);color:var(--slate-900);background:0 0;border:none;outline:none;font-size:1rem;font-weight:500;position:absolute;bottom:1px;left:0;right:0}.happ-web-shell .gs-chips{flex-wrap:wrap;gap:.5rem;margin-top:.875rem;display:flex}.happ-web-shell .gs-ceo{text-align:left;cursor:pointer;border:1.5px solid var(--amber-400);background:var(--bg-accent-subtle);width:100%;transition:box-shadow var(--dur-fast) var(--ease-out);border-radius:18px;align-items:center;gap:.8125rem;margin-top:1rem;padding:.8125rem .875rem;display:flex}.happ-web-shell .gs-seclabel{font-family:var(--font-sans);letter-spacing:.01em;color:var(--text-secondary);margin:1.25rem .125rem 0;font-size:.8125rem;font-weight:600}.happ-web-shell .gs-seclabel+.m3-seg{margin-top:.625rem}.happ-web-shell .m3-seg{border:1px solid var(--border-default);border-radius:var(--radius-full);height:40px;margin-top:1.125rem;display:flex;overflow:hidden}.happ-web-shell .m3-seg-btn{border:none;border-left:1px solid var(--border-default);min-width:0;font-family:var(--font-sans);color:var(--slate-700);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;flex:1;justify-content:center;align-items:center;gap:0;padding:0 .5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .m3-seg-btn:first-child{border-left:none}.happ-web-shell .m3-seg-btn.on{background:var(--bg-accent-subtle);color:var(--amber-800)}.happ-web-shell .m3-seg-btn:active{background:var(--slate-100)}.happ-web-shell .m3-seg-check{opacity:0;width:0;transition:width var(--dur-base) var(--ease-spring), margin var(--dur-base) var(--ease-spring), opacity var(--dur-fast) var(--ease-out);align-items:center;margin-right:0;display:inline-flex;overflow:hidden}.happ-web-shell .m3-seg-btn.on .m3-seg-check{opacity:1;width:18px;margin-right:.3125rem}.happ-web-shell .m3-seg-lab{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.happ-web-shell .gs-search{background:var(--slate-100);border-radius:var(--radius-full);align-items:center;gap:.5625rem;margin-top:.75rem;padding:.625rem .875rem;display:flex}.happ-web-shell .gs-list{flex-direction:column;margin-top:.375rem;display:flex}.happ-web-shell .gs-check{border:2px solid var(--slate-500);width:20px;height:20px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border-radius:3px;flex:none;justify-content:center;align-items:center;display:inline-flex}.happ-web-shell .gs-check.on{background:var(--amber-500);border-color:var(--amber-500)}.happ-web-shell .gs-foot{text-align:left;align-items:center;gap:.75rem;display:flex}.happ-web-shell button.m3-filled{isolation:isolate;white-space:nowrap;height:40px;font-family:var(--font-sans);letter-spacing:.01em;color:var(--text-on-accent);background:var(--amber-500);border-radius:var(--radius-full);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);border:none;flex:none;justify-content:center;align-items:center;gap:.5rem;padding:0 1.5rem;font-size:.875rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.happ-web-shell button.m3-filled .m3-state{z-index:-1;background:var(--slate-900);opacity:0;transition:opacity var(--dur-fast) var(--ease-out);position:absolute;inset:0}.happ-web-shell button.m3-filled .m3-label,.happ-web-shell button.m3-filled svg{z-index:1;position:relative}.happ-web-shell button.m3-filled:hover{box-shadow:0 1px 2px #0f172a2e,0 1px 3px 1px #0f172a1f}.happ-web-shell button.m3-filled:hover .m3-state{opacity:.08}.happ-web-shell button.m3-filled:active{background:var(--amber-600)}.happ-web-shell button.m3-filled:active .m3-state{opacity:.12}.happ-web-shell button.m3-filled:disabled{color:#0f172a61;box-shadow:none;cursor:default;background:#0f172a1f}.happ-web-shell button.m3-filled:disabled .m3-state{opacity:0}.happ-web-shell .sl-convo.unread{background:var(--sand-100)}.happ-web-shell .ch-sec-lab{letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin:.375rem .375rem .5rem;font-size:.75rem;font-weight:700}.happ-web-shell .sl-feed .ch-card{transition:background var(--dur-fast) var(--ease-out);background:0 0;align-items:center;gap:.8125rem;margin:0;padding:.75rem .625rem;box-shadow:none!important;border:none!important;border-radius:14px!important}.happ-web-shell .ch-searchbar{gap:.375rem;padding:2.875rem .875rem .625rem .625rem}.happ-web-shell .ch-search-pill{background:var(--sand-100);border-radius:var(--radius-full);height:50px;animation:chSearchFade .24s var(--ease-out);flex:1;align-items:center;gap:.5rem;padding:0 .5rem 0 .875rem;display:flex}.happ-web-shell .ch-search-pill .ch-search-lead{flex:none;width:auto}@keyframes chSearchIn{0%{opacity:0;transform:scaleX(.62)}to{opacity:1;transform:scaleX(1)}}.happ-web-shell .ch-search-pill input{min-width:0;font-family:var(--font-sans);color:var(--slate-900);animation:chSearchFade .38s var(--ease-out);background:0 0;border:none;outline:none;flex:1;font-size:1rem;font-weight:500}.happ-web-shell .ch-search-pill input::placeholder{color:var(--slate-500)}@keyframes chSearchFade{0%{opacity:0}45%{opacity:0}to{opacity:1}}.happ-web-shell .ch-search-pill>.hx-icon svg,.happ-web-shell .ch-search-lead svg{animation:chSearchGlyph .42s var(--ease-spring)}@keyframes chSearchGlyph{0%{opacity:0;transform:scale(.4)rotate(-90deg)}to{opacity:1;transform:scale(1)rotate(0)}}.happ-web-shell .sl-actions .hx-icon[aria-label=Search\ channels]:active svg,.happ-web-shell .sl-actions .hx-icon[aria-label=Search]:active svg{animation:.36s cubic-bezier(.2,0,0,1) chSearchTap}@keyframes chSearchTap{0%{transform:scale(1)rotate(0)}40%{transform:scale(.8)rotate(-18deg)}to{transform:scale(1)rotate(0)}}.happ-web-shell .ch-join{border-radius:var(--radius-full);min-width:64px;height:34px;font-family:var(--font-sans);background:var(--amber-500);color:var(--text-on-accent);cursor:pointer;transition:transform var(--dur-fast) var(--ease-spring), background var(--dur-fast) var(--ease-out), padding var(--dur-base) var(--ease-spring);border:none;flex:none;justify-content:center;align-items:center;gap:.3125rem;padding:0 1rem;font-size:.84375rem;font-weight:700;display:inline-flex;position:relative}.happ-web-shell .ch-join:active{background:var(--amber-600);transform:scale(.88)}.happ-web-shell .ch-join.on{background:var(--bg-accent-subtle);color:var(--amber-800);padding:0 .875rem}.happ-web-shell .ch-join.on:active{background:var(--sand-200);transform:scale(.88)}.happ-web-shell .ch-join-lab{align-items:center;gap:.3125rem;display:inline-flex}.happ-web-shell .ch-join.on .ch-join-lab{animation:chJoinLab .36s var(--ease-spring)}@keyframes chJoinLab{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.happ-web-shell .ch-join .ch-join-lab svg{animation:chJoinCheck .36s var(--ease-spring)}@keyframes chJoinCheck{0%{opacity:0;transform:scale(0)rotate(-25deg)}60%{transform:scale(1.2)rotate(3deg)}to{opacity:1;transform:scale(1)rotate(0)}}.happ-web-shell .ch-join.burst{animation:chJoinPop .44s var(--ease-spring)}@keyframes chJoinPop{0%{transform:scale(1)}32%{transform:scale(.86)}66%{transform:scale(1.1)}to{transform:scale(1)}}.happ-web-shell .ch-burst{pointer-events:none;z-index:2;place-items:center;display:grid;position:absolute;inset:0}@keyframes chBurstRing{0%{opacity:.75;transform:scale(.55)}to{opacity:0;transform:scale(1.55)}}@keyframes chBurstDot{0%{opacity:0;transform:rotate(var(--a)) translateY(-2px) scale(.4)}35%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-27px) scale(1)}}.happ-web-shell .m3-tf-help{color:var(--text-tertiary);margin:.4375rem .25rem 0;font-size:.78125rem}.happ-web-shell .m3-tf-area{align-items:flex-start;min-height:84px;padding-top:.625rem}.happ-web-shell .m3-tf-area>svg{margin-top:.5rem}.happ-web-shell .m3-tf-area .m3-tf-wrap{height:auto;min-height:56px}.happ-web-shell .m3-tf-area textarea{resize:none;width:100%;font-family:var(--font-sans);color:var(--slate-900);background:0 0;border:none;outline:none;margin-top:1.375rem;font-size:1rem;font-weight:500;line-height:1.4}.happ-web-shell .m3-tf-area textarea::placeholder{color:var(--slate-400)}.happ-web-shell .m3-toggle-row{text-align:left;border-radius:var(--md-sys-shape-corner-md,12px);cursor:pointer;width:100%;min-height:64px;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:1rem;margin-top:1.125rem;padding:.625rem .5rem .625rem .375rem;display:flex}.happ-web-shell .m3-toggle-row:active{background:var(--sand-100)}.happ-web-shell .m3-toggle-ico{border-radius:var(--radius-full);background:var(--bg-accent-subtle);flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.happ-web-shell .m3-toggle-text{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.happ-web-shell .m3-toggle-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--slate-900);font-size:1rem;font-weight:700}.happ-web-shell .m3-toggle-sub{color:var(--text-secondary);font-size:.8125rem}.happ-web-shell .m3-switch{border-radius:var(--radius-full);background:var(--slate-300);width:48px;height:28px;transition:background var(--dur-base) var(--ease-spring);flex:none;position:relative}.happ-web-shell .m3-switch.on{background:var(--amber-500)}.happ-web-shell .m3-switch-knob{border-radius:var(--radius-full);width:20px;height:20px;transition:transform var(--dur-base) var(--ease-spring);background:#fff;position:absolute;top:4px;left:4px;box-shadow:0 1px 3px #0f172a4d}.happ-web-shell .m3-switch.on .m3-switch-knob{transform:translate(20px)}.happ-web-shell .nc-foot{align-items:center;gap:.625rem;display:flex}.happ-web-shell .nc-foot .m3-filled{margin-left:auto}.happ-web-shell .nt-markall{align-items:center;gap:var(--space-2);white-space:nowrap;height:34px;padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--bg-accent-subtle);color:var(--amber-800);font-family:var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);border:none;margin-left:auto;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .np-wrap{flex:none;position:static}.happ-web-shell .np-scrim{z-index:40;position:fixed;inset:0}@keyframes npPop{0%{opacity:0;transform:scale(.92)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.happ-web-shell .dash-screen{position:relative}.happ-web-shell .dmx{text-align:center;flex-direction:column;align-items:center;padding:1rem .125rem .375rem;display:flex}.happ-web-shell .ch-welcome{background:var(--bg-accent-subtle);border-radius:18px;margin:.75rem 0 .25rem;padding:.8125rem 1rem;position:relative;overflow:hidden}.happ-web-shell .ainx{flex-direction:column;padding:1.125rem .25rem .75rem;display:flex}.happ-web-shell .ainx-avatar{border-radius:var(--radius-full);background:var(--amber-500);width:44px;height:44px;box-shadow:0 4px 12px color-mix(in srgb, var(--amber-500) 32%, transparent);justify-content:center;align-items:center;display:inline-flex;position:relative}.happ-web-shell .dash-hero{background:var(--bg-accent-subtle);border-radius:24px;margin-bottom:1.25rem;padding:1.25rem 1.125rem;position:relative;overflow:hidden}.happ-web-shell .dash-hero-body{z-index:1;position:relative}.happ-web-shell .dash-tile{--tile:#e8edf4;text-align:left;border-radius:var(--radius-lg);background:var(--tile);cursor:pointer;min-width:0;transition:filter var(--dur-fast) var(--ease-out);border:none;flex-direction:column;align-items:flex-start;gap:.625rem;padding:.9375rem .875rem;display:flex;position:relative}.happ-web-shell .sx-empty{text-align:center;flex-direction:column;align-items:center;padding:3.25rem 2rem 0;display:flex}.happ-web-shell .aa-thread{flex-direction:column;padding-bottom:.375rem;display:flex}.happ-web-shell .aa-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;padding:1.5rem .375rem 1.875rem;display:flex}.happ-web-shell .aa-actions{grid-template-columns:1fr 1fr;gap:.5625rem;width:290px;max-width:100%;margin-top:.6875rem;display:grid}.happ-web-shell .aa-quick{flex-wrap:wrap;gap:.5rem;margin-top:.625rem;display:flex}:is(.happ-web-shell .aa-stack:has(.m3po),.happ-web-shell .aa-stack:has(.att)){flex:1;max-width:none}.happ-web-shell .aa-daydiv{justify-content:center;align-items:center;margin:.125rem 0 .75rem;display:flex}.happ-web-shell .att{border-radius:var(--radius-lg);align-items:center;gap:.875rem;width:100%;margin-top:.625rem;padding:1rem;display:flex;position:relative;overflow:hidden}@keyframes attRing{0%{opacity:0;transform:scale(.7)}to{transform:scale(1)}}.happ-web-shell .aa-inline-btn{border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--bg-surface);height:38px;color:var(--slate-800);font-family:var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);align-items:center;gap:.3125rem;margin-top:.625rem;padding:0 1rem;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .aa-result{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);align-items:center;gap:.75rem;width:290px;max-width:100%;margin-top:.6875rem;padding:.8125rem .875rem;display:flex}.happ-web-shell .aa-think{animation:aaRise .3s var(--ease-out) both;align-items:flex-end;gap:.5rem;margin:.5625rem 0;display:flex}@keyframes aaRise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes aaPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes aaWave{0%,70%,to{opacity:.4;transform:translateY(0)}35%{opacity:1;transform:translateY(-5px)}}@keyframes aaPulse{0%,to{transform:scale(1)}50%{transform:scale(1.09)}}@keyframes aaGlow{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--amber-500) 40%, transparent)}75%{box-shadow:0 0 0 9px #0000}to{box-shadow:0 0 #0000}}.happ-web-shell .ihub-screen{background:#fff;flex-direction:column;height:100%;display:flex;position:relative}.happ-web-shell .ihub-tabs{scrollbar-width:none;flex:none;gap:.5rem;padding:.625rem 1.125rem .75rem;display:flex;overflow-x:auto}.happ-web-shell .ihub-hero{background:var(--bg-accent-subtle);border-radius:18px;flex-direction:column;gap:.8125rem;margin:.375rem .25rem .625rem;padding:1rem 1rem .9375rem;display:flex;position:relative;overflow:hidden}.happ-web-shell .ihub-tips{flex-direction:column;gap:.625rem;display:flex;position:relative}.happ-web-shell .ihub-group{padding:.25rem 0 .125rem}.happ-web-shell .ihub-efab{z-index:24;border-radius:var(--radius-xl);background:var(--amber-500);height:56px;color:var(--text-on-accent);white-space:nowrap;font-family:var(--font-sans);letter-spacing:-.005em;cursor:pointer;box-shadow:0 3px 6px #0f172a29, 0 8px 22px color-mix(in srgb, var(--amber-500) 32%, transparent);transition:background var(--dur-fast) var(--ease-out);border:none;align-items:center;gap:.625rem;padding:0 1.25rem 0 1.0625rem;font-size:.9375rem;font-weight:700;display:inline-flex;position:absolute;bottom:104px;right:16px}.happ-web-shell .ai-file-card{border:1px solid var(--border-subtle);cursor:pointer;min-width:252px;max-width:88%;transition:background var(--dur-fast) var(--ease-out);background:#fff;border-radius:16px;align-items:center;gap:.75rem;margin-top:.5rem;padding:.6875rem .75rem;text-decoration:none;display:flex}.happ-web-shell .m3po-btn{gap:.4375rem}.happ-web-shell .aa-chip.own{border:1px dashed var(--border-default);color:var(--slate-500);background:0 0;align-items:center;gap:.375rem;display:inline-flex}@media (prefers-reduced-motion:no-preference){.happ-web-shell .ct-tab-count{animation:ctCountPop .52s var(--ease-spring) both}}@keyframes ctCountPop{0%{opacity:0;transform:scale(.3)}55%{opacity:1;transform:scale(1.28)}to{opacity:1;transform:scale(1)}}.happ-web-shell{--rail-bg:#1e170e;--rail-line:#ffffff14;--rail-ico:#a8a093;--rail-ico-on:var(--amber-400);--wcol:380px;--wrail:72px;--hhead:58px}.happ-web-shell[data-theme=dark]{--slate-50:#161d29;--slate-100:#1c2533;--slate-200:#2b3543;--slate-300:#3c4756;--slate-400:#6b7889;--slate-500:#8d99a9;--slate-600:#adb8c6;--slate-700:#c8d1dc;--slate-800:#dfe5ec;--slate-900:#f1f4f8;--sand-50:#15120c;--sand-100:#201b13;--sand-200:#2c2519;--sand-300:#3b3324;--sand-400:#4d4330;--bg-page:#14110b;--bg-subtle:#1d1810;--bg-surface:#1a160f;--bg-elevated:#221c13;--bg-accent-subtle:#2e2410;--bg-clay-subtle:#2c1f16;--bg-sage-subtle:#1f2417;--info-bg:#18242f;--success-bg:#1c2417;--warning-bg:#2e2410;--danger-bg:#2e1a16;--border-subtle:#2a2418;--border-default:#3a3224;--shadow-md:0 4px 12px #0006, 0 2px 4px #0000004d;--shadow-lg:0 12px 28px #00000080, 0 4px 8px #00000059;--bg-list:#16130d;--rail-bg:#19130b;--coffee-700:#d9b48f;--olive-700:#a9be85}.happ-web-shell,.happ-web-shell{height:100%}.happ-web-shell{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;transition:background var(--dur-base) var(--ease-out);flex-direction:column;justify-content:flex-start;align-items:stretch;height:100vh;margin:0;padding:0;display:flex;overflow:hidden}.happ-web-shell .web-root{background:var(--bg-page);flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.happ-web-shell .web-head{height:var(--hhead);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:30;flex:none;align-items:center;padding:0 .75rem;display:flex}.happ-web-shell .web-head-sp{flex:1;min-width:1rem}.happ-web-shell .web-head-brand{flex:none;align-items:center;gap:.5rem;display:flex}.happ-web-shell .web-head-brand-tile{background:var(--amber-500);width:32px;height:32px;color:var(--text-on-accent);font-family:var(--font-display);letter-spacing:-.04em;border-radius:10px;flex:none;place-items:center;font-size:1.125rem;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #00000014}.happ-web-shell .web-head-brand-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);white-space:nowrap;font-size:.9375rem;font-weight:800}.happ-web-shell .web-head-actions{align-items:center;gap:.25rem;display:flex}.happ-web-shell .web-head-ico{border-radius:var(--radius-md);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:none;place-items:center;display:grid;position:relative}.happ-web-shell .web-head-ico:hover{background:var(--bg-subtle);color:var(--text-primary)}.happ-web-shell .web-head-ico:focus-visible{outline:2px solid var(--border-accent);outline-offset:1px}.happ-web-shell .web-head-ico.on{background:var(--warning-bg);color:var(--text-accent)}.happ-web-shell .wa-stage{width:100%}@keyframes webFade{0%{transform:translateY(8px)}to{transform:none}}.happ-web-shell .web-fade{animation:webFade .28s var(--ease-out) both}.happ-web-shell .web-rail{width:var(--wrail);background:var(--rail-bg);z-index:20;flex-direction:column;flex:none;align-items:center;gap:.25rem;padding:.875rem 0;display:flex}.happ-web-shell .web-rail-brand{background:var(--amber-500);width:46px;height:46px;color:var(--text-on-accent);font-family:var(--font-display);letter-spacing:-.04em;border-radius:14px;flex:none;justify-content:center;align-items:center;margin-bottom:.125rem;font-size:1.5625rem;font-weight:800;display:flex;box-shadow:inset 0 0 0 1px #00000014}.happ-web-shell .web-rail-divider{background:#ffffff1f;flex:none;width:26px;height:1px;margin-bottom:.125rem}.happ-web-shell .web-rail-divider-foot{margin-top:.5rem;margin-bottom:.625rem}.happ-web-shell .web-rail-nav{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;align-items:center;gap:.25rem;width:100%;min-height:0;display:flex;overflow:hidden auto}.happ-web-shell .web-rail-nav::-webkit-scrollbar{display:none}.happ-web-shell .web-rail-item{cursor:pointer;color:#a8a399;width:60px;transition:color var(--dur-fast);background:0 0;border:none;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:.25rem;padding:.5rem 0;display:flex;position:relative}.happ-web-shell .web-rail-pill{width:38px;height:38px;transition:background var(--dur-fast) var(--ease-out);border-radius:11px;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-rail-item:hover{color:#b4b0a8}.happ-web-shell .web-rail-item:hover .web-rail-pill{background:#ffffff1a}.happ-web-shell .web-rail-item.on{color:var(--amber-400)}.happ-web-shell .web-rail-item.on .web-rail-pill{background:color-mix(in srgb, var(--amber-400) 24%, transparent);color:var(--amber-400)}.happ-web-shell .web-rail-item.on:hover{color:var(--amber-400)}.happ-web-shell .web-rail-item.on:hover .web-rail-pill{background:color-mix(in srgb, var(--amber-400) 24%, transparent)}.happ-web-shell .web-rail-label{letter-spacing:.01em;font-size:.625rem;font-weight:600}.happ-web-shell .web-rail-badge{border-radius:var(--radius-full);background:var(--amber-500);min-width:16px;height:16px;color:var(--text-on-accent);box-shadow:0 0 0 2px var(--rail-bg);justify-content:center;align-items:center;padding:0 .25rem;font-size:.625rem;font-weight:700;display:flex;position:absolute;top:3px;right:9px}.happ-web-shell .web-rail-spacer{flex:1}.happ-web-shell .web-rail-btn{border-radius:var(--radius-full);cursor:pointer;width:44px;height:44px;color:var(--rail-ico);transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-rail-btn:hover{color:#fff;background:#ffffff14}.happ-web-shell .web-rail-avatar{cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:50%;flex:none;margin-top:.25rem;padding:0}.happ-web-shell .web-rail-avatar.on{box-shadow:0 0 0 2px #ffffff8c}.happ-web-shell .web-list{width:var(--wcol);background:var(--bg-list);border-right:1px solid var(--border-subtle);z-index:10;flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.happ-web-shell .web-list-resizable{flex:none}.happ-web-shell .web-listcol{z-index:10;flex:none;min-width:0;min-height:0;display:flex;position:relative}.happ-web-shell .web-listcol .web-list{width:100%;min-width:0}.happ-web-shell .web-list-resize{cursor:col-resize;z-index:20;touch-action:none;width:7px;position:absolute;top:0;bottom:0;right:-3px}.happ-web-shell .web-list-resize:after{content:"";background:var(--border-strong,#9a9488);opacity:0;width:2px;transition:opacity .12s;position:absolute;top:0;bottom:0;left:3px}.happ-web-shell .web-list-resize:hover:after{opacity:.35}.happ-web-shell .web-list-resize:active:after{opacity:.55}.happ-web-shell .web-list-head{border-bottom:1px solid var(--border-subtle);flex-direction:column;flex:none;gap:.875rem;padding:.75rem 1.125rem;display:flex}.happ-web-shell .web-list-titlerow{align-items:center;gap:.625rem;display:flex}.happ-web-shell .web-list-wstile{object-fit:cover;width:30px;height:30px;font-family:var(--font-display);border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:flex}.happ-web-shell .web-list-titlewrap{flex-direction:column;flex:1;gap:.0625rem;min-width:0;display:flex}.happ-web-shell .web-list-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;margin:0;font-size:1.1875rem;font-weight:800;overflow:hidden}.happ-web-shell .web-list-subtitle{color:var(--slate-500);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.75rem;font-weight:600;overflow:hidden}.happ-web-shell .web-list-copick{border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--bg-subtle);cursor:pointer;min-width:0;max-width:100%;color:var(--text-secondary);transition:background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);flex:0 auto;align-items:center;gap:.3125rem;padding:.25rem .5rem .25rem .5625rem;font-size:.75rem;font-weight:600;line-height:1.2;display:inline-flex}.happ-web-shell .web-list-copick:hover{background:var(--bg-elevated);border-color:var(--border-default);color:var(--text-primary)}.happ-web-shell .web-list-copick:focus-visible{outline:2px solid var(--amber-500);outline-offset:1px}.happ-web-shell .web-list-copick>svg{color:var(--text-tertiary);flex:none}.happ-web-shell .web-list-copick-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.happ-web-shell .web-wstitle{text-align:left;cursor:pointer;min-width:0;max-width:100%;transition:background var(--dur-fast), border-color var(--dur-fast);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:.5rem;margin:-.25rem -.375rem;padding:.25rem .375rem;display:flex}.happ-web-shell .web-wstitle:hover{background:var(--bg-subtle)}.happ-web-shell .web-wstitle[data-state=open]{background:var(--bg-subtle);border-color:var(--amber-500)}.happ-web-shell .web-wstitle:active:not(:disabled){transform:none}.happ-web-shell .web-wstitle-text{flex-direction:column;flex:1;gap:.0625rem;min-width:0;display:flex}.happ-web-shell .web-wstitle-head{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:.3125rem;font-size:1.1875rem;font-weight:800;line-height:1.15;display:flex}.happ-web-shell .web-wstitle-caret{width:.875rem;height:.875rem;color:var(--text-tertiary);transition:transform var(--dur-fast);flex:none}.happ-web-shell .web-wstitle[data-state=open] .web-wstitle-caret{transform:rotate(180deg)}.happ-web-shell .web-wstitle-sub{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.75rem;font-weight:600;line-height:1.25;overflow:hidden}.happ-web-shell .web-wsswitch-badgecount{border-radius:var(--radius-full);background:var(--danger);color:#fff;flex:none;justify-content:center;align-items:center;min-width:1rem;height:1rem;padding:0 .25rem;font-size:.625rem;font-weight:700;line-height:1;display:inline-flex}.happ-web-shell .web-list-actions{gap:.125rem;margin-left:auto;display:flex}.happ-web-shell .web-ibtn{border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;color:var(--slate-600);transition:background var(--dur-fast), transform var(--dur-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.happ-web-shell .web-ibtn:hover{background:var(--bg-subtle)}.happ-web-shell .web-ibtn .hx-badge{background:var(--amber-500);min-width:15px;height:15px;color:var(--text-on-accent);border-radius:var(--radius-full);box-shadow:0 0 0 2px var(--bg-page);justify-content:center;align-items:center;padding:0 .1875rem;font-size:.59375rem;font-weight:700;display:flex;position:absolute;top:4px;right:4px}.happ-web-shell .web-search{background:var(--bg-subtle);border-radius:var(--radius-full);height:40px;transition:border-color var(--dur-fast), background var(--dur-fast);border:1px solid #0000;align-items:center;gap:.5rem;padding:0 .75rem;display:flex}.happ-web-shell .web-search.focus{border-color:var(--border-strong);background:var(--bg-surface)}.happ-web-shell .web-search input{min-width:0;font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.875rem}.happ-web-shell .web-search input::placeholder{color:var(--text-tertiary)}.happ-web-shell .web-search kbd{font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:5px;padding:.0625rem .3125rem;font-size:.6875rem}.happ-web-shell .web-search-clear{cursor:pointer;width:20px;height:20px;color:var(--text-tertiary);border-radius:var(--radius-full);transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-search-clear:hover{background:var(--bg-subtle);color:var(--text-primary)}.happ-web-shell .web-list-scroll{scrollbar-width:thin;scrollbar-color:#78787859 transparent;flex:1;min-height:0;padding:.5rem .625rem 1.5rem;overflow-y:auto}.happ-web-shell .web-list-scroll::-webkit-scrollbar{width:8px;height:8px}.happ-web-shell .web-list-scroll::-webkit-scrollbar-track{background:0 0}.happ-web-shell .web-list-scroll::-webkit-scrollbar-thumb{background:#78787859;border-radius:9999px}.happ-web-shell .web-list-scroll::-webkit-scrollbar-thumb:hover{background:#7878788c}.happ-web-shell .web-list.web-narrow .web-list-head{gap:.625rem;padding:.875rem .625rem .625rem}.happ-web-shell .web-list.web-narrow .web-list-title{font-size:1rem}.happ-web-shell .web-list.web-narrow .web-search{gap:.375rem;height:34px;padding:0 .5rem}.happ-web-shell .web-list.web-narrow .web-list-scroll{padding:.5rem .375rem 1.5rem}.happ-web-shell .web-list.web-narrow .web-sec-head{gap:.375rem;padding:.4375rem .375rem .3125rem}.happ-web-shell .web-list.web-narrow .web-sec-head .web-sec-title{letter-spacing:.04em;font-size:.6875rem}.happ-web-shell .web-list.web-narrow .web-row-caption{padding:.5rem .375rem .1875rem .5rem}.happ-web-shell .web-list.web-narrow .web-row{gap:.5rem;padding:.375rem .4375rem}.happ-web-shell .web-list.web-narrow .web-row-ico{border-radius:9px;width:30px;height:30px}.happ-web-shell .web-list.web-narrow .web-row-ico svg{width:17px;height:17px}.happ-web-shell .web-list.web-narrow .web-row-name{font-size:.84375rem}.happ-web-shell .web-chips{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;align-items:center;gap:.375rem;padding:.375rem .25rem .625rem;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.happ-web-shell .web-chips::-webkit-scrollbar{display:none}.happ-web-shell .web-chips .sl-chip{gap:.3125rem;height:33px;padding:0 .8125rem;font-size:.75rem}.happ-web-shell .web-chips .sl-chip-ico{margin-left:-.125rem}.happ-web-shell .web-chips .sl-chip-count{min-width:16px;height:16px;padding:0 .3125rem;font-size:.65625rem}.happ-web-shell .web-chips .sl-chip.on .sl-chip-check{width:12px}.happ-web-shell .web-list-head .web-chips{margin-top:-.375rem;padding:0 .125rem}.happ-web-shell .web-sec{margin-bottom:.375rem}.happ-web-shell .web-sec-head{cursor:pointer;width:100%;color:var(--slate-500);background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem .5rem .375rem;display:flex}.happ-web-shell .web-sec-head .web-sec-title{letter-spacing:.06em;text-transform:uppercase;color:var(--slate-500);font-size:.75rem;font-weight:700}.happ-web-shell .web-sec-count{border-radius:var(--radius-full);background:var(--bg-accent-subtle);min-width:18px;height:18px;color:var(--amber-800);letter-spacing:normal;justify-content:center;align-items:center;padding:0 .3125rem;font-size:.6875rem;font-weight:700;display:flex}.happ-web-shell .web-sec-chevron{transition:transform var(--dur-base) var(--ease-out);color:var(--slate-400);margin-left:auto;display:inline-flex}.happ-web-shell .web-sec-chevron.open{transform:rotate(180deg)}.happ-web-shell .web-row-caption{letter-spacing:.07em;text-transform:uppercase;color:var(--text-tertiary);padding:.5625rem .625rem .1875rem .75rem;font-size:.65625rem;font-weight:700}.happ-web-shell .web-row{cursor:pointer;border-radius:var(--radius-md);text-align:left;width:100%;transition:background var(--dur-fast), transform var(--dur-fast);background:0 0;border:none;align-items:center;gap:.6875rem;margin-bottom:3px;padding:.5625rem .625rem;display:flex;position:relative}.happ-web-shell .web-row:last-child{margin-bottom:0}.happ-web-shell .web-row:hover,.happ-web-shell .web-row.sel,.happ-web-shell .web-row.on,.happ-web-shell .web-row.on:hover,.happ-web-shell .web-row.ai-row:hover,.happ-web-shell .web-row.ai-row.on,.happ-web-shell[data-theme=dark] .web-row:hover,.happ-web-shell[data-theme=dark] .web-row.sel,.happ-web-shell[data-theme=dark] .web-row.on,.happ-web-shell[data-theme=dark] .web-row.on:hover,.happ-web-shell[data-theme=dark] .web-row.ai-row:hover,.happ-web-shell[data-theme=dark] .web-row.ai-row.on{background:var(--bg-subtle)}.happ-web-shell .web-row-ico{background:var(--sand-200);width:40px;height:40px;color:var(--coffee-700);border-radius:11px;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-newai-btn{border-radius:var(--radius-md);background:var(--amber-500);width:100%;height:40px;color:var(--text-on-accent);cursor:pointer;transition:filter var(--dur-fast), transform var(--dur-fast);border:none;justify-content:center;align-items:center;gap:.4375rem;font-size:.8125rem;font-weight:700;display:flex}.happ-web-shell .web-newai-btn:hover{filter:brightness(1.05)}.happ-web-shell .web-newai-btn:active{filter:brightness(.96)}.happ-web-shell .web-row-av{flex:none;position:relative}.happ-web-shell .web-row-presence{width:11px;height:11px;box-shadow:0 0 0 2px var(--bg-page);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.happ-web-shell .web-row-presence.online{background:var(--green-500)}.happ-web-shell .web-row-presence.idle{background:linear-gradient(90deg, var(--amber-400) 0 50%, var(--sand-200) 50% 100%);border:1px solid var(--amber-400);box-sizing:border-box}.happ-web-shell .web-row-presence.offline{background:var(--slate-300)}.happ-web-shell .web-row.on .web-row-presence,.happ-web-shell .web-row:hover .web-row-presence{box-shadow:0 0 0 2px var(--bg-subtle)}.happ-web-shell .web-row-main{flex-direction:column;flex:1;gap:.0625rem;min-width:0;display:flex}.happ-web-shell .web-row-top{align-items:baseline;gap:.5rem;display:flex}.happ-web-shell .web-row-name{font-family:var(--font-sans);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.005em;flex:1;min-width:0;font-size:.90625rem;font-weight:600;overflow:hidden}.happ-web-shell .web-row.unread .web-row-name{font-weight:800}.happ-web-shell .web-row-time{color:var(--text-tertiary);flex:none;font-size:.71875rem;font-weight:500}.happ-web-shell .web-confirm-scrim{z-index:70;background:#17150f57;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.happ-web-shell .web-confirm{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:min(360px,100%);padding:1.25rem;box-shadow:0 24px 60px #17150f3d}.happ-web-shell .web-confirm-title{font-family:var(--font-display);color:var(--text-primary);font-size:1.0625rem;font-weight:800}.happ-web-shell .web-confirm-sub{color:var(--text-secondary);margin-top:.375rem;font-size:.8125rem;line-height:1.55}.happ-web-shell .web-confirm-row{justify-content:flex-end;gap:.5rem;margin-top:1.125rem;display:flex}.happ-web-shell .web-confirm-danger{background:var(--danger);color:#fff;border-color:#0000}.happ-web-shell .web-confirm-danger:hover:not(:disabled){filter:brightness(.94)}.happ-web-shell .web-confirm-row .sl-chip:disabled{opacity:.6;cursor:not-allowed}.happ-web-shell .web-row-actions{z-index:2;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);position:absolute;top:.5625rem;right:.5rem}.happ-web-shell .web-row-wrap:hover .web-row-actions,.happ-web-shell .web-row-wrap:focus-within .web-row-actions{opacity:1}.happ-web-shell .web-row-actions:has(button[aria-expanded=true]){opacity:1}@media (hover:none){.happ-web-shell .web-row-actions{opacity:1}}.happ-web-shell .web-row-sub{letter-spacing:.02em;color:var(--slate-500);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;font-weight:600;overflow:hidden}.happ-web-shell .web-row-prev{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;line-height:1.35;overflow:hidden}.happ-web-shell .web-row-prev .who{color:var(--slate-500);font-weight:600}.happ-web-shell .web-row.unread .web-row-prev{color:var(--text-primary)}.happ-web-shell .web-row-badge{border-radius:var(--radius-full);background:var(--amber-500);min-width:19px;height:19px;color:var(--text-on-accent);flex:none;justify-content:center;align-items:center;padding:0 .3125rem;font-size:.6875rem;font-weight:700;display:flex}.happ-web-shell .web-row-you{color:var(--amber-800);background:var(--bg-accent-subtle);border-radius:var(--radius-full);padding:.0625rem .375rem;font-size:.6875rem;font-weight:700}.happ-web-shell .web-quiet{cursor:pointer;border-radius:var(--radius-md);width:100%;color:var(--slate-500);transition:background var(--dur-fast);background:0 0;border:none;align-items:center;gap:.6875rem;padding:.5625rem .625rem;font-size:.84375rem;font-weight:600;display:flex}.happ-web-shell .web-quiet:hover{background:var(--bg-subtle);color:var(--slate-700)}.happ-web-shell .web-quiet-ico{justify-content:center;align-items:center;width:40px;display:flex}.happ-web-shell .web-main{background:var(--bg-surface);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.happ-web-shell .web-dock-back{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:none;place-items:center;margin-left:-.375rem;display:grid}.happ-web-shell .web-dock-back:hover{background:var(--bg-subtle);color:var(--text-primary)}.happ-web-shell .web-dock-back:focus-visible{outline:2px solid var(--border-accent);outline-offset:1px}.happ-web-shell .web-chead{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);flex:none;align-items:center;gap:.75rem;height:68px;padding:0 1.375rem;display:flex}.happ-web-shell .web-chead-ico{background:var(--sand-200);width:38px;height:38px;color:var(--coffee-700);border-radius:11px;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-chead-main{flex:1;min-width:0}.happ-web-shell .web-chead-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);align-items:center;gap:.4375rem;font-size:1.1875rem;font-weight:800;display:flex}.happ-web-shell .web-chead-sub{color:var(--text-tertiary);margin-top:.0625rem;font-size:.78125rem;font-weight:500}.happ-web-shell .web-chead-actions{gap:.125rem;display:flex}.happ-web-shell .web-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:2.5rem;display:flex}.happ-web-shell .web-empty-art{background:var(--bg-accent-subtle);border-radius:24px;justify-content:center;align-items:center;width:84px;height:84px;display:flex;position:relative}.happ-web-shell .web-empty-title{font-family:var(--font-display);color:var(--text-primary);font-size:1.3125rem;font-weight:800}.happ-web-shell .web-empty-sub{color:var(--text-secondary);max-width:340px;margin-top:-.375rem;font-size:.90625rem;line-height:1.55}.happ-web-shell[data-theme=dark] .web-empty-btn:active{background:var(--bg-muted,var(--bg-subtle))}.happ-web-shell .web-list-scroll .web-empty{justify-content:flex-start;gap:.625rem;padding:2rem 1.25rem}.happ-web-shell .web-list-scroll .web-empty-ico{border-radius:var(--radius-full);background:var(--bg-accent-subtle);width:46px;height:46px;color:var(--amber-700);justify-content:center;align-items:center;margin-bottom:.125rem;display:flex}.happ-web-shell .web-list-scroll .web-empty-title{font-size:1rem}.happ-web-shell .web-list-scroll .web-empty-sub{margin-top:-.25rem;font-size:.8125rem}.happ-web-shell .web-list-scroll .web-empty .sl-chip{height:32px;margin-top:.25rem;padding:0 .875rem;font-size:.78125rem}.happ-web-shell .web-thread{flex-direction:column;flex:1;min-height:0;display:flex}.happ-web-shell .web-thread-body{flex:1;min-height:0;padding:1.625rem 0 1.125rem;overflow-y:auto}.happ-web-shell .web-thread-inner{max-width:760px;margin:0 auto;padding:0 1.75rem}.happ-web-shell .web-msg{align-items:flex-start;gap:.75rem;padding:.4375rem 0;display:flex}.happ-web-shell .web-msg.own{flex-direction:row-reverse}.happ-web-shell .web-msg-col{flex-direction:column;min-width:0;max-width:72%;display:flex}.happ-web-shell .web-msg.own .web-msg-col{align-items:flex-end}.happ-web-shell .web-msg-who{color:var(--slate-600);margin:0 0 .25rem .125rem;font-size:.78125rem;font-weight:700}.happ-web-shell .web-bubble{border-radius:var(--radius-lg);background:var(--sand-100);color:var(--slate-800);word-break:break-word;border-bottom-left-radius:5px;padding:.6875rem .9375rem;font-size:.90625rem;line-height:1.5}.happ-web-shell .web-msg.own .web-bubble{background:var(--slate-900);color:#fff;border-radius:var(--radius-lg);border-bottom-right-radius:5px}.happ-web-shell[data-theme=dark] .web-msg.own .web-bubble{background:var(--amber-500);color:var(--text-on-accent)}.happ-web-shell .web-bubble.ai{background:var(--bg-accent-subtle);color:var(--slate-800)}.happ-web-shell .web-day{text-align:center;margin:1rem 0}.happ-web-shell .web-day span{color:var(--text-tertiary);background:var(--bg-subtle);border-radius:var(--radius-full);padding:.25rem .75rem;font-size:.75rem;font-weight:600}.happ-web-shell .web-composer{border-top:1px solid var(--border-subtle);background:var(--bg-surface);flex:none;padding:.875rem 1.75rem 1.25rem}.happ-web-shell .web-composer-inner{background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);max-width:760px;transition:border-color var(--dur-fast);align-items:flex-end;gap:.5rem;margin:0 auto;padding:.375rem .375rem .375rem .5rem;display:flex}.happ-web-shell .web-composer-inner.focus{border-color:var(--amber-500);background:var(--bg-surface)}.happ-web-shell .web-composer textarea{resize:none;min-width:0;font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;max-height:140px;padding:.5rem .25rem;font-size:.90625rem;line-height:1.5}.happ-web-shell .web-composer textarea::placeholder{color:var(--text-tertiary)}.happ-web-shell .web-composer-tools{align-items:center;gap:.125rem;display:flex}.happ-web-shell .web-send{border-radius:var(--radius-full);cursor:pointer;background:var(--amber-500);width:38px;height:38px;color:var(--text-on-accent);transition:transform var(--dur-fast), opacity var(--dur-fast);border:none;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-send:disabled{background:var(--slate-200);color:var(--slate-400);cursor:default}.happ-web-shell .web-send:not(:disabled):hover{transform:scale(1.06)}.happ-web-shell .web-dash{flex:1;min-height:0;overflow-y:auto}.happ-web-shell .web-dash-inner{max-width:none;margin:0;padding:1.625rem 2.5rem 2.125rem}.happ-web-shell .web-dash-hero{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.875rem;display:flex}.happ-web-shell .web-dash-hero>div:first-child{min-width:0}.happ-web-shell .web-dash-eyebrow{letter-spacing:.04em;color:var(--amber-700);text-transform:uppercase;font-size:.78125rem;font-weight:700}.happ-web-shell .web-dash-title{font-family:var(--font-display);letter-spacing:-.025em;color:var(--text-primary);margin:.375rem 0 0;font-size:2rem;font-weight:800}.happ-web-shell .web-dash-sub{color:var(--text-secondary);margin-top:.375rem;font-size:.9375rem}.happ-web-shell .web-dash-status{white-space:nowrap;color:var(--olive-700);background:var(--bg-sage-subtle);border-radius:var(--radius-full);flex:none;align-items:center;gap:.4375rem;padding:.4375rem .8125rem;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .web-dash-status .dot{background:var(--green-500);border-radius:50%;width:7px;height:7px}.happ-web-shell .web-dash-stats{flex:none;gap:.625rem;display:flex}.happ-web-shell .web-dash-stat{border-radius:var(--radius-lg);background:var(--bg-subtle);border:1px solid var(--border-subtle);cursor:pointer;min-width:76px;transition:border-color var(--dur-fast), background var(--dur-fast);flex-direction:column;align-items:center;gap:.125rem;padding:.625rem .875rem;display:flex}.happ-web-shell .web-dash-stat:hover{border-color:var(--border-default);background:var(--bg-sage-subtle)}.happ-web-shell .web-dash-stat-n{font-family:var(--font-display);color:var(--text-primary);font-size:1.375rem;font-weight:800;line-height:1}.happ-web-shell .web-dash-stat-l{letter-spacing:.01em;color:var(--text-tertiary);white-space:nowrap;font-size:.71875rem;font-weight:600}.happ-web-shell .web-dash-cols{grid-template-columns:1fr 1fr;gap:1.375rem;display:grid}@media (max-width:760px){.happ-web-shell .web-dash-cols{grid-template-columns:1fr;gap:0}}.happ-web-shell .web-dash-secrow{align-items:center;gap:.625rem;margin:1.875rem 0 .875rem;display:flex}.happ-web-shell .web-dash-secrow h3{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);white-space:nowrap;margin:0;font-size:1rem;font-weight:800}.happ-web-shell .web-dash-secrow .more{white-space:nowrap;color:var(--amber-700);cursor:pointer;background:0 0;border:none;flex:none;align-items:center;gap:.1875rem;margin-left:auto;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .web-dash-hero .more{white-space:nowrap;color:var(--amber-700);cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;font-size:.8125rem;font-weight:600;display:inline-flex}.happ-web-shell .web-dash-hero .more:disabled{opacity:.55;cursor:default}.happ-web-shell .web-spin{animation:.9s linear infinite happSpin}@keyframes happSpin{to{transform:rotate(360deg)}}.web-loader{width:100%;min-height:50vh;color:var(--text-secondary);animation:webLoaderIn .16s var(--ease-out,ease-out) both;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:.875rem;padding:2.5rem 1rem;display:flex}.web-loader-label{letter-spacing:-.005em;font-size:.875rem;font-weight:600}@keyframes webLoaderIn{0%{opacity:.55}to{opacity:1}}.web-skel-card{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:var(--radius-lg);flex-direction:column;gap:.75rem;min-height:96px;padding:1.125rem;display:flex}.web-skel-row{align-items:center;gap:.75rem;display:flex}.web-skel-col{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.web-skel-stats{gap:.75rem;margin-top:auto;display:flex}.web-skel{background:linear-gradient(90deg, var(--border-subtle) 25%, color-mix(in srgb, var(--border-subtle) 45%, transparent) 50%, var(--border-subtle) 75%);background-size:200% 100%;border-radius:6px;animation:1.3s ease-in-out infinite webShimmer}.web-skel-line{height:12px}.web-skel-ico{border-radius:10px;flex:none;width:36px;height:36px}.web-skel-block{border-radius:8px;flex:1;height:38px}.web-skel-table{flex-direction:column;width:100%;display:flex}.web-skel-trow{border-bottom:1px solid var(--border-subtle);align-items:center;gap:1rem;padding:.875rem .25rem;display:flex}.web-skel-trow:last-child{border-bottom:none}.web-skel-thead .web-skel{opacity:.75;height:10px}@keyframes webShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.web-skel{animation:none}}.happ-web-shell .web-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.875rem;display:grid}.happ-web-shell .web-card{text-align:left;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast);flex-direction:column;gap:.625rem;min-width:0;padding:1.125rem;display:flex;overflow:hidden}.happ-web-shell .web-card:hover{border-color:var(--border-default);background:var(--bg-subtle)}.happ-web-shell .web-card-top{align-items:center;gap:.6875rem;display:flex}.happ-web-shell .web-card-ico{border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.happ-web-shell .web-card-code{font-family:var(--font-mono);color:var(--text-tertiary);font-size:.75rem;font-weight:600}.happ-web-shell .web-card-title{font-family:var(--font-sans);color:var(--text-primary);letter-spacing:-.01em;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9375rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.happ-web-shell .web-card-meta{color:var(--text-secondary);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.8125rem;display:-webkit-box;overflow:hidden}.happ-web-shell .web-card-foot{justify-content:space-between;align-items:center;margin-top:.125rem;display:flex}.happ-web-shell .web-card-amount{font-family:var(--font-mono);color:var(--text-primary);font-size:.875rem;font-weight:600}.happ-web-shell .web-bl-grid{grid-template-columns:1fr;gap:.875rem;display:grid}.happ-web-shell .web-bl{text-align:left;border-radius:var(--radius-lg);cursor:pointer;min-height:150px;transition:transform var(--dur-fast);color:inherit;border:none;flex-direction:column;gap:.5rem;padding:1.125rem;text-decoration:none;display:flex;position:relative;overflow:hidden}.happ-web-shell .web-bl:hover{transform:translateY(-2px)}.happ-web-shell .web-bl-ico{background:#fff9;border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.happ-web-shell[data-theme=dark] .web-bl-ico{background:#00000040}.happ-web-shell .web-bl-cat{letter-spacing:.02em;font-size:.75rem;font-weight:700}.happ-web-shell .web-bl-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.015em;font-size:1rem;font-weight:800;line-height:1.25}.happ-web-shell .web-bl-snip{color:var(--slate-700);font-size:.8125rem;line-height:1.45}.happ-web-shell .web-bl-date{color:var(--slate-600);margin-top:auto;font-size:.75rem;font-weight:500}.happ-web-shell .web-bl-pin{color:var(--clay-700);align-items:center;gap:.1875rem;font-size:.65625rem;font-weight:700;display:inline-flex;position:absolute;top:16px;right:16px}.happ-web-shell .web-rows{flex-direction:column;gap:.25rem;max-width:720px;display:flex}.happ-web-shell .web-tabs{gap:.25rem;display:flex}.happ-web-shell .web-tab{cursor:pointer;font-family:var(--font-sans);color:var(--text-tertiary);border-radius:var(--radius-full);transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;padding:.4375rem .8125rem;font-size:.84375rem;font-weight:600}.happ-web-shell .web-tab:hover{background:var(--bg-subtle)}.happ-web-shell .web-tab.on{background:var(--bg-accent-subtle);color:var(--amber-800)}.happ-web-shell .happ-bare{background:var(--bg-page);width:100%;height:100%;position:relative;overflow:hidden}.happ-web-shell .web-mobile{width:100%;height:100vh;overflow:hidden}.happ-web-shell .web-mobile .app-root{background:var(--bg-page)}.happ-web-shell .wa-stage{background:var(--bg-page);position:fixed;inset:0;overflow:hidden}.happ-web-shell .wa-layer{transition:opacity .42s var(--ease-in-out);position:absolute;inset:0}.happ-web-shell .wa-layer.hide{opacity:0;pointer-events:none}.happ-web-shell .wa-splash{flex-direction:column;justify-content:center;align-items:center;gap:1.375rem;display:flex;position:absolute;inset:0}.happ-web-shell .wa-splash-mark{animation:waMark .72s var(--ease-spring) both}.happ-web-shell .wa-splash-name{font-family:var(--font-display);letter-spacing:-.035em;color:var(--text-primary);animation:waFade .6s var(--ease-out) .16s both;font-size:2.5rem;font-weight:800}.happ-web-shell .wa-splash-foot{animation:waFade .6s var(--ease-out) .32s both;flex-direction:column;align-items:center;gap:.875rem;display:flex;position:absolute;bottom:48px}.happ-web-shell .wa-splash-cap{letter-spacing:.04em;color:var(--text-tertiary);font-size:.8125rem;font-weight:600}@keyframes waMark{0%{transform:scale(.7)}to{transform:scale(1)}}@keyframes waFade{0%{transform:translateY(8px)}to{transform:none}}.happ-web-shell .wa-mark{background:var(--amber-500);color:var(--slate-900);font-family:var(--font-display);letter-spacing:-.04em;flex:none;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.happ-web-shell .wa-login{display:flex;position:absolute;inset:0}.happ-web-shell .wa-brandpanel{background:var(--rail-bg);color:#fff;flex-direction:column;flex:1;justify-content:space-between;padding:3rem;display:flex;position:relative;overflow:hidden}.happ-web-shell .wa-brandpanel:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--amber-500) 20%, transparent), transparent 70%);border-radius:50%;width:420px;height:420px;position:absolute;bottom:-120px;right:-120px}.happ-web-shell .wa-bp-top{z-index:1;align-items:center;gap:.75rem;display:flex;position:relative}.happ-web-shell .wa-bp-word{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.375rem;font-weight:800}.happ-web-shell .wa-bp-mid{z-index:1;position:relative}.happ-web-shell .wa-bp-tagline{font-family:var(--font-display);letter-spacing:-.03em;max-width:460px;font-size:2.375rem;font-weight:800;line-height:1.12}.happ-web-shell .wa-bp-sub{color:#ffffffa8;max-width:400px;margin-top:1.125rem;font-size:.96875rem;line-height:1.55}.happ-web-shell .wa-bp-foot{z-index:1;color:#ffffff80;gap:1.375rem;font-size:.8125rem;display:flex;position:relative}.happ-web-shell .wa-bp-stat b{font-family:var(--font-display);color:var(--amber-400);font-size:1.375rem;font-weight:800;display:block}.happ-web-shell .wa-formside{background:var(--bg-surface);flex:none;justify-content:center;align-items:center;width:480px;max-width:46%;padding:2.5rem;display:flex}.happ-web-shell .wa-form{width:100%;max-width:360px}.happ-web-shell .wa-form-head h1{font-family:var(--font-display);letter-spacing:-.025em;color:var(--text-primary);margin:0;font-size:1.75rem;font-weight:800}.happ-web-shell .wa-form-head p{color:var(--text-secondary);margin:.5rem 0 1.75rem;font-size:.9375rem}.happ-web-shell .wa-fields{flex-direction:column;gap:1rem;display:flex}.happ-web-shell .wa-opts{justify-content:space-between;align-items:center;margin-top:1.125rem;display:flex}.happ-web-shell .wa-remember{cursor:pointer;color:var(--text-secondary);align-items:center;gap:.625rem;font-size:.875rem;font-weight:500;display:flex}.happ-web-shell .wa-link{cursor:pointer;font-family:var(--font-sans);color:var(--text-accent);border-radius:var(--radius-sm);background:0 0;border:none;margin:-.375rem -.5rem;padding:.375rem .5rem;font-size:.875rem;font-weight:600}.happ-web-shell .wa-link:hover{background:var(--bg-accent-subtle)}.happ-web-shell .wa-cta-wrap{margin-top:1.625rem}.happ-web-shell button.m3-filled.wa-cta{border-radius:var(--radius-full);width:100%;height:52px;font-size:1rem;font-weight:700}.happ-web-shell .wa-foot{text-align:center;color:var(--text-tertiary);margin-top:1.625rem;font-size:.78125rem;line-height:1.5}.happ-web-shell .wa-foot b{color:var(--text-secondary);font-weight:600}.happ-web-shell .wa-eye{border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;width:36px;height:36px;margin-right:-.375rem;display:inline-flex}.happ-web-shell .wa-eye:hover{background:var(--slate-100)}.happ-web-shell .wa-themebtn{z-index:5;border-radius:var(--radius-full);border:1px solid var(--border-subtle);background:var(--bg-surface);width:40px;height:40px;color:var(--slate-600);cursor:pointer;justify-content:center;align-items:center;display:flex;position:absolute;top:24px;right:24px}.happ-web-shell .wa-leaving{animation:waOut .36s var(--ease-in-out) both}@keyframes waOut{to{opacity:0;transform:scale(.99)}}.happ-web-shell .wa-login-anim>*{animation:waFade .52s var(--ease-out) both}.happ-web-shell .wa-login-anim>:nth-child(2){animation-delay:80ms}.happ-web-shell .wa-login-anim>:nth-child(3){animation-delay:.14s}.happ-web-shell .wa-login-anim>:nth-child(4){animation-delay:.2s}@media (max-width:1180px){.happ-web-shell{--wcol:336px}}@media (max-width:860px){.happ-web-shell .wa-brandpanel{display:none}.happ-web-shell .wa-formside{width:100%;max-width:100%}}.happ-web-shell .web-wsd-shortcuts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.625rem;display:grid}.happ-web-shell .web-wsd-shortcut{cursor:pointer;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);font:inherit;text-align:left;align-items:center;gap:.625rem;padding:.75rem .875rem;transition:border-color .12s,background .12s;display:flex}.happ-web-shell .web-wsd-shortcut:hover{border-color:var(--border-default);background:var(--bg-subtle)}.happ-web-shell .web-wsd-shortcut-ico{background:var(--bg-accent-subtle);width:36px;height:36px;color:var(--amber-700);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-wsd-shortcut-label{color:var(--text-primary);min-width:0;font-size:.84375rem;font-weight:600}.happ-web-shell .web-wsd-note{color:var(--text-tertiary);margin:1.125rem .125rem 0;font-size:.84375rem}.happ-web-shell .web-wsd-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:.75rem;display:grid}.happ-web-shell .web-wsd-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-surface);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.happ-web-shell .web-wsd-card-head{cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.5rem;padding:0;display:flex}.happ-web-shell .web-wsd-card-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);font-size:.9375rem;font-weight:800}.happ-web-shell .web-wsd-card-open{color:var(--amber-700);flex:none;align-items:center;gap:.125rem;font-size:.78125rem;font-weight:600;display:inline-flex}.happ-web-shell .web-wsd-card-head:hover .web-wsd-card-open{text-decoration:underline}.happ-web-shell .web-wsd-stats{flex-wrap:wrap;gap:.5rem 1.375rem;display:flex}.happ-web-shell .web-wsd-stat-value{font-family:var(--font-mono);color:var(--text-primary);font-size:1.25rem;font-weight:700}.happ-web-shell .web-wsd-stat-label{color:var(--text-tertiary);margin-top:.0625rem;font-size:.75rem;font-weight:600}.happ-web-shell .web-wsd-sub{letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:.375rem;font-size:.71875rem;font-weight:700}.happ-web-shell .web-wsd-rows{flex-direction:column;display:flex}.happ-web-shell .web-wsd-row{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:.625rem;padding:.25rem 0;display:flex}.happ-web-shell .web-wsd-row:first-of-type{border-top:none}.happ-web-shell .web-wsd-row-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8125rem;overflow:hidden}.happ-web-shell .web-wsd-row-count{font-family:var(--font-mono);color:var(--text-primary);flex:none;font-size:.8125rem;font-weight:600}.happ-web-shell .web-wsd-bars{align-items:stretch;gap:.5rem;height:86px;display:flex}.happ-web-shell .web-wsd-bar-col{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.happ-web-shell .web-wsd-bar-track{background:var(--bg-subtle);border-radius:6px;flex:1;align-items:flex-end;display:flex;overflow:hidden}.happ-web-shell .web-wsd-bar{background:var(--amber-500);border-radius:6px 6px 0 0;width:100%;min-height:0}.happ-web-shell .web-wsd-bar-label{color:var(--text-tertiary);text-align:center;font-size:.65625rem;font-weight:600}html[data-company-theme=navy] .happ-web-shell{--amber-300:#93c5fd;--amber-400:#60a5fa;--amber-500:var(--primary);--amber-600:#1d4ed8;--amber-700:#1e40af;--amber-800:#1e3a8a;--border-accent:#2563eb;--bg-accent-subtle:#e4ecfb;--text-accent:#1e40af;--bg-page:#fafcfe;--bg-subtle:#edf1f8;--bg-surface:#fff;--border-subtle:#d7e0ee;--rail-bg:#0b0e1b;--rail-ico-on:#60a5fa;--sand-200:#dce6f5;--coffee-700:#1e40af;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=navy] .happ-web-shell[data-theme=dark]{--amber-300:#bfdbfe;--amber-400:#93c5fd;--amber-500:var(--primary);--amber-600:#2563eb;--amber-700:#93b4ff;--amber-800:#1e40af;--border-accent:#3b82f6;--bg-accent-subtle:#16263f;--text-accent:#93b4ff;--bg-page:#0a1526;--bg-subtle:#13223a;--bg-surface:#0f1e36;--bg-elevated:#16263f;--border-subtle:#20314d;--rail-bg:#080c17;--rail-ico-on:#93c5fd;--sand-200:#1b2e4a;--coffee-700:#93b4ff;--text-on-accent:#0a1526;--border-default:#20314d;--bg-list:#0f1e36}html[data-company-theme=red] .happ-web-shell{--amber-300:#fca5a5;--amber-400:#f87171;--amber-500:var(--primary);--amber-600:#b11722;--amber-700:#b11722;--amber-800:#8a1219;--border-accent:#d81f2a;--bg-accent-subtle:#fde8e8;--text-accent:#b11722;--bg-page:#fdfcfc;--bg-subtle:#f5eded;--bg-surface:#fff;--border-subtle:#e7dcdc;--rail-bg:#1b0c0f;--rail-ico-on:#f87171;--sand-200:#f6dada;--coffee-700:#b11722;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=red] .happ-web-shell[data-theme=dark]{--amber-300:#fecaca;--amber-400:#fca5a5;--amber-500:var(--primary);--amber-600:#d81f2a;--amber-700:#ff8a91;--amber-800:#b11722;--border-accent:#f23b47;--bg-accent-subtle:#2a1416;--text-accent:#ff8a91;--bg-page:#160c0d;--bg-subtle:#1f1314;--bg-surface:#211314;--bg-elevated:#2a1a1b;--border-subtle:#3a2426;--rail-bg:#18090c;--rail-ico-on:#fca5a5;--sand-200:#3a2426;--coffee-700:#ff8a91;--text-on-accent:#160c0d;--border-default:#3a2426;--bg-list:#211314}html[data-company-theme=green] .happ-web-shell{--amber-300:#86efac;--amber-400:#4ade80;--amber-500:var(--primary);--amber-600:#166534;--amber-700:#14532d;--amber-800:#0f3d22;--border-accent:#15803d;--bg-accent-subtle:#dcf2e3;--text-accent:#0f5c2e;--bg-page:#fafdfa;--bg-subtle:#edf4ed;--bg-surface:#fff;--border-subtle:#d5e7da;--rail-bg:#0a1411;--rail-ico-on:#4ade80;--sand-200:#d5ebdc;--coffee-700:#0f5c2e;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=green] .happ-web-shell[data-theme=dark]{--amber-300:#a7f3d0;--amber-400:#6ee7b7;--amber-500:var(--primary);--amber-600:#10b981;--amber-700:#6ee7b7;--amber-800:#059669;--border-accent:#34d399;--bg-accent-subtle:#122a1d;--text-accent:#6ee7b7;--bg-page:#07150d;--bg-subtle:#11241a;--bg-surface:#0f2016;--bg-elevated:#16291e;--border-subtle:#1f3a2a;--rail-bg:#07110d;--rail-ico-on:#6ee7b7;--sand-200:#1f3a2a;--coffee-700:#6ee7b7;--text-on-accent:#07150d;--border-default:#1f3a2a;--bg-list:#0f2016}html[data-company-theme=purple] .happ-web-shell{--amber-300:#d8b4fe;--amber-400:#c084fc;--amber-500:var(--primary);--amber-600:#7e22ce;--amber-700:#6b21a8;--amber-800:#581c87;--border-accent:#9333ea;--bg-accent-subtle:#efe0fc;--text-accent:#7e22ce;--bg-page:#fcfafe;--bg-subtle:#f2ecf8;--bg-surface:#fff;--border-subtle:#e4d8f1;--rail-bg:#150d20;--rail-ico-on:#c084fc;--sand-200:#e7d6f8;--coffee-700:#7e22ce;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=purple] .happ-web-shell[data-theme=dark]{--amber-300:#e9d5ff;--amber-400:#d8b4fe;--amber-500:var(--primary);--amber-600:#a855f7;--amber-700:#d8b4fe;--amber-800:#9333ea;--border-accent:#c084fc;--bg-accent-subtle:#241441;--text-accent:#d8b4fe;--bg-page:#130a1c;--bg-subtle:#1c1230;--bg-surface:#1e1230;--bg-elevated:#281640;--border-subtle:#33214e;--rail-bg:#120a1c;--rail-ico-on:#d8b4fe;--sand-200:#33214e;--coffee-700:#d8b4fe;--text-on-accent:#130a1c;--border-default:#33214e;--bg-list:#1e1230}html[data-company-theme=violet] .happ-web-shell{--amber-300:#c4b5fd;--amber-400:#a78bfa;--amber-500:var(--primary);--amber-600:#6d28d9;--amber-700:#5b21b6;--amber-800:#4c1d95;--border-accent:#6d28d9;--bg-accent-subtle:#e7e5fe;--text-accent:#5b21b6;--bg-page:#fbfbfe;--bg-subtle:#efedfa;--bg-surface:#fff;--border-subtle:#dedbf3;--rail-bg:#120c1e;--rail-ico-on:#a78bfa;--sand-200:#dcd9f8;--coffee-700:#5b21b6;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=violet] .happ-web-shell[data-theme=dark]{--amber-300:#ddd6fe;--amber-400:#c4b5fd;--amber-500:var(--primary);--amber-600:#8b5cf6;--amber-700:#c4b5fd;--amber-800:#7c3aed;--border-accent:#a78bfa;--bg-accent-subtle:#1e1942;--text-accent:#c4b5fd;--bg-page:#0c0a1e;--bg-subtle:#18142f;--bg-surface:#161330;--bg-elevated:#201a42;--border-subtle:#2c2552;--rail-bg:#0e091b;--rail-ico-on:#c4b5fd;--sand-200:#2c2552;--coffee-700:#c4b5fd;--text-on-accent:#0c0a1e;--border-default:#2c2552;--bg-list:#161330}html[data-company-theme=brown] .happ-web-shell{--amber-300:#d9b98e;--amber-400:#c19a6b;--amber-500:var(--primary);--amber-600:#6b4220;--amber-700:#573619;--amber-800:#432912;--border-accent:#8a5a2b;--bg-accent-subtle:#efe2d2;--text-accent:#6b4220;--bg-page:#fcfbf9;--bg-subtle:#f1eae2;--bg-surface:#fff;--border-subtle:#e3d8c9;--rail-bg:#14110f;--rail-ico-on:#c19a6b;--sand-200:#e7d8c5;--coffee-700:#6b4220;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=brown] .happ-web-shell[data-theme=dark]{--amber-300:#e0b488;--amber-400:#d2a271;--amber-500:var(--primary);--amber-600:#a56f3e;--amber-700:#e0b488;--amber-800:#8a5a2b;--border-accent:#c8915a;--bg-accent-subtle:#2c2015;--text-accent:#e0b488;--bg-page:#161009;--bg-subtle:#1e160f;--bg-surface:#221913;--bg-elevated:#2b2018;--border-subtle:#3a2c1f;--rail-bg:#110e0c;--rail-ico-on:#e0b488;--sand-200:#3a2c1f;--coffee-700:#e0b488;--text-on-accent:#161009;--border-default:#3a2c1f;--bg-list:#221913}html[data-company-theme=ocean] .happ-web-shell{--amber-300:#67e8f9;--amber-400:#22d3ee;--amber-500:var(--primary);--amber-600:#0c5c72;--amber-700:#0c4a5e;--amber-800:#083544;--border-accent:#0e7490;--bg-accent-subtle:#d5eef1;--text-accent:#0c5c72;--bg-page:#f8fcfd;--bg-subtle:#e9f4f5;--bg-surface:#fff;--border-subtle:#d2e6e9;--rail-bg:#091318;--rail-ico-on:#22d3ee;--sand-200:#d0e9ec;--coffee-700:#0c5c72;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=ocean] .happ-web-shell[data-theme=dark]{--amber-300:#a5f3fc;--amber-400:#67e8f9;--amber-500:var(--primary);--amber-600:#06b6d4;--amber-700:#67e8f9;--amber-800:#0891b2;--border-accent:#22d3ee;--bg-accent-subtle:#123036;--text-accent:#67e8f9;--bg-page:#06171b;--bg-subtle:#102429;--bg-surface:#0e2329;--bg-elevated:#152e34;--border-subtle:#1e3b42;--rail-bg:#061014;--rail-ico-on:#67e8f9;--sand-200:#1e3b42;--coffee-700:#67e8f9;--text-on-accent:#06171b;--border-default:#1e3b42;--bg-list:#0e2329}html[data-company-theme=yellow] .happ-web-shell{--amber-300:#fde047;--amber-400:#facc15;--amber-500:var(--primary);--amber-600:#ca8a04;--amber-700:#a16207;--amber-800:#854d0e;--border-accent:#eab308;--bg-accent-subtle:#fbf1c6;--text-accent:#854d0e;--bg-page:#fefef9;--bg-subtle:#f5f1de;--bg-surface:#fff;--border-subtle:#eae3c8;--rail-bg:#1d180c;--rail-ico-on:#facc15;--sand-200:#f4e9b8;--coffee-700:#854d0e;--text-on-accent:#17150f;--bg-list:#fff}html[data-company-theme=yellow] .happ-web-shell[data-theme=dark]{--amber-300:#fef08a;--amber-400:#fde047;--amber-500:var(--primary);--amber-600:#eab308;--amber-700:#fde047;--amber-800:#ca8a04;--border-accent:#facc15;--bg-accent-subtle:#2a2208;--text-accent:#fde047;--bg-page:#161300;--bg-subtle:#1d1906;--bg-surface:#211d08;--bg-elevated:#2a2410;--border-subtle:#3a3214;--rail-bg:#191509;--rail-ico-on:#fde047;--sand-200:#3a3214;--coffee-700:#fde047;--text-on-accent:#161300;--border-default:#3a3214;--bg-list:#211d08}html[data-company-theme=rose] .happ-web-shell{--amber-300:#fda4af;--amber-400:#fb7185;--amber-500:var(--primary);--amber-600:#be123c;--amber-700:#9f1239;--amber-800:#881337;--border-accent:#e11d48;--bg-accent-subtle:#fcdde6;--text-accent:#be123c;--bg-page:#fffafc;--bg-subtle:#fbe9ef;--bg-surface:#fff;--border-subtle:#f0d8df;--rail-bg:#1b0c11;--rail-ico-on:#fb7185;--sand-200:#f9d3dd;--coffee-700:#be123c;--text-on-accent:#fff;--bg-list:#fff}html[data-company-theme=rose] .happ-web-shell[data-theme=dark]{--amber-300:#fecdd3;--amber-400:#fda4af;--amber-500:var(--primary);--amber-600:#f43f5e;--amber-700:#fda4af;--amber-800:#e11d48;--border-accent:#fb7185;--bg-accent-subtle:#341523;--text-accent:#fda4af;--bg-page:#1a0810;--bg-subtle:#220e16;--bg-surface:#261019;--bg-elevated:#321420;--border-subtle:#43202f;--rail-bg:#18080e;--rail-ico-on:#fda4af;--sand-200:#43202f;--coffee-700:#fda4af;--text-on-accent:#1a0810;--border-default:#43202f;--bg-list:#261019}.happ-web-shell .web-empty-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.25rem;display:flex}.happ-web-shell .web-empty-btn{border-radius:var(--radius-full);border:1px solid var(--border-default);height:38px;color:var(--slate-700);font-family:var(--font-sans);letter-spacing:-.005em;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;align-items:center;gap:.4375rem;padding:0 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.happ-web-shell .web-empty-btn:hover{background:var(--slate-100)}.happ-web-shell .web-empty-btn:active{background:var(--slate-200)}.happ-web-shell .web-empty-btn.primary{background:var(--amber-500);color:var(--text-on-accent);border-color:#0000}.happ-web-shell .web-empty-btn.primary:hover{background:var(--amber-400)}.happ-web-shell .web-empty-btn.primary:active{background:var(--amber-600)}.happ-web-shell[data-theme=dark] .web-empty-btn{color:var(--text-secondary)}.happ-web-shell[data-theme=dark] .web-empty-btn:hover{background:var(--bg-subtle)}.happ-web-shell .web-seclabel .web-seclabel-chevron{opacity:0;transition:opacity var(--dur-fast)}.happ-web-shell .web-seclabel .web-seclabel-icon{opacity:1;transition:opacity var(--dur-fast)}.happ-web-shell .web-seclabel:hover .web-seclabel-chevron{opacity:1}.happ-web-shell .web-seclabel:hover .web-seclabel-icon{opacity:0}.happ-web-shell .web-seclabel .web-seclabel-glyph:only-child .web-seclabel-chevron{opacity:1}@media (hover:none){.happ-web-shell .web-seclabel .web-seclabel-chevron{opacity:1}.happ-web-shell .web-seclabel .web-seclabel-icon{opacity:0}}.happ-web-shell .web-sec-add{border-radius:var(--radius-full);cursor:pointer;width:26px;height:26px;color:var(--slate-500);opacity:0;transition:opacity var(--dur-fast), background var(--dur-fast);background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-right:6px;display:flex;position:relative}.happ-web-shell .web-sec-add:after{content:"";border-radius:var(--radius-full);position:absolute;inset:-5px}.happ-web-shell .web-seclabel:hover .web-sec-add{opacity:1}.happ-web-shell .web-seclabel-slot{flex:none;place-items:center;min-width:26px;height:26px;margin-left:auto;margin-right:6px;display:grid}.happ-web-shell .web-seclabel-slot>*{grid-area:1/1}.happ-web-shell .web-seclabel-slot .web-sec-count{pointer-events:none}.happ-web-shell .web-seclabel-slot:has(.web-sec-add+.web-sec-add){min-width:58px}.happ-web-shell .web-seclabel-slot .web-sec-count{transition:opacity var(--dur-fast)}.happ-web-shell .web-seclabel:hover .web-seclabel-slot .web-sec-count,.happ-web-shell .web-seclabel:focus-within .web-seclabel-slot .web-sec-count{opacity:0}.happ-web-shell .web-seclabel-slot-actions{justify-content:flex-end;align-items:center;display:flex}.happ-web-shell .web-seclabel-slot .web-sec-add{margin-right:0}@media (hover:none){.happ-web-shell .web-seclabel-slot{align-items:center;gap:2px;display:flex}.happ-web-shell .web-seclabel-slot>*{grid-area:auto}}.happ-web-shell .web-seclabel .web-sec-add+.web-sec-add{margin-left:6px}.happ-web-shell .web-sec-add+.web-sec-add:after{left:-3px}.happ-web-shell .web-seclabel-slot:has(.web-sec-add+.web-sec-add) .web-sec-add:first-of-type:after{right:-3px}.happ-web-shell .web-sec-add:hover{background:var(--slate-200);color:var(--slate-800)}.happ-web-shell .web-sec-add:focus-visible{opacity:1;outline:2px solid var(--amber-500);outline-offset:1px}@media (hover:none){.happ-web-shell .web-sec-add{opacity:1}}.happ-web-shell .web-head-div{background:var(--border-subtle);flex:none;width:1px;height:20px;margin:0 .375rem}.happ-web-shell .web-head-section{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.875rem;font-weight:650;overflow:hidden}@media (max-width:720px){.happ-web-shell .web-head-section,.happ-web-shell .web-head-section+.web-head-div{display:none}.happ-web-shell .web-head-div:has(+.web-head-section){display:none}}.happ-web-shell .web-head-me{cursor:pointer;border-radius:var(--radius-full);height:38px;color:var(--text-primary);font-family:var(--font-sans);transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:none;align-items:center;gap:.5rem;max-width:15rem;padding:0 .625rem 0 .375rem;display:inline-flex}.happ-web-shell .web-head-me:hover,.happ-web-shell .web-head-me.on{background:var(--bg-subtle)}.happ-web-shell .web-head-me:focus-visible{outline:2px solid var(--border-accent);outline-offset:-2px}.happ-web-shell .web-head-me-name{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.8125rem;font-weight:650;overflow:hidden}@media (max-width:640px){.happ-web-shell .web-head-me-name{display:none}.happ-web-shell .web-head-me{padding:0 .375rem}}.happ-web-shell [data-page-title]{display:none}.happ-web-shell .web-wsempty-side{padding:1rem .9375rem}.happ-web-shell .web-wsempty-side-note{color:var(--text-tertiary);margin:0;font-size:.8125rem;line-height:1.5}.happ-web-shell .web-wsempty-cta{cursor:pointer;border-radius:var(--radius-full);background:var(--text-primary);height:2.75rem;color:var(--bg-surface);font:inherit;border:0;align-items:center;gap:.5rem;margin-top:1.25rem;padding:0 1.25rem;font-size:.875rem;font-weight:700;transition:opacity .12s;display:inline-flex}.happ-web-shell .web-wsempty-cta:hover{opacity:.9}.happ-web-shell .web-wsempty-alt{color:var(--text-tertiary);margin:.625rem 0 0;font-size:.8125rem}.happ-web-shell .web-wsempty-grid{grid-template-columns:repeat(auto-fill,minmax(13.75rem,1fr));gap:.625rem;display:grid}.happ-web-shell .web-wsempty-card{border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);opacity:.72;background:0 0;align-items:center;gap:.625rem;padding:.75rem .875rem;display:flex}.happ-web-shell .web-wsempty-ico{background:var(--bg-surface-2,var(--muted));width:2.125rem;height:2.125rem;color:var(--text-secondary);border-radius:.625rem;flex:none;justify-content:center;align-items:center;display:flex}.happ-web-shell .web-wsempty-text{flex-direction:column;min-width:0;display:flex}.happ-web-shell .web-wsempty-name{color:var(--text-primary);font-size:.84375rem;font-weight:700;line-height:1.3}.happ-web-shell .web-wsempty-hint{color:var(--text-tertiary);margin-top:.0625rem;font-size:.75rem;line-height:1.35}
