body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1a2233;background:#f5f7fa;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:left}.App-logo{pointer-events:none;height:40vmin}@media (prefers-reduced-motion:no-preference){.App-logo{animation:20s linear infinite App-logo-spin}}.App-header{color:#fff;background-color:#282c34;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-size:calc(10px + 2vmin);display:flex}.App-link{color:#61dafb}.loader{border:6px solid #ddd;border-top-color:#3498db;border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.messageContainer{background-color:#fff;border-radius:8px;width:350px;height:250px;padding:50px;box-shadow:0 0 8px #0000001a}.imgContainer{text-align:center;color:#f53e05;height:100px;position:relative}.textContainer{text-align:center;width:100%;height:150px;position:relative}.textContainer button{color:#fff;cursor:pointer;background-color:#001a94;border:none;padding:10px;font-weight:700}body{overflow:hidden}.login-page{background:#f8fafc;min-height:100vh;display:flex}.login-branding{background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 50%,#0f172a 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-bg-image{object-fit:cover;opacity:.15;width:100%;height:100%;position:absolute;top:0;left:0}.login-branding-overlay{background:linear-gradient(135deg,#0f172ae6 0%,#1e3a5fd9 100%);width:100%;height:100%;position:absolute;top:0;left:0}.login-branding-content{z-index:1;text-align:center;max-width:480px;padding:40px;position:relative}.login-branding-logo{filter:brightness(0)invert();width:180px;margin-bottom:32px}.login-branding-content h1{color:#fff;letter-spacing:-.5px;margin-bottom:16px;font-size:2.5rem;font-weight:700}.login-branding-content p{color:#ffffffbf;margin-bottom:48px;font-size:1.1rem;line-height:1.7}.login-features{flex-direction:column;gap:16px;display:flex}.login-feature{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:16px;padding:16px 24px;transition:all .3s;display:flex}.login-feature:hover{background:#ffffff1f;transform:translate(8px)}.login-feature-icon{font-size:1.5rem}.login-feature span{color:#fff;font-size:1rem;font-weight:500}.login-form-container{background:#fff;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-form-wrapper{width:100%;max-width:440px}.login-mobile-logo{width:140px;margin:0 auto 32px;display:none}.login-tabs{background:#f1f5f9;border-radius:12px;margin-bottom:32px;padding:4px;display:flex}.login-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s}.login-tab:hover{color:#334155}.login-tab.active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0000001a}.login-form-content{animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:32px}.login-header h2{color:#0f172a;margin-bottom:8px;font-size:1.75rem;font-weight:700}.login-header p{color:#64748b;font-size:.95rem}.login-form{flex-direction:column;gap:20px;width:100%;display:flex}.input-group{flex-direction:column;gap:6px;display:flex}.input-group label{color:#374151;font-size:.875rem;font-weight:600}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#9ca3af;pointer-events:none;align-items:center;display:flex;position:absolute;left:14px}.input-wrapper input{color:#1f2937;background:#fff;border:2px solid #e5e7eb;border-radius:10px;width:100%;height:auto;padding:14px 14px 14px 46px;font-size:.95rem;transition:all .2s}.input-wrapper input::placeholder{color:#9ca3af}.input-wrapper input:hover{border-color:#d1d5db}.input-wrapper input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.password-toggle{color:#9ca3af;cursor:pointer;background:0 0;border:none;align-items:center;width:auto;height:auto;padding:4px;transition:color .2s;display:flex;position:absolute;right:14px}.password-toggle:hover{color:#6b7280}.input-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.login-options{justify-content:space-between;align-items:center;display:flex}.remember-me,.terms-checkbox{color:#4b5563;cursor:pointer;align-items:center;gap:10px;font-size:.875rem;display:flex}.remember-me input,.terms-checkbox input{accent-color:#3b82f6;cursor:pointer;width:18px;height:18px}.terms-checkbox a{color:#3b82f6;font-weight:500;text-decoration:none}.terms-checkbox a:hover{text-decoration:underline}.forgot-link{color:#3b82f6;cursor:pointer;background:0 0;border:none;width:auto;height:auto;padding:0;font-size:.875rem;font-weight:500}.forgot-link:hover{text-decoration:underline}.submit-btn{color:#fff;cursor:pointer;text-transform:none;background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;height:auto;margin-top:8px;padding:16px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f659}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.login-switch-text{text-align:center;color:#64748b;margin-top:24px;font-size:.95rem}.login-switch-text button{color:#3b82f6;cursor:pointer;text-transform:none;background:0 0;border:none;width:auto;height:auto;padding:0;font-weight:600}.login-switch-text button:hover{text-decoration:underline}.messageContainer{z-index:100;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.fileTransferContainer h2{text-align:left}.forgotPasswordContainer{text-align:left;padding:20px}.backBtnLogin{cursor:pointer;color:#374151;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:20px;padding:0;font-size:18px;display:flex}.backBtnLogin:hover{color:#1f2937}.backBtnLogin svg{position:relative;top:1px}.serviceOptions{flex-wrap:wrap;gap:20px;display:flex}.serviceOptions button{cursor:pointer;background:0 0;border:none}.optionIcon{background-color:#f1f5f9;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:20px;transition:all .2s;display:flex}.optionIcon:hover{background-color:#e2e8f0;transform:scale(1.05)}.optionIcon svg{fill:#334155;width:60px;height:60px}@media screen and (width<=1024px){.login-branding{display:none}.login-form-container{flex:1}.login-mobile-logo{display:block}}@media screen and (width<=600px){.login-form-container{padding:24px}.login-form-wrapper{max-width:100%}.input-row{grid-template-columns:1fr}.login-header h2{font-size:1.5rem}.login-tabs{margin-bottom:24px}.login-tab{padding:10px 16px;font-size:.875rem}}.password-requirements{margin:-4px 0 4px;padding-left:18px;list-style:outside}.password-requirements li{color:#6b7280;font-size:12px;line-height:1.5}.dashboard-shell{--topbar-height:56px;background-color:#f5f7fa;flex-direction:column;width:100dvw;height:100dvh;display:flex;overflow:hidden}.dashboard{width:100%;height:calc(100dvh - var(--topbar-height));grid-template-columns:240px 1fr;display:grid;overflow:hidden}.dashboard.project-context{grid-template-columns:72px 220px 1fr}.parent{flex-direction:column;height:100%;display:flex;overflow:hidden}.dashboard.project-context .parent{grid-column:3/4}.tabs{-webkit-overflow-scrolling:touch;flex:1;padding:32px 48px;overflow-y:auto}.sideNav{left:0;top:var(--topbar-height);height:calc(100dvh - var(--topbar-height));z-index:100;background:#fff;border-right:1px solid #e8ecf1;flex-direction:column;width:240px;transition:transform .3s ease-in-out;display:flex;position:fixed}.sideNav.compact{width:72px}.logo-image{width:130px;padding:24px 24px 20px;display:block}.logo-image.compact{width:42px;padding:20px 15px 14px}.sideBtns{flex-direction:column;flex:1;gap:14px;padding:8px 12px;display:flex;overflow-y:auto}.nav-group{flex-direction:column;gap:4px;display:flex}.nav-heading{text-transform:uppercase;letter-spacing:.08em;color:#95a1b2;padding:8px 12px 6px;font-size:11px;font-weight:600}.sideBtns button{color:#5a6578;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 14px;font-size:14px;font-weight:450;line-height:1;transition:all .15s;display:flex}.nav-label{white-space:nowrap}.sideNav.compact .nav-heading,.sideNav.compact .nav-label{display:none}.sideNav.compact .sideBtns{gap:6px;padding:8px}.sideNav.compact .sideBtns button{justify-content:center;padding:10px 0}.sideNav.compact .sideNavBottom{gap:6px;padding:12px 8px}.sideNav.compact .sideNavBottom button{justify-content:center;padding:10px 0}.sideBtns button:hover{color:#1e293b;background:#f5f7fa}.sideBtns button.active{color:#001a94;background:#eef1ff;font-weight:400}.sideBtns button svg{opacity:.7;flex-shrink:0;width:18px;height:18px}.sideBtns button.active svg{opacity:1}.sideNavBottom{border-top:1px solid #e8ecf1;flex-direction:column;gap:4px;padding:14px 12px 16px;display:flex}.sideNavBottom button{color:#5a6578;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 14px;font-size:14px;font-weight:450;transition:all .15s;display:flex}.sideNavBottom button:hover{color:#1e293b;background:#f5f7fa}.sideNavBottom button.active{color:#001a94;background:#eef1ff;font-weight:400}.projectSideNav{top:var(--topbar-height);width:220px;height:calc(100dvh - var(--topbar-height));z-index:96;background:#fbfcfe;border-right:1px solid #e8ecf1;flex-direction:column;display:flex;position:fixed;left:72px}.projectSideHeader{border-bottom:1px solid #eef2f7;padding:20px 16px 10px}.projectBackLink{color:#6d7a8f;font-size:12px;text-decoration:none}.projectSideTitle{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;margin-top:8px;font-size:13px;font-weight:600;overflow:hidden}.projectSideBtns{flex-direction:column;gap:4px;padding:10px 12px;display:flex}.projectSideBtns button{color:#5a6578;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.projectSideBtns button:hover{color:#1e293b;background:#f1f4f9}.projectSideBtns button.active{color:#001a94;background:#eef1ff;font-weight:600}.projectSideBtns .disabled-nav-item{position:relative}.projectSideBtns .disabled-nav-item button.disabled{color:#9aa5b5;text-align:left;cursor:not-allowed;opacity:.9;background:#f4f6fb;border:1px dashed #d7deea;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.projectSideBtns .disabled-nav-item .disabled-nav-tooltip{visibility:hidden;opacity:0;color:#fff;white-space:nowrap;pointer-events:none;z-index:20;background:#1e293b;border-radius:8px;padding:6px 10px;font-size:11px;font-weight:500;transition:opacity .18s;position:absolute;top:calc(100% + 6px);left:10px}.projectSideBtns .disabled-nav-item:hover .disabled-nav-tooltip{visibility:visible;opacity:1}.header{display:none}.logout-inline{color:#000;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:500;display:inline-flex}.logout-inline:hover{color:#001a94}.hover-box{color:#5a6578;cursor:pointer;background:#fff;border:1px solid #e8ecf1;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:inline-flex;position:relative}.hover-box:hover{color:#1e293b;background:#f5f7fa;border-color:#d1d9e6}.hover-text{visibility:hidden;opacity:0;color:#fff;white-space:nowrap;pointer-events:none;z-index:10;background:#1e293b;border-radius:8px;padding:6px 12px;font-size:11px;font-weight:500;transition:opacity .2s;position:absolute;top:calc(100% + 6px);right:0}.hover-text:before{content:"";border:5px solid #0000;border-bottom-color:#1e293b;position:absolute;bottom:100%;right:12px}.hover-box:hover .hover-text{visibility:visible;opacity:1}.margin-del,.margin-log{cursor:pointer;margin:0;display:flex}.hamburger{z-index:10000;color:#1e293b;cursor:pointer;background:#fff;border:1px solid #e8ecf1;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:none;position:fixed;top:14px;right:16px}.storageDisplay{height:calc(100vh - 140px);overflow:auto}.apiIntro{width:auto;max-width:100%}.apiSubOptions{padding-left:30px}.api-segments{text-align:left}.horizontalDivider{border-bottom:1px solid #e8ecf1;width:100%;padding-block:20px}.lastDivider{border-bottom:1px solid #e8ecf1;width:100%;height:80px;padding-block:20px}.OTIDisplay{height:90%;margin-top:50px}.otiLogo{align-items:center;display:flex}.otiLogo svg{margin-right:2px}.wrapper-btn{display:flex}.wrapper-logout{margin-top:4px;margin-left:-20px}@media screen and (width<=1100px){.tabs{padding:24px 28px}.header{padding:12px 28px}}@media screen and (width<=800px){.dashboard-shell{--topbar-height:50px}.dashboard{flex-direction:column;display:flex}.dashboard.project-context{grid-template-columns:1fr}.tabs{padding:20px 16px}.header{padding:12px 16px}.sideNav{z-index:99999;background:#fff;width:100vw;height:100vh;position:fixed;transform:translate(-100%)}.sideNav.compact{width:100vw}.sideNav.compact .nav-heading,.sideNav.compact .nav-label{display:initial}.sideNav.compact .sideBtns,.sideNav.compact .sideNavBottom{padding:8px 12px}.sideNav.compact .sideBtns button,.sideNav.compact .sideNavBottom button{justify-content:flex-start;padding:10px 14px}.projectSideNav{z-index:99998;background:#fff;width:100vw;left:0;transform:translate(-100%)}.projectSideNav.show,.sideNav.show{transform:translate(0)}.hamburger{z-index:999999;display:flex;position:fixed}.storageDisplay{height:calc(100vh - 120px);padding-inline:8px}}.confluence-content{color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.6}.confluence-content h1,.confluence-content h2,.confluence-content h3,.confluence-content h4,.confluence-content h5,.confluence-content h6{margin-top:24px;margin-bottom:12px;font-weight:600}.confluence-content h1{font-size:28px}.confluence-content h2{font-size:24px}.confluence-content h3{font-size:20px}.confluence-content p{margin-bottom:12px}.confluence-content code{background-color:#f5f5f5;border-radius:3px;padding:2px 6px;font-family:Courier New,Courier,monospace}.confluence-content pre{background-color:#f5f5f5;border-radius:4px;margin-bottom:12px;padding:12px;overflow-x:auto}.confluence-content blockquote{color:#666;border-left:4px solid #ddd;margin-left:0;padding-left:12px}.confluence-content ul,.confluence-content ol{margin-bottom:12px;padding-left:24px}.confluence-content li{margin-bottom:6px}.confluence-content table{border-collapse:collapse;width:100%;margin-bottom:12px}.confluence-content th,.confluence-content td{text-align:left;border:1px solid #ddd;padding:8px}.confluence-content th{background-color:#f5f5f5;font-weight:600}.confluence-content a{color:#0052cc;text-decoration:none}.confluence-content a:hover{text-decoration:underline}.sideNav{background:var(--color-bg);border-right:1px solid var(--color-border)}.sideBtns{padding:var(--space-2) var(--space-3);gap:var(--space-5)}.nav-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav-item{display:block}.nav-heading{padding:var(--space-2) var(--space-3) var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.nav-link{align-items:center;gap:var(--space-3);min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--color-text-secondary);transition:background var(--transition-fast), color var(--transition-fast);text-decoration:none;display:flex;position:relative}.nav-link:hover{background:var(--color-surface);color:var(--color-text)}.nav-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.nav-link-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:var(--weight-semibold)}.nav-link-active:before{content:"";left:calc(var(--space-3) * -1 + 2px);background:var(--gradient-brand-v);border-radius:0 2px 2px 0;width:3px;height:18px;position:absolute;top:50%;transform:translateY(-50%)}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-icon svg{width:18px;height:18px;display:block}.nav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-link-disabled{color:var(--color-text-muted);cursor:not-allowed}.nav-link-disabled:hover{color:var(--color-text-muted);background:0 0}.nav-soon{font-size:var(--text-xs);font-weight:var(--weight-medium);background:var(--status-neutral-bg);color:var(--status-neutral-fg);border:1px solid var(--status-neutral-bd);border-radius:999px;margin-left:auto;padding:1px 6px}.sideNavBottom{padding:var(--space-3);border-top:1px solid var(--color-border-light)}.sideNav.compact .nav-label,.sideNav.compact .nav-heading,.sideNav.compact .nav-soon{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sideNav.compact .nav-link{justify-content:center;padding:0}.sideNav.compact .nav-link-active:before{left:0}.projectSideNav{background:var(--color-bg);border-right:1px solid var(--color-border)}.projectSideHeader{padding:var(--space-5) var(--space-4) var(--space-4);border-bottom:1px solid var(--color-border-light)}.projectBackLink{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);border-radius:var(--radius-sm);transition:color var(--transition-fast);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.projectBackLink:hover{color:var(--color-primary)}.projectBackLink:focus-visible{box-shadow:var(--focus-ring);outline:none}.projectSideTitle{margin-top:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.projectSideBtns{padding:var(--space-3)}.hamburger{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast);justify-content:center;align-items:center;display:none}.hamburger:hover{background:var(--color-surface)}.hamburger:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (width<=900px){.hamburger{display:inline-flex}}.topbar{z-index:1000;background:linear-gradient(135deg,#001a94 0%,#0052d4 50%,#4394e0 100%);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;height:56px;min-height:56px;padding:0 32px;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:12px;display:flex}.topbar-org-switcher{position:relative}.topbar-org-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;align-items:center;gap:8px;max-width:260px;padding:6px 12px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.topbar-org-btn:hover{background:#ffffff2e;border-color:#ffffff59}.topbar-org-icon{opacity:.85;align-items:center;display:flex}.topbar-org-name{text-overflow:ellipsis;max-width:180px;overflow:hidden}.topbar-chevron{opacity:.7;flex-shrink:0;transition:transform .2s}.topbar-chevron.open{transform:rotate(180deg)}.topbar-right{align-items:center;gap:4px;display:flex}.topbar-icon-btn{color:#fffc;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .15s,color .15s;display:flex}.topbar-icon-btn:hover{color:#fff;background:#ffffff1f}.topbar-user{margin-left:8px;position:relative}.topbar-user-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:8px;align-items:center;gap:8px;padding:4px 10px 4px 4px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.topbar-user-btn:hover{background:#ffffff1a;border-color:#ffffff59}.topbar-avatar{color:#fff;letter-spacing:.5px;background:#fff3;border:1.5px solid #ffffff80;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:600;display:flex}.topbar-username{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.topbar-dropdown{z-index:200;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:220px;padding:6px;animation:.15s topbar-fade-in;position:absolute;top:calc(100% + 6px);box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f}@keyframes topbar-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.topbar-org-dropdown{left:0}.topbar-user-dropdown{right:0}.topbar-dropdown-header{text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;padding:8px 12px 6px;font-size:11px;font-weight:600}.topbar-dropdown-empty{color:#9ca3af;text-align:center;padding:12px;font-size:13px}.topbar-dropdown-item{color:#374151;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;transition:background .1s;display:flex}.topbar-dropdown-item:hover{background:#f3f4f6}.topbar-dropdown-item.active{color:#001a94;background:#eef2ff;font-weight:500}.topbar-org-item-icon{color:#fff;background:linear-gradient(135deg,#001a94,#4394e0);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:600;display:flex}.topbar-check{color:var(--color-primary,#001a94);flex-shrink:0;margin-left:auto}.topbar-dropdown-divider{background:#e5e7eb;height:1px;margin:4px 8px}.topbar-logout{color:#dc2626}.topbar-logout:hover{background:#fef2f2}@media screen and (width<=1100px){.topbar{padding:0 20px}}@media screen and (width<=800px){.topbar{height:50px;min-height:50px;padding:0 16px}.topbar-username,.topbar-org-name{display:none}.topbar-org-btn,.topbar-user-btn{padding:6px 8px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-page{max-width:var(--page-max);padding:var(--space-8) var(--space-6) var(--space-12);margin:0 auto}.ui-page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-6);padding-bottom:var(--space-6);margin-bottom:var(--space-8);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.ui-page-header-text{min-width:0}.ui-page-title{font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--color-text);margin:0}.ui-page-description{margin:var(--space-2) 0 0;font-size:var(--text-md);line-height:var(--leading-normal);color:var(--color-text-secondary);max-width:68ch}.ui-page-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.ui-section+.ui-section{margin-top:var(--space-8)}.ui-section-header{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.ui-section-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text);letter-spacing:-.005em;margin:0}.ui-section-description{margin:var(--space-1) 0 0;font-size:var(--text-base);color:var(--color-text-secondary)}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:inherit;font-weight:var(--weight-medium);white-space:nowrap;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;text-decoration:none;display:inline-flex}.ui-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-btn:disabled,.ui-btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.ui-btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.ui-btn-md{height:38px;padding:0 var(--space-4);font-size:var(--text-base)}.ui-btn-lg{height:44px;padding:0 var(--space-5);font-size:var(--text-md)}.ui-btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ui-btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-btn-secondary{background:var(--control-bg);color:var(--color-text);border-color:var(--control-border);box-shadow:var(--shadow-xs)}.ui-btn-secondary:hover:not(:disabled){background:var(--color-surface);border-color:var(--control-border-hover)}.ui-btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.ui-btn-ghost:hover:not(:disabled){background:var(--color-surface);color:var(--color-text)}.ui-btn-danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.ui-btn-danger:hover:not(:disabled){background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.ui-btn-danger:focus-visible{box-shadow:var(--focus-ring-danger)}.ui-btn-icon-only{aspect-ratio:1;padding:0}.ui-btn-icon-only.ui-btn-sm{width:32px}.ui-btn-icon-only.ui-btn-md{width:38px}.ui-btn-icon-only.ui-btn-lg{width:44px}.ui-btn svg{flex-shrink:0;width:16px;height:16px;display:block}.ui-btn-sm svg{width:14px;height:14px}.ui-btn-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:14px;height:14px;animation:.6s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:border-color var(--transition), box-shadow var(--transition)}.ui-card-interactive{cursor:pointer}.ui-card-interactive:hover{border-color:var(--control-border-hover);box-shadow:var(--shadow-md)}.ui-card-interactive:focus-visible{box-shadow:var(--focus-ring);border-color:var(--color-primary);outline:none}.ui-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-5) 0;display:flex}.ui-card-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.ui-card-description{margin:var(--space-1) 0 0;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-secondary)}.ui-card-body{padding:var(--space-5)}.ui-card-header+.ui-card-body{padding-top:var(--space-4)}.ui-card-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border-light);background:var(--color-surface);border-radius:0 0 var(--radius-md) var(--radius-md);display:flex}.ui-badge{font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:2px 8px;line-height:18px;display:inline-flex}.ui-badge-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.ui-badge-success,.ui-badge-running{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-bd)}.ui-badge-pending,.ui-badge-provisioning{background:var(--status-pending-bg);color:var(--status-pending-fg);border-color:var(--status-pending-bd)}.ui-badge-warning{background:var(--status-warning-bg);color:var(--status-warning-fg);border-color:var(--status-warning-bd)}.ui-badge-error,.ui-badge-deleting{background:var(--status-error-bg);color:var(--status-error-fg);border-color:var(--status-error-bd)}.ui-badge-neutral,.ui-badge-stopped{background:var(--status-neutral-bg);color:var(--status-neutral-fg);border-color:var(--status-neutral-bd)}.ui-badge-info{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--status-info-bd)}.ui-badge-provisioning .ui-badge-dot,.ui-badge-deleting .ui-badge-dot{animation:ui-pulse 1.6s var(--ease) infinite}@keyframes ui-pulse{50%{opacity:.35}}.ui-field{gap:var(--space-2);flex-direction:column;display:flex}.ui-label{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text)}.ui-label-optional{margin-left:var(--space-1);font-weight:var(--weight-normal);color:var(--color-text-muted)}.ui-help{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.ui-error{font-size:var(--text-sm);color:var(--status-error-fg);align-items:center;gap:6px;display:flex}.ui-input,.ui-select,.ui-textarea{width:100%;font-family:inherit;font-size:var(--text-base);color:var(--color-text);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box}.ui-input,.ui-select{height:var(--control-height);padding:0 var(--space-3)}.ui-textarea{padding:var(--space-3);resize:vertical;min-height:96px;line-height:var(--leading-normal)}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--color-text-muted)}.ui-input:hover:not(:disabled),.ui-select:hover:not(:disabled),.ui-textarea:hover:not(:disabled){border-color:var(--control-border-hover)}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}.ui-input-invalid,.ui-textarea-invalid{border-color:var(--color-danger)}.ui-input-invalid:focus,.ui-textarea-invalid:focus{box-shadow:var(--focus-ring-danger);border-color:var(--color-danger)}.ui-select{appearance:none;padding-right:var(--space-8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235a6578' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;cursor:pointer}.ui-input-group{align-items:center;display:flex;position:relative}.ui-input-group svg{left:var(--space-3);width:16px;height:16px;color:var(--color-text-muted);pointer-events:none;position:absolute}.ui-input-group .ui-input{padding-left:var(--space-8)}.ui-switch{cursor:pointer;flex-shrink:0;align-items:center;width:40px;height:22px;display:inline-flex;position:relative}.ui-switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.ui-switch-track{background:var(--control-border);width:100%;height:100%;transition:background var(--transition);pointer-events:none;border-radius:999px}.ui-switch-thumb{width:16px;height:16px;box-shadow:var(--shadow-sm);transition:transform var(--transition);pointer-events:none;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.ui-switch input:checked~.ui-switch-track{background:var(--color-primary)}.ui-switch input:checked~.ui-switch-thumb{transform:translate(18px)}.ui-switch input:focus-visible~.ui-switch-track{box-shadow:var(--focus-ring)}.ui-switch input:disabled~.ui-switch-track{opacity:.5;cursor:not-allowed}.ui-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);overflow-x:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.ui-table thead th{text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-surface);border-bottom:1px solid var(--color-border);white-space:nowrap;position:sticky;top:0}.ui-table tbody td{padding:var(--space-4);border-bottom:1px solid var(--color-border-light);color:var(--color-text);vertical-align:middle}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr{transition:background var(--transition-fast)}.ui-table-hover tbody tr:hover{background:var(--color-surface)}.ui-table-row-clickable{cursor:pointer}.ui-table-row-clickable:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.ui-th-sort{font:inherit;color:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.ui-th-sort:hover{color:var(--color-text)}.ui-th-sort:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-th-sort svg{opacity:.4;width:14px;height:14px;transition:opacity var(--transition-fast)}.ui-th-sort[aria-sort=ascending] svg,.ui-th-sort[aria-sort=descending] svg{opacity:1;color:var(--color-primary)}.ui-td-numeric{text-align:right;font-variant-numeric:tabular-nums}.ui-td-mono{font-family:var(--font-mono);font-size:var(--text-sm)}.ui-td-muted{color:var(--color-text-secondary)}.ui-empty{text-align:center;padding:var(--space-16) var(--space-6);flex-direction:column;justify-content:center;align-items:center;display:flex}.ui-empty-icon{width:44px;height:44px;margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);justify-content:center;align-items:center;display:flex}.ui-empty-icon svg{width:20px;height:20px}.ui-empty-title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.ui-empty-description{margin:var(--space-2) 0 0;max-width:44ch;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.ui-empty-actions{align-items:center;gap:var(--space-2);margin-top:var(--space-6);display:flex}.ui-modal-backdrop{z-index:var(--z-modal);padding:var(--space-4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ui-fade-in var(--transition) both;background:#10182873;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-modal{background:var(--color-bg);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-lg);animation:ui-modal-in var(--transition-slow) both;max-height:calc(100vh - var(--space-8));outline:none;overflow-y:auto}.ui-modal-sm{max-width:420px}.ui-modal-md{max-width:560px}.ui-modal-lg{max-width:760px}.ui-modal-header{padding:var(--space-6) var(--space-6) 0}.ui-modal-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.ui-modal-description{margin:var(--space-2) 0 0;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.ui-modal-body{padding:var(--space-5) var(--space-6)}.ui-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-6) var(--space-6);display:flex}@keyframes ui-fade-in{0%{opacity:0}}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.ui-skeleton{background:linear-gradient(90deg, var(--color-surface) 25%, var(--color-surface-hover) 37%, var(--color-surface) 63%);border-radius:var(--radius-sm);background-size:400% 100%;animation:1.4s infinite ui-shimmer}@keyframes ui-shimmer{0%{background-position:100%}to{background-position:0}}.ui-skeleton-text{height:12px}.ui-skeleton-circle{border-radius:50%}@media (width<=768px){.ui-page{padding:var(--space-6) var(--space-4) var(--space-10)}.ui-page-header{align-items:stretch;gap:var(--space-4);flex-direction:column}.ui-page-actions{width:100%}.ui-page-actions>*{flex:1}.ui-page-title{font-size:var(--text-xl)}.ui-card-header,.ui-card-body{padding-left:var(--space-4);padding-right:var(--space-4)}}.hm-stats{gap:var(--space-4);margin-bottom:var(--space-8);grid-template-columns:repeat(4,1fr);display:grid}.hm-stat{gap:var(--space-1);padding:var(--space-5);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:inherit;transition:border-color var(--transition), box-shadow var(--transition);flex-direction:column;text-decoration:none;display:flex}.hm-stat-link:hover{border-color:var(--control-border-hover);box-shadow:var(--shadow-md)}.hm-stat-link:focus-visible{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.hm-stat-icon{width:32px;height:32px;margin-bottom:var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-light);color:var(--color-primary);justify-content:center;align-items:center;display:flex}.hm-stat-label{font-size:var(--text-base);color:var(--color-text-secondary)}.hm-stat-value{font-size:var(--text-2xl);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--color-text);font-variant-numeric:tabular-nums}.hm-stat-hint{font-size:var(--text-sm);color:var(--color-text-muted)}.hm-grid{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;display:grid}.hm-col-side{gap:var(--space-4);flex-direction:column;display:flex}.hm-flush{padding:0}.hm-reset-list{margin:0;padding:0;list-style:none}.hm-rows{flex-direction:column;display:flex}.hm-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border-light);display:flex}.hm-row:first-child{border-top:none}.hm-row-main{align-items:center;gap:var(--space-3);min-width:0;display:flex}.hm-row-desc{font-size:var(--text-base);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hm-row-time{font-size:var(--text-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.hm-health{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.hm-health-note,.hm-amount-note{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.hm-amount{font-size:var(--text-3xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--color-text);font-variant-numeric:tabular-nums}.hm-amount+.hm-amount-note{margin-top:var(--space-1)}.hm-actions{gap:var(--space-2);flex-direction:column;display:flex}.hm-actions .ui-btn{justify-content:flex-start}.hm-link{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-primary);border-radius:var(--radius-sm);transition:color var(--transition-fast);align-items:center;gap:2px;text-decoration:none;display:inline-flex}.hm-link:hover{color:var(--color-primary-hover)}.hm-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.hm-project-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.hm-project{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.hm-project-name{font-weight:var(--weight-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=1024px){.hm-grid{grid-template-columns:1fr}.hm-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.hm-stats{grid-template-columns:1fr}.hm-row{gap:var(--space-2);flex-wrap:wrap}.hm-row-desc{white-space:normal}}:root{--color-bg:#fff;--color-surface:#f5f7fa;--color-surface-hover:#edf0f5;--color-border:#e3e8ef;--color-border-light:#f0f3f7;--color-text:#1a2233;--color-text-secondary:#5a6578;--color-text-muted:#616f83;--color-primary:#001a94;--color-primary-hover:#001070;--color-primary-light:#edf0ff;--brand-1:#001a94;--brand-2:#0052d4;--brand-3:#4394e0;--gradient-brand:linear-gradient(135deg, var(--brand-1) 0%, var(--brand-2) 50%, var(--brand-3) 100%);--gradient-brand-v:linear-gradient(180deg, var(--brand-2) 0%, var(--brand-1) 100%);--gradient-brand-solid:linear-gradient(135deg, var(--brand-1) 0%, var(--brand-2) 55%, #1f6ec4 100%);--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-success:#10b981;--color-warning:#f59e0b;--color-info:#3b82f6;--color-bg-secondary:var(--color-surface);--color-surface-raised:var(--color-bg);--color-border-hover:var(--control-border-hover);--color-accent:var(--color-primary);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--control-height:40px;--control-height-sm:30px;--control-radius:10px;--control-border:#d7deea;--control-border-hover:#b9c3d6;--control-bg:#fff;--control-bg-soft:#f8faff;--shadow-xs:0 1px 2px #1018280a;--shadow-sm:0 1px 2px #1018280a, 0 1px 3px #1018280f;--shadow-md:0 2px 4px -1px #1018280a, 0 4px 12px -2px #10182814;--shadow-lg:0 4px 8px -2px #1018280f, 0 12px 28px -4px #1018281a;--shadow-focus:0 0 0 3px #001a9424;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--tracking-wide:.02em;--ease:cubic-bezier(.4, 0, .2, 1);--transition-fast:.12s var(--ease);--transition:.16s var(--ease);--transition-slow:.24s var(--ease);--focus-ring:0 0 0 3px #001a942e;--focus-ring-danger:0 0 0 3px #ef44442e;--status-success-bg:#ecfdf3;--status-success-fg:#067647;--status-success-bd:#abefc6;--status-running-bg:#ecfdf3;--status-running-fg:#067647;--status-running-bd:#abefc6;--status-pending-bg:#fffaeb;--status-pending-fg:#b54708;--status-pending-bd:#fedf89;--status-warning-bg:#fffaeb;--status-warning-fg:#b54708;--status-warning-bd:#fedf89;--status-error-bg:#fef3f2;--status-error-fg:#b42318;--status-error-bd:#fecdca;--status-neutral-bg:#f2f4f7;--status-neutral-fg:#475467;--status-neutral-bd:#e4e7ec;--status-info-bg:#eff8ff;--status-info-fg:#175cd3;--status-info-bd:#b2ddff;--sidebar-width:248px;--page-max:1280px;--z-dropdown:1000;--z-modal:4000;--z-toast:5000}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.toast-container{z-index:5000;pointer-events:none;flex-direction:column;gap:10px;width:min(420px,100vw - 32px);display:flex;position:fixed;top:16px;right:16px}.toast{pointer-events:auto;border:1px solid var(--color-border);box-shadow:var(--shadow-md);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;animation:.2s toastSlideIn;display:flex}.toast-message{color:var(--color-text);font-size:13px;font-weight:500;line-height:1.4}.toast-close{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:18px;line-height:1}.toast-close:hover{color:var(--color-text)}.toast-success{background:#f0fdf4;border-color:#bbf7d0}.toast-error{background:#fef2f2;border-color:#fecaca}.toast-warning{background:#fffbeb;border-color:#fde68a}.toast-info{background:#eff6ff;border-color:#bfdbfe}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-6px)translate(8px)}to{opacity:1;transform:translateY(0)translate(0)}}.page-container{text-align:left;max-width:1200px;animation:.25s fadeIn}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;padding-top:14px;display:flex;position:relative}.page-header:before{content:"";background:var(--gradient-brand);border-radius:2px;width:44px;height:3px;position:absolute;top:0;left:0}.page-header h1{font-size:var(--text-2xl);color:var(--color-text);letter-spacing:-.022em;font-weight:650;line-height:var(--leading-tight);margin:0 0 4px}.page-subtitle{color:var(--color-text-secondary);font-size:var(--text-md);line-height:var(--leading-normal);max-width:68ch;margin:0}.header-actions{align-items:center;gap:10px;display:flex}.breadcrumb{color:var(--color-text-secondary);margin-bottom:8px;font-size:13px;text-decoration:none;display:inline-block}.breadcrumb:hover{color:var(--color-primary)}.btn-primary{height:var(--control-height);background:var(--gradient-brand-solid);color:#fff;border:1px solid var(--brand-1);border-radius:var(--control-radius);cursor:pointer;transition:filter var(--transition), box-shadow var(--transition), transform var(--transition);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 18px;font-size:14px;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 1px 2px #001a9433}.btn-primary:hover{filter:saturate(1.1)brightness(.92);transform:translateY(-1px);box-shadow:0 6px 16px #001a9438}.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px #001a9429,0 6px 16px #001a942e}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{height:var(--control-height);background:var(--control-bg);color:var(--color-text);border:1px solid var(--control-border);border-radius:var(--control-radius);cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:0 16px;font-size:13px;font-weight:550;line-height:1;text-decoration:none;transition:all .2s;display:inline-flex}.btn-ghost:hover{background:var(--control-bg-soft);border-color:var(--control-border-hover);transform:translateY(-1px)}.btn-ghost:focus-visible{outline:none;box-shadow:0 0 0 3px #001a941a}.btn-ghost:active{transform:translateY(0)}.btn-ghost-sm{height:var(--control-height-sm);background:var(--control-bg);color:var(--color-text-secondary);border:1px solid var(--control-border);cursor:pointer;border-radius:8px;padding:0 10px;font-size:12px;font-weight:550;line-height:1;transition:all .2s}.btn-ghost-sm:hover{background:var(--control-bg-soft);color:var(--color-text);border-color:var(--control-border-hover)}.btn-danger-sm{height:var(--control-height-sm);color:var(--color-danger);border:1px solid var(--color-danger);cursor:pointer;background:#fff;border-radius:8px;padding:0 10px;font-size:12px;font-weight:600;line-height:1;transition:all .2s}.btn-danger-sm:hover{background:#fef2f2;transform:translateY(-1px)}.btn-icon{background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--color-text-secondary);justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.btn-icon:hover{background:var(--control-bg-soft);border-color:var(--control-border-hover);color:var(--color-text);transform:translateY(-1px)}.btn-icon-danger:hover{color:var(--color-danger);border-color:var(--color-danger);background:#fef2f2}.action-btns{align-items:center;gap:6px;display:flex}.kebab-menu{display:inline-block;position:relative}.kebab-trigger{cursor:pointer;color:var(--color-text-muted);background:0 0;border:1px solid #0000;border-radius:8px;padding:4px 8px;font-size:18px;line-height:1;transition:all .15s}.kebab-trigger:hover{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text)}.kebab-dots{letter-spacing:1px;font-weight:700}.kebab-dropdown{background:var(--color-bg);border:1px solid var(--color-border);z-index:100;border-radius:10px;min-width:170px;margin-top:4px;padding:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 24px #0000001f}.kebab-dropdown-floating{z-index:1000;margin-top:0;position:fixed}.kebab-item{cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:background .12s;display:flex}.kebab-item:hover{background:var(--color-bg-secondary)}.kebab-item-danger{color:var(--color-danger)}.kebab-item-danger:hover{background:#fef2f2}.alert{border-radius:12px;margin-bottom:16px;padding:12px 16px;font-size:13px}.alert-error{color:var(--color-danger);background:#fef2f2;border:1px solid #fecaca}.alert-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.alert-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.payment-required-banner{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.payment-required-banner .banner-content{align-items:center;gap:12px;display:flex}.payment-required-banner .banner-icon{color:#92400e;flex-shrink:0;width:24px;height:24px}.payment-required-banner .banner-text h4{color:#92400e;margin:0 0 2px;font-size:14px;font-weight:700}.payment-required-banner .banner-text p{color:#a16207;margin:0;font-size:13px}.payment-required-banner .btn-add-payment{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.payment-required-banner .btn-add-payment:hover{background:var(--color-primary-hover)}.loading-state{text-align:center;color:var(--color-text-secondary);padding:60px 20px;font-size:14px}.empty-state{text-align:center;color:var(--color-text-secondary);background:#f5f7fa80;border:2px dashed #d1d9e6;border-radius:20px;padding:60px 24px}.empty-state h3{color:var(--color-text);margin:16px 0 8px}.empty-state p{margin-bottom:20px;font-size:14px}.stats-row{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:28px;display:grid}.stats-row-4{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:none;transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);align-items:center;gap:16px;padding:20px 22px;display:flex;position:relative;overflow:hidden}.stat-card svg{opacity:.45;width:22px;height:22px}.stat-card-link{color:inherit;text-decoration:none}.stat-card-link:hover{border-color:var(--brand-3);box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-card-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.stat-value{font-size:var(--text-2xl);color:var(--color-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:650;line-height:1.15;display:block}.stat-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-header h2{color:var(--color-text);margin:0;font-size:18px;font-weight:600}.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;padding:22px;transition:all .2s}.project-card:hover{box-shadow:var(--shadow-md);border-color:#d1d9e6;transform:translateY(-1px)}.project-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.project-card-header h3{color:var(--color-text);margin:0;font-size:16px;font-weight:600}.project-desc{color:var(--color-text-secondary);margin:0 0 12px;font-size:13px;line-height:1.5}.project-meta{align-items:center;gap:8px;margin-bottom:14px;display:flex}.project-actions{border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.meta-tag{text-transform:uppercase;letter-spacing:.5px;color:var(--color-primary);background:var(--color-primary-light);border-radius:20px;padding:2px 10px;font-size:11px;font-weight:500;display:inline-block}.meta-info{color:var(--color-text-muted);font-size:12px}.status-badge{color:#fff;text-transform:uppercase;letter-spacing:.4px;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.status-dot{font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;background:var(--status-neutral-bg);color:var(--status-neutral-fg);border:1px solid var(--status-neutral-bd);border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 7px;line-height:1.4;display:inline-flex}.status-dot:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-active,.status-running,.status-success{background:var(--status-running-bg);color:var(--status-running-fg);border-color:var(--status-running-bd)}.status-pending{background:var(--status-pending-bg);color:var(--status-pending-fg);border-color:var(--status-pending-bd)}.status-invited{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--status-info-bd)}.status-stopped,.status-failed,.status-error{background:var(--status-error-bg);color:var(--status-error-fg);border-color:var(--status-error-bd)}.invite-hint{color:var(--color-text-muted);margin-top:2px;font-size:11px;display:block}.btn-resend{align-items:center;gap:4px;display:inline-flex;color:#001a94!important}.btn-resend:hover{background:#f0f2ff!important}.role-badge{text-transform:capitalize;font-size:12px;font-weight:600}.data-table{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:none;overflow-x:auto}.data-table table{border-collapse:collapse;width:100%;font-size:var(--text-base);font-variant-numeric:tabular-nums}.data-table thead{background:var(--color-surface)}.data-table th{text-align:left;font-weight:var(--weight-semibold);color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:10px 16px}.data-table td{color:var(--color-text);border-bottom:1px solid var(--color-border-light);vertical-align:middle;padding:12px 16px}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tr:hover td{background:var(--color-surface)}.key-display{background:var(--color-surface);color:var(--color-text-secondary);border-radius:4px;padding:2px 6px;font-size:12px}.key-reveal{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:10px;margin:16px 0;padding:14px 16px;display:flex}.key-reveal code{word-break:break-all;color:var(--color-text);flex:1;font-size:13px}.member-info{align-items:center;gap:10px;display:flex}.avatar{background:var(--color-primary-light);width:32px;height:32px;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.member-name{color:var(--color-text);font-size:13px;font-weight:500;display:block}.member-email{color:var(--color-text-muted);font-size:12px;display:block}.resource-list{flex-direction:column;gap:10px;display:flex}.resource-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;justify-content:space-between;align-items:center;padding:18px 22px;transition:all .2s;display:flex}.resource-card:hover{box-shadow:var(--shadow-md);border-color:#d1d9e6}.resource-card-left{align-items:center;gap:14px;display:flex}.resource-card-left h3{color:var(--color-text);margin:0 0 2px;font-size:14px;font-weight:600}.resource-card-right{align-items:center;gap:14px;display:flex}.resource-status-indicator{border-radius:50%;flex-shrink:0;width:10px;height:10px}.resource-meta{color:var(--color-text-secondary);gap:4px;font-size:12px;display:flex}.project-select{height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);color:var(--color-text);background:var(--control-bg);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238896a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;min-width:160px;padding:0 40px 0 12px;font-size:13px;font-weight:500;transition:all .2s}.project-select:hover{border-color:var(--control-border-hover);background:var(--control-bg-soft)}.project-select:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 3px #001a9414}.modal-overlay{-webkit-backdrop-filter:blur(2px);z-index:999;background:#0f172a33;animation:.2s fadeIn;position:fixed;inset:0}.modal{z-index:1000;background:#fff;border-radius:20px;flex-direction:column;width:90%;max-width:460px;max-height:90vh;padding:0;animation:.25s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px #00000024,0 8px 24px #0000000f}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal h2{color:var(--color-text);border-bottom:1px solid var(--color-border-light);margin:0;padding:24px 28px 16px;font-size:18px;font-weight:650}.modal form,.modal>div:not(.modal-actions){padding:0 28px}.modal form{flex-direction:column;width:auto;padding-top:20px;display:flex}.modal>.alert,.modal>.key-reveal,.modal>p{margin-left:28px;margin-right:28px}.modal>.alert:first-of-type{margin-top:20px}.modal-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:0;padding:16px 28px 24px;display:flex}.modal-actions .btn-ghost,.modal-actions .btn-primary{min-width:96px;font-size:13px;font-weight:600}.modal-actions .btn-ghost{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-secondary)}.modal-actions .btn-ghost:hover{background:var(--color-surface-hover);color:var(--color-text)}.form-group{margin-bottom:18px}.form-group label{color:var(--color-text);letter-spacing:0;margin-bottom:7px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);color:var(--color-text);background:var(--control-bg);box-sizing:border-box;width:100%;padding:0 14px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#a7b2c4}.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:var(--control-border-hover);background:var(--control-bg-soft)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 3px #001a9417}.form-group textarea{resize:vertical;height:auto;min-height:92px;padding:11px 14px;line-height:1.5}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238896a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.role-cards{grid-template-columns:1fr 1fr;gap:8px;display:grid}.role-card{border:2px solid var(--color-border);cursor:pointer;text-align:left;border-radius:12px;padding:14px;transition:all .15s}.role-card:hover{border-color:#cbd5e1}.role-card.selected{border-color:var(--color-primary);background:var(--color-primary-light)}.role-card strong{color:var(--color-text);margin-bottom:2px;font-size:13px;display:block}.role-card span{color:var(--color-text-secondary);font-size:11px}.modal-wide{max-width:620px}.field-hint{color:var(--color-text-secondary);margin:-4px 0 10px;font-size:12px}.policy-summary{color:var(--color-text-secondary);font-size:13px}.pmatrix{border:1px solid var(--color-border);border-radius:var(--radius-sm);max-height:440px;overflow:hidden auto}.pmatrix-row{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(180px,1.4fr) minmax(130px,1fr) 72px;align-items:center;display:grid}.pmatrix-row:last-child{border-bottom:none}.pmatrix-header{background:var(--color-surface);z-index:2;position:sticky;top:0}.pmatrix-header .pmatrix-res,.pmatrix-header .pmatrix-perm,.pmatrix-header .pmatrix-check{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);padding:10px 14px;font-size:11px;font-weight:700}.pmatrix-res{min-height:38px;color:var(--color-text);align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:500;display:flex}.pmatrix-perm{align-items:center;min-height:38px;padding:0 14px;display:flex}.pmatrix-perm-key{color:var(--color-text-muted);font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px}.pmatrix-check{justify-content:center;align-items:center;min-height:38px;display:flex}.pmatrix-cb{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer;margin:0}.pmatrix-group-row{cursor:pointer;background:var(--color-surface);-webkit-user-select:none;user-select:none;transition:background .12s}.pmatrix-group-row:hover{background:var(--color-surface-hover)}.pmatrix-chevron{color:var(--color-text-muted);transition:transform .15s;display:inline-flex}.pmatrix-chevron.collapsed{transform:rotate(-90deg)}.pmatrix-drag{color:var(--color-text-muted);opacity:.45;flex-shrink:0}.pmatrix-group-icon{color:var(--color-text);flex-shrink:0}.pmatrix-group-label{color:var(--color-text);font-size:13px;font-weight:700}.pmatrix-policy-row{background:#fff;transition:background .1s}.pmatrix-policy-row:hover{background:var(--color-primary-light)}.pmatrix-res-policy{color:var(--color-text);padding-left:54px;font-weight:400}.pmatrix-dot{color:var(--color-primary);flex-shrink:0}.pmatrix-expand-row td{background:var(--color-surface);padding:0!important}.pmatrix-expand-wrapper{padding:16px 20px 20px}.pmatrix-expand-wrapper .pmatrix{max-height:320px;margin-bottom:12px}.pmatrix-expand-actions{justify-content:flex-end;gap:8px;display:flex}.settings-layout{grid-template-columns:200px 1fr;gap:24px;display:grid}.settings-nav{flex-direction:column;gap:4px;display:flex}.settings-nav-item{text-align:left;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;padding:10px 14px;font-size:14px;transition:all .15s}.settings-nav-item:hover{background:var(--color-surface);color:var(--color-text)}.settings-nav-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.settings-content{border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:400px;box-shadow:var(--shadow-sm);background:#fff;padding:24px}.detail-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;padding:22px}.detail-row{border-bottom:1px solid var(--color-border-light);justify-content:space-between;padding:10px 0;display:flex}.detail-row:last-of-type{border-bottom:none}.detail-label{color:var(--color-text-secondary);font-size:13px}.detail-value{color:var(--color-text);font-size:13px;font-weight:500}.filter-bar{gap:6px;margin-bottom:20px;display:flex}.filter-btn{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:20px;padding:7px 16px;font-size:13px;font-weight:450;transition:all .15s}.filter-btn:hover{background:var(--color-surface)}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px #001a9426}.timeline{padding-left:24px;position:relative}.timeline:before{content:"";background:var(--color-border);width:2px;position:absolute;top:0;bottom:0;left:10px}.timeline-item{padding:0 0 20px 20px;position:relative}.timeline-dot{width:10px;height:10px;box-shadow:0 0 0 2px var(--color-border);border:2px solid #fff;border-radius:50%;position:absolute;top:6px;left:-18px}.timeline-content{border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;padding:14px 18px}.timeline-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.timeline-action{text-transform:capitalize;font-size:13px;font-weight:600}.timeline-time{color:var(--color-text-muted);font-size:11px}.timeline-desc{color:var(--color-text-secondary);margin:0 0 6px;font-size:13px}.timeline-meta{color:var(--color-text-muted);gap:12px;font-size:11px;display:flex}.overview-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.mini-list{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;display:flex;overflow:hidden}.mini-list-item{border-bottom:1px solid var(--color-border-light);color:var(--color-text);justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;text-decoration:none;transition:background .1s;display:flex}.mini-list-item:last-child{border-bottom:none}.mini-list-item:hover{background:var(--color-surface)}.mini-list-name{font-weight:500}.mini-list-action{margin-right:8px;font-weight:600}.mini-list-desc{color:var(--color-text-secondary);font-size:12px}.mini-list-time{color:var(--color-text-muted);white-space:nowrap;font-size:11px}.text-muted{color:var(--color-text-muted);font-size:13px}.text-muted a{color:var(--color-primary);text-decoration:none}.text-muted a:hover{text-decoration:underline}.sideNavBottom{box-sizing:border-box;width:100%;padding:16px 16px 0;position:absolute;bottom:16px;left:0}.sideNavUser{color:var(--color-text-muted);word-break:break-all;font-size:12px}@media screen and (width<=1024px){.stats-row-4{grid-template-columns:repeat(2,1fr)}.overview-grid,.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;overflow-x:auto}}@media screen and (width<=800px){.page-container{padding:0 4px}.page-header{flex-direction:column}.page-header h1{font-size:22px}.stats-row,.stats-row-4,.card-grid{grid-template-columns:1fr}.header-actions{width:100%}.resource-card{flex-direction:column;align-items:flex-start;gap:12px}.resource-card-right{justify-content:space-between;width:100%}.data-table{font-size:12px}.role-cards{grid-template-columns:1fr}.modal{width:95%;padding:20px}.overview-grid,.service-toggle-grid{grid-template-columns:1fr}}.service-toggle-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:8px;display:grid}.service-toggle-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:16px;padding:20px;transition:border-color .2s,box-shadow .2s;display:flex}.service-toggle-card:hover{border-color:var(--color-border-hover,#444)}.service-toggle-card.enabled{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent), 0 2px 8px #6366f11a}.service-toggle-card.coming-soon{opacity:.55;cursor:not-allowed}.service-toggle-top{align-items:flex-start;gap:14px;display:flex}.service-toggle-icon{background:var(--color-surface-raised,#1e1e2e);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.service-toggle-icon svg{width:22px;height:22px;color:var(--color-accent)}.service-toggle-info h3{color:var(--color-text);margin:0 0 4px;font-size:15px;font-weight:600}.service-toggle-info p{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.4}.service-toggle-bottom{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.service-toggle-btn{cursor:pointer;background:0 0;border:none;outline:none;padding:0}.toggle-track{background:var(--color-border,#333);border-radius:12px;width:44px;height:24px;transition:background .25s;position:relative}.service-toggle-btn.active .toggle-track{background:var(--color-accent)}.toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.service-toggle-btn.active .toggle-thumb{transform:translate(20px)}.service-toggle-bottom a{color:var(--color-accent);font-size:13px;font-weight:500;text-decoration:none;transition:opacity .2s}.service-toggle-bottom a:hover{opacity:.8}.coming-soon-badge{color:var(--color-text-muted);background:var(--color-surface-raised,#1e1e2e);border:1px solid var(--color-border);letter-spacing:.3px;text-transform:uppercase;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600}.service-active-badge{color:#065f46;text-transform:uppercase;letter-spacing:.3px;background:#d1fae5;border:1px solid #10b981;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600}.services-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:0;display:grid}.service-tile{border:1px solid var(--color-border);border-radius:var(--radius-md);color:inherit;cursor:pointer;background:#fff;align-items:center;gap:16px;padding:20px;text-decoration:none;transition:all .2s;display:flex}.service-tile:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #001a9414}.service-tile-disabled{opacity:.5;cursor:not-allowed;pointer-events:auto}.service-tile-disabled:hover{border-color:var(--color-border);box-shadow:none;transform:none}.service-tile-icon{background:var(--color-primary-light,#001a940f);width:48px;height:48px;color:var(--color-primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.service-tile-body{flex:1;min-width:0}.service-tile-body h3{color:var(--color-text);align-items:center;gap:8px;margin:0 0 4px;font-size:15px;font-weight:600;display:flex}.service-tile-body p{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.4}.service-tile-arrow{color:var(--color-text-muted);flex-shrink:0;transition:transform .15s}.service-tile:hover .service-tile-arrow{color:var(--color-primary);transform:translate(3px)}.coming-soon-badge{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.3px;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.service-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:14px;padding:20px;transition:border-color .2s;display:flex}.service-card:hover{border-color:var(--color-border-hover,#444)}.service-card-header{justify-content:space-between;align-items:center;display:flex}.service-card-header h3{color:var(--color-text);margin:0;font-size:15px;font-weight:600}.service-card-header .status-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600}.service-card-stats{flex-wrap:wrap;gap:16px;display:flex}.service-stat{flex-direction:column;gap:2px;display:flex}.service-stat label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:500}.service-stat span{color:var(--color-text);font-size:14px;font-weight:500}.service-card-footer{border-top:1px solid var(--color-border);gap:8px;margin-top:auto;padding-top:8px;display:flex}.service-card-footer .btn-sm{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:6px;padding:5px 12px;font-size:12px;transition:background .15s,border-color .15s}.service-card-footer .btn-sm:hover{background:var(--color-surface-raised,#1e1e2e);border-color:var(--color-border-hover,#444)}.service-card-footer .btn-sm.danger{color:#ef4444;border-color:#ef44444d}.service-card-footer .btn-sm.danger:hover{background:#ef44441a;border-color:#ef4444}.checkbox-label{color:var(--color-text);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.mono,.identifier{font-family:var(--font-mono);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:.92em}.identifier{background:var(--color-surface);border:1px solid var(--color-border-light);color:var(--color-text-secondary);white-space:nowrap;border-radius:5px;padding:1px 6px}.identifier-muted{color:var(--color-text-muted);background:0 0;border-color:#0000;padding-left:0;padding-right:0}.tabular{font-variant-numeric:tabular-nums}.project-card{box-shadow:none;transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition)}.project-card:hover{border-color:var(--brand-3);box-shadow:var(--shadow-md)}.section{margin-bottom:var(--space-8)}.section-header{margin-bottom:var(--space-3)}.section-header h2{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:-.01em}.empty-state{padding:var(--space-12) var(--space-6);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg)}.empty-state svg{opacity:.28}.empty-state h3{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:-.01em}.empty-state p{max-width:46ch;margin-left:auto;margin-right:auto}.meta-tag{font-size:var(--text-xs);letter-spacing:.06em;font-weight:var(--weight-semibold);border:1px solid var(--color-primary-light)}.segmented{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--control-radius);gap:2px;padding:3px;display:inline-flex}.segmented-item{appearance:none;height:28px;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;border-radius:7px;padding:0 12px}.segmented-item:hover{color:var(--color-text)}.segmented-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.segmented-item.is-selected{background:var(--color-bg);color:var(--color-primary);font-weight:var(--weight-semibold);box-shadow:var(--shadow-xs)}.pager{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);font-size:var(--text-base);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.pager-controls{align-items:center;gap:var(--space-2);display:flex}.pager-page{color:var(--color-text-secondary);white-space:nowrap}.pager-note{color:var(--color-text-muted)}.log-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.log-search{min-width:220px;height:var(--control-height-sm);font-size:var(--text-base);color:var(--color-text);background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--control-radius);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex:1;padding:0 12px;font-family:inherit}.log-search::placeholder{color:var(--color-text-muted)}.log-search:hover{border-color:var(--control-border-hover)}.log-search:focus{border-color:var(--brand-2);box-shadow:var(--focus-ring);outline:none}.log-count{color:var(--color-text-muted)}.log-col-time{width:168px}.log-col-action{width:148px}.log-col-user{width:220px}.log-time{line-height:1.35}.log-time-rel{color:var(--color-text);display:block}.log-time-abs{font-size:var(--text-xs);color:var(--color-text-muted);display:block}.log-resource{margin-left:var(--space-2)}.log-user{color:var(--color-text-secondary);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.env-development{color:var(--status-neutral-fg);background:var(--status-neutral-bg);border-color:var(--status-neutral-bd)}.env-staging{color:var(--status-pending-fg);background:var(--status-pending-bg);border-color:var(--status-pending-bd)}.env-production{color:var(--status-error-fg);background:var(--status-error-bg);border-color:var(--status-error-bd)}.team-actions-cell{justify-content:flex-end;align-items:center;gap:8px;display:flex}.team-edit-policies{white-space:nowrap}.storageViewContainer{text-align:left;width:80%}.blue{color:#001a94;font-weight:700}.titleMap{border-bottom:1px solid #000;grid-template-columns:50% 100px;display:grid}.storedItemMap{text-align:left}.storedItemMap li{cursor:pointer;border-bottom:1px solid #000;padding-block:10px;font-weight:400;list-style:none}.storedItemMap li p{text-overflow:ellipsis;overflow:hidden}.controlBtns{flex-direction:row;column-gap:20px;display:flex}.controlBtns button{cursor:pointer;padding:10px}.upload-popup{z-index:3;background-color:#fff;border-radius:10px;padding:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upload-popup-loader{background-color:#fff;border-radius:10px;padding:20px;position:absolute;top:50%;left:40%;transform:translate(-50%,-50%)}.fetchFile{grid-template-columns:50% 100px;align-items:center;display:grid}.dropdownOptions{background-color:#fff;border-radius:10px;flex-direction:column;row-gap:10px;padding:10px;display:flex;position:absolute;box-shadow:0 0 8px #0003}.dropdownOptions button{cursor:pointer;text-align:left;background:0 0;border:none;padding:10px;transition:all .1s ease-in}.dropdownOptions button:hover{font-weight:700}.dotIcon{font-size:24px}.overlay{z-index:2;background-color:#0003;width:80%;height:100%;position:absolute;top:0;left:0}@media screen and (width<=800px){.storageViewContainer{padding:20px}}.invite-accept-page{background:linear-gradient(135deg,#f0f2ff 0%,#e8ebff 50%,#f5f7fa 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.invite-accept-card{background:#fff;border-radius:16px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 4px 24px #001a9414,0 1px 4px #0000000a}.invite-accept-logo{text-align:center;background:#001a94;padding:28px 24px}.invite-accept-logo h2{color:#fff;letter-spacing:-.5px;margin:0;font-size:24px;font-weight:700}.invite-accept-logo span{color:#ffffffb3;margin-top:4px;font-size:13px;font-weight:400;display:block}.invite-accept-content{text-align:center;padding:40px 32px 32px}.invite-spinner{margin:0 auto 24px}.invite-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex}.invite-icon-success{color:#059669;background:#ecfdf5}.invite-icon-rejected{color:#6b7280;background:#f3f4f6}.invite-icon-error{color:#dc2626;background:#fef2f2}.invite-accept-title{color:#111827;letter-spacing:-.3px;margin:0 0 12px;font-size:22px;font-weight:600}.invite-accept-message{color:#6b7280;margin:0 0 16px;font-size:14px;line-height:1.6}.invite-accept-email{color:#001a94;background:#f0f2ff;border-radius:8px;margin:0 0 24px;padding:8px 16px;font-size:13px;font-weight:500;display:inline-block}.invite-accept-perms{text-align:left;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin:0 0 20px;padding:14px 16px}.invite-accept-perms-label{text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:8px;font-size:11px;font-weight:600;display:block}.invite-accept-perms ul{margin:0;padding-left:18px}.invite-accept-perms li{color:#374151;margin:4px 0;font-size:13px}.invite-accept-actions{flex-direction:column;gap:10px;margin-top:8px;display:flex}.invite-btn-primary{color:#fff;cursor:pointer;background:#001a94;border:none;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:14px;font-weight:600;transition:background .15s;display:inline-flex}.invite-btn-primary:hover{background:#001270}.invite-btn-secondary{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:14px;font-weight:500;transition:all .15s;display:inline-flex}.invite-btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.invite-accept-footer{text-align:center;background:#f9fafb;border-top:1px solid #e5e7eb;padding:16px 24px}.invite-accept-footer p{color:#9ca3af;margin:0;font-size:11px}@media (width<=480px){.invite-accept-page{padding:16px}.invite-accept-content{padding:32px 20px 24px}}.gd-page{max-width:1280px;margin:0 auto;padding:28px 36px}.gd-loading{color:var(--color-text-secondary,#5a6578);flex-direction:column;align-items:center;gap:16px;padding:100px 0;font-size:15px;display:flex}.gd-spinner{border:3px solid var(--color-border,#e3e8ef);border-top-color:var(--color-primary,#001a94);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite gd-spin}@keyframes gd-spin{to{transform:rotate(360deg)}}.gd-error-full{text-align:center;color:var(--color-text-secondary);padding:100px 0}.gd-error-full p{color:var(--color-danger,#ef4444);margin-bottom:16px;font-size:15px}.gd-error-bar{color:#dc2626;border-radius:var(--radius-sm,8px);background:#fef2f2;border:1px solid #fecaca;justify-content:space-between;align-items:center;margin-bottom:20px;padding:10px 16px;font-size:13px;display:flex}.gd-error-bar button{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:2px}.gd-go-back{border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-sm,8px);color:var(--color-text,#1a2233);cursor:pointer;background:#fff;align-items:center;gap:6px;margin-bottom:24px;padding:8px 18px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.gd-go-back:hover{background:var(--color-surface,#f5f7fa);border-color:var(--color-border-light,#d7deea)}.gd-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.gd-header-left{flex:1;min-width:0}.gd-name-row{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:8px;display:flex}.gd-name-row h1{color:var(--color-text,#1a2233);letter-spacing:-.3px;margin:0;font-size:28px;font-weight:700}.gd-status-pill{letter-spacing:.03em;background:color-mix(in srgb, var(--sc,#94a3b8) 14%, transparent);color:var(--sc,#94a3b8);white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:4px 14px;font-size:12px;font-weight:700;display:inline-flex}.gd-status-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-left:2px;animation:.8s linear infinite gd-spin;display:inline-block}.gd-header-sub{flex-wrap:wrap;gap:32px;display:flex}.gd-sub-item{flex-direction:column;gap:2px;display:flex}.gd-sub-label{color:var(--color-text-muted,#8896a8);font-size:12px}.gd-sub-value{color:var(--color-text,#1a2233);align-items:center;gap:6px;font-size:15px;font-weight:600;display:flex}.gd-sub-cost{font-size:18px}.gd-copy-btn{color:var(--color-text-muted,#8896a8);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px 4px;font-size:13px;transition:color .15s;display:inline-flex}.gd-copy-btn:hover{color:var(--color-primary,#001a94)}.gd-header-right{flex-shrink:0}.gd-header-actions{flex-wrap:wrap;gap:8px;display:flex}.gd-btn-outlined{border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-sm,8px);color:var(--color-text,#1a2233);cursor:pointer;background:#fff;align-items:center;gap:6px;padding:8px 18px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.gd-btn-outlined:hover:not(:disabled){background:var(--color-surface,#f5f7fa);border-color:var(--color-primary,#001a94);color:var(--color-primary,#001a94)}.gd-btn-outlined:disabled{opacity:.5;cursor:not-allowed}.gd-btn-action{padding:8px 14px;font-size:12px}.gd-btn-action-danger:hover:not(:disabled){border-color:var(--color-danger,#ef4444);color:var(--color-danger,#ef4444);background:#fef2f2}.gd-btn-primary{background:var(--color-primary,#001a94);color:#fff;border-radius:var(--radius-sm,8px);cursor:pointer;border:none;align-items:center;gap:6px;padding:9px 20px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.gd-btn-primary:hover:not(:disabled){background:var(--color-primary-hover,#001070)}.gd-btn-primary:disabled{opacity:.5;cursor:not-allowed}.gd-body{border-top:1px solid var(--color-border,#e3e8ef);gap:0;min-height:400px;padding-top:0;display:flex}.gd-sidebar{border-right:1px solid var(--color-border,#e3e8ef);flex-direction:column;flex-shrink:0;width:180px;padding-top:24px;padding-right:0;display:flex}.gd-sidebar-item{color:var(--color-text,#1a2233);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;padding:10px 20px 10px 16px;font-size:14px;font-weight:500;transition:all .12s;display:flex;position:relative}.gd-sidebar-item:hover{color:var(--color-primary,#001a94);background:var(--color-primary-light,#edf0ff)}.gd-sidebar-item.active{color:var(--color-primary,#001a94);font-weight:600}.gd-sidebar-indicator{background:var(--color-primary,#001a94);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.gd-content{flex:1;min-width:0;padding:28px 0 28px 36px}.gd-cards-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.gd-cards-row-top{align-items:start}.gd-info-card{background:var(--color-surface,#f5f7fa);border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-md,12px);padding:24px}.gd-info-card-wide{margin-bottom:20px}.gd-info-title{color:var(--color-text,#1a2233);margin:0 0 16px;font-size:16px;font-weight:700}.gd-info-rows{flex-direction:column;gap:12px;display:flex}.gd-info-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.gd-info-row>span:first-child{color:var(--color-text-secondary,#5a6578);flex-shrink:0;font-size:14px}.gd-info-row>span:last-child{color:var(--color-text,#1a2233);text-align:right;word-break:break-word;font-size:14px;font-weight:600}.gd-info-long{line-height:1.4;font-size:13px!important}.gd-flavor-row{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.gd-flavor-col{flex-direction:column;gap:6px;display:flex}.gd-flabel{color:var(--color-text-secondary,#5a6578);font-size:13px}.gd-fval{color:var(--color-text,#1a2233);font-size:15px;font-weight:700}.gd-net-card{flex-direction:column;display:flex}.gd-net-desc{color:var(--color-text-muted,#8896a8);margin:-10px 0 18px;font-size:13px}.gd-net-ip-block{margin-bottom:18px}.gd-net-ip-label{color:var(--color-text-secondary,#5a6578);margin-bottom:4px;font-size:13px;display:block}.gd-net-ip-value{color:var(--color-text,#1a2233);align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.gd-net-toggle-row{align-items:center;gap:10px;display:flex}.gd-toggle{cursor:pointer;background:0 0;border:none;align-items:center;width:44px;height:24px;padding:0;display:inline-flex;position:relative}.gd-toggle:disabled{opacity:.5;cursor:not-allowed}.gd-toggle-track{border-radius:12px;width:44px;height:24px;transition:background .2s;display:block;position:relative}.gd-toggle.off .gd-toggle-track{background:#cbd5e1}.gd-toggle.on .gd-toggle-track{background:var(--color-primary,#001a94)}.gd-toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:left .2s;position:absolute;top:2px;box-shadow:0 1px 3px #00000026}.gd-toggle.off .gd-toggle-knob{left:2px}.gd-toggle.on .gd-toggle-knob{left:22px}.gd-toggle-label{color:var(--color-text,#1a2233);font-size:14px}.gd-fw{flex-direction:column;display:flex}.gd-fw-section{margin-bottom:28px}.gd-fw-hint{color:var(--color-text-muted,#8896a8);margin:-10px 0 12px;font-size:13px}.gd-divider{border:none;border-top:1px solid var(--color-border,#e3e8ef);margin:8px 0 24px}.gd-fw-block{margin-bottom:28px}.gd-fw-block-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.gd-fw-block-head h4{color:var(--color-text,#1a2233);margin:0;font-size:15px;font-weight:700}.gd-fw-block-head p{color:var(--color-text-muted,#8896a8);margin:2px 0 0;font-size:13px}.gd-fw-table{border-collapse:collapse;background:var(--color-surface,#f5f7fa);border-radius:var(--radius-sm,8px);border:1px solid var(--color-border,#e3e8ef);width:100%;font-size:13px;overflow:hidden}.gd-fw-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary,#5a6578);background:var(--color-surface,#f5f7fa);border-bottom:1px solid var(--color-border,#e3e8ef);padding:12px 14px;font-size:11px;font-weight:700}.gd-fw-table tbody td{border-bottom:1px solid var(--color-border-light,#f0f3f7);color:var(--color-text,#1a2233);padding:14px}.gd-fw-table tbody tr:last-child td{border-bottom:none}.gd-fw-table tbody tr:hover{background:#fff}.gd-fw-empty{text-align:center;color:var(--color-text-muted,#8896a8);padding:32px 14px;font-size:14px}.gd-mono-sm{font-family:SF Mono,Cascadia Code,Fira Code,monospace;font-size:12px}.gd-rule-status{background:var(--color-surface,#f5f7fa);color:var(--color-text-muted,#8896a8);border-radius:12px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.gd-rule-status.active{color:#166534;background:#dcfce7}.gd-del-rule{cursor:pointer;color:var(--color-text-muted,#8896a8);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:all .15s;display:inline-flex}.gd-del-rule:hover{color:var(--color-danger,#ef4444);background:#fef2f2}.gd-add-rule-btn{border:1px solid var(--color-primary,#001a94);border-radius:var(--radius-sm,8px);color:var(--color-primary,#001a94);cursor:pointer;background:#fff;align-items:center;gap:6px;margin-top:12px;padding:8px 18px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.gd-add-rule-btn:hover{background:var(--color-primary-light,#edf0ff)}.gd-overlay{z-index:999;background:#0006;position:fixed;inset:0}.gd-modal{border-radius:var(--radius-lg,16px);z-index:1000;background:#fff;width:90%;max-width:480px;padding:28px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 60px #00000026}.gd-modal h3{color:var(--color-text,#1a2233);margin:0 0 20px;font-size:17px;font-weight:700}.gd-form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.gd-fg-full{grid-column:1/-1}.gd-fg label{color:var(--color-text-secondary,#5a6578);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.gd-fg input,.gd-fg select{border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-sm,8px);width:100%;color:var(--color-text,#1a2233);box-sizing:border-box;background:#fff;padding:9px 12px;font-size:14px;transition:border-color .15s}.gd-fg input:focus,.gd-fg select:focus{border-color:var(--color-primary,#001a94);outline:none;box-shadow:0 0 0 3px #001a9414}.gd-modal-foot{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}@media (width<=900px){.gd-page{padding:16px}.gd-body{flex-direction:column}.gd-sidebar{border-right:none;border-bottom:1px solid var(--color-border,#e3e8ef);flex-direction:row;width:100%;padding:0;overflow-x:auto}.gd-sidebar-item{white-space:nowrap;padding:12px 16px}.gd-sidebar-indicator{border-radius:3px 3px 0 0;width:auto;height:3px;inset:auto 8px 0}.gd-content{padding:20px 0 0}.gd-cards-row{grid-template-columns:1fr}.gd-flavor-row{grid-template-columns:repeat(3,1fr);gap:16px}.gd-header{flex-direction:column}.gd-header-actions{width:100%}.gd-header-actions .gd-btn-action{flex:1;justify-content:center}}@media (width<=600px){.gd-flavor-row{grid-template-columns:1fr 1fr}.gd-name-row h1{font-size:22px}}.toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#cbd5e1;border-radius:24px;transition:all .2s;position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary,#001a94)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.gd-info-card .form-group{margin-bottom:12px}.gd-info-card .form-group input,.gd-info-card .form-group select,.gd-info-card .form-group textarea{border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-sm,8px);width:100%;color:var(--color-text,#1a2233);box-sizing:border-box;background:#fff;padding:8px 12px;font-size:14px;transition:border-color .15s}.gd-info-card .form-group input:focus,.gd-info-card .form-group select:focus,.gd-info-card .form-group textarea:focus{border-color:var(--color-primary,#001a94);outline:none;box-shadow:0 0 0 3px #001a9414}.btn-primary.btn-sm{padding:6px 14px;font-size:12px}.cr-page{max-width:720px}.cr-flush{padding:0}.cr-table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.cr-table thead th{padding:var(--space-3) var(--space-5);text-align:left;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-surface);border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border)}.cr-table tbody td,.cr-table tbody th{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-light);vertical-align:middle}.cr-item{text-align:left;font-weight:var(--weight-normal);flex-direction:column;gap:2px;display:flex}.cr-item-label{font-weight:var(--weight-medium);color:var(--color-text)}.cr-item-detail{font-size:var(--text-sm);color:var(--color-text-secondary)}.cr-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cr-muted{color:var(--color-text-secondary)}.cr-table tfoot th,.cr-table tfoot td{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-surface)}.cr-total-label{text-align:left;font-weight:var(--weight-semibold);color:var(--color-text)}.cr-total{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-text);letter-spacing:-.01em}.cr-note{margin:var(--space-4) 0 0;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.cr-error{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-base);background:var(--status-error-bg);color:var(--status-error-fg);border:1px solid var(--status-error-bd)}@media (width<=560px){.cr-table thead th,.cr-table tbody td,.cr-table tbody th,.cr-table tfoot th,.cr-table tfoot td{padding-left:var(--space-4);padding-right:var(--space-4)}.cr-table th:nth-child(2),.cr-table td:nth-child(2){display:none}}.fs-container{max-width:1100px;margin:0 auto;padding:32px 24px}.fs-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.fs-header-left{align-items:center;gap:10px;display:flex}.fs-header-left h2{color:var(--color-text,#1a2233);margin:0;font-size:1.25rem;font-weight:700}.fs-back-btn{color:var(--color-primary,#001a94);cursor:pointer;border-radius:var(--radius-sm,8px);background:0 0;border:none;align-items:center;gap:4px;padding:4px 8px;font-size:.85rem;font-weight:600;transition:background .15s;display:flex}.fs-back-btn:hover{background:var(--color-surface,#f5f7fa)}.fs-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fs-btn{border-radius:var(--radius-sm,8px);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.fs-btn-primary{background:var(--color-primary,#001a94);color:#fff}.fs-btn-primary:hover{opacity:.9}.fs-btn-primary:disabled{opacity:.5;cursor:not-allowed}.fs-btn-secondary{background:var(--color-surface,#f5f7fa);color:var(--color-text,#1a2233);border:1px solid var(--color-border,#e3e8ef)}.fs-btn-secondary:hover{background:#ebeef3}.fs-btn-danger{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.fs-btn-danger:hover{background:#fde8e8}.fs-btn-icon{background:var(--color-surface,#f5f7fa);border:1px solid var(--color-border,#e3e8ef);color:var(--color-text,#1a2233);padding:8px}.fs-btn-icon:hover{background:#ebeef3}.fs-btn-sm{padding:5px 12px;font-size:.8rem}.fs-breadcrumbs{background:var(--color-surface,#f5f7fa);border-radius:var(--radius-sm,8px);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:12px;padding:10px 14px;display:flex}.fs-crumb{color:var(--color-primary,#001a94);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:3px 6px;font-size:.82rem;transition:background .15s;display:inline-flex}.fs-crumb:hover{background:#e3e8ef}.fs-crumb.active{color:var(--color-text,#1a2233);cursor:default;font-weight:600}.fs-crumb.active:hover{background:0 0}.fs-error{color:#dc2626;border-radius:var(--radius-sm,8px);background:#fef2f2;border:1px solid #fecaca;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;font-size:.85rem;display:flex}.fs-error button{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:2px}.fs-new-folder{background:var(--color-surface,#f5f7fa);border:1px dashed var(--color-border,#e3e8ef);border-radius:var(--radius-sm,8px);align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;display:flex}.fs-new-folder input{border:1px solid var(--color-border,#e3e8ef);border-radius:6px;outline:none;flex:1;padding:6px 10px;font-size:.85rem}.fs-new-folder input:focus{border-color:var(--color-primary,#001a94);box-shadow:0 0 0 2px #001a941a}.fs-table-wrap{border:1px solid var(--color-border,#e3e8ef);border-radius:var(--radius-md,12px);background:#fff;overflow:hidden}.fs-table{border-collapse:collapse;width:100%;font-size:.85rem}.fs-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:#64748b;border-bottom:1px solid var(--color-border,#e3e8ef);background:var(--color-surface,#f5f7fa);padding:10px 14px;font-size:.78rem;font-weight:600}.fs-table tbody tr{border-bottom:1px solid var(--color-border,#e3e8ef);transition:background .1s}.fs-table tbody tr:last-child{border-bottom:none}.fs-table tbody tr:hover{background:#f8f9fc}.fs-table tbody tr.selected{background:#eef2ff}.fs-table td{vertical-align:middle;padding:10px 14px}.fs-file-name{align-items:center;gap:8px;font-weight:500;display:flex}.fs-file-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fs-meta{color:#64748b;font-size:.8rem}.fs-actions-cell{text-align:right;white-space:nowrap}.fs-action-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .15s}.fs-action-btn:hover{background:var(--color-surface,#f5f7fa);color:var(--color-primary,#001a94)}.fs-action-btn.danger:hover{color:#dc2626;background:#fef2f2}input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--color-primary,#001a94)}.fs-empty{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.fs-empty p{color:var(--color-text,#1a2233);margin:12px 0 4px;font-size:1rem;font-weight:600}.fs-empty span{font-size:.85rem}.fs-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:64px 24px;display:flex}.fs-spinner{border:3px solid var(--color-border,#e3e8ef);border-top-color:var(--color-primary,#001a94);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite fsSpin}@keyframes fsSpin{to{transform:rotate(360deg)}}@media (width<=768px){.fs-container{padding:16px 12px}.fs-header{flex-direction:column;align-items:flex-start}.fs-header-actions{justify-content:flex-start;width:100%}.fs-table th:nth-child(3),.fs-table td:nth-child(3),.fs-table th:nth-child(4),.fs-table td:nth-child(4){display:none}}.billing-page{max-width:960px}.billing-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;margin-bottom:24px;padding:24px}.section-title-row{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-title-row h2{color:var(--color-text);margin:0;font-size:17px;font-weight:700}.period-badge{background:var(--color-primary-light);color:var(--color-primary);border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600}.usage-summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.usage-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:18px}.usage-card.usage-total{background:var(--color-primary-light);border-color:var(--color-primary)}.usage-service{color:var(--color-text-muted);text-transform:capitalize;margin-bottom:6px;font-size:12px;font-weight:600}.usage-amount{color:var(--color-text);margin-bottom:4px;font-size:22px;font-weight:800}.usage-total .usage-amount{color:var(--color-primary)}.usage-detail{color:var(--color-text-muted);font-size:12px}.payment-methods-list{flex-direction:column;gap:12px;display:flex}.payment-card{background:var(--color-surface);border:2px solid var(--color-border-light);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:16px 20px;transition:all .15s;display:flex}.payment-card.default{border-color:var(--color-primary);background:var(--color-primary-light)}.payment-card-left{align-items:center;gap:14px;display:flex}.card-brand-icon{width:28px;height:28px;color:var(--color-text-secondary);flex-shrink:0}.card-info{flex-direction:column;gap:2px;display:flex}.card-brand-name{color:var(--color-text);font-size:14px;font-weight:600}.card-expiry{color:var(--color-text-muted);font-size:12px}.default-badge{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:3px 10px;font-size:10px;font-weight:700}.payment-card-actions{align-items:center;gap:8px;display:flex}.billing-empty-state{text-align:center;padding:40px 20px}.billing-empty-state.compact{padding:24px 20px}.billing-empty-icon{width:48px;height:48px;color:var(--color-text-muted);margin:0 auto 16px}.billing-empty-state h3{color:var(--color-text);margin:0 0 8px;font-size:16px;font-weight:700}.billing-empty-state p{color:var(--color-text-secondary);margin:0 0 16px;font-size:14px}.invoice-table-wrapper{border-radius:var(--radius-md);border:1px solid var(--color-border-light);overflow-x:auto}.invoice-table{border-collapse:collapse;width:100%;font-size:14px}.invoice-table thead{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.invoice-table th{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px;text-align:left;white-space:nowrap;padding:12px 16px;font-size:12px;font-weight:600}.invoice-table td{color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light);padding:14px 16px}.invoice-table tbody tr:last-child td{border-bottom:none}.invoice-table tbody tr:hover{background:var(--color-surface)}.invoice-number{font-family:SF Mono,Fira Code,monospace;font-size:13px;font-weight:600;color:var(--color-text)!important}.invoice-amount{font-weight:700;color:var(--color-text)!important}.invoice-status{text-transform:uppercase;letter-spacing:.3px;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.status-paid{color:#166534;background:#dcfce7}.status-open{color:#92400e;background:#fef3c7}.status-draft{background:var(--color-surface);color:var(--color-text-muted)}.status-void{color:#64748b;background:#f1f5f9}.status-failed{color:#991b1b;background:#fef2f2}.billing-modal{max-width:520px}.billing-modal .modal-header{border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.billing-modal .modal-header h2{color:var(--color-text);margin:0;font-size:18px;font-weight:700}.billing-modal .modal-body{padding:24px}.card-preview{aspect-ratio:1.586;color:#fff;background:linear-gradient(135deg,#374151 0%,#1f2937 50%,#111827 100%);border-radius:16px;flex-direction:column;justify-content:space-between;width:100%;max-width:360px;margin:0 auto 28px;padding:24px 28px;transition:background .5s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000002e,0 2px 8px #0000001a}.card-preview:before{content:"";background:#ffffff0f;border-radius:50%;width:200px;height:200px;position:absolute;top:-30%;right:-20%}.card-preview:after{content:"";background:#ffffff0a;border-radius:50%;width:250px;height:250px;position:absolute;bottom:-40%;left:-10%}.card-preview-visa{background:linear-gradient(135deg,#1a1f71 0%,#283593 50%,#1a237e 100%)}.card-preview-mastercard{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%)}.card-preview-amex{background:linear-gradient(135deg,#006fcf 0%,#0056a3 50%,#003d7a 100%)}.card-preview-discover{background:linear-gradient(135deg,#f60 0%,#e55b00 50%,#cc5000 100%)}.card-preview-brand{z-index:1;justify-content:flex-end;display:flex;position:relative}.card-preview-chip{z-index:1;margin-top:-4px;position:relative}.card-preview-number{z-index:1;letter-spacing:3px;opacity:.9;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:18px;font-weight:500;position:relative}.card-preview-bottom{z-index:1;justify-content:space-between;align-items:flex-end;display:flex;position:relative}.card-preview-name{text-transform:uppercase;letter-spacing:1.5px;opacity:.85;text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:11px;font-weight:600;overflow:hidden}.card-preview-expiry{letter-spacing:1px;opacity:.85;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:11px;font-weight:500}.custom-card-field{margin-bottom:16px}.custom-card-label{color:var(--color-text-secondary,#374151);letter-spacing:.01em;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.custom-card-input-wrapper{border:2px solid var(--color-border,#e5e7eb);background:#fff;border-radius:10px;align-items:center;height:48px;padding:0 14px;transition:all .2s;display:flex;position:relative}.custom-card-input-wrapper:hover{border-color:#d1d5db}.custom-card-input-wrapper.focused{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f61f}.custom-card-input-wrapper.complete{border-color:#22c55e}.custom-card-input-wrapper.complete.focused{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.custom-card-field-icon{color:#9ca3af;flex-shrink:0;margin-right:12px;transition:color .2s}.custom-card-input-wrapper.focused .custom-card-field-icon{color:var(--color-primary,#3b82f6)}.custom-card-input-wrapper.complete .custom-card-field-icon{color:#22c55e}.custom-card-stripe-input{flex:1;min-width:0;height:24px}.custom-card-native-input{color:#1f2937;background:0 0;border:none;outline:none;flex:1;height:100%;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}.custom-card-native-input::placeholder{color:#9ca3af}.custom-card-check{color:#22c55e;flex-shrink:0;margin-left:8px;animation:.3s checkPop}@keyframes checkPop{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.custom-card-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.card-error{border-radius:var(--radius-sm,8px);color:#991b1b;background:#fef2f2;border:1px solid #fecaca;align-items:center;gap:8px;margin-bottom:16px;padding:12px 14px;font-size:13px;animation:.2s fadeIn;display:flex}.btn-add-card{border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 24px;font-size:15px;font-weight:600;transition:all .2s;display:flex}.btn-add-card:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px #001a9433}.btn-add-card:disabled{opacity:.5;cursor:not-allowed}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin}.stripe-branding{text-align:center;color:var(--color-text-muted);justify-content:center;align-items:center;gap:6px;margin-top:16px;margin-bottom:0;font-size:12px;display:flex}.lock-icon{flex-shrink:0;width:14px;height:14px}.btn-icon-text{align-items:center;gap:4px;display:inline-flex}@media (width<=768px){.billing-section{padding:18px}.section-title-row{flex-direction:column;align-items:flex-start;gap:12px}.usage-summary-grid{grid-template-columns:1fr}.payment-card{flex-direction:column;align-items:flex-start;gap:14px}.payment-card-actions{justify-content:flex-end;width:100%}.invoice-table th:nth-child(5),.invoice-table td:nth-child(5){display:none}}@media (width<=500px){.invoice-table th:nth-child(2),.invoice-table td:nth-child(2){display:none}.billing-modal{max-width:100%;margin:0 10px}.custom-card-row{grid-template-columns:1fr}.card-preview{max-width:100%;padding:20px 22px}.card-preview-number{letter-spacing:2px;font-size:15px}}
