:root{--bg-primary: #ffffff;--bg-secondary: #fbfbfb;--bg-tertiary: #f7f7f7;--bg-hover: #f4f4f3;--bg-selected: #eef0ff;--border: #ececec;--border-strong: #d9d9d9;--text-primary: #141414;--text-secondary: #474747;--text-tertiary: #898989;--text-quaternary: #b3b3b3;--text-inverse: #ffffff;--accent-blue: #3b5bdb;--accent-blue-hover: #2f4bbd;--accent-blue-bg: #eef1ff;--accent-red: #cf1322;--accent-red-bg: #fde8e8;--accent-green: #0f9d58;--accent-green-bg: #e6f6ec;--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--shadow-sm: 0 1px 2px rgba(20, 20, 20, .04);--shadow: 0 4px 16px rgba(20, 20, 20, .08);--shadow-lg: 0 8px 32px rgba(20, 20, 20, .12);--font-sans: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}.auth-screen{display:grid;place-items:center;min-height:100vh;padding:1rem}.auth-card{width:100%;max-width:360px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow)}.auth-card h1{margin:0 0 .25rem;font-size:18px;font-weight:600}.auth-card .sub{color:var(--text-tertiary);font-size:13px;margin-bottom:1.25rem}.auth-field{display:block;margin-bottom:.75rem}.auth-field label{display:block;color:var(--text-secondary);font-size:12px;font-weight:500;margin-bottom:.25rem}.auth-field input{width:100%;padding:.5rem .625rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-primary);outline:none;transition:border-color .1s,box-shadow .1s}.auth-field input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-bg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .875rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;font-weight:500;transition:background .1s,border-color .1s}.btn:hover{background:var(--bg-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.primary{background:var(--accent-blue);border-color:var(--accent-blue);color:var(--text-inverse)}.btn.primary:hover{background:var(--accent-blue-hover);border-color:var(--accent-blue-hover)}.btn.block{width:100%}.auth-toggle{margin-top:.875rem;text-align:center;color:var(--text-tertiary);font-size:13px}.auth-toggle button{background:none;border:none;color:var(--accent-blue);cursor:pointer;padding:0;font-weight:500}.auth-toggle button:hover{text-decoration:underline}.auth-status{margin-top:.875rem;padding:.5rem .625rem;border-radius:var(--radius);font-size:13px}.auth-status.error{background:var(--accent-red-bg);color:var(--accent-red)}.auth-status.info{background:var(--accent-blue-bg);color:var(--accent-blue)}.auth-status.success{background:var(--accent-green-bg);color:var(--accent-green)}.app-shell{max-width:960px;margin:3rem auto;padding:0 1rem}.app-shell .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.app-shell .top h1{margin:0;font-size:16px;font-weight:600}.muted{color:var(--text-tertiary);font-size:13px}.kv{display:grid;grid-template-columns:140px 1fr;row-gap:.375rem;column-gap:1rem;margin-top:1rem}.kv dt{color:var(--text-tertiary)}.kv dd{margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}
