:root{--font-family: "Nunito Sans", system-ui, sans-serif;--font-size-micro: 11px;--font-size-label: 12px;--font-size-small: 13px;--font-size-body: 15px;--font-size-heading: 18px;--font-size-title: 22px;--font-size-display: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semi: 600;--font-weight-bold: 700;--font-weight-black: 800;--line-height: 1.45;--space-xxs: 3px;--space-xs: 6px;--space-sm: 9px;--space-md: 12px;--space-lg: 18px;--space-xl: 24px;--space-xxl: 36px;--space-3xl: 56px;--space-4xl: 88px;--radius-none: 0;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--radius-round: 50%;--transition-fast: .1s ease;--transition-normal: .18s ease;--transition-slow: .3s ease;--z-panel: 1;--z-dropdown: 50;--z-floating: 100;--z-modal: 200;--z-toast: 300;--shadow-sm: 0 1px 3px rgba(40, 26, 20, .06);--shadow-md: 0 4px 14px rgba(40, 26, 20, .08);--shadow-lg: 0 12px 32px rgba(40, 26, 20, .1);--shadow-xl: 0 24px 60px rgba(40, 26, 20, .14);--focus-ring-width: 2px;--focus-ring-offset: 1px;--color-accent: #b34519;--color-accent-hover: #9a3a14;--color-accent-light: #f2eae6;--color-accent-fill: #8c3410;--color-accent-ring: rgba(179, 69, 25, .2);--color-bg: #f6f4f1;--color-surface: #ffffff;--color-panel: #efece8;--color-hover: #e8e5e0;--color-viewport: #f6f4f1;--color-border: #e0dcd6;--color-border-strong: #b8b2a9;--color-text-primary: #2b2825;--color-text-secondary: #6a645c;--color-text-tertiary: #9a9289;--color-text-inverse: #ffffff;--color-success: #5a7a52;--color-warning: #a88440;--color-danger: #a14a2a;--color-info: #4a6680;--color-focus-ring: var(--color-accent);--color-hero-bg: #2b2825;--color-hero-panel: #34302b;--color-hero-text: #f6f4f1;--color-hero-text-secondary: #b8b2a9;--color-hero-border: #4a443e}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-family);font-size:14px;line-height:var(--line-height)}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover);text-decoration:underline}button{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:6px 12px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}button:hover{background:var(--color-hover);border-color:var(--color-border-strong)}button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse)}button.primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}input,textarea,select{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 10px;font-family:inherit;font-size:13px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}textarea{resize:vertical;min-height:80px}.layout{display:grid;grid-template-columns:240px 1fr;height:100vh}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-lg) var(--space-md);display:flex;flex-direction:column;gap:2px}.sidebar-title{font-weight:var(--font-weight-black);font-size:var(--font-size-heading);color:var(--color-text-primary);padding:4px 10px 18px;display:flex;align-items:center;gap:8px}.sidebar-title .brand-accent{color:var(--color-accent)}.nav-link{display:block;padding:8px 12px;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-semi);font-size:13px;transition:background var(--transition-fast),color var(--transition-fast)}.nav-link:hover{color:var(--color-text-primary);background:var(--color-hover);text-decoration:none}.nav-link.active{color:var(--color-text-primary);background:var(--color-accent-light);border-left:3px solid var(--color-accent);padding-left:9px}.nav-link-with-badge{display:flex;align-items:center;justify-content:space-between;gap:8px}.unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;background:var(--color-accent);color:var(--color-text-inverse);font-size:11px;font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;line-height:1;border-radius:4px;letter-spacing:0;text-transform:none}.sidebar-foot{margin-top:auto;padding-top:var(--space-md);border-top:1px solid var(--color-border);font-size:12px;color:var(--color-text-tertiary)}.sidebar-foot>div{padding:6px 10px;color:var(--color-text-secondary);font-weight:500}.sidebar-foot button{width:100%;margin-top:8px}.main{overflow-y:auto;padding:var(--space-xl) var(--space-xxl);background:var(--color-bg)}.page-title{font-size:var(--font-size-display);font-weight:var(--font-weight-black);margin:0 0 var(--space-lg);color:var(--color-text-primary);letter-spacing:-.01em}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow-sm)}.card-label{font-size:11px;font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}.card-value{font-size:28px;font-weight:var(--font-weight-black);color:var(--color-text-primary);letter-spacing:-.02em}.card-sub{font-size:12px;color:var(--color-text-tertiary);margin-top:4px}table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--color-border);font-size:13px}th{background:var(--color-panel);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;font-size:11px;letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none}th:hover{color:var(--color-text-primary)}tbody tr{cursor:pointer;transition:background var(--transition-fast)}tbody tr:hover{background:var(--color-hover)}tbody tr:last-child td{border-bottom:none}td.muted{color:var(--color-text-tertiary)}td.num{font-variant-numeric:tabular-nums}.row{display:flex;gap:12px;align-items:center;margin-bottom:12px}.row>*{flex:0 0 auto}.spacer{flex:1}.section{margin-bottom:var(--space-xl)}.section-title{font-size:12px;font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin:0 0 var(--space-sm)}.empty{padding:var(--space-xxl);text-align:center;color:var(--color-text-tertiary);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-md)}.pill{display:inline-block;padding:3px 9px;border-radius:var(--radius-pill);font-size:10px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em}.pill.open{background:#f6e9d6;color:#7a5a1f}.pill.replied{background:#e0ecdb;color:#466138}.pill.closed{background:var(--color-panel);color:var(--color-text-tertiary)}.pill.trial{background:var(--color-panel);color:var(--color-text-secondary)}.pill.active{background:#e0ecdb;color:#466138}.pill.trialing{background:#e6efe2;color:#4a6a3e}.pill.canceled,.pill.past_due,.pill.incomplete{background:#f3dcd2;color:#823620}.pill.cat-general{background:var(--color-panel);color:var(--color-text-secondary)}.pill.cat-wrong_info{background:#f3dcd2;color:#823620}.support-thread{display:flex;flex-direction:column;gap:10px;max-width:760px}.support-bubble{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px;box-shadow:var(--shadow-sm)}.support-bubble.from-admin{background:var(--color-accent-light);border-color:var(--color-accent)}.support-bubble-head{font-size:12px;color:var(--color-text-tertiary);margin-bottom:6px;display:flex;gap:8px}.support-bubble-body{white-space:pre-wrap}.chat-thread{display:flex;flex-direction:column;gap:14px;max-width:860px}.chat-msg{padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.chat-msg.user{background:var(--color-accent-light);border-color:var(--color-accent-light)}.chat-msg.assistant{background:var(--color-surface)}.chat-msg.tool{background:var(--color-panel);font-size:12px;color:var(--color-text-secondary)}.chat-msg-head{font-size:11px;color:var(--color-text-tertiary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}.chat-msg-body{white-space:pre-wrap;word-break:break-word}.fullscreen-center{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;text-align:center}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xl) var(--space-xxl);width:380px;max-width:100%;box-shadow:var(--shadow-md);text-align:left}.login-card h1{font-size:var(--font-size-title);font-weight:var(--font-weight-black);margin:0 0 var(--space-md);color:var(--color-text-primary);text-align:center}.login-card label{display:block;margin-bottom:var(--space-md)}.login-card label>span{display:block;font-size:12px;font-weight:var(--font-weight-semi);color:var(--color-text-secondary);margin-bottom:4px}.login-card input{width:100%;padding:10px 12px;font-size:14px}.login-card .err{color:var(--color-danger);font-size:12px;margin-top:10px}*{scrollbar-color:var(--color-border-strong) transparent;scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px;background:transparent}*::-webkit-scrollbar-track{background:transparent;border:none}*::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill);border:none}*::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}*::-webkit-scrollbar-button{display:none}*::-webkit-scrollbar-corner{background:transparent}
