#header{display:flex;background-color:var(--background);border-bottom:1px solid var(--border-color);position:sticky;z-index:100;justify-content:space-between;align-items: center;padding:.75rem 1.5rem;top:0}.logo{color:var(--text-primary);text-decoration:none;font-size:1.25rem;font-weight:600}.user-pill{color:var(--text-secondary);text-decoration:none;background-color:var(--surface);border:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:9999px;max-width:50vw;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.user-pill:hover,.user-pill[aria-current=page]{color:var(--text-primary);border-color:var(--text-secondary)}@media (max-width:768px){#header{padding:.75rem 1rem}.logo{font-size:1.125rem}}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items: center;gap:1rem;min-height:60vh}.spinner{border:4px solid var(--border-color);border-top-color:var(--text-primary);animation:spin 1s linear infinite;border-radius:50%;width:48px;height:48px}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:var(--text-muted);font-size:.875rem}.desktop-only{text-align:center;display:flex;flex-direction:column;gap:1rem;max-width:420px;margin:4rem auto 0}.desktop-only h2{font-size:1.5rem;font-weight:600}.desktop-only p{color:var(--text-secondary)}.desktop-only-link{display:block;text-decoration:none;padding:.875rem 1rem}.dashboard-container{max-width:900px;margin:0 auto}.dashboard-container h2{color:var(--text-primary);margin-bottom:2rem;font-size:2rem;font-weight:600}.login-container{display:flex;justify-content:center;align-items: center;min-height:60vh}.login-card{background-color:var(--surface);box-shadow:var(--shadow-lg);border-radius:.5rem;width:100%;max-width:400px;padding:2rem}.login-card h2{color:var(--text-primary);margin-bottom:.5rem;font-size:1.875rem;font-weight:600}.subtitle{color:var(--text-muted);margin-bottom:2rem;font-size:.875rem}.login-info{color:var(--text-muted);text-align:center;margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.5rem}@media (max-width:768px){.login-card{padding:1.5rem}}.oncall-container{max-width:480px;margin:0 auto}.oncall-container h2{font-size:1.5rem;font-weight:600}.oncall-user{color:var(--text-muted);margin-bottom:1.5rem;font-size:.875rem}.oncall-card{background-color:var(--surface);border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.oncall-card h3{font-size:1rem;font-weight:600}.oncall-card .aws-check{flex-direction:column;align-items:stretch}.oncall-card button{min-height:44px}.oncall-empty{color:var(--text-muted);font-size:.875rem}.profile-container{max-width:900px;margin:0 auto}.profile-container h2{color:var(--text-primary);margin-bottom:2rem;font-size:2rem;font-weight:600}.sign-out{min-height:44px}@media (max-width:768px){.profile-container h2{margin-bottom:1.25rem;font-size:1.5rem}.sign-out{width:100%}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#fafafa;--primary-hover:#e4e4e7;--secondary-color:#71717a;--success-color:#22c55e;--error-color:#ef4444;--background:#09090b;--surface:#18181b;--surface-hover:#27272a;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#71717a;--border-color:#27272a;--border-color-hover:#3f3f46;--shadow:0 1px 2px 0 #00000080;--shadow-lg:0 10px 15px -3px #00000080,0 4px 6px -4px #00000080;--accent-blue:#3b82f6;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 1rem}#main-content{min-height:calc(100vh - 80px);padding:2rem 1rem}.btn,.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:.375rem;padding:.625rem 1rem;transition:all .15s ease-in-out;font-family:inherit;font-size:.875rem;font-weight:500}.btn-primary{background-color:var(--primary-color);color:var(--background);width:100%}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background-color:var(--border-color-hover);color:var(--text-muted);cursor:not-allowed;opacity:.5}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-color);background-color:#0000}.btn-secondary:hover{background-color:var(--surface-hover);border-color:var(--border-color-hover)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-group input{border:1px solid var(--border-color);background-color:var(--background);color:var(--text-primary);border-radius:.375rem;padding:.625rem .875rem;transition:all .15s ease-in-out;font-size:.875rem}.form-group input:hover{border-color:var(--border-color-hover)}.form-group input:focus{outline:none;border-color:var(--text-muted);background-color:var(--background)}.error-message{color:#fca5a5;background-color:#ef44441a;border:1px solid #ef44444d;border-radius:.375rem;padding:.75rem;font-size:.875rem}.info-card{background-color:var(--surface);border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem}.info-card h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.info-value{color:var(--text-primary);word-break:break-all;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}.page-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.btn-back{color:var(--text-secondary);cursor:pointer;background-color:#0000;border:none;align-self: flex-start;padding:.5rem 0;transition:color .15s ease-in-out;font-size:.875rem}.btn-back:hover{color:var(--text-primary)}.aws-check{display:flex;flex-wrap:wrap;align-items: center;gap:1rem;margin-top:1rem}.aws-check-result{color:var(--text-secondary);word-break:break-all;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}.aws-check-result.ok{color:var(--success-color)}.aws-check-result.error{color:#fca5a5}.hidden{display:none!important}
