@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0ee55_hj9qcer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0.qu-9752pffj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0mao5jbfbduzp.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0uzt.a6d44yda.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0mvwgmnhv29no.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.09zddjkbdep5a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--background:#f4f6f9;--surface:#fff;--surface-muted:#f8fafc;--border:#dde2e8;--text-primary:#161a22;--text-secondary:#4f5d75;--primary:#1e66f5;--primary-hover:#1651c2;--danger:#c23030;--success:#0d8f53}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100%}body{color:var(--text-primary);background:var(--background);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif}a{color:inherit;text-decoration:none}input{border:1px solid var(--border);width:100%;color:var(--text-primary);background:#fff;border-radius:6px;padding:10px 12px;font-size:14px}input:focus{border-color:var(--primary);outline:2px solid #c9d9ff}label{color:var(--text-secondary);gap:6px;font-size:13px;font-weight:500;display:grid}button{cursor:pointer;border:0;border-radius:6px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1}.primary-button{background:var(--primary);color:#fff}.primary-button:hover:enabled{background:var(--primary-hover)}.secondary-button{color:var(--text-primary);background:#edf1f7}.secondary-button:hover:enabled{background:#dfe6ef}.secondary-button.as-link{align-items:center;display:inline-flex}.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:not-allowed}.auth-page,.center-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:14px;width:min(460px,100%);padding:24px;display:grid}.auth-panel h1{font-size:22px}.auth-panel p{color:var(--text-secondary);font-size:14px}.dev-login-form{border-top:1px solid var(--border);gap:10px;margin-top:10px;padding-top:14px;display:grid}.dev-login-form h2{color:var(--text-primary);font-size:15px}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{background:var(--surface);border-right:1px solid var(--border);grid-template-rows:auto auto 1fr auto;gap:14px;padding:20px 14px;display:grid}.sidebar-brand h1{font-size:18px}.sidebar-brand p{color:var(--text-secondary);margin-top:5px;font-size:12px}.sidebar-user{border:1px solid var(--border);border-radius:8px;gap:6px;padding:10px;display:grid}.sidebar-user p{word-break:break-all;font-size:12px}.sidebar-user span{width:fit-content;color:var(--text-secondary);background:#edf1f7;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600}.sidebar-nav{align-content:start;gap:8px;display:grid}.sidebar-link{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.sidebar-link:hover{border-color:#c2cbda}.sidebar-link strong{font-size:13px;display:block}.sidebar-link span{color:var(--text-secondary);margin-top:3px;font-size:12px}.sidebar-link em{color:var(--danger);font-size:11px;font-style:normal}.sidebar-link.active{background:#edf3ff;border-color:#9fbcff}.sidebar-link.disabled{opacity:.75}.sidebar-footer{padding-top:4px}.sidebar-footer .secondary-button{width:100%}.app-content{align-content:start;gap:14px;padding:24px 20px 34px;display:grid}.dashboard-header,.page-header{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.dashboard-header h1,.page-header h1{font-size:22px}.dashboard-header p,.page-header p{color:var(--text-secondary);margin-top:6px;font-size:13px}.env-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.env-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:6px;padding:14px;display:grid}.env-card:hover{border-color:#c2cbda}.env-card h2{font-size:16px}.env-card p{color:var(--text-secondary);font-size:13px}.env-card span{color:var(--primary);margin-top:6px;font-size:13px;font-weight:600}.env-card.disabled{opacity:.7}.env-card.disabled span{color:var(--danger)}.section-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;gap:12px;padding:16px;display:grid}.section-panel h2{font-size:16px}.section-title-with-action{justify-content:space-between;align-items:center;gap:10px;display:flex}.version-form{gap:10px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.table-wrapper{border:1px solid var(--border);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px;font-size:13px}th{color:var(--text-secondary);background:var(--surface-muted)}tbody tr:hover{background:#fafcff}.path-cell{text-overflow:ellipsis;max-width:400px;overflow:hidden}.empty-row{text-align:center;color:var(--text-secondary)}.error-text{color:var(--danger);font-size:13px}.success-text{color:var(--success);font-size:13px}.help-text{color:var(--text-secondary);word-break:break-all;font-size:12px}.danger-button{color:#9d1f1f;background:#fce8e8}.danger-button:hover:enabled{background:#f8dada}.compact{padding:7px 10px;font-size:12px}.row-action-form{gap:6px;margin-bottom:8px;display:grid}.row-buttons{gap:6px;display:flex}.table-input{min-width:190px;padding:7px 8px;font-size:12px}.read-only{color:#4f5d75;background:#f3f6fb}.table-controls{grid-template-columns:minmax(220px,1fr) 150px 120px;gap:8px;display:grid}.table-search{min-width:0}.table-select{border:1px solid var(--border);background:#fff;border-radius:6px;padding:8px 10px;font-size:13px}.payload-preview{border:1px solid var(--border);background:#f8fafc;border-radius:8px;margin-top:10px;padding:10px;font-size:12px;overflow-x:auto}.deploy-detail{gap:8px;display:grid}.deploy-detail h3{font-size:14px}.deploy-detail p{color:var(--text-secondary);font-size:12px}@media (max-width:720px){.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--border)}.form-grid{grid-template-columns:1fr}.dashboard-header,.page-header{flex-direction:column;align-items:flex-start}}
