@charset "UTF-8";:root{--color-accent: #ec4899;--color-accent-hover: #db2777;--color-accent-contrast: #fff;--color-prompt-bg: #faf8fd;--color-prompt-border: #ddd3ee;--color-prompt-text: #241b3a;--color-prompt-placeholder: #8b7fa3;--color-border-message: rgba(236, 72, 153, .35);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px}:root,:root[data-theme=dark]{color-scheme:dark;--color-bg-app: #170f2e;--color-bg-sidebar: #1c1440;--color-bg-surface: #1c1440;--color-bg-surface-elevated: #241a3f;--color-text-primary: #f2eefb;--color-text-secondary: #a99cc9;--color-text-muted: #7c6f99;--color-border-subtle: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .22);--color-input-bg: #1c1440;--color-input-border: rgba(255, 255, 255, .1);--color-bg-message-user: #33265a;--color-bg-message-assistant: #241a3f;--color-danger: #f87171;--color-success: #34d399;--color-warning: #fbbf24;--color-overlay-faint: rgba(255, 255, 255, .06);--color-overlay-soft: rgba(255, 255, 255, .08);--color-overlay-medium: rgba(255, 255, 255, .1);--color-overlay-strong: rgba(255, 255, 255, .12);--color-feedback-success-bg: rgba(52, 211, 153, .14);--color-feedback-success-border: rgba(52, 211, 153, .4);--color-feedback-success-text: #a7f3d0;--color-feedback-error-bg: rgba(248, 113, 113, .14);--color-feedback-error-border: rgba(248, 113, 113, .4);--color-feedback-error-text: #fecaca}:root[data-theme=light]{color-scheme:light;--color-bg-app: #f6f3fb;--color-bg-sidebar: #ece3f7;--color-bg-surface: #ffffff;--color-bg-surface-elevated: #ffffff;--color-text-primary: #241b3a;--color-text-secondary: #5b5277;--color-text-muted: #8b81a3;--color-border-subtle: rgba(36, 27, 58, .1);--color-border-strong: rgba(36, 27, 58, .22);--color-input-bg: #ffffff;--color-input-border: #ddd3ee;--color-bg-message-user: #f1e4fb;--color-bg-message-assistant: #ffffff;--color-danger: #dc2626;--color-success: #059669;--color-warning: #b45309;--color-overlay-faint: rgba(36, 27, 58, .05);--color-overlay-soft: rgba(36, 27, 58, .07);--color-overlay-medium: rgba(36, 27, 58, .09);--color-overlay-strong: rgba(36, 27, 58, .12);--color-feedback-success-bg: rgba(26, 138, 95, .08);--color-feedback-success-border: #ddd3ee;--color-feedback-success-text: #241b3a;--color-feedback-error-bg: rgba(217, 45, 32, .08);--color-feedback-error-border: #ddd3ee;--color-feedback-error-text: #241b3a}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background:var(--color-bg-app);color:var(--color-text-primary)}@media print{body:has(.billing-receipt){background:#fff;color:#000}body:has(.billing-receipt) app-sidebar,body:has(.billing-receipt) .app-shell__topbar,body:has(.billing-receipt) app-toast{display:none!important}body:has(.billing-receipt) .main-layout,body:has(.billing-receipt) .main-layout__pane{display:block;height:auto;overflow:visible}}.admin{color:var(--color-text-primary)}.admin-page{display:flex;flex-direction:column;gap:20px;padding:24px 28px 48px;max-width:1200px}.admin-page__header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.admin-page__title-group{display:flex;flex-direction:column;gap:4px}.admin-page__title{font-size:1.5rem;font-weight:700;margin:0}.admin-page__subtitle{margin:0;color:var(--color-text-secondary);font-size:.9rem}.admin-page__subtitle--warning{color:var(--color-danger);font-weight:600}.admin-page__actions{display:flex;gap:8px;flex-wrap:wrap}.admin-state{padding:32px 16px;text-align:center;color:var(--color-text-secondary);font-size:.95rem}.admin-state--error{color:var(--color-danger)}.admin-empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 20px;text-align:center;color:var(--color-text-secondary)}.admin-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:24px}.admin-card__heading{margin:0 0 18px;font-size:1.05rem;font-weight:600}.admin-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.admin-card-grid-wrap[aria-busy=true] .admin-card-grid{opacity:.6}.admin-card-grid__loading{display:flex;margin-bottom:12px}.admin-dl{margin:0;display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:8px 16px}.admin-dl dt{color:var(--color-text-secondary);font-size:.85rem}.admin-dl dd{margin:0;font-size:.95rem}.admin-metric{display:flex;flex-direction:column;gap:4px}.admin-metric__label{color:var(--color-text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.admin-metric__value{font-size:1.9rem;font-weight:700}.admin-metric__hint{color:var(--color-text-secondary);font-size:.8rem}.admin-filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px 16px;background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.admin-filter-field{display:flex;flex-direction:column;gap:4px;min-width:140px}.admin-filter-field__label{font-size:.75rem;color:var(--color-text-secondary)}.admin-search{position:relative;display:flex;align-items:center;min-width:220px;flex:1 1 220px}.admin-search__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);width:16px;height:16px;pointer-events:none}.admin-search .admin-input{flex:1;min-width:0;width:100%;padding-left:34px}.admin-chips{display:flex;gap:8px;flex-wrap:wrap}.admin-chip{padding:6px 14px;border-radius:999px;border:1px solid var(--color-border-subtle);background:transparent;color:var(--color-text-secondary);font-size:.85rem;cursor:pointer}.admin-chip--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.admin-table-wrap{overflow-x:auto;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.admin-table-wrap[aria-busy=true]{position:relative}.admin-table-wrap[aria-busy=true] .admin-table{opacity:.6}.admin-table-wrap__loading{display:flex;padding:10px 14px;border-bottom:1px solid var(--color-border-subtle)}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th{text-align:left;padding:10px 14px;color:var(--color-text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.02em;border-bottom:1px solid var(--color-border-subtle);white-space:nowrap}.admin-table td{padding:10px 14px;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--color-overlay-faint)}.admin-table--clickable tbody tr{cursor:pointer}.admin-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--color-border-subtle);color:var(--color-text-secondary);white-space:nowrap}.admin-badge--success{color:var(--color-feedback-success-text);background:var(--color-feedback-success-bg);border-color:var(--color-feedback-success-border)}.admin-badge--danger{color:var(--color-feedback-error-text);background:var(--color-feedback-error-bg);border-color:var(--color-feedback-error-border)}.admin-badge--muted{color:var(--color-text-secondary)}.admin-badge--accent{color:var(--color-accent);border-color:var(--color-accent)}.admin-badge-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px;font-size:.85rem;color:var(--color-text-secondary)}.admin-pagination__controls{display:flex;gap:8px}.admin-btn{padding:8px 16px;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);background:transparent;color:var(--color-text-primary);font-size:.88rem;cursor:pointer}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.admin-btn--primary:hover:not(:disabled){background:var(--color-accent-hover)}.admin-btn--danger{border-color:var(--color-danger);color:var(--color-danger)}.admin-btn--ghost{border-color:transparent}.admin-btn--icon{padding:6px;display:inline-flex;align-items:center;justify-content:center}.admin-row-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}@media(max-width:767px){.admin-row-actions{flex-wrap:wrap}}.admin-form{display:flex;flex-direction:column;gap:16px}.admin-form--sectioned{gap:24px}.admin-form--sectioned>.admin-card:last-child{margin-top:4px}.admin-field{display:flex;flex-direction:column;gap:8px}.admin-input-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.admin-label{font-size:.85rem;color:var(--color-text-secondary)}.admin-input,.admin-select{padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-text-primary);font-size:.9rem}.admin-input--invalid{border-color:var(--color-danger)}.admin-checkbox-field{display:flex;align-items:center;gap:10px;font-size:.9rem}.admin-checkbox-group{display:flex;flex-direction:column;gap:6px}.admin-help-text.admin-checkbox-group__help{margin-left:26px;max-width:480px}.admin-error{color:var(--color-danger);font-size:.8rem;margin:0;min-height:1em}.admin-help-text{color:var(--color-text-secondary);font-size:.8rem;margin:0 0 16px}.admin-form-actions{display:flex;align-items:center;gap:12px;margin-top:8px}.admin-detail-row{background:var(--color-bg-app)}.admin-detail-row__cell{padding:12px 14px}.admin-detail-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.admin-detail-columns__heading{margin:0 0 6px;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.admin-kv-list{margin:0;display:flex;flex-direction:column;gap:4px;font-size:.85rem}.admin-kv-list__row{display:flex;gap:8px}.admin-kv-list__key{color:var(--color-text-secondary);min-width:120px}.admin-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px 24px}.admin-summary-grid__item{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-summary-grid__label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em}.admin-summary-grid__value{font-size:.95rem;color:var(--color-text-primary)}.admin-summary-grid--secondary{padding-top:10px;border-top:1px solid var(--color-border-subtle)}.admin-usage-summary{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.admin-usage-summary__plan{margin:0;font-size:.8rem;color:var(--color-text-secondary);text-transform:capitalize}.admin-usage-summary__count{margin:0;font-size:1.3rem;font-weight:700;font-variant-numeric:tabular-nums}.admin-usage-summary__remaining{margin:0;font-size:.85rem;color:var(--color-text-secondary)}.page-shell{max-width:640px;margin:0 auto;padding:32px 24px 64px;color:var(--color-text-primary)}.page-shell app-user-message{display:block;margin-bottom:16px}.page-shell__back-link{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:6px 12px 6px 8px;margin-left:-8px;border-radius:999px;color:var(--color-accent);font-size:13px;font-weight:600;text-decoration:none;transition:.15s ease}.page-shell__back-link:hover{background:var(--color-overlay-faint);text-decoration:underline}.page-shell__heading{margin:0;font-size:24px;font-weight:700}.page-shell__loading{color:var(--color-text-secondary)}.page-shell__form{display:flex;flex-direction:column;gap:16px}.page-shell__field{display:flex;flex-direction:column;gap:6px}.page-shell__label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.page-shell__error{min-height:16px;margin:0;color:var(--color-danger);font-size:12px;line-height:16px}.page-shell__form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-shell__submit,.page-shell__btn-secondary,.page-shell__btn-danger{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:10px 20px;border:1.5px solid transparent;border-radius:999px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:.15s ease}.page-shell__submit:focus-visible,.page-shell__btn-secondary:focus-visible,.page-shell__btn-danger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.page-shell__submit:disabled,.page-shell__btn-secondary:disabled,.page-shell__btn-danger:disabled{cursor:not-allowed}.page-shell__submit{background:var(--color-accent);color:var(--color-accent-contrast)}.page-shell__submit:hover:not(:disabled){background:var(--color-accent-hover)}.page-shell__submit:disabled{background:var(--color-overlay-soft);border-color:var(--color-border-subtle);color:var(--color-text-secondary)}.page-shell__btn-secondary{background:transparent;border-color:var(--color-border-subtle);color:var(--color-text-primary)}.page-shell__btn-secondary:hover:not(:disabled){background:var(--color-overlay-faint);border-color:var(--color-accent)}.page-shell__btn-secondary:disabled{color:var(--color-text-secondary);opacity:.6}.page-shell__btn-danger{background:transparent;border-color:var(--color-danger);color:var(--color-danger)}.page-shell__btn-danger:hover:not(:disabled){background:#dc26261f}.page-shell__btn-danger:disabled{opacity:.6}@media(max-width:767px){.page-shell{padding:20px 16px 48px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.billing-purchase{display:flex;flex-direction:column;gap:20px;color:var(--color-text-primary)}.billing-purchase__back-btn{align-self:flex-start;padding:4px 0;background:transparent;border:none;color:var(--color-text-secondary);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.billing-purchase__back-btn:hover{color:var(--color-text-primary)}.billing-purchase__back-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.billing-purchase__header{display:flex;flex-direction:column;gap:4px}.billing-purchase__plan-name{margin:0;font-size:18px;font-weight:700}.billing-purchase__plan-description{margin:0;color:var(--color-text-secondary);font-size:13px}.billing-purchase__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,280px);align-items:start;gap:24px}.billing-purchase__main{display:flex;flex-direction:column;gap:20px;min-width:0}.billing-purchase__summary-column{position:sticky;top:16px;display:flex;flex-direction:column;gap:12px}.billing-purchase__field-group{display:flex;flex-direction:column;gap:8px}.billing-purchase__label{font-size:13px;font-weight:600;color:var(--color-text-secondary)}.billing-purchase__interval-toggle{display:inline-flex;gap:6px}.billing-purchase__interval-btn{min-height:36px;padding:6px 16px;background:transparent;border:1.5px solid var(--color-border-subtle);border-radius:999px;color:var(--color-text-secondary);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.billing-purchase__interval-btn:hover:not(.billing-purchase__interval-btn--active){border-color:var(--color-border-strong);color:var(--color-text-primary)}.billing-purchase__interval-btn--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast);font-weight:700}.billing-purchase__interval-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.billing-purchase__interval-btn:disabled{opacity:.5;cursor:not-allowed}.billing-purchase__field-set{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;border:none}.billing-purchase__section-heading{margin:0 0 4px;padding:0;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-secondary)}.billing-purchase__field-set>.billing-purchase__section-heading{margin-bottom:12px}.billing-purchase__field{display:flex;flex-direction:column;gap:6px}.billing-purchase__input{width:100%;min-height:44px;padding:10px 14px;box-sizing:border-box;background:var(--color-input-bg);border:1.5px solid var(--color-input-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:15px;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.billing-purchase__input:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #ec489926}.billing-purchase__input--invalid{border-color:var(--color-danger)}.billing-purchase__input:disabled{opacity:.5;cursor:not-allowed}.billing-purchase__error{min-height:16px;margin:0;color:var(--color-danger);font-size:12px;line-height:16px}.billing-purchase__submit-btn{align-self:flex-start;min-height:44px;padding:10px 24px;background:var(--color-accent);border:none;border-radius:999px;color:var(--color-accent-contrast);font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .15s ease}.billing-purchase__submit-btn:disabled{opacity:.5;cursor:not-allowed}.billing-purchase__submit-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.billing-purchase__promo-toggle{align-self:flex-start;padding:0;background:none;border:none;color:var(--color-accent);font-size:13px;font-weight:600;font-family:inherit;text-decoration:underline;cursor:pointer}.billing-purchase__promo-toggle:hover{color:var(--color-accent-hover)}.billing-purchase__promo-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.billing-purchase__promo-toggle:disabled{opacity:.5;cursor:not-allowed}.billing-purchase__promo-row{display:flex;align-items:flex-start;gap:8px}.billing-purchase__promo-row .billing-purchase__input{flex:1}.billing-purchase__promo-apply-btn{flex-shrink:0;min-height:44px;padding:10px 18px;background:transparent;border:1.5px solid var(--color-border-subtle);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .15s ease,opacity .15s ease}.billing-purchase__promo-apply-btn:hover:not(:disabled){border-color:var(--color-border-strong)}.billing-purchase__promo-apply-btn:disabled{opacity:.5;cursor:not-allowed}.billing-purchase__promo-apply-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.billing-purchase__promo-applied{display:flex;align-items:center;gap:8px;margin:0;color:var(--color-success, var(--color-accent));font-size:13px;font-weight:600}.billing-purchase__promo-duration{margin:-4px 0 0;color:var(--color-text-secondary);font-size:12px}.billing-purchase__promo-remove-btn{padding:0;background:none;border:none;color:var(--color-text-secondary);font-size:12px;font-weight:600;font-family:inherit;text-decoration:underline;cursor:pointer}.billing-purchase__promo-remove-btn:hover{color:var(--color-text-primary)}.billing-purchase__promo-remove-btn:disabled{opacity:.5;cursor:not-allowed}@media(min-width:768px)and (max-width:1023px){.billing-purchase__layout{grid-template-columns:1fr}.billing-purchase__summary-column{position:static}}@media(max-width:767px){.billing-purchase__layout{grid-template-columns:1fr}.billing-purchase__summary-column{position:static}.billing-purchase__submit-btn{align-self:stretch;text-align:center}.billing-purchase__promo-row{flex-direction:column;align-items:stretch}}
