:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--radius-sm: 0px;--radius-md: 0px;--radius-lg: 0px;--radius-pill: 2px;--shadow-1: 2px 2px 0 rgba(27, 28, 32, .18);--shadow-2: 3px 3px 0 rgba(27, 28, 32, .22);--shadow-3: 5px 5px 0 rgba(93, 64, 201, .3);--transition-fast: 60ms cubic-bezier(.2, 0, .2, 1);--transition-med: .12s cubic-bezier(.2, 0, .2, 1);--font-sans: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--font-mono: "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace;--bg: #e7e2d2;--bg-soft: #dcd6c4;--card: #d9d3c0;--card-hover: #e4dfd0;--border: #1b1c20;--border-strong: #1b1c20;--fg: #1b1c20;--fg-soft: #2c2e34;--muted: #54564e;--muted-soft: #74766a;--brand: #15b9a7;--brand-fg: #04302b;--brand-soft: #bdeee6;--good: #0e8a3a;--good-bg: #c9ecc9;--good-fg: #064a1c;--danger: #c8362f;--danger-bg: #f3cfcb;--danger-fg: #6e1512;--warn: #b5640f;--warn-bg: #f3e2bd;--warn-fg: #5e3208;--bevel-lt: #fbf8ee;--bevel-dk: #8d8773;--bevel-dk2:#6c6753;--purple: #5d40c9;--shadow-tint: rgba(27, 28, 32, .18);color-scheme:light}:root[data-theme=dark]{--bg: #0d0f13;--bg-soft: #15181e;--card: #181c23;--card-hover: #1f242d;--border: #2c333d;--border-strong: #3b4452;--fg: #d7e7df;--fg-soft: #b9cdc4;--muted: #7e8c86;--muted-soft: #5d6862;--brand: #41d784;--brand-fg: #042b18;--brand-soft: #133124;--good: #41d784;--good-bg: #11271a;--good-fg: #9ff0c2;--danger: #f1707b;--danger-bg: #2e1417;--danger-fg: #ffc3c8;--warn: #f4b261;--warn-bg: #2e2210;--warn-fg: #ffd9a8;--bevel-lt: #2c333d;--bevel-dk: #05070a;--bevel-dk2:#05070a;--purple: #9d86ff;--shadow-tint: rgba(0, 0, 0, .5);color-scheme:dark}:root[data-theme=contrast]{--bg: #000000;--bg-soft: #000000;--card: #000000;--card-hover: #1a1a00;--border: #ffffff;--border-strong: #ffffff;--fg: #ffffff;--fg-soft: #ffffff;--muted: #ffff00;--muted-soft: #00ebff;--brand: #ffff00;--brand-fg: #000000;--brand-soft: #1a1a00;--good: #3ff23f;--good-bg: #001a00;--good-fg: #3ff23f;--danger: #ff5b5b;--danger-bg: #1a0000;--danger-fg: #ff5b5b;--warn: #ffff00;--warn-bg: #1a1a00;--warn-fg: #ffff00;--bevel-lt: #ffffff;--bevel-dk: #000000;--bevel-dk2:#000000;--purple: #00ebff;--shadow-tint: rgba(255, 255, 255, .4);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--fg);background:var(--bg);background-image:linear-gradient(rgba(21,185,167,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(93,64,201,.045) 1px,transparent 1px);background-size:24px 24px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-med),color var(--transition-med)}a{color:var(--purple);text-decoration:none;font-weight:600;transition:color var(--transition-fast)}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}h1{font-size:24px;font-weight:800;text-transform:uppercase;letter-spacing:.01em;margin:0 0 var(--space-4) 0}h2{font-size:17px;font-weight:800;text-transform:uppercase;letter-spacing:.01em;margin:0 0 var(--space-3) 0}h3{font-size:15px;font-weight:800;margin:0 0 var(--space-2) 0}code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-soft);padding:1px 6px;border:1px solid var(--border);color:var(--brand)}:root[data-skin=retro]:not([data-theme=dark]) code{color:var(--brand-fg)}pre{font-family:var(--font-mono);background:var(--bg-soft);border:2px solid var(--border);padding:var(--space-3);font-size:12px;overflow:auto}input,select,button,textarea{font-family:inherit;font-size:inherit;color:var(--fg)}input[type=text],input[type=url],input[type=email],input:not([type]),select,textarea{width:100%;padding:8px 10px;border:2px solid var(--border);background:var(--bevel-lt);box-shadow:inset 1px 1px 0 var(--bevel-dk);transition:box-shadow var(--transition-fast)}:root[data-theme=dark] input[type=text],:root[data-theme=dark] input[type=url],:root[data-theme=dark] input[type=email],:root[data-theme=dark] input:not([type]),:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:#0a0c10}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:inset 1px 1px 0 var(--bevel-dk),0 0 0 2px var(--brand-soft)}input[type=checkbox],input[type=radio]{accent-color:var(--brand)}input[readonly]{background:var(--bg-soft);color:var(--muted)}button{cursor:pointer;background:var(--card);color:var(--fg);border:2px solid var(--border);padding:6px 12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:13px;box-shadow:2px 2px 0 var(--border);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}button:hover:not(:disabled){background:var(--card-hover)}button:active:not(:disabled){transform:translate(2px,2px);box-shadow:0 0 0 var(--border)}button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand);color:var(--brand-fg);padding:8px 18px}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 88%,white)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,black)}.btn-ghost{background:transparent;border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--bg-soft)}.btn-ghost:active:not(:disabled){transform:none}.btn-icon{background:transparent;border-color:transparent;box-shadow:none;padding:6px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1}.btn-icon:hover:not(:disabled){background:var(--bg-soft)}.btn-icon:active:not(:disabled){transform:none}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--card);border-bottom:2px solid var(--bevel-dk2);box-shadow:inset 0 1px 0 var(--bevel-lt),0 2px 0 var(--shadow-tint);padding:var(--space-2) var(--space-5);display:flex;align-items:center;gap:var(--space-5);position:sticky;top:0;z-index:10}.app-header .brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:900;font-size:15px;text-transform:uppercase;letter-spacing:.03em;color:var(--fg)}.app-header nav{display:flex;gap:var(--space-1);flex:1}.app-header nav a{color:var(--fg);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.02em;padding:6px 12px;transition:color var(--transition-fast),background-color var(--transition-fast)}.app-header nav a:hover{color:#fff;background:var(--brand);text-decoration:none}.app-header nav a.active{color:var(--brand-fg);background:var(--brand)}.app-header .header-right{display:flex;align-items:center;gap:var(--space-3)}.app-header .user-name{color:var(--muted);font-size:13px;font-family:var(--font-mono)}.app-main{flex:1;max-width:1040px;margin:0 auto;padding:var(--space-6) var(--space-5);width:100%}.surface{background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow-1)}.surface-padded{padding:var(--space-5)}.empty-state{border:2px dashed var(--bevel-dk);padding:var(--space-6);text-align:center;color:var(--muted);background:var(--card)}.empty-state h3{color:var(--fg)}.empty-state p{margin:var(--space-2) 0 0 0}.banner{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border:2px solid var(--border);box-shadow:var(--shadow-1);margin-bottom:var(--space-4)}.banner-good{background:var(--good-bg);border-color:var(--good);color:var(--good-fg)}.banner-danger{background:var(--danger-bg);border-color:var(--danger);color:var(--danger-fg)}.banner-warn{background:var(--warn-bg);border-color:var(--warn);color:var(--warn-fg)}.banner-info{background:var(--brand-soft);border-color:var(--brand);color:var(--fg)}.banner-info a{color:var(--brand);font-weight:600}.banner>.content{flex:1}.pro-pill{display:inline-block;margin-left:6px;padding:0 6px;font-size:10px;font-weight:700;letter-spacing:.06em;line-height:16px;border-radius:8px;background:var(--brand);color:var(--brand-fg);vertical-align:middle}fieldset.field-lock{border:0;margin:0;padding:0;min-width:0}fieldset.field-lock[disabled]{opacity:.55;cursor:not-allowed}.diag-checks,.diag-errors{list-style:none;margin:0;padding:0}.diag-check{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--border)}.diag-check:first-child{border-top:0}.diag-icon{font-weight:700;line-height:1.4}.diag-pass .diag-icon{color:var(--good)}.diag-fail .diag-icon{color:var(--danger)}.diag-skip .diag-icon{color:var(--muted)}.diag-label{font-weight:600}.diag-fix{color:var(--brand);margin-top:2px}.diag-errors>li{padding:8px 0;border-top:1px solid var(--border)}.diag-errors>li:first-child{border-top:0}.troubleshoot-fold{margin-top:20px}.troubleshoot-fold>summary{cursor:pointer;font-weight:600;color:var(--brand);padding:8px 0}.setup-steps{margin:16px 0;padding-left:22px}.setup-steps>li{margin-bottom:14px;line-height:1.5}.setup-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.setup-links a{color:var(--brand);font-weight:600}.banner>button.dismiss{background:transparent;border:0;box-shadow:none;color:inherit;font-size:18px;padding:0 4px;line-height:1}.banner>button.dismiss:hover{background:#00000014}.banner>button.dismiss:active{transform:none}.data-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow-1)}.data-table thead th{text-align:left;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--brand-fg);background:var(--brand);padding:9px 14px;border-bottom:2px solid var(--border)}.data-table tbody td{padding:11px 14px;border-bottom:1px solid var(--bevel-dk);vertical-align:top}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover td{background:var(--bg-soft);transition:background-color var(--transition-fast)}.data-table tbody tr.clickable{cursor:pointer}.data-table .col-mono{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.data-table .col-actions{text-align:right;white-space:nowrap}.pill{display:inline-block;padding:2px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-family:var(--font-mono);border:1.5px solid currentColor}.pill-good{background:var(--good-bg);color:var(--good)}.pill-danger{background:var(--danger-bg);color:var(--danger)}.pill-warn{background:var(--warn-bg);color:var(--warn)}.pill-muted{background:var(--bg-soft);color:var(--muted)}.pill-brand{background:var(--brand);color:var(--brand-fg);border-color:var(--border)}.field{margin-bottom:var(--space-3);display:block}.field-label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;margin-bottom:var(--space-1);color:var(--fg-soft)}.field-hint{color:var(--muted);font-size:12px;margin-top:4px;font-family:var(--font-mono)}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-3)}.checkbox-group label{font-size:13px;color:var(--fg-soft);-webkit-user-select:none;user-select:none}.actions-row{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.page-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.page-header h1{margin:0;flex:1}.tab-row{display:flex;gap:4px;margin-bottom:var(--space-4)}.tab-row button{padding:6px 14px;background:var(--card);border:2px solid var(--border);color:var(--fg);font-size:12px}.tab-row button.active{background:var(--brand);color:var(--brand-fg)}.landing-card{background:var(--card);border:2px solid var(--border);box-shadow:var(--shadow-3);padding:var(--space-7) var(--space-6);max-width:540px;margin:var(--space-6) auto}.landing-card h1{font-size:28px;letter-spacing:.01em}.login-brand{margin-bottom:var(--space-4)}.login-lockup{display:block;width:min(100%,320px);height:auto}.brand-mark{display:block;flex-shrink:0;border-radius:8px}.quote{margin-top:var(--space-6);padding-top:var(--space-5);border-top:2px dashed var(--bevel-dk);color:var(--muted);font-style:italic;line-height:1.6}.quote-text{color:var(--fg-soft)}.quote-attr{display:block;margin-top:var(--space-2);font-style:normal;font-size:12px;color:var(--muted-soft);font-family:var(--font-mono)}.copy-row{display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-2)}.copy-row label{width:90px;font-size:13px;font-weight:700}.copy-row input{flex:1;font-family:var(--font-mono);font-size:12px}.muted{color:var(--muted)}.subtle{font-size:12px;color:var(--muted)}.flex-row{display:flex;gap:var(--space-3);align-items:center}.flex-grow{flex:1}.gap-2{gap:var(--space-2)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}@media (prefers-reduced-motion: reduce){*{transition-duration:0ms!important;animation-duration:0ms!important}}:root[data-skin=modern] body{background-image:none}:root[data-skin=modern]{--bg: #faf9f8;--bg-soft: #f0eff0;--card: #ffffff;--card-hover: #f3f2f1;--border: #e1dfdd;--border-strong: #c8c6c4;--fg: #1b1a19;--fg-soft: #323130;--muted: #605e5c;--muted-soft: #8a8886;--brand: #5b5fc7;--brand-fg: #ffffff;--brand-soft: #e8ebfa;--good: #0e700e;--good-bg: #dff6dd;--good-fg: #0b5a0b;--danger: #c4314b;--danger-bg: #fde7e9;--danger-fg: #a4262c;--warn: #8a6a00;--warn-bg: #fff4ce;--warn-fg: #6b5200;--shadow-1: 0 1px 2px rgba(0, 0, 0, .08);--shadow-2: 0 2px 8px rgba(0, 0, 0, .1);--shadow-tint: rgba(0, 0, 0, .06);color-scheme:light}:root[data-skin=modern][data-theme=dark]{--bg: #1f1f1f;--bg-soft: #292929;--card: #2d2c2c;--card-hover: #383838;--border: #3d3d3d;--border-strong: #565656;--fg: #ffffff;--fg-soft: #e3e3e3;--muted: #adadad;--muted-soft: #8a8886;--brand: #8b8ff5;--brand-fg: #1f1f1f;--brand-soft: #2f2f4a;--good: #6ccb5f;--good-bg: #14310f;--good-fg: #9fe39f;--danger: #f1707b;--danger-bg: #3b1416;--danger-fg: #ffb3b8;--warn: #ffca6a;--warn-bg: #3a2c0a;--warn-fg: #ffe2a8;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 2px 8px rgba(0, 0, 0, .5);--shadow-tint: rgba(0, 0, 0, .5);color-scheme:dark}:root[data-skin=modern] h1,:root[data-skin=modern] h2{text-transform:none;letter-spacing:0;font-weight:700}:root[data-skin=modern] input[type=text],:root[data-skin=modern] input[type=url],:root[data-skin=modern] input[type=email],:root[data-skin=modern] input[type=number],:root[data-skin=modern] input[type=time],:root[data-skin=modern] input:not([type]),:root[data-skin=modern] select,:root[data-skin=modern] textarea{border-width:1px;border-radius:8px;background:var(--card);box-shadow:none}:root[data-skin=modern] input:focus,:root[data-skin=modern] select:focus,:root[data-skin=modern] textarea:focus{box-shadow:0 0 0 2px var(--brand-soft);border-color:var(--brand)}:root[data-skin=modern] button{border-width:1px;border-radius:8px;box-shadow:none;text-transform:none;letter-spacing:0;font-weight:600}:root[data-skin=modern] button:active:not(:disabled){transform:none;box-shadow:none}:root[data-skin=modern] .app-header{border-bottom:1px solid var(--border);box-shadow:0 1px 3px #0000000a}:root[data-skin=modern] .app-header .brand{text-transform:none;letter-spacing:0;font-weight:800}:root[data-skin=modern] .app-header nav a{text-transform:none;letter-spacing:0;font-weight:600;border-radius:6px}:root[data-skin=modern] .app-header .user-name{font-family:var(--font-sans)}:root[data-skin=modern] .surface{border-width:1px;border-radius:10px;box-shadow:var(--shadow-2)}
