:root{--paper: #fafbf8;--card: #ffffff;--sidebar: #eef2ec;--line: #dce7de;--line-soft: #eef3ee;--ink: #17271f;--ink-2: #465e4e;--ink-3: #6f8377;--mint-700: #0b7b57;--mint-500: #17a36f;--mint-100: #e4f3eb;--mint-badge-start: #34e0a1;--mint-badge-end: #0b7b57;--mint-badge-glow: rgba(11, 123, 87, .4);--press: #14251c;--cream: #f7f4ea;--cream-edge: #cfc7b2;--warn: #b5730f;--err: #c0392b;--font-display: "Fraunces", georgia, serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}:root[data-theme=dark]{--paper: #101a15;--card: #17231c;--sidebar: #0d1712;--line: #263a2f;--line-soft: #1c2921;--ink: #e7f0ea;--ink-2: #a7bfae;--ink-3: #79907f;--mint-700: #4ddba0;--mint-500: #22b67c;--mint-100: #163b28;--mint-badge-start: #6ef0bc;--mint-badge-end: #159466;--mint-badge-glow: rgba(34, 182, 124, .5);--warn: #e0a53f;--err: #e46257}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h2{font-family:var(--font-display);font-weight:600;font-size:1.05rem;letter-spacing:.01em;margin:0 0 .9rem;color:var(--ink)}code{font-family:var(--font-mono)}button{font:inherit;cursor:pointer;border:none;border-radius:6px}input{font:inherit;background:var(--card);border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:.55rem .7rem}input::placeholder{color:var(--ink-3)}input:focus-visible,button:focus-visible{outline:2px solid var(--mint-500);outline-offset:2px}.wordmark{font-family:var(--font-display);font-weight:600;font-size:1.5rem;color:var(--ink);letter-spacing:-.01em;text-decoration:none}.wordmark:hover{color:var(--mint-700)}.wordmark em{font-style:normal;color:var(--mint-500)}.page-loading{display:grid;place-items:center;min-height:100vh;color:var(--ink-3)}.auth-page{display:grid;place-items:center;min-height:100vh;padding:1.5rem}.auth-card{width:min(400px,100%);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:2.2rem 2rem;box-shadow:0 12px 34px #14251c0f}.auth-card .wordmark{font-size:2rem}.auth-tagline{color:var(--ink-3);font-family:var(--font-mono);font-size:.8rem;margin:.3rem 0 1.6rem}.auth-plan-note{background:var(--mint-100);border:1px solid var(--mint-500);border-radius:8px;color:var(--ink-2);font-size:.85rem;padding:.6rem .8rem;margin:-.6rem 0 1.4rem}.auth-plan-note strong{color:var(--mint-700)}.btn-google{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;background:var(--card);color:var(--ink-2);border:1px solid var(--line);border-radius:8px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none}.btn-google:hover{border-color:var(--ink-3)}.btn-google:before{content:"";width:1.05rem;height:1.05rem;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23FFC107' d='M43.6 20.5H42V20H24v8h11.3c-1.6 4.7-6.1 8-11.3 8-6.6 0-12-5.4-12-12s5.4-12 12-12c3.1 0 5.9 1.2 8 3.1l5.7-5.7C34.6 6.1 29.6 4 24 4 12.9 4 4 12.9 4 24s8.9 20 20 20 20-8.9 20-20c0-1.3-.1-2.7-.4-3.5z'/%3E%3Cpath fill='%23FF3D00' d='M6.3 14.7l6.6 4.8C14.6 15.9 18.9 13 24 13c3.1 0 5.9 1.2 8 3.1l5.7-5.7C34.6 6.1 29.6 4 24 4c-7.5 0-14 4.2-17.7 10.7z'/%3E%3Cpath fill='%234CAF50' d='M24 44c5.5 0 10.4-1.9 14.3-5.1l-6.6-5.6c-2 1.5-4.6 2.4-7.7 2.4-5.2 0-9.7-3.3-11.3-8l-6.6 5.1C9.9 39.7 16.4 44 24 44z'/%3E%3Cpath fill='%231976D2' d='M43.6 20.5H42V20H24v8h11.3c-.8 2.3-2.2 4.3-4.1 5.7l6.6 5.6C40.6 36.6 44 30.9 44 24c0-1.3-.1-2.7-.4-3.5z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.btn-github{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;background:var(--card);color:var(--ink-2);border:1px solid var(--line);border-radius:8px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none;margin-top:.7rem}.btn-github:hover{border-color:var(--ink-3)}.btn-github:before{content:"";width:1.05rem;height:1.05rem;flex-shrink:0;background-color:var(--ink);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8z'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.auth-google-subtext{margin:.5rem 0 0;font-size:.75rem;color:var(--ink-3);text-align:center}.auth-divider{display:flex;align-items:center;gap:.7rem;margin:1.2rem 0;color:var(--ink-3);font-size:.75rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-tabs{display:flex;gap:1.5rem;margin-bottom:1.4rem;border-bottom:1px solid var(--line)}.auth-tabs button{background:none;color:var(--ink-3);padding:.5rem .05rem;margin-bottom:-1px;border-radius:0;border:none;border-bottom:2px solid transparent;font-weight:500}.auth-tabs button.active{color:var(--mint-700);border-bottom-color:var(--mint-500)}.auth-card form{display:grid;gap:1rem}.auth-card label{display:grid;gap:.35rem;font-size:.85rem;color:var(--ink-2)}.field-hint{margin:-.4rem 0 0;font-size:.8rem;color:var(--ink-3)}.form-error{margin:0;color:var(--err);font-size:.85rem}.password-checklist{list-style:none;margin:-.5rem 0 0;padding:0;display:grid;gap:.15rem;font-size:.8rem;color:var(--ink-3)}.password-checklist li.met{color:var(--mint-700)}.password-checklist span{display:inline-block;width:1em}.terms-row{display:flex!important;flex-direction:row;align-items:center;gap:.5rem;font-size:.85rem}.terms-row input{accent-color:var(--mint-500);width:1rem;height:1rem;margin:0}.code-heading{font-family:var(--font-display);font-weight:600;font-size:1.2rem;margin:0}.code-input{width:100%;min-width:0;font-family:var(--font-mono);font-size:1.4rem;letter-spacing:.45em;text-align:center}.forgot-row{margin:-.6rem 0 0;display:flex;justify-content:flex-end}.code-actions{display:flex;justify-content:space-between}.link-button{background:none;border:none;padding:0;color:var(--mint-700);font-size:.85rem;cursor:pointer;text-decoration:underline}.link-button:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--mint-500);color:#06130c;font-weight:600;padding:.6rem 1.1rem}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-ghost{background:none;color:var(--ink-2);border:1px solid var(--line);padding:.45rem .9rem}.btn-ghost:hover{color:var(--mint-700);border-color:var(--mint-500)}.btn-danger-ghost{background:none;color:var(--ink-3);padding:.3rem .6rem;font-size:.8rem}.btn-danger-ghost:hover{color:var(--err)}.btn-danger{background:var(--err);color:#fff;font-weight:600;padding:.6rem 1.1rem}.btn-danger:hover{filter:brightness(1.08)}.btn-danger:disabled{opacity:.6;cursor:default}.app-shell{display:flex;align-items:stretch;min-height:100vh}.sidebar{width:228px;flex-shrink:0;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:1.3rem .9rem 1rem;position:sticky;top:0;height:100vh}.sidebar-top{padding:0 .5rem 1.5rem}.sidebar-nav{display:flex;flex-direction:column;gap:.15rem;flex:1}.nav-item{display:flex;align-items:center;gap:.65rem;background:none;border:none;border-left:2px solid transparent;border-radius:0 6px 6px 0;padding:.55rem .7rem;color:var(--ink-2);font-size:.87rem;font-weight:500;text-align:left}.nav-item svg{flex-shrink:0;color:var(--ink-3)}.nav-item:hover{background:var(--line-soft);color:var(--ink)}.nav-item.active{background:var(--mint-100);color:var(--mint-700);border-left-color:var(--mint-500)}.nav-item.active svg{color:var(--mint-700)}.sidebar-foot{padding-top:.9rem;margin-top:.5rem;border-top:1px solid var(--line)}.sidebar-foot .status-chip{width:100%;justify-content:center}.main-col{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem clamp(1.25rem,3vw,2.25rem);border-bottom:1px solid var(--line);background:var(--card)}.breadcrumb{margin:0;font-size:.92rem;color:var(--ink-2)}.breadcrumb-current{color:var(--ink);font-weight:600}.breadcrumb-sep{color:var(--ink-3);margin:0 .45rem}.topbar-right{display:flex;align-items:center;gap:.9rem}.topbar-email{color:var(--ink-3);font-family:var(--font-mono);font-size:.8rem}.view{flex:1;padding:1.4rem clamp(1.25rem,3vw,2.25rem) 3rem;max-width:1180px;width:100%}.stack{display:flex;flex-direction:column;gap:1rem}.banner-notice{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--mint-100);border:1px solid var(--mint-500);border-radius:6px;padding:.7rem 1rem;color:var(--ink-2);font-size:.9rem;margin-bottom:1rem}.banner-notice .btn-ghost{flex-shrink:0;padding:.3rem .7rem;font-size:.8rem}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1.2rem 1.3rem}@media(max-width:900px){.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:static;flex-direction:row;align-items:center;padding:.7rem 1rem;gap:1rem}.sidebar-top{padding:0}.sidebar-nav{flex-direction:row;flex:1;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(to right,transparent,#000 12px,#000 calc(100% - 12px),transparent)}.sidebar-nav::-webkit-scrollbar{display:none}.nav-item{border-left:none;border-bottom:2px solid transparent;border-radius:6px 6px 0 0;white-space:nowrap}.nav-item.active{border-left-color:transparent;border-bottom-color:var(--mint-500)}.sidebar-foot{padding-top:0;margin-top:0;border-top:none;width:auto}.sidebar-foot .status-chip{width:auto}}.quota{display:flex;flex-direction:column;gap:1.1rem}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.7rem}.stat-tile{border:1px solid var(--line);border-radius:6px;background:var(--paper);padding:.75rem .9rem;display:flex;flex-direction:column;gap:.3rem}.stat-label{font-family:var(--font-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.stat-value{font-family:var(--font-mono);font-size:1.5rem;font-weight:500;color:var(--ink);line-height:1}.stat-value-warning{color:var(--warn)}.stat-value-critical{color:var(--err)}.stat-tile-plan{justify-content:center}.quota-track{display:grid;gap:.5rem}.meter{height:6px;border-radius:3px;background:var(--line-soft);overflow:hidden}.meter-fill{height:100%;border-radius:3px;transition:width .4s ease}.meter-ok{background:var(--mint-500)}.meter-warning{background:var(--warn)}.meter-critical{background:var(--err)}.quota-meta{display:flex;align-items:center;gap:.8rem;font-size:.85rem;color:var(--ink-3)}.quota-plan{text-transform:capitalize}.status-warning{color:var(--warn)}.status-critical{color:var(--err)}.status-ok{color:var(--mint-700)}.quota-actions{display:flex;gap:.6rem;flex-wrap:wrap}.upgrade-banner{width:100%;margin-top:.9rem;padding:1rem 1.1rem;border-radius:6px;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;border:1px solid var(--mint-500);background:var(--mint-100)}.upgrade-critical{border-color:var(--err);background:#fbecea}:root[data-theme=dark] .upgrade-critical{background:#3a1f1c}.upgrade-headline{margin:0;font-family:var(--font-display);font-weight:600;font-size:1rem;color:var(--ink);flex-basis:100%}.upgrade-pitch{margin:0;color:var(--ink-2);font-size:.9rem;flex:1;min-width:200px}.upgrade-pitch strong{color:var(--mint-700)}.upgrade-critical .upgrade-pitch strong{color:var(--err)}.playground{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:stretch}.playground-input{display:flex;flex-direction:column;gap:.8rem}.playground-input textarea{font-family:var(--font-mono);font-size:.8rem;line-height:1.6;background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:.8rem .9rem;min-height:260px;resize:vertical}.playground-input textarea:focus-visible{outline:2px solid var(--mint-500);outline-offset:2px}.playground-size{align-self:flex-end;font-family:var(--font-mono);font-size:.78rem;color:var(--ink-3)}.playground-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.playground-actions .btn-ghost{text-decoration:none}.playground-note{flex-basis:100%;color:var(--ink-3);font-size:.78rem}.playground-preview{border:1px solid var(--line);border-radius:8px;background:var(--paper);min-height:260px;display:grid;place-items:stretch;overflow:hidden}.playground-preview iframe{width:100%;height:100%;min-height:320px;border:none}.playground-preview .empty{place-self:center;padding:1rem}@media(max-width:760px){.playground{grid-template-columns:1fr}}.keys-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}.key-count{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-3)}.key-limit-note{font-size:.9rem;margin-bottom:1rem}.mint-row{display:flex;gap:.6rem;margin-bottom:1rem}.mint-row input{flex:1}.empty{color:var(--ink-3);font-size:.9rem}.receipt{background:#f7f4ea;color:#17271f;border-radius:8px 8px 0 0;padding:1.1rem 1.2rem 1.3rem;margin-bottom:1.2rem;-webkit-mask:linear-gradient(#000 0 0) top / 100% calc(100% - 6px) no-repeat,radial-gradient(circle 6px at 6px 6px,transparent 5.5px,#000 6px) bottom / 24px 12px repeat-x;mask:linear-gradient(#000 0 0) top / 100% calc(100% - 6px) no-repeat,radial-gradient(circle 6px at 6px 6px,transparent 5.5px,#000 6px) bottom / 24px 12px repeat-x}.receipt-stamp{margin:0 0 .6rem;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#0b7b57}.receipt-key{display:block;font-size:.82rem;word-break:break-all;background:#fffdf7;border:1px dashed #d8cfb8;border-radius:6px;padding:.6rem .7rem;color:#17271f}.receipt-actions{display:flex;gap:.6rem;margin-top:.8rem}.btn-paper{background:#17a36f;color:#06130c;padding:.45rem .9rem;font-weight:600;font-size:.85rem}.btn-paper-ghost{background:none;border:1px solid #d8cfb8;color:#465e4e;padding:.45rem .9rem;font-size:.85rem}.receipt-note{margin:.8rem 0 .2rem;font-size:.78rem;color:#6f8377}.chart-wrap{position:relative}.usage-chart{width:100%;height:auto;display:block}.grid-line{stroke:var(--line);stroke-width:1}.axis-line{stroke:var(--ink-3);stroke-width:1}.axis-label{fill:var(--ink-3);font-family:var(--font-mono);font-size:10px}.bar{fill:var(--mint-700)}.bar-hover{fill:var(--mint-500)}.chart-tooltip{position:absolute;top:-6px;transform:translate(-50%);background:var(--press);color:#e9f2ec;border:1px solid var(--press);border-radius:6px;padding:.3rem .6rem;display:grid;font-family:var(--font-mono);font-size:.72rem;pointer-events:none;white-space:nowrap}.tooltip-date{color:#9fb3a6}.tooltip-value{color:#e9f2ec}.table-wrap{overflow-x:auto}.data-table{width:100%;min-width:560px;border-collapse:collapse;font-size:.85rem}.data-table th{text-align:left;color:var(--ink-3);font-weight:500;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;padding:.5rem .8rem .5rem 0;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:.6rem .8rem .6rem 0;border-bottom:1px solid var(--line-soft);color:var(--ink-2);white-space:nowrap}.data-table tbody tr:hover{background:var(--line-soft)}.data-table code{color:var(--ink-3);font-size:.78rem}.data-table .key-name{color:var(--ink)}.data-table .col-actions{text-align:right;width:1%;white-space:nowrap}.revoke-confirm{display:inline-flex;align-items:center;gap:.5rem}.revoke-confirm-text{color:var(--ink-3);font-size:.82rem}.celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#17271f73;padding:1.5rem}.celebration-canvas{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.celebration-card{position:relative;width:min(380px,100%);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:2rem 1.8rem;text-align:center;box-shadow:0 20px 50px #14251c40}.celebration-badge{display:inline-grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:999px;background:var(--mint-100);color:var(--mint-700);font-size:1.3rem;font-weight:700;margin-bottom:.9rem}.celebration-card h2{font-size:1.35rem;margin:0 0 .6rem}.celebration-pitch{margin:0 0 1.4rem;color:var(--ink-2);font-size:.92rem;line-height:1.5}.celebration-pitch strong{color:var(--mint-700)}.celebration-card .btn-primary{width:100%;padding:.65rem 1rem}.settings-gear,.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;padding:0;background:none;color:var(--ink-2);border:1px solid var(--line);border-radius:8px}.settings-gear:hover,.theme-toggle:hover{color:var(--mint-700);border-color:var(--mint-500)}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:start center;padding:6vh 1.25rem 2rem;overflow-y:auto;background:#14251c52;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.settings-modal{width:min(480px,100%);background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px #14251c2e;overflow:hidden}.pricing-modal{width:min(920px,100%)}.pw-plans.pricing-plans{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.4rem;max-width:none}@media(max-width:720px){.pw-plans.pricing-plans{grid-template-columns:1fr}}.settings-head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line-soft)}.settings-head h2{margin:0}.settings-close{background:none;color:var(--ink-3);font-size:1.4rem;line-height:1;padding:.1rem .5rem;border-radius:6px}.settings-close:hover{color:var(--ink)}.settings-body{display:flex;flex-direction:column;gap:1.6rem;padding:1.3rem 1.4rem}.settings-section h3{margin:0 0 .8rem;font-family:var(--font-display);font-weight:600;font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 0}.settings-row+.settings-row{border-top:1px solid var(--line-soft)}.settings-row-main{display:flex;flex-direction:column;gap:.15rem;min-width:0}.settings-row-label{font-size:.75rem;color:var(--ink-3)}.settings-row-value{font-size:.9rem;color:var(--ink);overflow-wrap:anywhere}.settings-row-muted{color:var(--ink-3)}.settings-form{display:grid;gap:.85rem;margin:.4rem 0 .2rem;padding:.9rem 1rem;background:var(--paper);border:1px solid var(--line-soft);border-radius:10px}.settings-form label{display:grid;gap:.35rem;font-size:.8rem;color:var(--ink-2)}.settings-form .btn-primary{justify-self:start}.settings-success{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-success p{margin:0;color:var(--mint-700);font-size:.9rem}.settings-plan-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.2rem}.billing-status{font-size:.75rem;color:var(--ink-3);white-space:nowrap}.billing-status-warn{color:var(--warn);font-weight:600}.billing-card-brand{text-transform:capitalize}.billing-plan-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}.billing-plan-option{display:grid;gap:.35rem;text-align:left;padding:.7rem .8rem;background:var(--card);border:1px solid var(--line);border-radius:9px;font-family:inherit;color:var(--ink);cursor:pointer}.billing-plan-option:hover:not(:disabled){border-color:var(--mint-500)}.billing-plan-option-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.billing-plan-option-name{font-weight:600;font-size:.95rem}.billing-plan-option-price{font-size:.85rem;color:var(--ink-2)}.billing-plan-option-caps{font-size:.75rem;color:var(--ink-3);line-height:1.45}.billing-plan-option-action{font-size:.78rem;font-weight:600;color:var(--mint-700)}.billing-plan-option:disabled{cursor:default;opacity:.72}.billing-plan-option-current .billing-plan-option-action{color:var(--ink-3)}.status-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.2rem .6rem;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid var(--line);color:var(--ink-2);text-transform:capitalize}.status-dot{width:6px;height:6px;border-radius:999px;background:var(--ink-3);flex-shrink:0}.status-chip-btn{background:var(--card);font-family:inherit;cursor:pointer}.status-chip-btn:hover{border-color:var(--mint-500);color:var(--mint-700)}.status-chip-pro,.status-chip-max{border-color:transparent;background:linear-gradient(100deg,var(--mint-badge-start),var(--mint-badge-end) 85%);box-shadow:0 3px 12px var(--mint-badge-glow);color:#06130c}.status-chip-pro .status-dot,.status-chip-max .status-dot{background:#06130c}.status-chip-btn.status-chip-pro:hover,.status-chip-btn.status-chip-max:hover{border-color:transparent;color:#06130c;filter:brightness(1.06)}.settings-foot{padding:1rem 1.4rem;border-top:1px solid var(--line-soft)}.settings-signout{padding:.45rem .9rem;font-size:.85rem}.settings-danger-zone h3{color:var(--err)}.review-modal{width:min(420px,100%)}.review-stars{display:flex;gap:.3rem;justify-content:center;margin:.4rem 0 .2rem}.review-star{background:none;border:none;padding:.1rem;font-size:2rem;line-height:1;color:var(--mint-500);cursor:pointer;transition:transform .1s ease}.review-star:hover{transform:scale(1.12)}.review-star:disabled{cursor:default}.review-error{color:var(--err);font-size:.85rem;margin:0}.review-textarea{font-family:inherit;font-size:.9rem;line-height:1.5;background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:.7rem .8rem;resize:vertical}.review-textarea:focus-visible{outline:2px solid var(--mint-500);outline-offset:2px}.review-foot-split{display:flex;justify-content:space-between}.pw{min-height:100vh;display:flex;flex-direction:column;padding:1.2rem clamp(1.25rem,4vw,3rem) 2.5rem;max-width:1180px;margin:0 auto}.pw-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:clamp(1.5rem,5vh,3rem)}.pw-progress{list-style:none;display:flex;flex-direction:column-reverse;gap:3px;margin:0;padding:0}.pw-sheet{width:34px;height:4px;border-radius:1px;background:var(--line);transition:background .35s ease,width .35s ease}.pw-sheet-on{width:44px;background:var(--mint-500)}.pw-skip{background:none;color:var(--ink-2);font-size:.82rem;padding:.35rem .5rem}.pw-skip:hover{color:var(--ink);text-decoration:underline}.pw-main{flex:1;display:flex;align-items:center}.pw-step{width:100%;animation:pw-enter .45s cubic-bezier(.2,.8,.2,1) both}@keyframes pw-enter{0%{opacity:0;transform:translateY(10px)}}.pw-copy{max-width:34rem}.pw-eyebrow{margin:0 0 .9rem;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;color:var(--ink-2);overflow-wrap:anywhere}.pw-h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,5vw,3.2rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 1rem;color:var(--ink)}.pw-h1:focus-visible{outline:2px solid var(--mint-500);outline-offset:6px;border-radius:3px}.pw-h1 em{font-style:italic;color:var(--mint-700)}.pw-sub{margin:0 0 1.8rem;color:var(--ink-2);font-size:1rem;line-height:1.6}.pw-btn-mint{background:var(--mint-500);color:#06130c;font-weight:600;padding:.7rem 1.3rem;border-radius:7px}.pw-btn-mint:hover{filter:brightness(1.06)}.pw-btn-mint:disabled{opacity:.6;cursor:default}.pw-btn-lg{font-size:1rem;padding:.85rem 1.6rem}.pw-btn-outline{background:none;color:var(--ink);border:1px solid var(--line);font-weight:600;padding:.7rem 1.3rem;border-radius:7px}.pw-btn-outline:hover{border-color:var(--mint-500);color:var(--mint-700)}.pw-btn-outline:disabled{opacity:.6;cursor:default}.pw-back{background:none;color:var(--ink-2);font-size:.82rem;padding:.35rem .5rem}.pw-back:hover{color:var(--ink);text-decoration:underline}.pw-step-actions{display:flex;align-items:center;gap:1.4rem;margin-top:2rem;max-width:64rem}.pw-step-actions-end{justify-content:space-between}.pw-free-link{background:none;color:var(--ink-2);font-size:.85rem;padding:.4rem 0;text-decoration:underline;text-underline-offset:3px}.pw-free-link:hover{color:var(--ink)}.pw-step-hero{display:grid;grid-template-columns:1fr minmax(300px,460px);gap:clamp(2rem,5vw,4rem);align-items:center}.pw-stage{background:var(--press);border-radius:14px;padding:1.6rem 1.4rem 1.4rem;overflow:hidden}.pw-stage-inner{width:fit-content;margin:0 auto;padding-right:7rem}.pw-stage-top{margin:0 0 1.8rem;font-family:var(--font-mono);font-size:.7rem;line-height:1.5;color:#7f9488;max-width:13rem}.pw-stage-arrow{color:var(--mint-500);margin-right:.4rem}.pw-column{position:relative;width:148px;height:clamp(300px,52vh,470px);border:1px dashed #3d5147;border-radius:3px}.pw-column-void{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;display:flex;align-items:center;justify-content:center;padding:0 .9rem;text-align:center;font-family:var(--font-mono);font-size:.72rem;line-height:1.5;color:#7f9488}.pw-column-fill{position:absolute;left:0;right:0;bottom:0;border-radius:0 0 2px 2px;background:repeating-linear-gradient(to top,var(--cream) 0 3px,var(--cream-edge) 3px 4px);transition:height 1s cubic-bezier(.16,.9,.3,1) .25s}.pw-mark{position:absolute;left:0;width:100%;pointer-events:none}.pw-mark-pro{top:0}.pw-mark-rule-free{display:block;width:100%;height:2px;background:var(--mint-500)}.pw-mark-label{position:absolute;left:calc(100% + .85rem);top:50%;transform:translateY(-50%);white-space:nowrap;font-family:var(--font-mono);font-size:.72rem;color:#8fa396}.pw-mark-label b{display:block;font-size:1.05rem;font-weight:500;color:var(--cream)}.pw-mark-label-free,.pw-mark-label-free b{color:var(--mint-500)}.pw-caps{list-style:none;margin:2.4rem 0 0;padding:0;display:grid;gap:1.9rem;max-width:64rem}.pw-cap-head{display:flex;align-items:baseline;gap:.6rem;margin-bottom:.6rem}.pw-cap-x{color:var(--warn);font-size:1rem;line-height:1}.pw-cap-free{color:var(--ink-2);font-size:.95rem}.pw-cap-free b{font-family:var(--font-mono);font-size:1.15rem;font-weight:500;color:var(--ink)}.pw-cap-pro{margin-left:auto;font-size:.85rem;color:var(--ink-2)}.pw-cap-pro b{font-family:var(--font-mono);font-weight:500;color:var(--mint-700)}.pw-bar{height:10px;border-radius:999px;background:repeating-linear-gradient(to right,var(--cream) 0 5px,var(--cream-edge) 5px 6px);border:1px solid var(--line);overflow:hidden}.pw-bar-fill{height:100%;background:var(--mint-500);transition:width 1.1s cubic-bezier(.16,.9,.3,1)}.pw-cap-aside{margin:.55rem 0 0;font-size:.82rem;color:var(--ink-2)}.pw-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:2.2rem;max-width:64rem;align-items:stretch}.pw-plan{position:relative;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:1.6rem 1.5rem;display:flex;flex-direction:column;gap:.7rem}.pw-plan-featured{border-color:var(--mint-500);box-shadow:0 14px 38px #14251c17}.pw-plan-flag{position:absolute;top:-.65rem;left:1.5rem;background:var(--mint-500);color:#06130c;font-size:.68rem;font-weight:600;letter-spacing:.04em;padding:.2rem .6rem;border-radius:999px}.pw-plan-name{margin:0;font-family:var(--font-display);font-weight:600;font-size:1.15rem;color:var(--ink)}.pw-plan-price{margin:0;display:flex;align-items:baseline;gap:.2rem;font-family:var(--font-mono);color:var(--ink-2);font-size:.85rem}.pw-plan-price b{font-size:2rem;font-weight:500;color:var(--ink);line-height:1}.pw-plan-pitch{margin:0;color:var(--ink-2);font-size:.9rem;line-height:1.55}.pw-plan-list{list-style:none;margin:.3rem 0 .4rem;padding:0;display:grid;gap:.45rem;font-size:.88rem;color:var(--ink-2)}.pw-plan-list li:before{content:"✓";color:var(--mint-700);margin-right:.5rem}.pw-plan .pw-btn-mint,.pw-plan .pw-btn-outline{margin-top:auto;width:100%}@media(max-width:900px){.pw-step-hero{grid-template-columns:1fr}.pw-stage-inner{padding-right:7.5rem}}@media(max-width:560px){.pw-plans{grid-template-columns:1fr}.pw-cap-head{flex-wrap:wrap}.pw-cap-pro{margin-left:0;flex-basis:100%}.pw-column{width:92px}.pw-stage-inner{padding-right:6.5rem}.pw-mark-label{left:calc(100% + .6rem);font-size:.66rem}}.onboard-outline{margin:0 0 1.6rem;padding-left:1.3rem;display:grid;gap:.45rem;color:var(--ink-2);font-size:.92rem}.onboard-outline code{font-size:.85em;background:var(--mint-100);color:var(--mint-700);padding:.1em .4em;border-radius:4px}.onboard-tabs{display:flex;gap:.4rem;margin-bottom:.7rem}.onboard-tab{background:var(--card);border:1px solid var(--line);color:var(--ink-2);font-family:var(--font-mono);font-size:.8rem;padding:.35rem .85rem;border-radius:999px}.onboard-tab:hover{border-color:var(--mint-500);color:var(--mint-700)}.onboard-tab-active,.onboard-tab-active:hover{background:var(--mint-500);border-color:transparent;color:#06130c}.onboard-code-wrap{position:relative;max-width:42rem;margin-bottom:.8rem}.onboard-code{margin:0;background:var(--press);color:#e9f2ec;border-radius:10px;padding:1.1rem 1.2rem;overflow-x:auto;font-family:var(--font-mono);font-size:.82rem;line-height:1.65}.onboard-copy-btn{position:absolute;top:.6rem;right:.6rem;background:#ffffff14;color:#e9f2ec;border:1px solid rgba(255,255,255,.18);padding:.3rem .65rem;font-size:.75rem;border-radius:6px}.onboard-copy-btn:hover{background:#ffffff29}.onboard-choices{border:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem;max-width:30rem}.onboard-choices legend{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.onboard-choice{display:flex;align-items:center;gap:.6rem;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.7rem .9rem;color:var(--ink-2);font-size:.92rem;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.onboard-choice:hover{border-color:var(--mint-500);color:var(--ink)}.onboard-choice-on{border-color:var(--mint-500);background:var(--mint-100);color:var(--ink);font-weight:600}.onboard-choice input{accent-color:var(--mint-500);width:1rem;height:1rem;margin:0;padding:0;flex:none}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
