:root{--color-primary:#20405e;--color-accent:#a6c0df;--color-highlight:#ffe8cf;--color-bg:#fafafa;--color-surface:#fff;--color-text:var(--color-primary);--color-text-muted:#4a647a;--color-border:color-mix(in srgb, var(--color-accent) 70%, var(--color-primary) 30%);--color-danger:#8b3a3a;--color-ok:#2f6b3a;--color-on-primary:#fff;--color-badge-go:#d7ecd9;--color-badge-stop:#f2d6d6;--radius:12px;--radius-sm:8px;--radius-pill:999px;--shadow:0 1px 2px #20405e0f, 0 8px 24px #20405e0f;--shadow-soft:0 1px 2px #20405e0a, 0 4px 12px #20405e0d;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading:Garamond, Georgia, Tahoma, serif;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--leading:1.55;--touch:2.75rem;color:var(--color-text);background:var(--color-bg);font-family:var(--font-body);line-height:var(--leading);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-weight:400}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--color-bg);color:var(--color-text);margin:0}h1,h2,h3,h4,.app-header__name,.card__title{font-family:var(--font-heading);letter-spacing:.01em;color:var(--color-primary);font-weight:600;line-height:1.25}a{color:var(--color-primary)}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.app-shell{background:radial-gradient(1200px 400px at 10% -10%, color-mix(in srgb, var(--color-accent) 35%, transparent), transparent 60%), radial-gradient(900px 320px at 100% 0%, color-mix(in srgb, var(--color-highlight) 55%, transparent), transparent 55%), var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.app-header{z-index:20;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);background:color-mix(in srgb, var(--color-primary) 96%, black);color:var(--color-on-primary);border-bottom:1px solid color-mix(in srgb, var(--color-primary) 75%, black);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.app-header__brand{flex-direction:column;gap:.1rem;min-width:0;display:flex}.app-header__name{font-size:var(--text-lg);color:var(--color-highlight);letter-spacing:.02em;font-weight:650}.app-header__tagline{font-family:var(--font-body);font-size:var(--text-xs);opacity:.92;color:var(--color-accent);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-header__actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.app-nav{z-index:15;gap:var(--space-1);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:var(--space-2) var(--space-4);background:color-mix(in srgb, var(--color-accent) 82%, white);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-soft);display:flex;position:sticky;top:3.4rem;overflow-x:auto}.app-nav a{border-radius:var(--radius-pill);white-space:nowrap;min-height:2.25rem;font-weight:550;font-size:var(--text-sm);color:var(--color-primary);align-items:center;padding:.4rem .85rem;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.app-nav a:hover{background:color-mix(in srgb, white 55%, var(--color-accent))}.app-nav a.active{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 1px 2px #20405e2e}.app-nav a:focus-visible{outline-offset:1px}.app-main{width:100%;max-width:920px;padding:var(--space-5) var(--space-4) var(--space-10);flex:1;margin:0 auto}.card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-accent) 65%, white);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5)}.card+.card{margin-top:0}.card--accent{border-color:var(--color-accent);background:linear-gradient(165deg, color-mix(in srgb, var(--color-highlight) 58%, white) 0%, var(--color-surface) 42%)}.card--flush{padding:0;overflow:hidden}.card h1,.card h2,.card h3{margin:0 0 var(--space-2)}.card h1{font-size:var(--text-xl)}.card h2{font-size:1.35rem}.card h3{font-size:1.1rem}.card p.lead{margin:0 0 var(--space-5);color:var(--color-text-muted);font-size:1.02rem}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.mt{margin-top:var(--space-5)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:.55rem 1.05rem;font-weight:550;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s,box-shadow .15s;display:inline-flex}.btn:disabled{cursor:not-allowed;opacity:.55}.btn--primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 1px 2px #20405e29}.btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 88%, black)}.btn--secondary{background:color-mix(in srgb, var(--color-accent) 40%, white);border-color:var(--color-accent);color:var(--color-primary)}.btn--secondary:hover:not(:disabled){background:var(--color-accent)}.btn--ghost{border-color:color-mix(in srgb, var(--color-highlight) 50%, transparent);color:var(--color-highlight);background:0 0}.btn--ghost:hover:not(:disabled){background:#ffffff1f}.btn--block{width:100%}.btn--sm{min-height:2.25rem;font-size:var(--text-sm);padding:.35rem .75rem}.locale-toggle{border:1px solid color-mix(in srgb, var(--color-highlight) 45%, transparent);border-radius:var(--radius-pill);background:#ffffff14;display:inline-flex;overflow:hidden}.locale-toggle button{color:var(--color-accent);cursor:pointer;min-height:2.1rem;font-size:var(--text-sm);background:0 0;border:0;padding:.35rem .75rem;font-weight:550}.locale-toggle button[aria-pressed=true]{background:var(--color-highlight);color:var(--color-primary);font-weight:650}.locale-toggle button:focus-visible{outline-offset:-2px}.note{font-size:var(--text-sm);color:var(--color-text-muted);background:color-mix(in srgb, var(--color-accent) 22%, white);border:1px dashed var(--color-accent);border-radius:var(--radius-sm);padding:.65rem .75rem}.note--error{background:color-mix(in srgb, var(--color-danger) 8%, white);border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-accent));color:var(--color-danger)}.note--ok{color:var(--color-ok);background:color-mix(in srgb, var(--color-badge-go) 70%, white);border-color:color-mix(in srgb, var(--color-ok) 25%, var(--color-accent))}.dl{grid-template-columns:minmax(6.5rem,8.5rem) 1fr;gap:.55rem .75rem;margin:0;display:grid}.dl dt{color:var(--color-text-muted);font-size:var(--text-sm)}.dl dd{word-break:break-word;margin:0;font-weight:560}.muted{color:var(--color-text-muted)}.field{flex-direction:column;gap:.35rem;margin:.35rem 0;display:flex}.field span{font-weight:550;font-size:var(--text-sm)}.check{gap:var(--space-2);margin:var(--space-2) 0;min-height:var(--touch);align-items:center;display:flex}input[type=url],input[type=text],select,textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);width:100%;padding:.65rem .8rem;transition:border-color .15s,box-shadow .15s}input[type=url]:focus-visible,input[type=text]:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 55%, transparent);outline:none}textarea{resize:vertical}.editor{min-height:18rem}.file-btn{cursor:pointer;margin:var(--space-2) 0;display:inline-block}.list{margin:var(--space-3) 0 0;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.list__item{justify-content:space-between;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-wrap:wrap;align-items:center;padding:.8rem .95rem;transition:border-color .15s,box-shadow .15s;display:flex}.list__item:hover{border-color:var(--color-accent);box-shadow:var(--shadow-soft)}.list__item--col{flex-direction:column;align-items:flex-start}.small{font-size:var(--text-sm)}.pre,.prewrap{white-space:pre-wrap;word-break:break-word}.pre{background:var(--color-bg);padding:var(--space-3);border-radius:var(--radius-sm);max-height:24rem;font-size:var(--text-sm);border:1px solid color-mix(in srgb, var(--color-border) 60%, white);overflow:auto}.badge{border-radius:var(--radius-pill);font-size:var(--text-xs);letter-spacing:.02em;background:var(--color-highlight);color:var(--color-primary);padding:.2rem .6rem;font-weight:650;display:inline-block}.badge--go{background:var(--color-badge-go)}.badge--stop{background:var(--color-badge-stop)}.signin{max-width:26rem;margin:0 auto}.signin__providers{gap:var(--space-3);flex-direction:column;display:flex}.signin__provider,.jobs-pipeline{gap:var(--space-2);flex-direction:column;display:flex}.job-card{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:inherit;grid-template-columns:1fr auto;align-items:start;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}a.job-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.job-card__title{font-family:var(--font-heading);margin:0 0 var(--space-1);color:var(--color-primary);font-size:1.05rem;font-weight:650}.job-card__meta{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.advice-panel{gap:var(--space-3);flex-direction:column;display:flex}.advice-panel__verdict{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.advice-panel__rationale{padding:var(--space-4);border-radius:var(--radius);background:color-mix(in srgb, var(--color-highlight) 40%, white);border:1px solid color-mix(in srgb, var(--color-highlight) 70%, var(--color-accent));margin:0;line-height:1.6}.advice-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.chat-panel{flex-direction:column;min-height:min(70vh,36rem);display:flex}.chat{gap:var(--space-3);flex-direction:column;flex:1;min-height:0;display:flex}.chat__log{gap:var(--space-3);max-height:min(55vh,28rem);padding:var(--space-3);border-radius:var(--radius);background:color-mix(in srgb, var(--color-bg) 80%, var(--color-accent));border:1px solid color-mix(in srgb, var(--color-border) 70%, white);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat__msg{max-width:min(85%,34rem);box-shadow:var(--shadow-soft);border-radius:14px;padding:.7rem .9rem}.chat__msg p{white-space:pre-wrap;margin:.25rem 0 0;line-height:1.5}.chat__msg--user{background:var(--color-accent);color:var(--color-primary);border-bottom-right-radius:4px;align-self:flex-end}.chat__msg--coach{background:var(--color-highlight);color:var(--color-primary);border-bottom-left-radius:4px;align-self:flex-start}.chat__role{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;opacity:.72;font-weight:700}.chat__composer{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-soft);align-items:flex-end;display:flex}.chat__composer textarea{box-shadow:none;resize:none;border:0;min-height:2.75rem;padding:.55rem .4rem}.chat__composer textarea:focus-visible{box-shadow:none;outline:none}.chat__composer:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 55%, transparent)}.chat__composer .btn{flex-shrink:0}.chat__empty{text-align:center;padding:var(--space-6) var(--space-4);margin:auto}.chat__thinking{font-size:var(--text-sm);color:var(--color-text-muted);padding:0 var(--space-2);align-self:flex-start}@media (width<=720px){.app-header{padding:var(--space-3) var(--space-4)}.app-header__tagline{max-width:11rem}.app-nav{padding-left:var(--space-3);padding-right:var(--space-3);top:3.15rem}.app-main{padding:var(--space-4) var(--space-3) var(--space-8)}.card{padding:var(--space-4)}.job-card{grid-template-columns:1fr}.dl{grid-template-columns:1fr;gap:.15rem 0}.dl dt{margin-top:var(--space-2)}}@media (width<=600px){.chat__composer{flex-direction:column;align-items:stretch}.chat__msg{max-width:100%}.advice-actions .btn,.row .btn{flex:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}a.job-card:hover{transform:none}}
