:root{color-scheme:dark;--bg:#0a120d;--surface:#101b14;--surface-raised:#16231a;--surface-hover:#1b2b20;--line:#263a2d;--line-bright:#34503c;--text:#f1f6f1;--muted:#9bae9e;--faint:#687c6c;--mint:#a3e8ab;--mint-ink:#0b2211;--amber:#f2ca7e;--danger:#f59a98;--shadow:0 24px 70px rgba(0,0,0,.3);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans Thai",sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(900px 700px at 100% -20%,#1e422a 0%,transparent 65%),var(--bg);color:var(--text);line-height:1.45}button,input,select,textarea{font:inherit}button{border:0;border-radius:9px;padding:.7rem 1rem;background:var(--mint);color:var(--mint-ink);font-weight:780;cursor:pointer;transition:transform .15s,filter .15s}button:hover{filter:brightness(1.04);transform:translateY(-1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.5;transform:none}input,select,textarea{width:100%;border:1px solid var(--line-bright);border-radius:8px;background:#0b140e;color:var(--text);padding:.72rem .8rem}textarea{resize:vertical}.app-shell{min-height:100vh}.login-screen{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(440px,100%);padding:2.4rem;border:1px solid var(--line-bright);border-radius:22px;background:rgba(16,27,20,.94);box-shadow:var(--shadow)}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid #72bf80;border-radius:9px;background:linear-gradient(145deg,#c4f0b8,#70cd89);color:#0b2512;font-size:.78rem;font-weight:900;letter-spacing:-.08em}.login-card .brand-mark{margin-bottom:2.4rem;width:2.9rem;height:2.9rem}.eyebrow{margin:0;color:var(--mint);font-size:.69rem;font-weight:850;letter-spacing:.13em}.login-card h1,.page-header h1,h2,h3{letter-spacing:-.035em}.login-card h1{margin:.35rem 0 .8rem;font-size:clamp(2.25rem,7vw,3.1rem);line-height:1.1}.lede,.subtitle,.card-head p,.setting-row p{color:var(--muted)}.login-card form{display:grid;gap:.65rem;margin-top:2.1rem}.login-card button{margin-top:.3rem}.form-error{min-height:1.3rem;margin:.75rem 0 0;color:var(--danger);font-size:.9rem}#dashboard-view{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:3;width:242px;display:flex;flex-direction:column;padding:1.5rem 1rem;border-right:1px solid var(--line);background:rgba(10,18,13,.94);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:.7rem;color:var(--text);font-size:.82rem;line-height:1.04;text-decoration:none}.brand b{color:var(--mint);font-weight:800}.primary-nav{display:grid;gap:.3rem;margin-top:3.2rem}.nav-link{display:flex;align-items:center;gap:.82rem;width:100%;padding:.75rem .8rem;border-radius:8px;background:transparent;color:var(--muted);text-align:left;font-weight:650}.nav-link span{width:1rem;text-align:center;color:var(--faint);font-size:1.1rem}.nav-link:hover{background:var(--surface-hover);color:var(--text)}.nav-link.active{background:#1c3122;color:var(--mint)}.nav-link.active span{color:var(--mint)}.sidebar-bottom{display:grid;gap:.8rem;margin-top:auto;padding:.8rem}.mode-badge,.count-pill,.status-chip{display:inline-flex;align-items:center;width:max-content;border:1px solid #725d2c;border-radius:100px;padding:.24rem .55rem;color:var(--amber);font-size:.7rem;font-weight:800;letter-spacing:.07em}.signout,.secondary{border:1px solid var(--line-bright);background:transparent;color:var(--text)}.signout{width:100%;font-size:.82rem}.workspace{width:min(1260px,calc(100% - 242px));margin-left:242px;padding:3rem clamp(1.5rem,4vw,4rem) 4rem}.mobile-bar{display:none}.page{animation:appear .18s ease-out}@keyframes appear{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2.2rem}.page-header h1{margin:.25rem 0 .35rem;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.subtitle{margin:0}.notice{display:flex;gap:.8rem;align-items:flex-start;margin-bottom:1.5rem;padding:1rem 1.1rem;border:1px solid #735e32;border-radius:11px;background:#271f12;color:#f3d795}.notice>span{font-size:1.25rem}.notice p{margin:.2rem 0 0;color:#dbc99e;font-size:.88rem}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.metric-card,.section-card,.next-action,.setting-row{border:1px solid var(--line);border-radius:14px;background:rgba(16,27,20,.84);box-shadow:0 12px 30px rgba(0,0,0,.08)}.metric-card{display:grid;gap:.42rem;padding:1.2rem}.metric-label{color:var(--faint);font-size:.67rem;font-weight:850;letter-spacing:.12em}.metric-card strong{font-size:1.1rem;overflow-wrap:anywhere}.metric-card small{color:var(--muted)}.split-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:3rem 0 1rem}.split-heading h2,.card-head h2{margin:.18rem 0 0;font-size:1.35rem}.count-pill{border-color:var(--line-bright);color:var(--muted);letter-spacing:0}.readiness-list{display:grid;gap:.65rem}.readiness-item{display:flex;align-items:center;gap:.9rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:10px;background:rgba(16,27,20,.55)}.readiness-icon{display:grid;place-items:center;flex:none;width:1.7rem;height:1.7rem;border-radius:50%;background:#233f2a;color:var(--mint);font-size:.83rem;font-weight:900}.readiness-icon.pending{background:#443a21;color:var(--amber)}.readiness-item strong{display:block;font-size:.94rem}.readiness-item small{color:var(--muted)}.readiness-item .status-chip{margin-left:auto}.status-chip.ready{border-color:#397344;color:var(--mint)}.status-chip.muted{border-color:var(--line-bright);color:var(--muted)}.next-action{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding:1.2rem 1.3rem;background:linear-gradient(100deg,#17301d,#132319)}.next-icon{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:9px;background:var(--mint);color:var(--mint-ink);font-weight:900}.next-action h2{margin:.15rem 0;font-size:1.15rem}.next-action p:not(.eyebrow){margin:0;color:var(--muted);font-size:.9rem}.next-action button{margin-left:auto}.section-card{padding:1.35rem;margin-bottom:1rem}.narrow{max-width:760px}.card-head{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.card-head h2{font-size:1.2rem}.card-head p{margin:.3rem 0 0;font-size:.9rem}.tool-grid{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.tool-card{padding:1rem;border:1px solid var(--line);border-radius:10px;background:#0d1810}.tool-card header,.tool-card footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.tool-card h3,.tool-card p{margin:0}.tool-card p{min-height:2.6em;margin:.55rem 0;color:var(--muted);font-size:.86rem}.tool-card footer small{color:var(--faint)}.status-chip{font-size:.68rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label,.environment-grid label,.wizard-panel>label{display:grid;gap:.45rem;color:var(--muted);font-size:.85rem}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:.2rem}.project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:-.65rem 0 1.35rem}.search-field{display:flex;align-items:center;gap:.4rem;width:min(380px,100%);border:1px solid var(--line-bright);border-radius:9px;background:#0b140e;padding:0 .7rem;color:var(--faint)}.search-field input{border:0;background:transparent}.project-groups{display:grid;gap:1.4rem}.organization{margin:0 0 .55rem;color:var(--faint);font-size:.7rem;font-weight:850;letter-spacing:.12em}.project-list{display:grid;gap:.55rem}.project-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:11px;background:rgba(16,27,20,.72)}.project-row h3{margin:0;font-size:1rem}.project-meta{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin:.25rem 0 0;color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.project-meta b{color:#c9d5ca;font-weight:650}.project-badges{display:flex;align-items:center;gap:.45rem}.sync-status{border-color:#397344;color:var(--mint)}.sync-status.failed,.sync-status.needs{border-color:#725d2c;color:var(--amber)}.empty-state{padding:2rem;border:1px dashed var(--line-bright);border-radius:11px;color:var(--muted);text-align:center}.environment-card{margin-top:2rem}.environment-grid{display:grid;grid-template-columns:240px 1fr;gap:1rem}.environment-grid .form-actions{grid-column:2}.credential-list{display:grid;gap:.6rem}.credential-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:11px;background:rgba(16,27,20,.72)}.credential-row h3,.credential-row p{margin:0}.credential-row p{margin-top:.2rem;color:var(--muted);font-size:.85rem}.table-card{overflow:auto;padding:0}table{width:100%;min-width:650px;border-collapse:collapse}th,td{padding:1rem 1.2rem;border-bottom:1px solid var(--line);text-align:left;font-size:.88rem}th{color:var(--faint);font-size:.67rem;letter-spacing:.1em}tbody tr:last-child td{border-bottom:0}.outcome-success{color:var(--mint)}.outcome-denied{color:var(--danger)}.settings-stack{display:grid;gap:.75rem;max-width:850px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem}.setting-row h2{margin:0;font-size:1rem}.setting-row p{max-width:570px;margin:.28rem 0 0;font-size:.88rem}.modal{width:min(650px,calc(100% - 2rem));max-height:calc(100vh - 2rem);margin:auto;padding:0;border:1px solid var(--line-bright);border-radius:17px;background:var(--surface);color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.65)}.modal::backdrop{background:rgba(3,9,5,.74);backdrop-filter:blur(4px)}.wizard-form,.confirm-form{margin:0}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.4rem 1.5rem 1rem}.modal-header h2{margin:.2rem 0 0}.modal-close,.icon-button{padding:.1rem .45rem;background:transparent;color:var(--muted);font-size:1.7rem;line-height:1}.wizard-steps{display:flex;gap:.5rem;margin:0;padding:.1rem 1.5rem 1.2rem;list-style:none;border-bottom:1px solid var(--line)}.wizard-steps li{display:flex;align-items:center;gap:.3rem;color:var(--faint);font-size:.78rem;font-weight:750}.wizard-steps li::after{content:"";width:2rem;height:1px;margin-left:.25rem;background:var(--line-bright)}.wizard-steps li:last-child::after{display:none}.wizard-steps li.active{color:var(--mint)}.wizard-panel{display:grid;gap:.85rem;padding:1.45rem 1.5rem}.wizard-panel h3{margin:0;font-size:1.13rem}.wizard-panel>p{margin:-.35rem 0 .35rem;color:var(--muted);font-size:.88rem}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.two-fields label{display:grid;gap:.45rem;color:var(--muted);font-size:.85rem}fieldset{display:grid;gap:.5rem;margin:0;padding:0;border:0}legend{margin-bottom:.25rem;color:var(--muted);font-size:.85rem}.radio-card{display:flex;align-items:flex-start;gap:.65rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:9px;color:var(--text);cursor:pointer}.radio-card:has(input:checked){border-color:#5ba86a;background:#16301d}.radio-card input{width:auto;margin-top:.2rem;accent-color:var(--mint)}.radio-card span{display:grid}.radio-card small{color:var(--muted)}.review-panel dl{display:grid;grid-template-columns:110px 1fr;gap:.6rem;margin:0}.review-panel dt{color:var(--faint);font-size:.82rem}.review-panel dd{margin:0;overflow-wrap:anywhere}.inline-notice{display:flex;gap:.6rem;margin-top:.5rem;padding:.8rem;border:1px solid #735e32;border-radius:9px;background:#2c2517;color:#ebd59e}.inline-notice p{margin:0;font-size:.83rem}.modal-footer{display:flex;align-items:center;gap:.6rem;padding:1rem 1.5rem;border-top:1px solid var(--line)}.modal-spacer{flex:1}.confirm-form{padding:1.6rem}.confirm-form h2{margin:.35rem 0}.confirm-form>p:not(.eyebrow){color:#d5dfd6}.warning-mark{display:grid;place-items:center;width:2.45rem;height:2.45rem;border-radius:50%;background:var(--amber);color:#332306;font-weight:900;font-size:1.2rem}.muted-copy{color:var(--muted)!important;font-size:.84rem}.toast{position:fixed;right:1rem;bottom:1rem;z-index:9;max-width:min(400px,calc(100% - 2rem));padding:.9rem 1rem;border-radius:9px;background:#def4e1;color:#123119;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(.5rem);transition:.2s}.toast.show{opacity:1;transform:translateY(0)}.toast.error-toast{background:#ffd8d5;color:#51120f}@media(max-width:760px){.sidebar{transform:translateX(-102%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:20px 0 50px rgba(0,0,0,.4)}.workspace{width:100%;margin:0;padding:0 1rem 2rem}.mobile-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 0 1.6rem}.mobile-bar .brand{font-size:.75rem}.icon-button{display:block}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:2rem}.metric-grid,.tool-grid,.form-grid,.environment-grid{grid-template-columns:1fr}.form-actions,.environment-grid .form-actions{grid-column:auto}.next-action{align-items:flex-start;flex-wrap:wrap}.next-action button{margin-left:3.4rem}.project-row{align-items:flex-start;grid-template-columns:1fr}.project-badges{justify-content:flex-start}.setting-row{align-items:flex-start;flex-direction:column;gap:.8rem}.wizard-steps li span{display:none}.wizard-steps li::after{width:1.3rem}.two-fields{grid-template-columns:1fr}.review-panel dl{grid-template-columns:1fr;gap:.2rem}.review-panel dd{margin-bottom:.5rem}}
