:root{--teal: #118ab2;--teal-deep: #0e6f8f;--teal-light: #34b3d6;--teal-wash: #e2eff4;--teal-soft: #eef6f9;--cyan: #5bbcd6;--cyan-wash: #e4f2f7;--grey: #c4ccd2;--amber: #b9772a;--amber-wash: #f6efe4;--amber-deep: #9c611f;--green: #1f9d6b;--green-wash: #e6f4ee;--red: #c2483f;--red-wash: #fbe9e7;--purple: #6849c9;--purple-wash: #efeafa;--ink: #10222a;--ink-2: #5d7079;--ink-3: #9aa7ad;--ink-muted-text: #62737a;--bg: #f3f6f7;--card: #ffffff;--line: #e3eaec;--line-soft: #eef2f3;--sidebar: #0e1b22;--sidebar-line: rgba(255, 255, 255, .09);--sidebar-active: rgba(52, 179, 214, .16);--font: Sora, system-ui, -apple-system, sans-serif;--mono: ui-monospace, SF Mono, JetBrains Mono, Menlo, monospace;--r-tag: 7px;--r-chip: 8px;--r-control: 10px;--r-input: 11px;--r-card: 16px;--r-panel: 14px;--r-modal: 16px;--sidebar-w: 234px;--topbar-h: 64px;--main-pad-x: 30px;--main-pad-y: 26px;--gap: 14px;--card-pad: 18px;--section-gap: 20px;--content-max: 1180px;--shadow-pop: 0 18px 40px -14px rgba(16, 34, 42, .4);--shadow-modal: 0 30px 80px -20px rgba(16, 34, 42, .5);--shadow-toast: 0 16px 40px -12px rgba(16, 34, 42, .55);--shadow-card: 0 4px 14px -10px rgba(16, 34, 42, .3)}.ia-kicker{font:700 11px/1 Sora,system-ui,-apple-system,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#5d7079}.ia-numeric{font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-variant-numeric:tabular-nums}.wtap{transition:transform .1s ease,background .12s ease,box-shadow .12s ease}.wtap:hover{box-shadow:0 4px 14px -10px #10222a4d}.wtap:active{transform:scale(.99)}@media(prefers-reduced-motion:reduce){.wtap{transition:none}}@keyframes ia-livedot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}html,body{height:100%}body{margin:0;color-scheme:light;background-color:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px}html{--pref-font-scale: 1}html.pref-text-small{--pref-font-scale: .925}html.pref-text-default{--pref-font-scale: 1}html.pref-text-large{--pref-font-scale: 1.1}html.pref-text-xlarge{--pref-font-scale: 1.22}body{font-size:calc(1rem * var(--pref-font-scale))}html.pref-focus-ring *:focus-visible{outline:3px solid #0a62d0;outline-offset:2px}html.pref-high-contrast{filter:contrast(1.16)}html.pref-reduce-motion *,html.pref-reduce-motion *:before,html.pref-reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}app-root{height:100%}.p-title{margin:0 0 8px;font-size:22px;font-weight:700;letter-spacing:-.3px;color:var(--ink)}.p-subtitle{margin:0 0 18px;font-size:14px;color:var(--ink-2);line-height:1.55}.p-body{font-size:14px;color:var(--ink-2);line-height:1.6}.p-body h2{font-size:16px;font-weight:700;color:var(--ink);margin:22px 0 8px}.p-body p{margin:0 0 12px}.p-body a{color:var(--teal);font-weight:600}.p-label{display:block;margin-bottom:6px;font-size:12.5px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em}.p-field{margin-bottom:16px}.p-input{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-input);background:var(--card);color:var(--ink);font-size:15px;font-family:var(--font)}.p-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-wash)}.p-input.invalid{border-color:var(--red)}.p-btn{width:100%;padding:12px;border:none;border-radius:var(--r-control);background:var(--teal);color:#fff;font-size:14.5px;font-weight:600;font-family:var(--font);cursor:pointer}.p-btn:disabled{opacity:.6;cursor:default}.p-link{color:var(--teal);font-weight:600;text-decoration:none}.p-link:hover{text-decoration:underline}.p-error{margin-top:8px;font-size:13px;color:var(--red)}.p-note{margin-top:14px;font-size:12.5px;color:var(--ink-muted-text);text-align:center}.p-status{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.p-status-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center}.p-status-icon.ok{background:var(--green-wash);color:var(--green)}.p-status-icon.err{background:var(--red-wash);color:var(--red)}.p-status-icon.busy{background:var(--teal-wash);color:var(--teal)}.p-spin{width:26px;height:26px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--teal);animation:p-spin .7s linear infinite}@keyframes p-spin{to{transform:rotate(360deg)}}
