/* Base primitives: variables, reset, typography, forms and generic controls. */
:root{--bg:#07111f;--bg2:#0b1628;--panel:#0e1c31;--panel2:#11233d;--line:#223a5b;--line2:#31527c;
  --text:#eaf3ff;--muted:#8ea4bf;--blue:#2d7df0;--cyan:#18c7ff;--green:#2dde8a;--red:#ff4d68;--orange:#ffad33;--yellow:#f6d75a;
  --shadow:0 24px 70px rgba(0,0,0,.35);--radius:16px;--sidebar:292px;--top:78px;}
*{box-sizing:border-box}
html{min-height:100%}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% -10%,rgba(45,125,240,.26),transparent 34%),radial-gradient(circle at 95% 0,rgba(24,199,255,.15),transparent 30%),linear-gradient(135deg,#060b15,#07111f 55%,#081428);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.45;cursor:auto!important}
a{color:#7eb3ff;text-decoration:none}
a:hover{color:#b9d8ff}
b,strong{font-weight:800}
small,.hint,.muted{color:var(--muted)}
h1,h2,h3{margin:0 0 12px}
h1{font-size:28px;letter-spacing:-.03em}
h2{font-size:17px;letter-spacing:-.01em}
p{margin:0 0 10px;color:var(--muted)}
button,.button-link,input,select,textarea{font:inherit}
button,.button-link{border:1px solid #2c4b73;background:#10213a;color:var(--text);border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;transition:.18s ease;text-decoration:none}
button:hover,.button-link:hover{border-color:#4a77b6;transform:translateY(-1px);box-shadow:0 10px 26px rgba(45,125,240,.16)}
button:active{transform:translateY(0)}
form>button:not(.tab-button){width:auto}
input,select,textarea{width:100%;background:#081222;border:1px solid #284463;color:var(--text);border-radius:10px;padding:10px 12px;outline:none;min-height:38px}
textarea{min-height:90px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(45,125,240,.18)}
label{display:block;margin:0 0 7px;color:#b7c9df;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
code{font-family:Consolas,Menlo,monospace;color:#d8e8ff;background:#081321;border:1px solid #243b5b;border-radius:8px;padding:2px 7px}
.tab-button{width:100%!important;min-width:0!important;justify-content:flex-start!important;background:transparent;border:1px solid transparent;border-radius:12px;color:#b6c7dd;padding:12px 14px;font-weight:900;text-align:left}
.tab-button:before{opacity:.95;width:22px;text-align:center}
.tab-button:nth-child(1):before{content:"⌂"}
.tab-button:nth-child(2):before{content:"👥"}
.tab-button:nth-child(3):before{content:"☎"}
.tab-button:nth-child(4):before{content:"▣"}
.tab-button:nth-child(5):before{content:"▰"}
.tab-button:nth-child(6):before{content:"🤖"}
.tab-button:nth-child(7):before{content:"▤"}
.tab-button:nth-child(8):before{content:"⚙"}
.tab-button.active,.tab-button:hover{background:linear-gradient(135deg,rgba(45,125,240,.27),rgba(24,199,255,.11));border-color:#315b91;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 12px 30px rgba(45,125,240,.14)}
.app-search input{border:0;box-shadow:none;background:transparent;padding:0;min-height:0}
.action-buttons{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.notify-settings label{margin:0;text-transform:none;letter-spacing:0;font-size:13px;display:flex;gap:6px;align-items:center}
.notify-settings input{width:auto;min-height:auto}
.empty-state.small{padding:12px}
.ok-button{background:linear-gradient(135deg,#1f7aff,#18c7ff);border-color:#3389ff;color:#fff}
.soft-button,.secondary-button,.ghost-button{background:#0c1a2d;border-color:#264466;color:#dfeeff}
.delete-button,.danger-button{background:rgba(255,77,104,.14);border-color:rgba(255,77,104,.42);color:#ff9cab}
.warning-button{background:rgba(255,173,51,.14);border-color:rgba(255,173,51,.42);color:#ffd38b}
.checkbox-grid label{display:flex;gap:7px;align-items:center;background:#0a1729;border:1px solid #263f62;border-radius:10px;padding:9px;text-transform:none;letter-spacing:0}
.checkbox-grid input{width:auto;min-height:auto}
.cred-label{color:#99afca}
@media(max-width:900px){:root{--sidebar:0px}}
.small-action{min-height:32px;padding:7px 10px;border-radius:9px}
.small-textarea{min-height:70px}
.replace-request-form button:disabled{opacity:.62;cursor:not-allowed;transform:none;box-shadow:none}
:root{--anim-fast:160ms;
  --anim-normal:240ms;
  --easing:cubic-bezier(.2,.8,.2,1);}
button,.button-link,.tab-button,.soft-button,.ok-button,.danger-button,.warning-button{transition:transform var(--anim-fast) var(--easing),box-shadow var(--anim-fast),background var(--anim-fast),border-color var(--anim-fast),opacity var(--anim-fast)}
button:hover,.button-link:hover,.soft-button:hover,.ok-button:hover,.warning-button:hover{transform:translateY(-1px)}
button:active,.button-link:active{transform:translateY(0) scale(.99)}
.insight-card small{display:block;margin-top:10px;color:#93a9c4;font-weight:750}
.panel-title h2{font-size:17px;color:#f3f7ff;margin:0}
.closer-row small{grid-column:2/3;color:#8ea4bd}
.close-summary small{color:#8fa6c1}
.day-labels{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:-10px;color:#8198b4;font-size:12px;text-align:center}
@media(max-width:760px){.day-labels{font-size:11px}}
@media(max-width:520px){body{font-size:13px}.small-action{padding:6px 8px}.section-head h1,.section-head h2{font-size:22px}}
.page-head h1{font-size:24px}
.section-head h2{font-size:15px}
.compact-inline .mini-input{width:112px;min-height:30px;padding:6px 8px}
.small-modal{width:min(420px,94vw)}
.theme-minimal h1{font-size:18px!important;margin-bottom:6px!important}
.theme-minimal h2{font-size:14px!important;margin-bottom:6px!important}
.theme-minimal h3{font-size:13px!important;margin-bottom:5px!important}
.theme-minimal .hint,.theme-minimal small{font-size:11px!important;margin-bottom:4px!important;color:#7f91a6!important}
.theme-minimal .tab-button{min-height:26px!important;padding:5px 7px!important;border-radius:6px!important;font-size:11px!important;font-weight:750!important}
.theme-minimal .tab-button:before{width:14px!important}
.theme-minimal .tab-button.active,.theme-minimal .tab-button:hover{background:#122033!important;border-color:#263d57!important;box-shadow:none!important}
.theme-minimal button,.theme-minimal .button-link{min-height:26px!important;padding:5px 8px!important;border-radius:6px!important;font-size:11px!important;font-weight:750!important;box-shadow:none!important;transform:none!important;background:#0f1b2a!important;border-color:#24364b!important}
.theme-minimal button:hover,.theme-minimal .button-link:hover{box-shadow:none!important;transform:none!important;border-color:#3a5876!important}
.theme-minimal input,.theme-minimal select,.theme-minimal textarea{min-height:27px!important;padding:5px 7px!important;border-radius:6px!important;font-size:11px!important;background:#080f18!important;border-color:#223246!important}
.theme-minimal textarea{min-height:48px!important}
.theme-minimal label{font-size:10px!important;margin-bottom:3px!important}
.theme-minimal code{font-size:11px!important;border-radius:5px!important;padding:1px 5px!important;background:#09111c!important}
.theme-minimal .small-modal{width:min(360px,94vw)!important}
@media(max-width:860px){.tab-button{justify-content:center!important}.tab-button:before{display:none!important}}

/* Native same-origin page transitions keep the old frame visible until the
   next page is ready. This avoids a blank flash without delaying navigation. */
@view-transition{navigation:auto}
.mg-topbar{view-transition-name:manager-shell-navigation}
::view-transition-old(root){animation:sharedPageOut 90ms ease-out both}
::view-transition-new(root){animation:sharedPageIn 190ms cubic-bezier(.2,.8,.2,1) both}
::view-transition-old(manager-shell-navigation),
::view-transition-new(manager-shell-navigation){animation:none;mix-blend-mode:normal}
@keyframes sharedPageOut{to{opacity:.96}}
@keyframes sharedPageIn{from{opacity:.82;transform:translateY(3px)}to{opacity:1;transform:none}}
:root{--bg:#05040a;--bg2:#0b0712;--panel:#100d19;--panel2:#171126;--line:#332044;--line2:#5c2a78;
  --text:#f6f0ff;--muted:#a797bc;--blue:#9b5cff;--cyan:#d64bff;--green:#35f09a;--red:#ff2e5f;--orange:#ff8a2e;--yellow:#f9c74f;
  --shadow:0 26px 90px rgba(0,0,0,.58);--radius:18px;--sidebar:252px;--top:72px;}
body{background:radial-gradient(circle at 15% -12%,rgba(255,46,95,.22),transparent 31%),radial-gradient(circle at 86% 2%,rgba(155,92,255,.20),transparent 34%),radial-gradient(circle at 50% 115%,rgba(214,75,255,.10),transparent 42%),linear-gradient(135deg,#030205 0%,#07030e 48%,#13051d 100%)}
.tab-button{position:relative;overflow:hidden;color:#c9badf!important;border-color:transparent!important}
.tab-button:after{content:"";position:absolute;inset:auto 12px 4px 12px;height:1px;background:linear-gradient(90deg,transparent,#ff2e5f,#9b5cff,transparent);opacity:0;transition:.22s ease}
.tab-button.active,.tab-button:hover{background:linear-gradient(135deg,rgba(255,46,95,.19),rgba(155,92,255,.16))!important;border-color:rgba(155,92,255,.34)!important;color:#fff!important}
.tab-button.active:after,.tab-button:hover:after{opacity:1}
button,.button-link{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,46,95,.14),rgba(155,92,255,.14))!important;border-color:rgba(155,92,255,.34)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease,background .17s ease}
button:hover,.button-link:hover{transform:translateY(-1px);border-color:rgba(255,46,95,.58)!important;box-shadow:0 14px 36px rgba(255,46,95,.15),0 0 0 1px rgba(155,92,255,.12)}
button:active,.button-link:active{transform:translateY(0) scale(.99)}
.ok-button{background:linear-gradient(135deg,#ff2e5f 0%,#9b5cff 55%,#2511ff 100%)!important;border:0!important;box-shadow:0 16px 48px rgba(155,92,255,.22),0 0 32px rgba(255,46,95,.16)!important}
.danger-button{background:linear-gradient(135deg,#6d071c,#ff2e5f)!important;border-color:rgba(255,46,95,.46)!important}
.soft-button,.secondary-button,.ghost-button{background:rgba(255,255,255,.045)!important;border-color:rgba(155,92,255,.28)!important}
.fx-button{isolation:isolate}
input,select,textarea{background:#08050f!important;border-color:rgba(155,92,255,.28)!important;color:#fff!important}
input:focus,select:focus,textarea:focus{border-color:#ff2e5f!important;box-shadow:0 0 0 3px rgba(255,46,95,.16),0 0 24px rgba(155,92,255,.12)!important}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
*{scrollbar-width: thin; scrollbar-color: rgba(236,72,153,.72) rgba(13,18,34,.58);}
textarea{transition: height .18s ease, border-color .18s ease, box-shadow .18s ease;}
textarea:focus{box-shadow: 0 0 0 3px rgba(236,72,153,.12);}
#sipQuickModal input,#sipQuickModal select,#sipQuickModal textarea{max-width:100%}
:root{--radius: 12px;
  --sidebar: 210px;
  --top: 54px;}
html{font-size:14px;}
body{font-size:13px !important;
  line-height:1.32 !important;}
h1{font-size:22px !important; margin-bottom:6px !important;}
h2{font-size:15px !important; margin-bottom:6px !important;}
h3{font-size:14px !important; margin-bottom:5px !important;}
p{margin-bottom:6px !important;}
small,.hint,.muted{font-size:11px !important;}
button,.button-link,.tab-button,.secondary-button,.ghost-button,.ok-button,.warning-button,.danger-button,.soft-button{min-height:30px !important;
  padding:6px 10px !important;
  border-radius:9px !important;
  font-size:12px !important;
  gap:6px !important;}
input,select,textarea{min-height:32px !important;
  padding:7px 9px !important;
  border-radius:9px !important;
  font-size:12px !important;}
textarea{min-height:64px !important;}
label{margin-bottom:4px !important;
  font-size:10px !important;
  letter-spacing:.035em !important;}
