/* Shared components: controls, focus, feedback, masthead. Page files own layout only. */
@import url("./tokens.css");
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--suite-font);font-optical-sizing:auto;font-synthesis:none;font-feature-settings:"palt" 0;color:var(--suite-ink);line-height:var(--suite-leading-ui)}
button,input,select,textarea{font:inherit}img{max-width:100%}
a{color:var(--suite-blue);text-decoration:none}a:hover{text-decoration:none}
button{cursor:pointer}button:disabled{cursor:default;opacity:.55}
::selection{background:var(--suite-blue-100);color:var(--suite-ink)}
:is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--suite-blue);outline-offset:3px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link,.skip{position:fixed;z-index:100;top:-100px;left:16px;padding:12px 20px;background:var(--suite-ink);color:var(--suite-surface);border-radius:var(--suite-control)}
.skip-link:focus,.skip:focus{top:12px}
:is(.button,.ui-button){display:inline-flex;align-items:center;justify-content:center;gap:var(--suite-space-2);min-height:44px;padding:10px 16px;border:1px solid var(--suite-neutral-300);border-radius:var(--suite-control);background:var(--suite-surface);color:var(--suite-neutral-600);font:500 var(--suite-text-sm)/1.5 var(--suite-font);text-decoration:none;box-shadow:none;transition:background var(--suite-duration),border-color var(--suite-duration)}
:is(.button,.ui-button):hover{background:var(--suite-back);border-color:var(--suite-blue-200);text-decoration:none;transform:none}
:is(.button,.ui-button):is(.primary,.button-primary){background:var(--suite-blue);border-color:var(--suite-blue);color:var(--suite-surface)}
:is(.button,.ui-button):is(.primary,.button-primary):hover{background:var(--suite-blue-hover);border-color:var(--suite-blue-hover)}
:is(.button,.ui-button):is(.danger,.button-danger){color:var(--suite-red);border-color:var(--suite-red);background:var(--suite-surface)}
.button-small{min-height:36px;padding:6px 12px;font-size:var(--suite-text-xs)}
.button img,.ui-button img{width:18px;height:18px;flex:none}.button.primary img,.button-primary img{filter:brightness(0) invert(1)}
:is(input,select,textarea):not(:where([type=checkbox],[type=radio])){width:100%;min-height:44px;border:1px solid var(--suite-neutral-300);border-radius:var(--suite-control);background:var(--suite-surface);color:var(--suite-ink);padding:10px 12px;font-size:var(--suite-text-sm);font-weight:400;line-height:var(--suite-leading-ui)}
textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--suite-muted);opacity:1}
:is(input,select,textarea):focus{border-color:var(--suite-blue)}
:is(input,select,textarea):disabled{background:var(--suite-neutral-100);color:var(--suite-muted)}
input[type=checkbox],input[type=radio]{accent-color:var(--suite-blue);width:18px;height:18px;min-height:0;padding:0}
.ui-field{display:grid;align-content:start;gap:var(--suite-space-2);font-size:var(--suite-text-sm);font-weight:var(--suite-weight-label)}
.ui-help,.help,.form-hint{color:var(--suite-muted);font-size:var(--suite-text-xs);line-height:var(--suite-leading-reading)}
.ui-message{border:1px solid var(--suite-line);background:var(--suite-back);border-radius:var(--suite-control);padding:12px 16px;font-size:var(--suite-text-sm);overflow-wrap:anywhere}
.ui-message:empty{display:none}.ui-message.error{color:var(--suite-red);border-color:var(--suite-red);background:var(--suite-red-soft)}.ui-message.success{color:var(--suite-green);border-color:var(--suite-green);background:var(--suite-green-soft)}
.ui-badge,.status{display:inline-block;padding:3px 8px;border-radius:var(--suite-radius-small);font-size:var(--suite-text-xs);background:var(--suite-neutral-100);color:var(--suite-neutral-600)}
.ui-badge.published,.status.completed{color:var(--suite-green);background:var(--suite-green-soft)}.ui-badge.changed,.status.interrupted{color:var(--suite-amber);background:var(--suite-amber-soft)}.status.running{color:var(--suite-blue);background:var(--suite-blue-soft)}.status.failed{color:var(--suite-red);background:var(--suite-red-soft)}
dialog{color:var(--suite-ink);background:var(--suite-surface);border:1px solid var(--suite-line);border-radius:var(--suite-radius);width:580px;max-width:calc(100vw - 40px);padding:var(--suite-space-6);box-shadow:var(--suite-shadow-menu);max-height:calc(100dvh - 32px)}
dialog::backdrop{background:var(--suite-backdrop);backdrop-filter:blur(3px)}
.toast{padding:12px 16px;border:1px solid var(--suite-green);border-radius:var(--suite-control);background:var(--suite-green-soft);box-shadow:var(--suite-shadow-menu);max-width:420px;color:var(--suite-green);font-size:var(--suite-text-sm)}.toast.error{background:var(--suite-red-soft);border-color:var(--suite-red);color:var(--suite-red)}
.ui-empty{padding:48px 24px;text-align:center;color:var(--suite-muted)}.ui-empty h2,.ui-empty h3{color:var(--suite-ink);font-size:var(--suite-title-sm);font-weight:600;margin:0 0 12px}.ui-empty p{margin:0 0 20px;line-height:1.85}
.suite-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--suite-header);padding:0 32px;display:grid;grid-template-columns:1fr auto 1fr;gap:28px;align-items:center;background:var(--suite-surface);border-bottom:1px solid var(--suite-line);line-height:1.4}
.suite-brand{display:flex;gap:12px;align-items:center;width:max-content;color:var(--suite-ink);font-weight:600;font-size:20px;letter-spacing:-.025em;white-space:nowrap}.suite-brand:hover{text-decoration:none}
.suite-brand img{width:30px;height:30px;object-fit:contain;flex:none}
.suite-brand small{display:block;color:var(--suite-muted);font-size:var(--suite-text-xs);font-weight:400;letter-spacing:0;margin-top:4px}
.suite-destinations{display:flex;gap:36px;height:100%;align-items:stretch}
.suite-destinations a{display:flex;align-items:center;color:var(--suite-neutral-600);font-size:var(--suite-text-sm);font-weight:500;white-space:nowrap;border-bottom:2px solid transparent;padding-top:2px}
.suite-destinations a:hover{color:var(--suite-blue);text-decoration:none}.suite-destinations a[aria-current=page]{color:var(--suite-blue);border-bottom-color:var(--suite-blue);font-weight:600}
.suite-tools{justify-self:end;display:flex;gap:12px;align-items:center}
.suite-environment{font-size:var(--suite-text-xs);color:var(--suite-muted);padding:5px 9px;border-radius:var(--suite-radius-small);background:var(--suite-neutral-100);white-space:nowrap}
.suite-account{position:relative;font-size:var(--suite-text-sm)}.suite-account:has([data-admin-user][hidden]){display:none}
.suite-account summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;min-height:38px;padding:7px 10px;border:1px solid var(--suite-line);border-radius:var(--suite-control);font-size:var(--suite-text-xs)}
.suite-account summary::-webkit-details-marker{display:none}.suite-account summary img{width:16px;height:16px;transition:transform var(--suite-duration)}.suite-account[open] summary img{transform:rotate(90deg)}
.suite-account-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:168px;display:grid;gap:4px;padding:8px;background:var(--suite-surface);border:1px solid var(--suite-line);border-radius:var(--suite-radius);box-shadow:var(--suite-shadow-menu)}
.suite-account-menu :is(button,a){font:inherit;text-align:left;border:0;border-radius:var(--suite-control);padding:10px 12px;background:var(--suite-surface);color:var(--suite-ink);white-space:nowrap}
.suite-account-menu :is(button,a):hover{background:var(--suite-blue-soft);color:var(--suite-blue);text-decoration:none}
.suite-header [data-admin-user]{font:inherit;max-width:110px;overflow:hidden;text-overflow:ellipsis}
.suite-public-header{grid-template-columns:1fr auto;padding-inline:max(32px,calc((100% - var(--suite-content))/2))}.suite-public-header .suite-destinations{gap:20px}.suite-public-header .suite-destinations a{font-size:var(--suite-text-base);padding-inline:12px;justify-content:center;min-width:44px}
.suite-nav-icon{width:20px;height:20px;opacity:.76;flex:none}
.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--suite-blue);font-weight:500}.text-link img{width:18px;height:18px}
@media(max-width:1000px){.suite-header{padding-inline:24px;gap:20px}.suite-brand{font-size:18px}.suite-destinations{gap:24px}.suite-environment{display:none}}
@media(max-width:650px){dialog{padding:24px 20px}.suite-header{display:flex;flex-wrap:wrap;align-content:start;gap:0;padding:14px 20px 0}.suite-brand{height:40px;width:100%;font-size:18px}.suite-brand img{width:28px;height:28px}.suite-destinations{height:57px;gap:24px}.suite-destinations a{font-size:var(--suite-text-sm)}.suite-tools{position:absolute;right:20px;top:18px}.suite-account [data-admin-user]{max-width:72px}.suite-account summary{font-size:var(--suite-text-xs);padding-inline:7px}.suite-public-header .suite-destinations{width:100%;justify-content:space-between;gap:12px}:is(input,select,textarea){font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
