.button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-min);padding:0 var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font:600 15px/22px var(--font-ui);cursor:pointer}.button--primary{background:var(--accent-default);color:var(--accent-on);width:100%}.button--secondary{background:var(--bg-surface-2);color:var(--text-primary)}.button--ghost{background:transparent;border-color:var(--border);color:var(--text-muted);font:400 13px/18px var(--font-ui)}.button:disabled{opacity:.5;cursor:default}.status-dot{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;background:var(--state-unknown)}.status-dot--large{width:14px;height:14px}.status-dot--ok{background:var(--state-ok)}.status-dot--warn{background:var(--state-warn)}.status-dot--error{background:var(--state-error);box-shadow:0 0 0 4px color-mix(in srgb,var(--state-error) 25%,transparent)}.app-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid transparent;min-width:0}.app-card--error{border-color:var(--state-error)}.app-card--warn{border-color:var(--state-warn)}.app-card__header{display:flex;align-items:center;gap:var(--space-3)}.app-card__titles{flex:1;min-width:0}.app-card__name{font:600 15px/22px var(--font-ui);margin:0;text-transform:capitalize}.app-card__domain{font:400 13px/18px var(--font-ui);color:var(--text-muted);text-decoration:none;overflow-wrap:anywhere}.app-card__version{font:400 12px/18px var(--font-mono);color:var(--text-muted)}.section{display:flex;flex-direction:column;gap:var(--space-3)}.section__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.section__title{font:600 16px/22px var(--font-ui);margin:0;display:flex;align-items:center;gap:var(--space-2)}.section__aside{font:400 13px/18px var(--font-ui);color:var(--text-muted)}.tile{--tile-accent: var(--state-ok);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-surface);min-width:0}.tile--warn{--tile-accent: var(--state-warn)}.tile--error{--tile-accent: var(--state-error)}.tile--unknown{--tile-accent: var(--state-unknown)}.tile__label{font:500 11px/14px var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.tile__value{font:600 26px/30px var(--font-ui);font-variant-numeric:tabular-nums}.tile--warn .tile__value,.tile--error .tile__value{color:var(--tile-accent)}.tile__sub{font:400 13px/18px var(--font-ui);color:var(--text-muted)}.tile__bar{height:6px;border-radius:3px;background:var(--bg-surface-2);overflow:hidden;margin-top:var(--space-1)}.tile__bar-fill{height:100%;border-radius:3px;background:var(--tile-accent);transition:width .4s ease}:root{--bg-base: #0e1013;--bg-surface: #171a1f;--bg-surface-2: #20242b;--border: #2a2f37;--text-primary: #f2f4f7;--text-muted: #9aa3ae;--accent-default: #38bdf8;--accent-on: #0e1013;--state-ok: #22c55e;--state-warn: #f59e0b;--state-error: #f43f5e;--state-unknown: #6b7280;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--touch-min: 44px;--content-max: 1200px;--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg-base);color:var(--text-primary);font:400 15px/22px var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}a{color:var(--accent-default)}button,input{font:inherit;color:inherit}.page{max-width:var(--content-max);margin:0 auto;padding:calc(env(safe-area-inset-top) + var(--space-4)) var(--space-4) calc(env(safe-area-inset-bottom) + var(--space-8));display:flex;flex-direction:column;gap:var(--space-6)}.page--narrow{max-width:400px;padding-top:calc(env(safe-area-inset-top) + 15vh)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.topbar__title{font:600 22px/28px var(--font-ui);margin:0;display:flex;align-items:center;gap:var(--space-2)}.topbar__meta{font:400 13px/18px var(--font-ui);color:var(--text-muted);margin:var(--space-1) 0 0}.topbar__actions{display:flex;gap:var(--space-2)}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field__label{font:500 11px/14px var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.field__input{min-height:var(--touch-min);padding:0 var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface)}.field__input:focus{outline:none;border-color:var(--accent-default)}.field__input--code{font-family:var(--font-mono);letter-spacing:.3em;font-size:20px}.form{display:flex;flex-direction:column;gap:var(--space-3)}.form-error{font:400 13px/18px var(--font-ui);margin:0;color:var(--state-error)}.muted{color:var(--text-muted)}.grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:760px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.grid--cards{grid-template-columns:1fr}@media(min-width:760px){.grid--cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.problems{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--bg-surface);border-left:3px solid var(--state-error);list-style:none;display:flex;flex-direction:column;gap:var(--space-1);font:400 13px/18px var(--font-ui)}.problems--ok{border-left-color:var(--state-ok);color:var(--text-muted)}.kv{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3);margin:0;font:400 13px/18px var(--font-ui)}.kv dt{color:var(--text-muted)}.kv dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.log{margin:0;max-height:320px;overflow:auto;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--bg-base);font:400 12px/18px var(--font-mono);white-space:pre-wrap;word-break:break-all}details>summary{cursor:pointer;font:400 13px/18px var(--font-ui);color:var(--text-muted);min-height:var(--touch-min);display:flex;align-items:center}.app-version{font:400 13px/18px var(--font-ui);color:var(--text-muted);text-align:center}
