:root{--bg-page:#f5f0e6;--bg-surface:#fff;--bg-surface-alt:#faf6ea;--bg-muted:#f5f0e6;--bg-hover:#faf7ef;--bg-active:#f0dfae;--border:#e6dcc2;--border-soft:#f0ece3;--ink:#2b2318;--ink-muted:#6b6357;--ink-soft:#9a8868;--ink-faint:#b0a486;--ink-solid:#2b2318;--gold:#c9a86a;--gold-strong:#a3833f;--gold-border:#dab566;--gold-bright:#eaa11a;--success:#2f8a52;--danger:#c0392b;--danger-strong:#d0342c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg-page:#17130e;--bg-surface:#221c14;--bg-surface-alt:#2a2317;--bg-muted:#2a2317;--bg-hover:#2e2820;--bg-active:#3d331f;--border:#4a4132;--border-soft:#352d21;--ink:#f2ead9;--ink-muted:#c9bea3;--ink-soft:#a89b7d;--ink-faint:#8b7f66;--gold:#d8bd85;--gold-strong:#e0b563;--gold-border:#b3924f;--gold-bright:#f0b43a;--success:#4caf6f;--danger:#e0564a;--danger-strong:#e0564a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-page);color:var(--ink);font-family:sans-serif;overflow-x:hidden}.layout{min-height:100vh;display:flex}.content{flex:1;width:100%;min-width:0}@media (width<=768px){.content{padding-top:58px;padding-bottom:76px}}.separator{background-color:var(--border-soft);height:1px;margin:1rem 0}.aside-menu{background-color:var(--bg-surface);width:300px;color:var(--ink-faint);flex-shrink:0;height:100vh;padding:1.5rem;position:sticky;top:0}.aside-menu .logo{color:var(--ink)}.aside-menu nav ul{list-style:none}.aside-menu nav a{color:var(--ink);text-decoration:none}.nav-group{flex-direction:column;gap:.15rem;margin:20px 0;display:flex}.nav-item{color:inherit;align-items:flex-start;gap:.85rem;padding:.75rem .7rem;text-decoration:none;display:flex}.nav-item:hover{background-color:var(--bg-hover)}.nav-item.active{background-color:var(--bg-active);border:1px solid var(--gold-border)}.nav-icon{width:20px;height:20px;color:var(--ink-faint);flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.nav-item.active .nav-icon{color:var(--gold-strong)}.nav-text{flex-direction:column;gap:.1rem;display:flex}.nav-title{color:var(--ink);font-size:.95rem}.nav-item.active .nav-title{color:var(--gold-strong)}.nav-subtitle{color:var(--ink-faint);font-size:.78rem;font-style:italic}@media (width<=768px){.aside-menu{display:none}}.mobile-topbar{display:none}@media (width<=768px){.mobile-topbar{z-index:40;background:var(--bg-surface);border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;top:0;left:0;right:0}}.mobile-topbar-brand{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:800;text-decoration:none}.mobile-topbar-login{background:var(--ink-solid);color:#fff;cursor:pointer;border:none;flex-shrink:0;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600}.mobile-topbar-avatar{background:var(--bg-active);width:34px;height:34px;color:var(--gold-strong);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:13px;font-weight:700;display:flex;overflow:hidden}.mobile-topbar-avatar img{object-fit:cover;width:100%;height:100%}.bottom-bar{display:none}@media (width<=768px){.bottom-bar{z-index:40;background:var(--bg-surface);border-top:1px solid var(--border-soft);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));display:flex;position:fixed;bottom:0;left:0;right:0}}.bottom-nav-item{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-family:inherit;text-decoration:none;display:flex}.bottom-nav-icon{justify-content:center;align-items:center;width:22px;height:22px;display:flex}.bottom-nav-label{font-size:10.5px;font-weight:600;line-height:1}.bottom-nav-item.active{color:var(--gold-strong)}.mobile-drawer-overlay{display:none}@media (width<=768px){.mobile-drawer-overlay{z-index:50;background:rgba(20,16,8,.4);display:block;position:fixed;inset:0}}.mobile-drawer{background:var(--bg-surface);max-height:80vh;padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px));z-index:51;border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.mobile-drawer-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.mobile-drawer-title{color:var(--ink);font-size:15px;font-weight:700}.mobile-drawer-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.login-modal{text-align:center;flex-direction:column;width:100%;display:flex}.login-modal-header{flex-direction:column;align-items:center;display:flex}.login-modal-logo{object-fit:contain;width:96px;height:96px}.login-modal-brand{letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-top:.5rem;font-size:.72rem}.login-modal h2{color:var(--ink);margin:.9rem 0 .6rem;font-family:Georgia,Times New Roman,serif;font-size:1.9rem}.login-modal-intro{max-width:340px;color:var(--ink-soft);font-size:.92rem;line-height:1.5}.login-modal form{width:100%;margin:1.6rem 0 0}.login-modal .separator{margin:1.4rem 0 .9rem}.login-modal-providers{flex-direction:column;gap:.7rem;display:flex}.login-modal-footer{color:var(--ink-faint);font-size:.78rem;font-style:italic}.separator-label{letter-spacing:.18em;color:var(--ink-faint);align-items:center;gap:.9rem;margin:1.4rem 0;font-size:.75rem;display:flex}.separator-label:before,.separator-label:after{content:"";background-color:var(--border-soft);flex:1;height:1px}.btn-provider{background-color:var(--bg-surface);width:100%;height:52px;color:var(--ink);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:.75rem;padding:0 1rem;transition:border-color .15s,background-color .15s;display:flex}.btn-provider:hover{background-color:var(--bg-hover);border-color:var(--gold-border)}.btn-provider:active{transform:scale(.99)}.btn-provider-icon{width:22px;color:var(--gold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-provider-text{text-align:center;flex:1;padding-right:34px;font-size:.95rem;font-weight:600}.btn-login{background:var(--bg-surface);border:3px solid var(--gold-bright);cursor:pointer;align-items:center;gap:.75rem;width:100%;height:60px;padding:.4rem;font-family:inherit;transition:border-color .15s,box-shadow .15s;display:flex}.btn-login:hover{box-shadow:0 2px 8px rgba(212,180,106,.15)}.btn-login:active{transform:scale(.98)}.btn-login-icon{background:var(--bg-active);width:34px;height:34px;color:var(--gold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.btn-login:hover .btn-login-icon{background:var(--bg-active)}.btn-login-text{color:var(--ink);text-align:center;flex:1;font-size:.95rem;font-weight:700}.btn-login-arrow{color:var(--ink-faint);align-items:center;padding-right:.5rem;transition:transform .15s;display:flex}.btn-login:hover .btn-login-arrow{color:var(--gold-border);transform:translate(3px)}.user-profile-box{background:var(--bg-surface);border:3px solid var(--gold-bright);align-items:center;gap:.65rem;width:100%;padding:.5rem .6rem;display:flex}.user-profile-avatar{background:var(--bg-active);width:34px;height:34px;color:var(--gold-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex;overflow:hidden}.user-profile-avatar img{object-fit:cover;width:100%;height:100%}.user-profile-meta{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.user-profile-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.user-profile-role{justify-content:space-between;align-items:baseline;gap:.4rem;font-size:.7rem;display:flex}.user-profile-role-name{color:var(--gold-strong);font-weight:700}.user-profile-quota-text{color:var(--ink-soft);font-weight:600}.user-profile-bar{background:var(--border-soft);border-radius:999px;height:5px;display:block;overflow:hidden}.user-profile-bar-fill{background:var(--gold-border);border-radius:999px;height:100%;transition:width .3s;display:block}.user-profile-box.is-low .user-profile-quota-text{color:var(--danger-strong)}.user-profile-box.is-low .user-profile-bar-fill{background:var(--danger-strong)}.user-profile-logout{width:28px;height:28px;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;transition:color .15s;display:flex}.user-profile-logout:hover{color:var(--danger-strong)}.standard-page{background:linear-gradient(90deg,#dab05c 0%,#fff 100%);flex-direction:column;min-height:100vh;padding:32px;display:flex;position:relative}.standard-page h3.title{color:transparent;-webkit-text-stroke:1.5px #000;letter-spacing:1px;font-size:44px;font-weight:700}.standard-page p.subtitle{color:var(--ink);font-size:32px;font-weight:600;text-decoration:underline}.home-page{background:linear-gradient(90deg,#dab05c 0%,#fff 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.code-source-item.is-selected{background:var(--bg-active);border:1px solid var(--gold-border)}.code-source-input{margin-top:1rem}.code-source-input input{border:1px solid var(--border);border-radius:8px;width:100%;padding:.7rem 1rem;font-size:.95rem}.hero{text-align:center;width:100%;padding:5rem 3rem;position:relative}@media (width<=640px){.hero{padding:3rem 1.25rem}}.hero h1{z-index:2;color:var(--ink);margin-bottom:1rem;font-size:clamp(2.6rem,13vw,10.5rem);line-height:1.1;position:relative}.home-activity{color:var(--ink-muted);justify-content:center;align-items:center;gap:8px;margin:0 0 1.5rem;font-size:.9rem;display:flex}.home-activity-dot{background:#2f8a52;border-radius:50%;width:8px;height:8px}.home-features{text-align:center;width:100%;max-width:1100px;margin:2rem 0 4rem}.home-features h3{letter-spacing:.04em;color:var(--ink-muted);margin-bottom:1.5rem;font-size:.85rem;font-weight:700}.home-features-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:24px;margin-bottom:3rem;display:grid}@media (width<=800px){.home-features-grid{grid-template-columns:1fr}}.home-feature-card{background-color:rgba(228,200,134,.2);flex-direction:column;align-items:center;padding:24px 20px;display:flex}.home-feature-card .herald-animated{width:90px;height:90px;margin-bottom:.5rem}.home-feature-card h4{color:var(--ink);margin-bottom:.5rem;font-size:1.1rem}.home-feature-card p{color:var(--ink-muted);font-size:.9rem;line-height:1.4}.home-languages-title{margin-top:0!important}.home-languages-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;display:flex}.home-language-logo{object-fit:contain;filter:grayscale();opacity:.75;width:40px;height:40px;transition:filter .15s,opacity .15s}.home-language-logo:hover{filter:none;opacity:1}.hero h3{z-index:2;color:var(--ink-muted);max-width:700px;margin:0 auto;font-size:clamp(1.25rem,5vw,2.3rem);font-weight:400;position:relative}.hero span.hero-async-title{color:transparent;-webkit-text-stroke:clamp(1px, .9vw, 4.5px) #000;letter-spacing:1px;font-weight:700}@media (width<=640px){.hero span.hero-async-title{-webkit-text-stroke:1.8px #000;font-weight:700}}.hero a.opensource{color:var(--ink-muted);-webkit-text-stroke:1px #000;letter-spacing:1px;text-decoration:underline;-webkit-text-decoration-color:var(--gold-border);text-decoration-color:var(--gold-border);font-weight:700}.hero a.opensource:hover{cursor:pointer;color:var(--ink)}.floating-angel{z-index:1;pointer-events:none;background-image:url(/angel.png);background-position:50%;background-repeat:no-repeat;background-size:contain;width:650px;height:650px;animation:4s ease-in-out infinite float;position:absolute;top:200px;right:-100px}@media (width<=640px){.floating-angel{display:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.code-source{flex-wrap:wrap;justify-content:center;gap:20px;padding:20px;display:flex}.code-box{text-align:center;background-color:rgba(228,200,134,.4);border-radius:18px;width:750px;max-width:calc(100vw - 40px);margin-bottom:280px;padding:20px 0}@media (width<=640px){.code-box{margin-bottom:40px}}.code-source-item{background-color:var(--bg-surface);flex-direction:column;flex:0 0 calc(33.333% - 20px);justify-content:center;align-items:center;width:120px;height:70px;display:flex;position:relative;box-shadow:0 2px 8px rgba(41,40,39,.15)}@media (width<=640px){.code-source-item{flex:0 0 calc(50% - 10px);width:auto}}.code-source-indicator{background:var(--bg-muted);padding:5px;font-size:12px;position:absolute;top:8px;right:8px}.code-source-item p{font-weight:700}.code-source-item:hover{border-style:solid;border-color:var(--ink);cursor:pointer;transition:transform .3s;transform:translateY(-2px)}p.code-source-title{margin-top:8px}a.code-source-item{color:var(--ink);text-decoration:none}.code-url-box{text-align:center;background-color:rgba(228,200,134,.5);border-radius:18px;width:750px;max-width:calc(100vw - 40px);margin:20px 60px;padding:30px}.code-url-box h3{margin-bottom:12px}.code-url-box input{width:100%;font-size:1.12rem}@media (width<=640px){.code-url-box{margin-left:12px;margin-right:12px;padding:20px 16px}.code-url-input-wrap{flex-wrap:wrap}.code-url-input-wrap input{padding-left:2.6rem}.code-url-submit{width:100%}}.code-repo-list{z-index:20;text-align:left;background:var(--bg-surface);border:1px solid var(--border);max-height:260px;margin:0;padding:0;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px rgba(43,35,24,.15)}.code-repo-item{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;transition:background-color .15s;display:flex}.code-repo-item:not(:last-child){border-bottom:1px solid var(--border-soft)}.code-repo-item:hover{background:var(--bg-surface-alt)}.code-repo-name{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.code-repo-private{background:var(--border-soft);color:var(--ink-soft);text-transform:uppercase;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:700}.code-url-input-wrap{background-color:var(--bg-surface);border:1px solid var(--border);align-items:center;gap:.4rem;padding:.35rem .35rem .35rem 0;display:flex;position:relative}.code-url-input-wrap input{background:0 0;border:none;outline:none;flex:1;padding:.5rem .5rem .5rem 2.6rem}.code-url-submit{background-color:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border:none;flex:none;padding:.65rem 1.2rem;font-weight:600;transition:background-color .15s,opacity .15s}.code-url-submit:hover{background-color:#3c3122}.code-url-submit:disabled{opacity:.5;cursor:not-allowed}.code-url-icon{color:var(--gold-strong);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.code-url-icon svg{width:18px;height:18px}.live-activity-band{background:var(--bg-surface);justify-content:center;align-items:center;width:100%;min-height:70vh;padding:64px 20px;display:flex}.live-activity{align-items:stretch;gap:48px;width:100%;max-width:1420px;display:flex}@media (width<=860px){.live-activity{flex-direction:column;align-items:stretch}}.live-activity-intro{text-align:left;outline-offset:-3px;outline:3px solid #eaa11a;flex-direction:column;flex:0 0 440px;justify-content:center;gap:20px;padding:52px 44px;display:flex}@media (width<=860px){.live-activity-intro{text-align:center;flex:none;align-items:center;width:100%}}@media (width<=480px){.live-activity-intro{padding:32px 20px}.live-activity-band{padding:40px 12px}}.live-activity-title{color:var(--ink);margin:0;font-size:clamp(28px,8vw,40px);font-weight:700}.live-activity-subtitle{color:var(--ink-muted);margin:0;font-size:18px;line-height:1.55}.live-activity-users{align-items:center;gap:12px;margin-top:4px;display:flex}@media (width<=860px){.live-activity-users{justify-content:center}}.live-activity-users-stack{display:flex}.live-activity-users-avatar{outline:2px solid var(--bg-surface);border-radius:50%;margin-left:-10px;display:block}.live-activity-users-avatar:first-child{margin-left:0}.live-activity-users-avatar .avatar-circle{width:34px;height:34px;font-size:.75rem}.live-activity-users-count{color:var(--ink-muted);font-size:14px;font-weight:600}.live-activity-ctas{flex-wrap:nowrap;gap:10px;margin-top:10px;display:flex}@media (width<=860px){.live-activity-ctas{justify-content:center}}@media (width<=460px){.live-activity-ctas{flex-wrap:wrap}}.live-activity-cta{outline-offset:-2px;color:#eaa11a;white-space:nowrap;background:0 0;outline:2px solid rgba(234,161,26,.6);align-items:center;gap:8px;padding:13px 18px;font-size:14.5px;font-weight:700;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.live-activity-cta:hover{color:var(--ink-solid);background:#eaa11a}.live-activity-cta-dark{outline-color:var(--ink);color:var(--ink)}.live-activity-cta-dark:hover{background:var(--ink-solid);color:#fff}.live-activity-tracks{flex-direction:column;flex:1;justify-content:center;gap:20px;min-width:0;display:flex}.live-activity-track{min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8% 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8% 92%,transparent)}@media (width<=860px){.live-activity-track{width:100%}}.live-activity-track-inner{gap:20px;width:max-content;animation:40s linear infinite live-activity-scroll;display:flex}.live-activity-track-inner.is-reverse{animation-direction:reverse}@keyframes live-activity-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.live-activity-box{background:var(--bg-surface);border:1px solid var(--border);flex:0 0 380px;align-items:center;gap:20px;min-height:132px;padding:32px;display:flex;box-shadow:0 2px 18px rgba(27,27,26,.08)}.live-activity-box .avatar-circle{background:var(--bg-active);width:66px;height:66px;color:var(--gold-strong);font-size:1.25rem}.live-activity-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.live-activity-author{color:var(--ink);align-items:center;gap:7px;font-size:19px;font-weight:600;display:inline-flex}.live-activity-pro-tag{color:#fff;text-transform:uppercase;letter-spacing:.03em;background:#eaa11a;flex:none;padding:2px 7px;font-size:10px;font-weight:800}.live-activity-meta{color:var(--ink-soft);flex-direction:column;gap:1px;font-size:15px;display:flex}.live-activity-meta-time{font-size:13px}.live-activity-grade{color:#eaa11a;border:2px solid #eaa11a;flex:none;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;font-weight:800;display:flex}:root[data-theme=dark] .standard-page,:root[data-theme=dark] .home-page{background:linear-gradient(90deg, #4a3a14 0%, var(--bg-page) 100%)}:root[data-theme=dark] .standard-page h3.title,:root[data-theme=dark] .hero span.hero-async-title,:root[data-theme=dark] .hero a.opensource{-webkit-text-stroke-color:var(--ink)}.code-modal{background:var(--bg-page);text-align:left;flex-direction:column;display:flex;position:absolute;inset:0;overflow-y:auto}.code-modal>*{box-sizing:border-box;width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.code-modal>.code-page-header{flex:none;padding-top:48px}.code-modal>.code-editor{flex:1;min-height:0;padding-bottom:40px}.code-page-header{text-align:center;margin-bottom:32px}.code-page-eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;font-size:12px;font-weight:700}.code-page-title{letter-spacing:-.02em;color:var(--ink);margin:0 0 12px;font-size:clamp(30px,4vw,42px);font-weight:700}.code-page-subtitle{max-width:560px;color:var(--ink-muted);margin:0 auto;font-size:14.5px;line-height:1.6}.code-editor{background:var(--bg-surface);border:1px solid var(--border);display:flex;overflow:hidden}@media (width<=760px){.code-editor{flex-direction:column}}.code-editor-samples{background:var(--bg-surface-alt);border-right:1px solid var(--border);flex-direction:column;flex:0 0 180px;gap:4px;padding:18px 14px;display:flex}@media (width<=760px){.code-editor-samples{border-right:none;border-bottom:1px solid var(--border);flex-flow:wrap}.code-editor-samples-head{flex:0 0 100%}}.code-editor-samples-head{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:6px;font-size:11px;font-weight:700}.code-editor-sample-item{text-align:left;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid transparent;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Courier New,monospace;font-size:13px}.code-editor-sample-item:hover{background:var(--border-soft)}.code-editor-sample-item.is-active{background:var(--bg-surface);border-color:var(--gold-border);color:var(--ink);font-weight:600}.code-editor-main{flex-direction:column;flex:1;min-width:0;display:flex}.code-editor-topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.code-editor-title{color:var(--ink);font-size:14px;font-weight:700}.code-editor-lang-select{background:var(--bg-surface-alt);border:1px solid var(--border);color:var(--ink-muted);padding:6px 10px;font-family:inherit;font-size:12.5px}.code-editor-body{background:var(--bg-surface-alt);flex:1;min-height:0;position:relative}.code-editor-highlight,.code-editor-textarea{white-space:pre-wrap;word-break:break-word;border:none;margin:0;padding:18px;font-family:ui-monospace,SFMono-Regular,Courier New,monospace;font-size:13px;line-height:1.55;position:absolute;inset:0;overflow:auto}.code-editor-highlight{pointer-events:none;color:var(--ink)}.code-editor-highlight code{font:inherit}.code-editor-textarea{resize:none;color:transparent;width:100%;height:100%;caret-color:var(--ink);background:0 0;outline:none}.code-editor-textarea::selection{background:rgba(234,161,26,.3)}.tok-comment{color:var(--ink-soft);font-style:italic}.tok-string{color:#047857}.tok-number{color:#b45309}.tok-keyword{color:#6d28d9;font-weight:600}.tok-punct{color:var(--ink-muted)}.tok-plain{color:inherit}.code-editor-footbar{border-top:1px solid var(--border);background:var(--bg-surface-alt);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.code-editor-foot-note{color:var(--ink-soft);font-size:12.5px}.code-editor-foot-note strong{color:var(--ink)}.tabs-wrapper{width:100%}.tabs-header{margin-bottom:1.5rem;display:flex}.tab-btn{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-bottom:2px solid transparent;padding:.75rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--gold-strong)}.tab-btn.active{color:var(--gold-strong);border-bottom-color:var(--gold-border)}.tabs-content{padding:.5rem 0}.rules-page{background:linear-gradient(-40deg,#dab05c 0%,#fff 50%);flex-direction:column;gap:28px;min-height:100vh;padding:30px;display:flex}.f-security{--family:#e5484d;--family-soft:#fdecec}.f-quality{--family:#3b82f6;--family-soft:#eaf2fe}.f-git{--family:#8b5cf6;--family-soft:#f1ecfe}.f-pattern{--family:#f97316;--family-soft:#fef0e6}.f-dependencies{--family:#14b8a6;--family-soft:#e6f7f5}.f-tests{--family:#eab308;--family-soft:#fdf5e0}.f-structure{--family:#6366f1;--family-soft:#ecebfe}.f-testing{--family:#eab308;--family-soft:#fdf5e0}.f-documentation{--family:#64748b;--family-soft:#eef1f4}.rules-group{flex-flow:wrap;gap:18px;width:100%;display:flex}.rule-family{background:var(--bg-surface);border:3px solid var(--border-soft);cursor:pointer;flex:180px;justify-content:center;align-items:center;gap:12px;padding:10px 20px 10px 10px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.rule-family .herald-animated{width:52px;height:52px}.rule-family:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(43,35,24,.06)}.rule-family.h-selected{border-color:var(--family,#e5484d)}.rule-family-bar{background:var(--family,#e5484d);flex-shrink:0;align-self:stretch;width:6px;min-height:90px}.rule-family .title{color:var(--ink);flex:1;font-size:1.05rem}.rule-content{flex-direction:column;flex:1;gap:26px;min-width:0;display:flex}.rule-group{grid-template-columns:repeat(2,minmax(0,1fr));align-content:flex-start;gap:22px;display:grid}.rule-pagination{justify-content:center;align-items:center;gap:18px;display:flex}.rule-pagination-btn{background:var(--bg-surface);border:1px solid var(--border-soft);color:var(--ink);cursor:pointer;padding:9px 18px;transition:border-color .2s,opacity .2s}.rule-pagination-btn:hover:not(:disabled){border-color:var(--gold-border)}.rule-pagination-btn:disabled{opacity:.4;cursor:default}.rule-pagination-status{color:var(--ink-soft);font-size:.85rem}.rule-item{background:var(--bg-surface);border:1px solid color-mix(in srgb, var(--family,#e5484d) 28%, #fff);justify-content:space-between;align-items:stretch;gap:20px;padding:22px;transition:transform .2s,box-shadow .2s;display:flex}.rule-item:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(43,35,24,.08)}.rule-main{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.rule-badge{background:var(--family,#e5484d);color:#fff;margin-bottom:16px;padding:7px 12px;font-size:.82rem;font-weight:700;display:inline-block}.rule-title{color:var(--ink);margin-bottom:10px;font-size:1.15rem}.rule-desc{color:var(--ink-muted);margin-bottom:18px;font-size:.92rem;line-height:1.5}.rule-tags{flex-wrap:wrap;gap:10px;margin-top:auto;display:flex}.rule-tag{color:var(--ink-muted);background:var(--bg-surface-alt);border:1px solid var(--border-soft);border-radius:8px;align-items:center;gap:7px;padding:7px 12px;font-size:.82rem;display:inline-flex}.rule-tag svg{width:15px;height:15px;color:var(--ink-soft)}.rule-dot{background:var(--ink-faint);border-radius:50%;width:9px;height:9px}.rule-dot.s-critical,.rule-dot.s-high{background:#e5484d}.rule-dot.s-medium{background:#f59e0b}.rule-toggle{background:var(--bg-muted);border:1px solid var(--border-soft);border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:14px;width:118px;padding:18px 12px;transition:background .2s,border-color .2s;display:flex}.rule-toggle.on{background:#f1fbf4;border-color:#bfe6cd}.rule-toggle-label{color:var(--ink-soft);font-size:.9rem;font-weight:600}.rule-toggle.on .rule-toggle-label{color:#1f9254}.rule-toggle-state{color:var(--ink-faint);display:flex}.rule-toggle.on .rule-toggle-state{color:#22a35d}.switch{cursor:pointer;background:#cfcbc2;border:none;border-radius:999px;width:62px;height:32px;padding:0;transition:background .2s;position:relative}.switch:focus-visible{outline:2px solid var(--gold-border);outline-offset:2px}.rule-toggle.on .switch{background:#22a35d}.switch-thumb{background:var(--bg-surface);border-radius:50%;width:26px;height:26px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px rgba(0,0,0,.25)}.rule-toggle.on .switch-thumb{transform:translate(30px)}.herald-animated{background-position:50%;background-repeat:no-repeat;background-size:contain;flex-shrink:0;width:120px;height:120px}.h-security{background-image:url(../herald-security-animated.svg)}.h-git{background-image:url(../herald-git-animated.svg)}.h-pattern{background-image:url(../herald-patterns-animated.svg)}.h-quality{background-image:url(../herald-quality-animated.svg)}.h-dependencies{background-image:url(../herald-dependencies-animated.svg)}.h-tests{background-image:url(../herald-tests-animated.svg)}@media (width<=1280px){.rule-group{grid-template-columns:minmax(0,1fr)}}:root[data-theme=dark] .rules-page{background:linear-gradient(-40deg, #4a3a14 0%, var(--bg-page) 50%)}.reports-page{background:linear-gradient(-40deg,#dab05c 0%,#fff 50%);flex-direction:column;gap:28px;min-height:100vh;padding:30px;display:flex}.report-search{background:var(--bg-surface);border:1px solid var(--border-soft);width:100%;max-width:420px;color:var(--gold-strong);align-items:center;gap:10px;padding:10px 16px;display:flex}.report-search input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:.95rem}.report-search input::placeholder{color:var(--ink-soft)}.report-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:flex-start;gap:22px;display:grid}.report-project-box{background:var(--bg-surface);border:1px solid var(--border-soft);flex-direction:column;padding:22px;transition:transform .2s,box-shadow .2s;display:flex}.report-project-box:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(43,35,24,.08)}.report-project-box-head{border-bottom:1px solid var(--border-soft);cursor:pointer;align-items:center;gap:12px;margin-bottom:4px;padding-bottom:16px;display:flex}.report-project-icon{width:22px;height:22px;color:var(--gold-strong);flex-shrink:0;justify-content:center;align-items:center;display:flex}.report-project-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:22px;height:22px}.report-project-title{min-width:0;color:var(--ink);word-break:break-word;flex:1;font-size:1.05rem}.report-project-open,.report-project-favorite{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex}.report-project-open:hover{color:var(--ink-muted)}.report-project-favorite:hover,.report-project-favorite.is-favorite{color:var(--gold-border)}.report-project-favorite.is-favorite svg{fill:currentColor}.report-project-actions{gap:8px;margin-top:14px;display:flex}@media (hover:hover){.report-project-actions{opacity:0;pointer-events:none;transition:opacity .15s}.report-project-box:hover .report-project-actions{opacity:1;pointer-events:auto}}.report-project-view,.report-project-rerun{background:var(--bg-surface-alt);border:1px solid var(--border-soft);color:var(--ink-muted);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;transition:background-color .15s;display:flex}.report-project-view:hover,.report-project-rerun:hover{background:var(--border-soft)}.report-project-chart{width:100%;margin:14px 0 4px}.report-project-recent{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.report-project-recent-row{cursor:pointer;align-items:center;gap:10px;padding:10px 4px;transition:background-color .15s;display:flex}.report-project-recent-row:not(:last-child){border-bottom:1px solid var(--border-soft)}.report-project-recent-row:hover{background:var(--bg-hover)}.report-project-recent-date{color:var(--ink-soft);white-space:nowrap;font-size:.8rem}.report-project-recent-new{color:#4a6b3e;text-transform:uppercase;background:#eef6e9;flex-shrink:0;padding:2px 8px;font-size:.68rem;font-weight:700}.report-project-recent-grade{background:var(--gold-border);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.78rem;font-weight:700;display:inline-flex}.report-project-recent-score{color:var(--ink-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.8rem;font-weight:600}.report-project-recent-issues{text-align:right;min-width:0;color:var(--ink-muted);flex:1;font-size:.82rem}.report-project-recent-delete{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:color .15s,opacity .15s;display:flex}@media (hover:hover){.report-project-recent-delete{opacity:0}.report-project-recent-row:hover .report-project-recent-delete{opacity:1}}.report-project-recent-delete:hover{color:var(--danger)}@media (width<=1280px){.report-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.report-project-grid{grid-template-columns:minmax(0,1fr)}}:root[data-theme=dark] .reports-page{background:linear-gradient(-40deg, #4a3a14 0%, var(--bg-page) 50%)}.modal-overlay.modal-overlay-fullscreen{padding:0}.modal-overlay.modal-overlay-beside-menu{width:auto;left:300px;right:0}@media (width<=768px){.modal-overlay.modal-overlay-beside-menu{left:0}}.modal-box.modal-box-fullscreen{border-radius:0;width:100%;height:100%;max-height:100%}.modal-box.modal-box-wide{text-align:left;align-items:stretch;width:min(920px,100%);max-width:920px;padding:0;overflow:hidden}@media (width<=760px){.modal-box.modal-box-wide{max-height:calc(100vh - 40px);overflow-y:auto}}.modal-overlay{z-index:1000;backdrop-filter:blur(6px);background-color:rgba(41,40,39,.35);justify-content:center;align-items:center;width:100%;height:100%;padding:20px;animation:.2s ease-out modal-overlay-in;display:flex;position:fixed;top:0;left:0}.modal-box{text-align:center;background-color:var(--bg-surface);width:min(460px,100%);max-height:calc(100vh - 40px);color:var(--ink);border-radius:12px;flex-direction:column;align-items:center;padding:2.5rem 2rem 1.75rem;animation:.22s cubic-bezier(.16,1,.3,1) modal-box-in;display:flex;position:relative;overflow-y:auto;box-shadow:0 24px 64px rgba(182,106,31,.28)}.modal-box h3{margin:10px 0;font-size:28px}.modal-box p{color:var(--ink-soft)}.modal-close{background-color:var(--bg-surface);border:1px solid var(--border);width:32px;height:32px;color:var(--ink);cursor:pointer;z-index:20;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex;position:absolute;top:16px;right:16px}.form-item{text-align:left;flex-direction:column;display:flex}.form-item label{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.45rem;font-size:.7rem}.form-item input{background-color:var(--bg-surface);width:100%;height:52px;color:var(--ink);border:1px solid var(--border);border-radius:10px;outline:none;padding:0 1rem;transition:border-color .15s,box-shadow .15s}.form-item input::placeholder{color:var(--ink-faint)}.form-item input:focus{border-color:var(--gold-border);box-shadow:0 0 0 3px rgba(218,181,102,.18)}.form-submit{background-color:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;height:52px;margin-top:1rem;font-weight:600;transition:background-color .15s,transform .1s}.form-submit:hover{background-color:var(--bg-hover)}.form-submit:active{transform:scale(.99)}.modal-box form{margin:10px 0}.modal-box input,.modal-box button{font-family:inherit;font-size:1rem}.modal-close:hover{background-color:var(--bg-hover)}.form-error{text-align:left;color:var(--danger);background-color:var(--bg-muted);border:1px solid var(--border);border-radius:10px;margin-top:1rem;padding:.7rem .9rem;font-size:.82rem}.form-info{text-align:left;color:var(--ink-muted);background-color:var(--bg-muted);border:1px solid var(--border);border-radius:10px;margin-top:1rem;padding:.7rem .9rem;font-size:.82rem}.password-field{position:relative}.password-field input{padding-right:2.5rem}.password-toggle{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;align-items:center;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.password-toggle:hover{opacity:1}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-box-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal-box{animation:none}}.analyze-modal{position:absolute;inset:0;overflow:hidden}.analyze-modal-track{flex-direction:column;transition:transform .8s ease-in-out;display:flex;transform:translateY(0)}.analyze-modal-track.analyze-modal-track-done{transform:translateY(-100vh)}.analyze-modal-panel{background:linear-gradient(30deg,#e2cb5a 0%,#fff 100%);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:100vh;display:flex}.h-free{background-image:url(../herald-free-animated.svg);width:300px;height:300px}.h-pro{background-image:url(../herald-pro-animated.svg);width:300px;height:300px}.h-business{background-image:url(../herald-business-animated.svg);width:300px;height:300px}.analyze-modal-status{flex-direction:column;align-items:center;gap:.25rem;width:min(420px,90%);padding:2rem;display:flex}.analyze-modal-status h2{font-size:75px}.analyze-modal-bar{background:rgba(0,0,0,.08);height:100px;transition:opacity .4s,transform .4s;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.analyze-modal-bar.analyze-modal-bar-done{opacity:0;pointer-events:none;transform:translateY(100%)}.analyze-modal-bar-fill{background-color:var(--ink-solid);height:100%;transition:width 50ms linear}.analyze-modal-panel-done{color:var(--ink);background:linear-gradient(30deg,#e2cb5a 0%,#fff 100%);flex-direction:row;justify-content:flex-start;align-items:stretch}.analyze-modal-panel-done p{color:var(--ink-soft)}.analyze-modal-panel-done-left-box{background:var(--bg-surface);text-align:center;width:420px;height:100vh;color:var(--ink);box-shadow:none;outline-offset:-20px;outline:3px solid #e4994a;flex-direction:column;flex-shrink:0;align-items:center;padding:3rem 2.5rem;display:flex}.analyze-modal-panel-done-left-box h2{margin:0;font-size:1rem;font-weight:500}.analyze-modal-panel-done-left-box .analyze-modal-brand{filter:none;width:200px;height:200px;margin-bottom:.5rem}.analyze-modal-panel-done-left-box .analyze-modal-score{align-items:baseline;gap:.6rem;display:flex}.analyze-modal-panel-done-left-box .analyze-modal-grade{color:#fff;background:#c57c49;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;font-size:1.75rem;font-weight:600;display:inline-flex}.analyze-modal-panel-done-left-box .analyze-modal-overall{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:1.95rem;display:block}.analyze-modal-panel-done-left-box .analyze-repo-name{color:var(--ink-soft);align-items:center;gap:8px;display:flex}.analyze-modal-panel-done-left-box .analyze-modal-created-at{color:var(--ink-soft);margin-top:-.3rem;font-size:.78rem}.analyze-modal-panel-done-left-box svg{stroke-width:1.5px;width:20px;height:20px}.analyze-modal-left-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;width:100%;min-height:0;display:flex}.analyze-modal-actions{flex-direction:column;flex-shrink:0;align-items:stretch;gap:.85rem;width:100%;padding-top:1.5rem;display:flex}.analyze-modal-download:disabled{opacity:.4;cursor:not-allowed}.analyze-modal-error{border:none;border-left:2px solid var(--danger);max-width:480px;color:var(--danger);background:0 0;border-radius:0;padding:0 0 0 14px;font-size:.95rem;line-height:1.5;display:block}.analyze-modal-restart,.analyze-modal-download,.analyze-modal-close-action{outline-offset:-2px;letter-spacing:.02em;cursor:pointer;background:0 0;border:none;border-radius:0;outline:2px solid;padding:.85rem 1rem;font-size:.85rem;font-weight:600;transition:color .15s,background-color .15s}.analyze-modal-download{color:#c57c49;outline-width:1px}.analyze-modal-download:hover{color:#fff;background-color:#c57c49}.badge-pro{vertical-align:1px;background:var(--gold-strong,#eaa11a);color:#fff;letter-spacing:.04em;margin-left:8px;padding:2px 7px;font-size:10px;font-weight:800;display:inline-block}.analyze-modal-restart{color:var(--ink-soft)}.analyze-modal-restart:hover{color:var(--ink)}.analyze-modal-close-action{color:var(--ink-soft)}.analyze-modal-close-action:hover{color:var(--ink)}.analyze-modal-panel-done-right-box{flex:1;min-width:0;height:100vh;padding:3rem;overflow-y:auto}.analyze-cat-report{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:28px;width:100%;max-width:1500px;margin:0 auto;display:grid}@media (width<=760px){.analyze-cat-report{grid-template-columns:1fr}}.dep-box{background:var(--bg-surface);border:1px solid var(--border);flex-direction:column;height:420px;display:flex;position:relative;overflow:hidden}.dep-box-bg-icon.herald-animated{opacity:.14;pointer-events:none;z-index:0;width:140px;height:140px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dep-box-head,.dep-box-main{z-index:1;position:relative}.dep-box-head{background:var(--bg-surface-alt);flex-shrink:0;padding:20px}.dep-box-head-frame{background:var(--bg-surface);outline-offset:0;outline:2px solid #e4994a;justify-content:space-between;align-items:center;gap:14px;padding:10px 16px;display:flex}.dep-box-title-text{letter-spacing:.01em;min-width:0;max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.85rem;font-weight:700;overflow:hidden}.dep-box-grade{flex-shrink:0;align-items:baseline;gap:.5rem;display:flex}.dep-box-grade-letter{color:#fff;background:#c57c49;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.05rem;font-weight:600;line-height:1;display:inline-flex}.dep-box-grade-score{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.1rem}.dep-box-main{text-align:left;flex-direction:column;flex:1;min-width:0;min-height:0;padding:18px 22px;display:flex}.dep-box-main .analyze-dep-list{flex:1;min-height:0;overflow-y:auto}.analyze-cat-ok{color:var(--success);margin:0;font-size:.88rem}.analyze-cat-more{color:var(--ink-soft);margin:8px 0 0;font-size:.78rem}.analyze-dep-list{flex-direction:column;display:flex}.analyze-dep-row{border:none;border-bottom:1px solid var(--border-soft);background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.analyze-dep-row:last-child{border-bottom:none}a.analyze-dep-row{color:inherit;cursor:pointer;text-decoration:none;transition:color .15s}a.analyze-dep-row .analyze-dep-name code{transition:color .15s}a.analyze-dep-row:hover .analyze-dep-name code{color:var(--gold-strong)}.analyze-dep-name{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.analyze-dep-name code{color:var(--ink);white-space:normal;word-break:break-word;font-weight:700}.analyze-dep-ver{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:normal;word-break:break-word;font-size:.78rem}.analyze-dep-rec{color:var(--success);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.78rem;font-weight:700}.analyze-dep-pill{letter-spacing:.04em;text-transform:uppercase;background:0 0;border-radius:0;flex-shrink:0;padding:0;font-size:.68rem;font-weight:700}.analyze-dep-pill.is-vuln{color:var(--danger)}.analyze-dep-pill.is-outdated{color:var(--gold-strong)}:root[data-theme=dark] .analyze-modal-panel,:root[data-theme=dark] .analyze-modal-panel-done{background:linear-gradient(30deg, #4a3a14 0%, var(--bg-page) 100%)}@media (width<=900px){.analyze-modal-panel-done{flex-direction:column}.analyze-modal-panel-done-left-box{width:100%;height:auto;padding:1.5rem}.analyze-modal-panel-done-left-box .analyze-modal-brand{width:70px;height:70px}.analyze-modal-panel-done-right-box{height:auto;padding:2rem 1.5rem}}.plans-page{flex-direction:column;justify-content:center;align-items:center;gap:36px;min-height:90vh;padding:60px 20px;display:flex}.h-daily-quota{text-align:center;background-color:var(--bg-surface);width:300px;max-width:100%;padding:20px 26px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.h-daily-quota-label{letter-spacing:.03em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;font-size:13px;font-weight:700}.h-daily-quota-value{color:var(--ink);margin-bottom:12px;font-size:30px;font-weight:700}.h-plans{z-index:0;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:56px;display:flex;position:relative}@media (width<=640px){.h-plans{gap:32px}}.h-plan-col{flex-direction:column;align-items:center;width:380px;max-width:100%;display:flex}.h-plan-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;width:150px;height:150px;margin-bottom:26px}.h-plan-icon-free{background-image:url(../herald-free-animated.svg)}.h-plan-icon-pro{background-image:url(../herald-pro-animated.svg)}.h-plan-icon-business{background-image:url(../herald-business-animated.svg);width:230px;height:230px;margin-top:-40px;margin-bottom:-14px}.h-plan-card{text-align:center;background-color:var(--bg-surface);flex-direction:column;flex:1;align-items:center;width:100%;min-height:480px;padding:34px 28px;display:flex;box-shadow:0 2px 18px rgba(27,27,26,.2)}.h-plan-card .separator.separator-action{margin-top:auto}.h-plan-card.is-current{border:2px solid var(--gold-strong)}.h-plan-status{letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px;padding:3px 12px;font-size:12px;font-weight:800}.h-plan-status.is-current{color:#fff;background:var(--gold-strong)}.h-plan-status.is-below{color:var(--ink-muted);background:var(--border-soft)}.h-plan-status.is-next{color:var(--gold-strong);border:1px solid var(--gold-strong)}.h-plan-tier{flex-direction:column;align-items:center;gap:2px;margin-bottom:10px;display:flex}.h-plan-tier-num{letter-spacing:.1em;color:var(--ink-muted);font-size:12px;font-weight:800}.h-plan-tier-title{color:var(--ink-soft);font-size:13px;font-weight:700}.h-plan-name{color:var(--ink);margin:0 0 8px;font-size:26px;font-weight:700}.h-plan-tagline{color:var(--ink-soft);margin:0 0 16px;font-size:14px;line-height:1.4}.h-plan-price{color:var(--gold-strong);font-size:32px;font-weight:700}.h-plan-price span{color:var(--ink-muted);margin-left:4px;font-size:14px;font-weight:400}.h-plan-price-sub{color:var(--ink-muted);margin-top:4px;font-size:12px}.h-plan-card .separator{width:100%;margin:1.25rem 0}.h-plan-perks{width:100%;color:var(--ink-soft);flex-direction:column;gap:10px;margin:0;padding:0;font-size:15px;line-height:1.5;list-style:none;display:flex}.h-plan-perks-intro{color:var(--ink);font-weight:700}.h-plan-quota-bar{background:var(--border-soft);height:7px;display:block;overflow:hidden}.h-plan-quota-bar-fill{background:var(--gold-strong);height:100%;transition:width .3s;display:block}.h-plan-card .btn{width:100%;padding:12px 16px;font-size:15px}.h-plan-card .btn-secondary{color:var(--ink-soft);border-color:var(--ink-muted);background:0 0}.h-plan-card .btn-secondary:hover{background:var(--border-soft)}.h-plan-card .btn[disabled]{background:var(--border-soft);color:var(--ink-muted);border-color:var(--border-soft);cursor:not-allowed}.h-plan-checkout-notice{text-align:center;color:#4a6b3e;background-color:#eef6e9;border:1px solid #cfe6c2;width:100%;max-width:680px;padding:14px 20px}.downgrade-modal{text-align:left;width:100%}.downgrade-modal h2{color:var(--ink);margin:0 0 8px;font-size:22px}.downgrade-modal-intro{color:var(--ink-soft);margin:0 0 20px;font-size:14px;line-height:1.5}.downgrade-reasons{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.downgrade-reason{color:var(--ink-soft);border:1px solid var(--ink-muted);cursor:pointer;background:0 0;padding:8px 14px;font-size:13.5px}.downgrade-reason:hover{background:var(--border-soft)}.downgrade-reason.selected{color:#fff;background:var(--gold-strong);border-color:var(--gold-strong)}.downgrade-modal .form-item textarea{width:100%;color:var(--ink);background-color:var(--bg-surface);border:1px solid var(--border);resize:vertical;border-radius:10px;outline:none;padding:10px 1rem;font-family:inherit;font-size:14px}.downgrade-modal .form-item textarea:focus{border-color:var(--gold-border);box-shadow:0 0 0 3px rgba(218,181,102,.18)}.downgrade-promo-code{background:var(--bg-muted);border:1px dashed var(--gold-strong);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.downgrade-promo-code-value{letter-spacing:.04em;color:var(--ink);font-size:18px;font-weight:700}.downgrade-promo-code-discount{color:#fff;background:var(--gold-strong);padding:3px 10px;font-size:13px;font-weight:700}.downgrade-modal .btn{width:100%;margin-top:1rem;padding:12px 16px;font-size:15px}.downgrade-decline{text-align:center;width:100%;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:8px;font-size:13px;display:block}.downgrade-decline:hover{color:var(--ink-soft);text-decoration:underline}.h-progress-bar{z-index:-1;background-color:#ececb4;width:100%;height:12px;position:absolute;top:75px;left:0;transform:translateY(-50%)}.h-progress-bar-fill{background:var(--gold-strong);height:100%;transition:width .2s}.upgrade-modal{grid-template-columns:1.12fr 1fr;display:grid}.upgrade-modal-left{padding:40px 36px}.upgrade-modal-right{background:var(--bg-muted);border-left:1px solid var(--border);flex-direction:column;gap:14px;padding:36px 36px 30px;display:flex}@media (width<=760px){.upgrade-modal{grid-template-columns:1fr}.upgrade-modal-right{border-left:none;border-top:1px solid var(--border)}}.upgrade-modal-pair{justify-content:center;align-items:center;gap:10px;margin:0 0 24px;display:flex}.upgrade-modal-pair-step{flex-direction:column;align-items:center;gap:6px;display:flex}.upgrade-modal-pair-step.is-from{opacity:.6}.upgrade-modal-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;width:90px;height:90px;margin:0}.upgrade-modal-pair-step.is-to .upgrade-modal-icon{width:110px;height:110px}.upgrade-modal-pair-label{color:var(--ink-muted);font-size:12.5px;font-weight:600}.upgrade-modal-pair-step.is-to .upgrade-modal-pair-label{color:var(--ink);font-weight:700}.upgrade-modal-pair-arrow{color:var(--ink-muted);margin-bottom:26px;font-size:20px}.upgrade-cmp-row{border-bottom:1px dashed var(--border);grid-template-columns:1fr auto 20px auto;align-items:center;gap:10px;padding:10px 0;display:grid}.upgrade-cmp-row:last-child{border-bottom:none}.upgrade-cmp-label{color:var(--ink);font-size:14px}.upgrade-cmp-free{color:var(--ink-muted);justify-self:end;font-size:13px;font-weight:600;text-decoration:line-through}.upgrade-cmp-arrow{text-align:center;color:var(--ink-muted);font-weight:800}.upgrade-cmp-pro{min-width:58px;color:var(--gold-strong);justify-self:start;font-size:14px;font-weight:800}.upgrade-modal-reyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);font-size:11px}.upgrade-modal-plan-toggle{flex-direction:column;gap:10px;display:flex}.upgrade-modal-plan-opt{background:var(--bg-surface);border:1.5px solid var(--border);cursor:pointer;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:16px 18px;font-family:inherit;transition:border-color .15s,background .15s;display:flex;position:relative}.upgrade-modal-plan-opt:hover:not(:disabled){border-color:var(--gold-border)}.upgrade-modal-plan-opt.is-active{border-color:var(--gold-strong);background:var(--bg-muted)}.upgrade-modal-plan-opt:disabled{opacity:.6;cursor:not-allowed}.upgrade-modal-plan-opt-label{color:var(--ink);font-size:15px;font-weight:600}.upgrade-modal-plan-opt-price{color:var(--ink-soft);font-size:13.5px;font-weight:600}.upgrade-modal-plan-opt.is-active .upgrade-modal-plan-opt-price{color:var(--ink)}.upgrade-modal-plan-opt-badge{background:var(--gold-strong);color:#fff;letter-spacing:.06em;text-transform:uppercase;padding:2px 9px;font-size:10px;font-weight:800;position:absolute;top:-9px;right:12px}.upgrade-modal-ctasub{color:var(--ink-muted);margin:-4px 0 0;font-size:12.5px}.upgrade-modal-promo-input{background:var(--bg-surface);border:1px solid var(--border);width:100%;color:var(--ink);padding:11px 14px;font-family:inherit;font-size:13px}.upgrade-modal-promo-input::placeholder{color:var(--ink-muted)}.upgrade-modal-promo-input:focus{border-color:var(--gold-border);outline:none}.upgrade-modal-cta{justify-content:center;width:100%;padding:13px 20px;font-size:14.5px}.upgrade-modal-trust{flex-direction:column;gap:8px;margin:4px 0 0;padding:0;list-style:none;display:flex}.upgrade-modal-trust li{color:var(--ink-soft);padding-left:16px;font-size:12.5px;position:relative}.upgrade-modal-trust li:before{content:"✓";color:var(--ink-muted);font-weight:700;position:absolute;left:0}.devdocs-topbar{border-bottom:1px solid var(--border);background:var(--bg-surface);z-index:20;justify-content:space-between;align-items:center;gap:24px;padding:14px 32px;display:flex;position:sticky;top:0}.devdocs-topbar-left{align-items:center;gap:12px;min-width:0;display:flex}.devdocs-topbar-mark{background:var(--bg-muted);color:#eaa11a;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.devdocs-topbar-title{color:var(--ink);font-size:17px;font-weight:700}.devdocs-topbar-version{color:#eaa11a;background:var(--bg-muted);letter-spacing:.04em;padding:2px 8px;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:11px;font-weight:500}.devdocs-topbar-right{align-items:center;gap:8px;display:flex}.devdocs-topbar-link{border:1px solid var(--border);color:var(--ink-muted);align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.devdocs-topbar-link:hover{color:var(--ink);border-color:var(--gold);background:var(--bg-surface-alt)}@media (width<=720px){.devdocs-topbar{padding:10px 16px}.devdocs-topbar-version,.devdocs-topbar-link span{display:none}}.devdocs{background:var(--bg-surface)}.devdocs-body-layout{grid-template-columns:260px minmax(0,1fr) 240px;align-items:start;gap:0;width:100%;min-height:calc(100vh - 60px);display:grid}@media (width<=1180px){.devdocs-body-layout{grid-template-columns:240px minmax(0,1fr)}.devdocs-toc{display:none}}@media (width<=880px){.devdocs-body-layout{grid-template-columns:1fr}}.devdocs-mobile-toggle{border:none;border-bottom:1px solid var(--border);background:var(--bg-surface-alt);cursor:pointer;color:var(--ink);justify-content:center;align-items:center;padding:10px 16px;display:none}@media (width<=880px){.devdocs-mobile-toggle{display:flex}}.devdocs-nav{border-right:1px solid var(--border);background:var(--bg-surface);flex-direction:column;align-self:start;gap:28px;height:calc(100vh - 60px);padding:28px 24px 32px 32px;display:flex;position:sticky;top:60px;overflow-y:auto}@media (width<=880px){.devdocs-nav{border-right:none;border-bottom:1px solid var(--border);height:auto;padding:16px;display:none;position:static}.devdocs-nav.is-open{display:flex}}.devdocs-nav-group{flex-direction:column;gap:4px;display:flex}.devdocs-nav-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;padding:0 10px;font-size:11px;font-weight:700}.devdocs-nav-group ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.devdocs-nav-item{width:100%;color:var(--ink-muted);text-align:left;cursor:pointer;background:0 0;border:none;padding:7px 10px;font-family:inherit;font-size:14px;transition:background .12s,color .12s;display:block}.devdocs-nav-item:hover{background:var(--bg-surface-alt);color:var(--ink)}.devdocs-nav-item.is-active{background:var(--bg-muted);color:var(--ink);font-weight:600;box-shadow:inset 2px 0 #eaa11a}.devdocs-main{min-width:0;padding:48px 56px 96px}@media (width<=1180px){.devdocs-main{padding:40px 40px 80px}}@media (width<=720px){.devdocs-main{padding:24px 16px 64px}}.devdocs-crumb{color:var(--ink-soft);align-items:center;gap:8px;margin-bottom:24px;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:12px;display:flex}.devdocs-crumb-current{color:var(--ink)}.devdocs-head{border-bottom:1px solid var(--border);margin-bottom:40px;padding-bottom:24px}.devdocs-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#eaa11a;margin-bottom:10px;font-size:11px;font-weight:700;display:block}.devdocs-h1{letter-spacing:-.015em;color:var(--ink);margin:0 0 12px;font-size:clamp(30px,3.2vw,40px);font-weight:700;line-height:1.1}.devdocs-lead{color:var(--ink-muted);max-width:72ch;margin:0;font-size:16px;line-height:1.6}.devdocs-body{flex-direction:column;gap:40px;display:flex}.devdocs-section{scroll-margin-top:84px}.devdocs-h2{color:var(--ink);align-items:baseline;gap:8px;margin:0 0 16px;font-size:22px;font-weight:700;display:flex}.devdocs-anchor{color:var(--ink-soft);opacity:.4;font-weight:400;text-decoration:none;transition:opacity .15s,color .15s}.devdocs-section:hover .devdocs-anchor{opacity:1}.devdocs-anchor:hover{color:#eaa11a}.devdocs-muted{color:var(--ink-soft)}.devdocs-table{border-collapse:collapse;width:100%;margin:0;font-size:14px}.devdocs-table th,.devdocs-table td{text-align:left;vertical-align:top;border-top:1px solid var(--border);padding:12px 16px}.devdocs-table tr:last-child th,.devdocs-table tr:last-child td{border-bottom:1px solid var(--border)}.devdocs-table th{background:var(--bg-surface-alt);width:32%;font-weight:600}.devdocs-table th code{color:var(--ink);background:0 0;padding:0;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:13px}.devdocs-table td{color:var(--ink-muted);line-height:1.55}.devdocs-section-intro{color:var(--ink-muted);margin:0 0 14px;font-size:14.5px;line-height:1.6}.devdocs-section-action{margin:0 0 18px}.devdocs-tablewrap{border:1px solid var(--border);margin:4px 0 6px;overflow-x:auto}.devdocs-grid{border:0;margin:0}.devdocs-grid th,.devdocs-grid td{white-space:nowrap;width:auto;padding:10px 14px}.devdocs-grid thead th{background:var(--bg-surface-alt);color:var(--ink);border-top:0;font-size:12.5px;font-weight:700}.devdocs-grid tbody th.is-crit{width:auto;color:var(--ink);background:var(--bg-surface-alt);white-space:normal;font-weight:600}.devdocs-grid td{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:600}.devdocs-grid tr:last-child th,.devdocs-grid tr:last-child td{border-bottom:0}.devdocs-grid.has-accent thead th:last-child{color:var(--gold-strong);font-weight:800}.devdocs-grid.has-accent th:last-child,.devdocs-grid.has-accent td:last-child{color:var(--gold-strong);background:rgba(234,161,26,.08)}@media (width<=720px){.devdocs-table th{width:40%;padding:10px 12px}.devdocs-table td{padding:10px 12px}}.devdocs-inline-link{color:var(--gold-strong);text-underline-offset:2px;font-weight:600;text-decoration:underline}.devdocs-inline-link:hover{text-decoration-thickness:2px}.devdocs-code{border:1px solid var(--border);border-left:3px solid var(--gold-border);background:var(--bg-surface-alt);color:var(--ink);margin:0;overflow:hidden}.devdocs-code-bar{border-bottom:1px solid var(--border);color:var(--ink-muted);background:rgba(218,181,102,.12);justify-content:space-between;align-items:center;padding:8px 14px;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:11px;display:flex}.devdocs-code-lang{letter-spacing:.04em;text-transform:uppercase;color:var(--gold-strong);font-weight:700}.devdocs-code-actions{align-items:center;gap:6px;display:inline-flex}.devdocs-code-copy{background:var(--bg-surface);border:1px solid var(--gold-border);font:inherit;color:var(--ink-muted);cursor:pointer;align-items:center;gap:6px;padding:4px 10px;font-size:12px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.devdocs-code-copy:hover{color:var(--ink);border-color:var(--gold-strong);background:var(--bg-muted)}.devdocs-code pre{background:var(--bg-surface-alt);color:var(--ink);margin:0;padding:18px 20px;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:13.5px;line-height:1.7;overflow-x:auto}.devdocs-code code{font:inherit;color:var(--ink);white-space:pre;background:0 0;padding:0}.devdocs-code .tok-key{color:#6d28d9;font-weight:600}.devdocs-code .tok-string{color:#047857}.devdocs-code .tok-number{color:#b45309;font-weight:600}.devdocs-code .tok-literal{color:#be185d;font-weight:600}.devdocs-code .tok-punct{color:#6b6359}.devdocs-code .tok-plain{color:inherit}.devdocs-code-caption{border-top:1px solid var(--border);color:var(--ink-muted);background:rgba(218,181,102,.06);padding:10px 16px;font-size:12px;font-style:italic}.devdocs-callout{border:1px solid var(--border);background:var(--bg-surface-alt);border-left:3px solid var(--gold-border);gap:12px;padding:14px 16px;display:flex}.devdocs-callout-icon{color:var(--gold-strong);flex:none;font-size:16px;line-height:1.4}.devdocs-callout-title{color:var(--ink);margin-bottom:4px;font-size:14px;font-weight:700;display:block}.devdocs-callout-body{color:var(--ink-muted);margin:0;font-size:14px;line-height:1.55}.devdocs-callout-tip{background:var(--bg-muted);border-left-color:#eaa11a}.devdocs-callout-warn{background:var(--bg-muted);border-left-color:#c47a25}.devdocs-callout-warn .devdocs-callout-icon{color:#c47a25}.devdocs-score-demo{flex-direction:column;align-items:stretch}.devdocs-score-demo-inputs{color:var(--ink);flex-wrap:wrap;gap:10px 18px;margin:6px 0 14px;font-size:13px;display:flex}.devdocs-score-demo-inputs em{color:var(--ink-soft);font-style:normal}.devdocs-score-demo-result{align-items:baseline;gap:14px;margin-bottom:14px;display:flex}.devdocs-score-demo-grade{color:#eaa11a;border:2px solid #eaa11a;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:800;display:inline-flex}.devdocs-score-demo-value{color:var(--ink);font-size:24px;font-weight:700}.devdocs-score-demo-value small{color:var(--ink-soft);font-size:13px;font-weight:400}.devdocs-score-demo-formula{background:rgba(154,136,104,.1);padding:11px 13px;font-family:SF Mono,Fira Code,Consolas,Menlo,monospace;font-size:12.5px;line-height:1.8;overflow-x:auto}.devdocs-token-panel{flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px;display:flex}.devdocs-token-hint{color:var(--ink-muted);margin:0;font-size:13px}.devdocs-cta{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.devdocs-pag{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:16px;margin-top:48px;padding-top:24px;display:grid}.devdocs-pag-btn{background:var(--bg-surface);border:1px solid var(--border);font:inherit;text-align:left;cursor:pointer;color:inherit;align-items:center;gap:14px;padding:14px 18px;transition:border-color .15s,transform .15s;display:flex}.devdocs-pag-btn:hover{border-color:var(--gold);transform:translateY(-1px)}.devdocs-pag-btn-next{text-align:right;flex-direction:row-reverse;justify-content:flex-end}.devdocs-pag-arrow{color:#eaa11a;font-size:18px}.devdocs-pag-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:2px;font-size:11px;font-weight:700;display:block}.devdocs-pag-title{color:var(--ink);font-size:15px;font-weight:600;display:block}.devdocs-pag-empty{display:block}.devdocs-toc{align-self:start;padding:48px 32px 32px 0;font-size:13px;position:sticky;top:80px}.devdocs-toc-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px;font-size:11px;font-weight:700;display:block}.devdocs-toc ul{border-left:1px solid var(--border);flex-direction:column;margin:0 0 24px;padding:0;list-style:none;display:flex}.devdocs-toc li a{color:var(--ink-muted);border-left:1px solid transparent;margin-left:-1px;padding:6px 12px;text-decoration:none;transition:color .15s,border-color .15s;display:block}.devdocs-toc li a:hover{color:var(--ink)}.devdocs-toc li a.is-active{color:var(--gold-strong);border-left-color:#eaa11a;font-weight:600}.privacy-page{max-width:1100px;margin:0 auto;padding:64px 24px 96px}.privacy-header{text-align:center;max-width:760px;margin-bottom:48px;margin-left:auto;margin-right:auto}.privacy-eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-size:12px;font-weight:700}.privacy-title{letter-spacing:-.02em;color:var(--ink);margin:0 0 18px;font-size:clamp(36px,5vw,56px);font-weight:700}.privacy-lead{color:var(--ink-muted);max-width:580px;margin:0 auto;font-size:clamp(16px,1.5vw,19px);font-style:italic;line-height:1.55}.privacy-cards{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:20px;margin-bottom:32px;display:grid}.privacy-cards>.privacy-card:last-child:nth-child(odd){grid-column:1/-1}.privacy-cards>.privacy-card{flex-direction:column;height:100%;margin-bottom:0;display:flex}.privacy-cards>.privacy-card .privacy-link-btn{align-self:flex-start;margin-top:auto}@media (width<=880px){.privacy-cards{grid-template-columns:1fr;grid-auto-rows:auto}.privacy-cards>.privacy-card:last-child:nth-child(odd){grid-column:auto}}.privacy-card{background:var(--bg-surface-alt);border:1px solid var(--border-soft);margin-bottom:20px;padding:28px 28px 24px;box-shadow:0 4px 14px rgba(60,50,30,.04)}.privacy-card-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.privacy-card-icon{width:38px;height:38px;color:var(--gold);background:rgba(201,168,106,.14);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.privacy-card-title{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.privacy-card-text{color:var(--ink-muted);margin:0 0 12px;font-size:14.5px;line-height:1.65}.privacy-card-text:last-child{margin-bottom:0}.privacy-card-text strong{color:var(--ink);font-weight:600}.privacy-card-text a{color:var(--gold);text-underline-offset:3px;-webkit-text-decoration:underline rgba(200,169,106,.4);text-decoration:underline rgba(200,169,106,.4)}.privacy-card-text a:hover{-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.privacy-checks{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.privacy-checks li{color:var(--ink-muted);align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;display:flex}.privacy-check{width:20px;height:20px;color:var(--gold);background:rgba(201,168,106,.14);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:700;display:inline-flex}.privacy-steps{gap:12px;margin:14px 0 18px;padding:0;list-style:none;display:grid}.privacy-steps li{color:var(--ink-muted);align-items:flex-start;gap:12px;font-size:14px;line-height:1.5;display:flex}.privacy-step-num{background:var(--bg-muted);border:1px solid var(--gold-border);width:24px;height:24px;color:var(--gold);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;font-size:12px;font-weight:700;display:inline-flex}.privacy-link-btn{background:var(--bg-muted);border:1px solid var(--gold-border);color:var(--ink);border-radius:0;align-items:center;gap:10px;margin-top:14px;padding:11px 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,transform .18s;display:inline-flex}.privacy-link-btn:hover{border-color:var(--gold);background:rgba(201,168,106,.14);transform:translateY(-1px)}.privacy-link-btn-icon{color:var(--gold);display:inline-flex}button.privacy-link-btn{cursor:pointer;font-family:inherit}button.privacy-link-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.privacy-erase-actions{flex-wrap:wrap;gap:12px;display:flex}.privacy-erase-option{cursor:pointer;align-items:center;gap:10px;margin:10px 0;font-size:13.5px;display:flex}.privacy-erase-done{color:var(--ink);margin-top:12px;font-weight:600}.privacy-foot{text-align:center;color:var(--ink-soft);margin-top:48px;font-size:12.5px;font-style:italic;line-height:1.6}.settings-page{max-width:1200px;margin:0 auto;padding:40px 24px 80px}.settings-header{text-align:center;margin-bottom:32px}.settings-eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;font-size:12px;font-weight:700}.settings-title{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(30px,4vw,42px);font-weight:700}.settings-panel{flex-direction:column;gap:24px;display:flex}.set-panel{flex-direction:column;gap:20px;display:flex}.config-lead{color:var(--ink-muted);margin:0;font-size:14px;line-height:1.6}.config-help{color:var(--ink-soft);margin:0;font-size:12.5px}.config-help a{color:var(--gold-strong);font-weight:600}.theme-switch{gap:10px;display:flex}.theme-switch-btn{background:var(--bg-muted);border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;align-items:center;gap:8px;padding:10px 18px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:flex}.theme-switch-btn:hover{border-color:var(--gold-border)}.theme-switch-btn.active{background:var(--bg-active);border-color:var(--gold-border);color:var(--ink)}.settings-card{background:var(--bg-surface);border:1px solid var(--border);padding:20px 22px}.settings-card-title{margin:0 0 10px;font-size:16px}.settings-card-text{color:var(--ink-muted);margin:0 0 16px;font-size:13.5px;line-height:1.55}.settings-danger-card{border-color:var(--danger)}.settings-link-btn{background:var(--bg-muted);border:1px solid var(--gold-border);color:var(--ink);cursor:pointer;border-radius:0;align-items:center;gap:10px;padding:11px 18px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.settings-link-btn:hover:not(:disabled){border-color:var(--gold);background:rgba(201,168,106,.14)}.settings-link-btn:disabled{cursor:not-allowed;opacity:.5}.settings-link-btn-danger{background:var(--bg-muted);border-color:var(--danger);color:var(--danger)}.settings-link-btn-danger:hover:not(:disabled){border-color:var(--danger);background:rgba(192,57,43,.14)}.settings-erase-confirm-label{margin:14px 0 6px;font-size:13.5px}.settings-confirm-input{background:var(--bg-surface);width:100%;color:var(--ink);border:1px solid var(--gold-border);border-radius:0;margin-bottom:14px;padding:9px 12px;font-family:inherit;font-size:13.5px}.account-card{background:var(--bg-surface);border:1px solid var(--border);flex-direction:column;gap:20px;padding:24px;display:flex}.account-head{align-items:center;gap:14px;display:flex}.account-avatar .avatar-circle{width:48px;height:48px;font-size:17px}.account-id-block{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.account-name{color:var(--ink);font-size:16px;font-weight:700}.account-email{color:var(--ink-soft);font-size:13px}.account-rows{border-top:1px solid var(--border-soft);flex-direction:column;gap:12px;padding-top:16px;display:flex}.account-row{justify-content:space-between;align-items:center;gap:16px;font-size:13.5px;display:flex}.account-row-label{color:var(--ink-soft);flex:none}.account-name-edit{flex:1;gap:8px;max-width:360px;display:flex}.account-name-input{background:var(--bg-surface);min-width:0;color:var(--ink);border:1px solid var(--gold-border);flex:1;padding:8px 10px;font-family:inherit;font-size:13.5px}.account-name-msg{margin-top:-4px;font-size:12.5px}.account-name-msg.is-ok{color:var(--success)}.account-name-msg.is-err{color:var(--danger)}.account-pwd{flex-direction:column;gap:8px;max-width:420px;display:flex}.account-pwd-submit{align-self:flex-start}.pwd-field{display:flex;position:relative}.account-pwd-input{background:var(--bg-surface);min-width:0;color:var(--ink);border:1px solid var(--gold-border);flex:1;padding:9px 40px 9px 12px;font-family:inherit;font-size:13.5px}.pwd-field-toggle{width:36px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:0;bottom:0;right:0}.pwd-field-toggle:hover{color:var(--ink-muted)}.account-pwd-msg{margin:0;font-size:12.5px}.account-pwd-msg.is-ok{color:var(--success)}.account-pwd-msg.is-err{color:var(--danger)}.account-pwd-hint{color:var(--ink-soft);margin:0;font-size:12px}.connect-list{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=900px){.connect-list{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.connect-list{grid-template-columns:1fr}}.connect-card{background:var(--bg-surface);border:1px solid var(--border);flex-direction:column;gap:16px;padding:26px 24px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.connect-card:hover{border-color:var(--gold-border);transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.25)}.connect-card.is-connected{border-color:var(--gold-border);background:var(--bg-surface-alt)}.connect-icon{background:var(--bg-muted);width:56px;height:56px;color:var(--ink);flex:none;justify-content:center;align-items:center;display:flex}.connect-icon svg{width:28px;height:28px}.connect-meta{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.connect-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.connect-name{color:var(--ink);margin:0;font-size:17px;font-weight:700}.connect-badge{text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.connect-badge-connected{color:var(--success);background:rgba(47,138,82,.1)}.connect-dot{background:var(--success);border-radius:50%;width:6px;height:6px}.connect-badge-available{color:var(--gold-strong);background:var(--bg-muted)}.connect-badge-pending{color:var(--ink-soft);background:var(--border-soft)}.connect-description{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.connect-account{flex-direction:column;gap:1px;margin:0;font-size:12.5px;display:flex}.connect-account-label{color:var(--ink-soft)}.connect-account-value{color:var(--ink);word-break:break-word;font-weight:600}.connect-action{align-self:stretch;margin-top:auto}.connect-action button{justify-content:center;width:100%}.set-token-create{flex-wrap:wrap;gap:8px;display:flex}.set-token-input{background:var(--bg-surface);min-width:0;color:var(--ink);border:1px solid var(--gold-border);flex:160px;padding:9px 12px;font-family:inherit;font-size:13.5px}.set-token-hint{color:var(--ink-soft);margin:0;font-size:12px}.set-token-reveal{background:var(--bg-muted);border:1px solid var(--gold-border);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.set-token-warn{color:var(--gold-strong);margin:0;font-size:13px;font-weight:600}.set-token-box{align-items:center;gap:10px;display:flex}.set-token-value{white-space:nowrap;background:var(--bg-surface);border:1px solid var(--border);flex:1;min-width:0;padding:8px 10px;font-size:13px;overflow-x:auto}.set-token-error{color:var(--danger);margin:0;font-size:13px}.set-token-list{flex-direction:column;gap:8px;display:flex}.set-token-list-head{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-soft);border-bottom:1px solid var(--border);justify-content:space-between;padding-bottom:6px;font-size:12.5px;font-weight:700;display:flex}.set-token-count{text-transform:none;letter-spacing:0;font-weight:400}.set-token-empty{text-align:center;color:var(--ink-soft);margin:0;padding:16px 0;font-size:13.5px}.set-token-item{background:var(--bg-surface);border:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.set-token-item-main{flex-direction:column;gap:4px;min-width:0;display:flex}.set-token-item-name{color:var(--ink);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.set-token-tag{text-transform:uppercase;letter-spacing:.03em;color:var(--gold-strong);background:var(--bg-muted);padding:2px 7px;font-size:10.5px;font-weight:700}.set-token-prefix,.set-token-item-meta{color:var(--ink-soft);font-size:12px}.set-token-actions{flex:none;gap:8px;display:flex}.set-token-danger{color:var(--danger);cursor:pointer;background:0 0;border:1px solid rgba(192,57,43,.4);flex:none;padding:7px 12px;font-family:inherit;font-size:12.5px;font-weight:600}.set-token-danger:hover{background:rgba(192,57,43,.1)}.set-token-cancel{border:1px solid var(--border);color:var(--ink-muted);cursor:pointer;background:0 0;padding:7px 12px;font-family:inherit;font-size:12.5px;font-weight:600}.sub-manage{background:var(--bg-muted);border:1px solid var(--gold-border);justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.sub-manage-copy{flex-direction:column;gap:3px;display:flex}.sub-manage-title{color:var(--ink);font-size:14.5px;font-weight:700}.sub-manage-sub{color:var(--ink-muted);font-size:12.5px}.inv-empty{text-align:center;color:var(--ink-soft);margin:0;padding:24px 0;font-size:13.5px}.inv-empty-err{color:var(--danger)}.inv-table{border:1px solid var(--border);background:var(--bg-surface);flex-direction:column;display:flex}.inv-row{border-bottom:1px solid var(--border-soft);grid-template-columns:1fr 1fr 2fr 1fr 1fr auto;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:grid}.inv-row:last-child{border-bottom:none}.inv-head{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-soft);background:var(--bg-surface-alt);font-size:11px;font-weight:700}@media (width<=720px){.inv-col-label{display:none}.inv-row{grid-template-columns:1fr 1fr 1fr auto}}.inv-num{color:var(--ink);font-weight:600}.inv-date,.inv-label{color:var(--ink-muted)}.inv-amount{color:var(--ink);font-weight:700}.inv-status{text-transform:uppercase;letter-spacing:.02em;width:fit-content;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.inv-status.is-paid{color:var(--success);background:rgba(47,138,82,.1)}.inv-status.is-pending{color:var(--gold-strong);background:rgba(224,133,30,.15)}.inv-status.is-refunded{color:var(--ink-muted);background:var(--border-soft)}.inv-action{text-align:right}.admin-page{margin:30px}.stats-bar{height:100px;margin-bottom:10px;display:flex}.stats-item{background:var(--bg-surface);justify-content:center;align-items:left;flex-direction:column;flex:1;padding:0 20px;display:flex;box-shadow:0 2px 18px rgba(27,27,26,.2)}.stats-item-value{font-size:28px}.stats-item-label{color:var(--ink-faint);font-weight:300}.analysis-graph{background-color:var(--bg-surface);margin:10px;padding:30px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.chart-head{justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.chart-head h3{margin-bottom:0}.chart-range{gap:.4rem;display:flex}.chart-range-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--ink-muted);cursor:pointer;border-radius:999px;padding:.4rem .9rem;font-size:.85rem;transition:border-color .15s,background-color .15s,color .15s}.chart-range-btn:hover{border-color:var(--gold-border)}.chart-range-btn.is-active{background:var(--bg-active);border-color:var(--gold-border);color:var(--gold-strong);font-weight:600}.admin-charts-row{align-items:stretch;gap:10px;display:flex}.admin-charts-col{flex-direction:column;flex:1;gap:10px;display:flex}.admin-charts-col .analysis-graph{margin:10px 0 0}.recent-analyses{background-color:var(--bg-surface);flex:1;margin:10px 0 0 10px;padding:30px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.recent-analyses h3{margin-bottom:25px}.top-members-box{background-color:var(--bg-surface);padding:30px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.top-members-box h3{margin-bottom:20px}.top-members-list{flex-direction:column;gap:.7rem;list-style:none;display:flex}.top-members-item{align-items:center;gap:.8rem;display:flex}.avatar-circle{background:var(--bg-active);width:32px;height:32px;color:var(--gold-strong);object-fit:cover;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.top-members-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:0 0 140px;font-size:.9rem;font-weight:600;overflow:hidden}.provider-icon{color:var(--gold-strong);opacity:.8;flex:none;align-items:center;display:flex}.provider-icon svg{width:14px;height:14px}.top-members-bar{background:var(--border-soft);border-radius:999px;flex:1;height:8px;overflow:hidden}.top-members-bar span{background:var(--gold-border);border-radius:999px;height:100%;display:block}.top-members-count{color:var(--gold-strong);text-align:right;flex:none;min-width:1.5rem;font-size:.85rem;font-weight:700}.top-members-badge{background:var(--bg-active);color:var(--gold-strong);border-radius:999px;flex:none;padding:.1rem .5rem;font-size:.72rem;font-weight:700}.top-members-badge.is-low{color:var(--danger-strong);background:#fdeaea}.recent-analyses-list{flex-direction:column;gap:.6rem;list-style:none;display:flex}.recent-analyses-item{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem .6rem;padding-bottom:.6rem;display:flex}.recent-analyses-lead{align-items:center;gap:.6rem;min-width:0;display:flex}.recent-analyses-main{flex-direction:column;gap:.1rem;min-width:0;display:flex}.recent-analyses-author{color:var(--ink);align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;display:flex}.recent-analyses-target{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.4rem;font-size:.8rem;display:flex;overflow:hidden}.activity-tag{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;flex-shrink:0;padding:.1rem .5rem;font-size:.68rem;font-weight:700;display:inline-block}.activity-tag-analyse{color:#4c51bf;background:#eef2ff}.activity-tag-inscription{color:#2f8a52;background:#eafaf0}.activity-tag-abonnement{color:var(--gold-strong);background:#fdf3e0}.activity-tag-résiliation{color:#b3413a;background:#fbeaea}.recent-analyses-grade{color:var(--gold-strong);font-weight:700}.recent-analyses-when{color:var(--ink-faint);white-space:nowrap;font-size:.78rem}.admin-box{background:var(--bg-surface);padding:20px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.85rem}.admin-table th{text-align:left;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.02em;border-bottom:1px solid var(--border);white-space:nowrap;padding:.6rem .75rem;font-size:.72rem;font-weight:600}.admin-table td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:.6rem .75rem}.admin-table tr:hover td{background:rgba(212,180,106,.05)}.admin-row-clickable{cursor:pointer}.admin-member-modal{text-align:left;width:100%}.admin-member-modal-head{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.admin-member-modal-head h3{margin:0;font-size:18px}.admin-member-modal-email{color:var(--ink-soft);margin:.15rem 0 0;font-size:.85rem}.admin-member-modal-info{grid-template-columns:auto 1fr;gap:.4rem 1rem;margin:0 0 1.25rem;font-size:.85rem;display:grid}.admin-member-modal-info dt{color:var(--ink-faint);font-weight:600}.admin-member-modal-info dd{color:var(--ink);margin:0}.admin-member-modal-row{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.admin-member-modal-row label{color:var(--ink-faint);font-size:.85rem;font-weight:600}.admin-table-actions{align-items:center;gap:.4rem;display:flex}.admin-role-select{background:var(--bg-surface);color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:.3rem .5rem;font-family:inherit;font-size:.8rem}.admin-btn-sm{padding:.3rem .6rem;font-size:.78rem}.admin-billing-input{background:var(--bg-surface);color:var(--ink);border:1px solid var(--border);border-radius:6px;flex:1;padding:.3rem .5rem;font-family:inherit;font-size:.8rem}.admin-advanced{border-top:1px solid var(--border-soft);margin-top:1.25rem;padding-top:.75rem}.admin-advanced summary{cursor:pointer;color:var(--ink-faint);font-size:.8rem;font-weight:600}.admin-advanced .admin-table-actions{margin-top:.75rem}.admin-share-status{text-transform:uppercase;border-radius:999px;padding:.15rem .55rem;font-size:.7rem;font-weight:700;display:inline-block}.admin-share-status-pending{color:var(--gold-strong);background:#fdf3e0}.admin-share-status-approved{color:#2f8a52;background:#eafaf0}.admin-share-status-rejected{color:#b3413a;background:#fbeaea}.hchat-attach,.hchat-conv-del,.hchat-send,.hchat-close,.hchat-back{cursor:pointer;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.hchat-badge,.hchat-conv-unread{border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:800;display:inline-flex}.hchat-bubble{z-index:60;cursor:pointer;color:#fff;background:linear-gradient(150deg, var(--gold-strong,#9a6a18), #7a521a);border:0;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px rgba(120,86,28,.4)}.hchat-bubble:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(120,86,28,.45)}.hchat-bubble.is-open{background:#6e521f}@media (width<=1024px){.hchat-bubble{bottom:calc(80px + env(safe-area-inset-bottom,0px))}}.hchat-panel{z-index:60;background:var(--bg-surface,#fff);border:1px solid var(--gold-soft,rgba(140,102,30,.2));flex-direction:column;width:380px;max-width:calc(100vw - 32px);height:680px;max-height:calc(100vh - 104px);animation:.18s hchat-in;display:flex;position:fixed;bottom:88px;right:22px;overflow:hidden;box-shadow:0 18px 50px rgba(60,45,18,.28)}@media (width<=1024px){.hchat-panel{bottom:calc(146px + env(safe-area-inset-bottom,0px))}}@media (width<=640px){.hchat-panel{border:none;width:100%;max-width:100%;height:100%;max-height:100%;inset:0}.hchat-bubble.is-open{display:none}}.hchat-head{color:#fff;background:linear-gradient(150deg, var(--gold-strong,#9a6a18), #7a521a);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.hchat-head-meta{flex-direction:column;gap:2px;display:flex}.hchat-head-title{font-family:var(--serif,Georgia, serif);font-size:16px;font-weight:700}.hchat-head-sub{opacity:.85;font-size:11.5px}.hchat-close,.hchat-back{color:#fff;background:rgba(255,255,255,.15);width:28px;height:28px}.hchat-close:hover,.hchat-back:hover{background:rgba(255,255,255,.28)}.hchat-back{margin-right:2px}.hchat-locked{text-align:center;color:var(--ink-soft,#6a5a3e);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.hchat-body{background:var(--bg-surface,#fff);flex-direction:column;flex:1;gap:10px;min-height:0;padding:16px;display:flex;overflow-y:auto}.hchat-hint{color:var(--ink-muted,#9a8868);font-size:13px}.hchat-msg{flex-direction:column;gap:3px;max-width:82%;display:flex}.hchat-msg.is-me{align-self:flex-end;align-items:flex-end}.hchat-msg.is-me .hchat-bubble-msg{background:var(--gold-strong,#9a6a18);color:#fff;border-bottom-right-radius:4px}.hchat-msg.is-team{align-self:flex-start;align-items:flex-start}.hchat-msg.is-team .hchat-bubble-msg{color:var(--ink,#2c2418);border:1px solid var(--gold-soft,rgba(140,102,30,.18));background:rgba(154,106,24,.08);border-bottom-left-radius:4px}.hchat-bubble-msg{white-space:pre-wrap;word-break:break-word;padding:9px 13px;font-size:14px;line-height:1.45}.hchat-time{color:var(--ink-muted,#9a8868);padding:0 4px;font-size:10.5px}.hchat-img{border:1px solid rgba(0,0,0,.08);max-width:100%;max-height:220px;margin:2px 0;display:block}.hchat-compose{border-top:1px solid var(--gold-soft,rgba(140,102,30,.14));background:var(--bg-surface,#fff);flex:none;align-items:flex-end;gap:8px;padding:12px;display:flex}@media (width<=640px){.hchat-compose{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}.hchat-input{resize:none;border:1px solid var(--gold-soft,rgba(140,102,30,.22));min-height:22px;max-height:110px;font-family:var(--sans,sans-serif);color:var(--ink,#2c2418);background:var(--bg-surface,#fff);outline:none;flex:1;padding:9px 12px;font-size:14px;line-height:1.4}.hchat-send{background:var(--gold-strong,#9a6a18);color:#fff;width:40px;height:40px;transition:opacity .12s}.hchat-send:disabled{opacity:.4;cursor:not-allowed}.hchat-author{color:var(--ink-soft,#6a5a3e);font-weight:700}.hchat-chips{flex-direction:column;gap:8px;margin-top:6px;display:flex}.hchat-chip{text-align:left;cursor:pointer;background:var(--bg-surface,#fff);max-width:90%;color:var(--gold-strong,#9a6a18);font-family:var(--sans,sans-serif);border:1px solid rgba(154,106,24,.3);align-self:flex-start;padding:9px 13px;font-size:13.5px;font-weight:600;transition:background .12s,border-color .12s,transform 50ms}.hchat-chip:hover{background:rgba(154,106,24,.09);border-color:rgba(154,106,24,.5)}.hchat-chip:active{transform:scale(.985)}.hchat-typing{align-items:center;gap:4px;padding:12px 14px;display:inline-flex}.hchat-typing i{background:var(--ink-muted,#9a8868);width:7px;height:7px;animation:1.2s ease-in-out infinite hchat-blink}.hchat-typing i:nth-child(2){animation-delay:.2s}.hchat-typing i:nth-child(3){animation-delay:.4s}.hchat-list{flex-direction:column;flex:1;gap:6px;min-height:0;padding:12px;display:flex;overflow-y:auto}.hchat-pad{padding:12px 6px}.hchat-new{cursor:pointer;width:100%;color:var(--gold-strong,#9a6a18);font-family:var(--sans,sans-serif);background:rgba(154,106,24,.06);border:1px dashed rgba(154,106,24,.4);justify-content:center;align-items:center;gap:8px;margin-bottom:4px;padding:11px;font-size:13.5px;font-weight:700;transition:background .12s;display:flex}.hchat-new:hover{background:rgba(154,106,24,.12)}.hchat-conv{cursor:pointer;border:1px solid var(--gold-soft,rgba(140,102,30,.14));background:var(--bg-surface,#fff);align-items:center;gap:10px;padding:11px 12px;transition:background .12s,border-color .12s;display:flex}.hchat-conv:hover{background:rgba(140,102,30,.05);border-color:rgba(154,106,24,.3)}.hchat-conv.is-unread{border-color:rgba(154,106,24,.45)}.hchat-conv-meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.hchat-conv-last{color:var(--ink,#2c2418);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.hchat-conv-time{color:var(--ink-muted,#9a8868);font-size:11.5px}.hchat-conv-del{width:30px;height:30px;color:var(--ink-muted,#9a8868);background:0 0}.hchat-conv-del:hover{color:#c0392b;background:rgba(192,57,43,.1)}.hchat-conv-unread{background:var(--gold-strong,#9a6a18);color:#fff;flex:none}.hchat-conv-tag{letter-spacing:.04em;text-transform:uppercase;color:#2f9e44;vertical-align:1px;background:rgba(47,158,68,.14);border-radius:999px;margin-right:6px;padding:1px 6px;font-size:9.5px;font-weight:800;display:inline-block}.hchat-attach{border:1px solid var(--gold-soft,rgba(140,102,30,.22));background:var(--bg-surface,#fff);width:40px;height:40px;color:var(--ink-soft,#6a5a3e);transition:background .12s,color .12s}.hchat-attach:hover{color:var(--gold-strong,#9a6a18);background:rgba(140,102,30,.08)}.hchat-attach-spin{border:2px solid rgba(140,102,30,.3);border-top-color:var(--gold-strong,#9a6a18);width:16px;height:16px;animation:.7s linear infinite hchat-spin;display:inline-block}.hchat-badge{color:#fff;background:#c0392b;border:2px solid #fff;position:absolute;top:-2px;right:-2px}.hchat-closed{border-top:1px solid var(--gold-soft,rgba(140,102,30,.14));color:#2f7a44;background:rgba(47,158,68,.06);flex:none;align-items:center;gap:8px;padding:14px 16px;font-size:13px;line-height:1.4;display:flex}.hchat-online-dot{background:#22c55e;border:2px solid #fff;width:10px;height:10px;animation:2s ease-out infinite hchat-online-pulse;position:absolute;bottom:5px;right:5px;box-shadow:0 0 rgba(34,197,94,.5)}.hchat-presence{color:#16a34a;align-items:center;gap:7px;padding:10px 14px 0;font-size:12.5px;font-weight:700;display:flex}.hchat-presence .hchat-online-dot{width:9px;height:9px;box-shadow:none;border-width:0;animation:none;position:static}.hchat-presence.is-off{color:var(--ink-muted,#9a8868)}.hchat-presence.is-off .hchat-online-dot{background:#c8bfa6}.btn{cursor:pointer;border:1px solid var(--gold-soft,rgba(140,102,30,.3));background:var(--bg-surface,#fff);color:var(--ink,#2c2418);padding:9px 16px;font-size:13.5px;font-weight:700}.btn-primary{background:var(--gold-strong,#9a6a18);border-color:var(--gold-strong,#9a6a18);color:#fff}.btn-danger{color:#c0392b;border-color:rgba(192,57,43,.4)}.btn-ghost{border-color:var(--gold-soft,rgba(140,102,30,.3));color:var(--ink-soft,#6a5a3e);background:0 0}.btn-ghost:hover:not(:disabled){border-color:var(--gold-strong,#9a6a18);color:var(--ink,#2c2418)}.btn:disabled{cursor:not-allowed;opacity:.55}.admin-tabs{gap:8px;margin:30px 30px 0;display:flex}.admin-tab{cursor:pointer;color:#b6a984;background:0 0;border:0;padding:9px 18px;font-weight:600}.admin-tab.is-active{background:var(--bg-surface);color:var(--ink);box-shadow:0 -2px 10px rgba(27,27,26,.08)}.admin-support{background:var(--bg-surface);min-height:400px;margin:0 30px 30px;box-shadow:0 2px 18px rgba(27,27,26,.2)}.admin-support-list{flex-direction:column;display:flex}.admin-support-row{cursor:pointer;border-bottom:1px solid rgba(27,27,26,.08);align-items:center;gap:12px;padding:14px 20px;transition:background .12s;display:flex}.admin-support-row:hover{background:rgba(154,106,24,.05)}.admin-support-row-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.admin-support-row-name{align-items:center;gap:6px;font-weight:600;display:flex}.admin-support-row-last{color:#b6a984;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-support-row-time{color:#b6a984;flex:none;font-size:12px}.admin-support-thread{flex-direction:column;height:600px;display:flex}.admin-support-thread-head{border-bottom:1px solid rgba(27,27,26,.08);gap:10px;padding:14px 20px;display:flex}.admin-support-thread-body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:20px;display:flex;overflow-y:auto}@keyframes hchat-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes hchat-blink{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes hchat-spin{to{transform:rotate(360deg)}}@keyframes hchat-online-pulse{0%{box-shadow:0 0 rgba(34,197,94,.5)}70%{box-shadow:0 0 0 7px rgba(34,197,94,0)}to{box-shadow:0 0 rgba(34,197,94,0)}}