:root{--bg: #eef3f0;--surface: #ffffff;--surface-strong: #f8faf8;--border: #d7dfd9;--text: #0d1f1a;--muted: #65736d;--primary: #087f5b;--primary-dark: #056347;--accent: #dba73a;--ok: #1a7f37;--bad: #c5333d;--warn: #9a6700;--info: #0969da;--shadow: 0 22px 60px rgba(13, 31, 26, .12)}*{box-sizing:border-box}body{margin:0;min-width:320px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--primary)}button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:17rem minmax(0,1fr);min-height:100vh}.sidebar{background:#10231d;color:#f4fbf7;padding:1.25rem}.brand-row{align-items:center;display:flex;gap:.75rem;margin-bottom:2rem}.brand-row span{color:#9fb7ae;display:block;font-size:.82rem;margin-top:.15rem}.brand-mark{background:#fff;border-radius:8px;height:4.75rem;object-fit:contain;padding:.2rem;width:4.75rem}.sidebar nav{display:grid;gap:.35rem}.sidebar button{background:transparent;border:1px solid transparent;border-radius:8px;color:#dbe8e2;cursor:pointer;padding:.75rem .85rem;text-align:left}.sidebar button.active,.sidebar button:hover{background:#ffffff17;border-color:#ffffff1f;color:#fff}.workspace{padding:2rem}.topbar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:0 auto 1.25rem;max-width:74rem}.topbar h1{font-size:2rem;letter-spacing:0;line-height:1.1;margin:.15rem 0 0}.eyebrow{color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.08em;margin:0;text-transform:uppercase}.panel,.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);margin:0 auto 1rem;max-width:74rem;padding:1.5rem}.panel h2,.card h2{font-size:1.1rem;margin:0 0 .5rem}.center{text-align:center;margin-top:4rem}.muted{color:var(--muted);font-size:.92rem}.error{color:var(--bad);font-weight:650;margin:0 auto 1rem;max-width:74rem}.success{color:var(--ok);font-weight:650}.warn{color:var(--warn)}.settings-warning{background:#fff7e6;border-left:4px solid #b7791f;color:#714b12;font-weight:650;line-height:1.5;margin:1rem 0 0;padding:.85rem 1rem}.config-storage{line-height:1.5;margin:1rem 0 0}.config-storage code{overflow-wrap:anywhere}.settings-signin{margin-top:1rem}.field{display:block;margin:.85rem 0}.field>span{color:var(--muted);display:block;font-size:.84rem;font-weight:650;margin-bottom:.3rem}.field select,.field input{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--text);min-height:2.75rem;padding:.65rem .75rem;width:100%}.field input[type=search]{margin-bottom:.5rem}.btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;display:inline-flex;justify-content:center;min-height:2.6rem;padding:.6rem 1rem;text-decoration:none}.btn:hover{border-color:#aebbb3}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.login-panel{align-items:stretch;display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.4fr) minmax(16rem,.6fr);margin:0 auto;max-width:74rem}.login-copy,.signal-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:2rem}.login-logo{background:#fff;border-radius:8px;display:block;height:auto;margin-bottom:1rem;max-width:16rem;object-fit:contain;padding:.45rem;width:100%}.login-copy h1{font-size:clamp(2rem,5vw,4.2rem);letter-spacing:0;line-height:1;margin:.5rem 0 1rem;max-width:10ch}.login-copy p:not(.eyebrow){color:var(--muted);font-size:1.05rem;max-width:42rem}.login-actions,.top-actions,.actions{display:flex;flex-wrap:wrap;gap:.65rem}.signal-panel{align-content:center;background:#10231d;color:#fff;display:grid;gap:.75rem}.signal-panel div{border-bottom:1px solid rgba(255,255,255,.15);padding:.85rem 0}.signal-panel span{color:#9fb7ae;display:block;font-size:.8rem}.signal-panel strong{display:block;font-size:1.2rem;margin-top:.15rem}.dropzone{background:var(--surface-strong);border:2px dashed #b6c4bc;border-radius:8px;cursor:pointer;margin-top:1rem;padding:2rem;text-align:center;transition:border-color .15s,background .15s}.dropzone.dragging{background:#e4f4ed;border-color:var(--primary)}.dropzone.disabled{cursor:not-allowed;opacity:.55}.summary{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.pill{background:#edf1ef;border-radius:999px;font-size:.85rem;padding:.18rem .6rem}.pill-ok{background:#dff6e8;color:var(--ok)}.pill-bad{background:#fde8ea;color:var(--bad)}.pill-info{background:#e4f1ff;color:var(--info)}.grid-scroll{border:1px solid var(--border);border-radius:8px;max-height:24rem;overflow:auto}.grid{border-collapse:collapse;font-size:.88rem;width:100%}.grid th,.grid td{border-bottom:1px solid var(--border);padding:.55rem .65rem;text-align:left;white-space:nowrap}.grid thead th{background:#edf2ef;position:sticky;top:0}.grid tr.invalid{background:#fff5f5}.console{background:#0d1117;border-radius:8px;color:#d1d5da;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;max-height:24rem;overflow:auto;padding:.85rem}.log{padding:.1rem 0;white-space:pre-wrap}.log.added{color:#56d364}.log.updated{color:#6cb6ff}.log.failed,.log.fail{color:#ff7b72}.log.skipped{color:#d29922}.log.warn{color:#e3b341}.log.removed{color:#d1d5da}.summary-card{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.summary-card h3{margin:0 0 .5rem}.section-title{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.settings-panel form{max-width:48rem}.license-screen{align-items:center;background:#eef3f0;display:grid;min-height:100vh;padding:2rem}.license-card{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);margin:0 auto;max-width:38rem;padding:2rem;width:100%}.license-brand{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.25rem}.license-brand img{background:#fff;border-radius:8px;height:5.5rem;object-fit:contain;width:5.5rem}.license-brand h1{font-size:1.45rem;margin:.2rem 0 0}.license-copy h2{font-size:1.25rem;margin:0 0 .45rem}.license-copy p{color:var(--muted);margin:0 0 1rem}.license-error{margin-top:1rem}.machine-id{border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;margin-top:1.5rem;padding-top:1rem}.machine-id span,.license-details dt{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.license-badge{background:#dff6e8;border-radius:999px;color:var(--ok);font-size:.84rem;font-weight:750;padding:.4rem .7rem}.license-details{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.25rem 0 0}.license-details div{min-width:0}.license-details dd{margin:.25rem 0 0;overflow-wrap:anywhere}.help-panel h3{font-size:.98rem;margin:0 0 .45rem}.help-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr))}.help-grid p{color:var(--muted);margin:0 0 .45rem}.examples{display:grid;gap:.45rem;margin:1rem 0}.examples code,.log-path code{background:#edf2ef;border:1px solid var(--border);border-radius:6px;color:var(--text);display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:.35rem .45rem}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}.sidebar{padding:1rem}.sidebar nav{display:flex;flex-wrap:wrap}.workspace{padding:1rem}.topbar,.section-title,.login-panel{align-items:flex-start;grid-template-columns:1fr}.topbar,.section-title{flex-direction:column}.help-grid,.license-details{grid-template-columns:1fr}}
