
/* V10 clarity + usability additions. Existing layout/colors and features remain unchanged. */
.quick-search-launch{max-width:320px;min-width:155px;display:inline-flex;align-items:center;gap:9px;border-radius:10px;border:1px solid #75333e;background:#261016;color:#f4c5cd;font-size:12px;padding:10px 12px;text-align:left;white-space:nowrap}
.quick-search-launch:hover,.quick-search-launch:focus-visible{border-color:#fb5d6d;background:#431322}
.quick-search-launch kbd{margin-left:auto;border:1px solid #713842;padding:2px 5px;border-radius:5px;color:#b9959e;font-size:10px;font-family:inherit}
.quick-search-open{overflow:hidden}
.quick-search-backdrop{position:fixed;inset:0;background:#070408bd;z-index:190}
.quick-search-dialog{position:fixed;z-index:191;left:50%;top:min(13vh,125px);transform:translateX(-50%);background:linear-gradient(135deg,#2a0f18,#110b0f);border:1px solid #ac3b4e;box-shadow:0 28px 80px #000d;border-radius:16px;width:min(calc(100vw - 24px),630px);max-height:78vh;display:flex;flex-direction:column;overflow:hidden;color:#fff}
.quick-search-head{display:flex;align-items:center;gap:10px;padding:16px;border-bottom:1px solid #5f2634}
.quick-search-head>span{font-size:24px;color:#fb6e80}
.quick-search-head input{min-width:0;flex:1;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;color:#fff;font-size:16px}
.quick-search-head input::placeholder{color:#b88c98}.quick-search-hint{margin:0;padding:10px 17px;font-size:11px;color:#c5a1ac}.quick-search-results{overflow:auto;padding:0 8px 12px;min-height:50px}
.quick-search-result{background:transparent;width:100%;display:flex;align-items:center;gap:13px;text-align:left;border:0;color:white;border-radius:9px;padding:12px;min-height:62px}
.quick-search-result:hover,.quick-search-result:focus-visible{background:#632030;outline:1px solid #a74558}
.quick-result-mark{display:grid;place-items:center;background:#641525;border-radius:9px;color:#ffc4cc;width:37px;height:37px;flex:none;font-size:19px}
.quick-result-text{min-width:0;flex:1}.quick-result-text strong,.quick-result-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-result-text strong{font-size:13px}.quick-result-text small{font-size:11px;color:#cc9da8;margin-top:5px}
.quick-result-arrow{color:#cf8e9c}.quick-search-empty{padding:24px 15px;color:#dfafbb;font-size:12px;text-align:center}
.action-center{margin:0 0 15px;border:1px solid #71313f}.action-center .panel-head{padding:17px 20px 10px}.action-center .panel-head h2{font-size:19px}.attention-total{font-size:11px;color:#facad1;background:#521b2a;border:1px solid #87384d;border-radius:99px;padding:6px 10px;white-space:nowrap}
.attention-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:11px 15px 17px}
.attention-item{border:1px solid #65313b;background:linear-gradient(165deg,#31141e,#210d15);color:#fff;border-radius:12px;text-align:left;padding:13px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;transition:border-color .15s,transform .15s;cursor:pointer}
.attention-item:hover,.attention-item:focus-visible{border-color:#e95d70;transform:translateY(-2px)}.attention-item .attention-count{font-size:28px;font-weight:850;line-height:1.1;color:#fff}.attention-item.danger .attention-count{color:#ff6f82}.attention-item.warning .attention-count{color:#ffc778}.attention-item strong{font-size:12px;line-height:1.3}.attention-item small{font-size:10px;color:#c39ea8;line-height:1.5;min-height:28px}.attention-open{color:#ffb5be;font-size:10px;font-weight:750;margin-top:auto}
.ticket-result-counter{font-size:11px;color:#d2a9b3;padding:0 3px 10px}.filter-select:focus-visible{outline:2px solid #ff5a6c}
.stock-filter-extras{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.stock-filter-extras select{max-width:185px}.stock-low-label{font-size:11px;color:#f4c5cc;display:flex;gap:6px;align-items:center;white-space:nowrap}.stock-low-label input{width:15px;height:15px;accent-color:#f31e3f}
.staff-next-steps{margin-bottom:16px;padding:16px 18px;border-radius:12px;background:#280e19;border:1px solid #6c3441;display:flex;justify-content:space-between;align-items:center;gap:12px}.staff-next-steps strong{display:block;font-size:13px;color:white}.staff-next-steps p{color:#ddb1bd;font-size:12px;line-height:1.5;margin:5px 0 0}
@media(max-width:1500px){.attention-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:950px){.quick-search-launch{min-width:0}.quick-search-launch kbd{display:none}.attention-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.quick-search-launch{font-size:0;padding:8px 10px;min-height:36px}.quick-search-launch span{font-size:19px}.attention-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.action-center .panel-head{flex-wrap:wrap}.action-center .panel-head h2{font-size:17px}.attention-item{min-height:126px}.attention-item small{font-size:10px}.quick-search-dialog{top:7vh;max-height:85vh}.stock-filter-extras{width:100%}.stock-filter-extras select{max-width:100%;flex:1}.staff-next-steps{align-items:flex-start;flex-direction:column}}
@media(max-width:350px){.attention-grid{grid-template-columns:1fr 1fr}.attention-item{padding:10px}}
@media(prefers-reduced-motion:reduce){.attention-item{transition:none}.attention-item:hover{transform:none}}
@media(max-width:700px){.topbar .top-brand-label{font-size:15px}.topbar .breadcrumb>span,.topbar .breadcrumb>strong{display:none}.topbar .demo-flag,.topbar .today-pill{display:none}.top-right{gap:7px}.top-avatar{width:30px;height:30px;font-size:11px}.refresh-action{padding:7px 8px}.quick-search-launch{padding:7px 8px}}

/* V11 — multi-department service desk and person-level access control */
.department-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}
.dept-summary-card{border:1px solid #71313f;background:linear-gradient(155deg,#32121b,#1d0b11);border-radius:12px;padding:13px;min-width:0}
.dept-summary-card span{display:block;min-height:34px;color:#e8bdc5;font-size:11px;line-height:1.4;font-weight:700}
.dept-summary-card strong{display:block;color:#fff;font-size:27px;line-height:1.1;margin:8px 0 3px}
.dept-summary-card small{color:#c58e9b;font-size:10px}
.permission-editor{border:1px solid #71313f;border-radius:12px;background:#1b0b11;padding:15px;margin:16px 0}
.permission-editor-head h3{font-size:14px;color:#fff;margin:0 0 5px}
.permission-editor-head p{font-size:11px;line-height:1.55;color:#cda6af;margin:0 0 12px}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.permission-toggle{display:flex;align-items:center;gap:9px;min-height:40px;padding:8px 10px;border:1px solid #5d2a35;background:#260e16;border-radius:8px;color:#f2dce0;font-size:11px;line-height:1.35;cursor:pointer}
.permission-toggle input{width:17px;height:17px;accent-color:#ed1b35;flex:none}
.permission-toggle:has(input:checked){border-color:#a74657;background:#3a111c;color:#fff}
.permission-toggle:has(input:disabled){opacity:.65;cursor:not-allowed}
.ticket-dept-stats{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px}
.ticket-department-board{margin-bottom:14px;border-color:#71313f}
.ticket-department-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:12px 15px 16px}
.ticket-dept-card{border:1px solid #6b2c3a;background:linear-gradient(150deg,#35131d,#1f0c12);border-radius:10px;padding:12px;text-align:left;color:#f5dce0;min-width:0;cursor:pointer}
.ticket-dept-card:hover,.ticket-dept-card.selected{border-color:#ff5a6c;box-shadow:0 0 14px #ff243b22}
.ticket-dept-card span{display:block;font-size:10px;line-height:1.4;min-height:29px;color:#e5b8c1}
.ticket-dept-card strong{display:block;font-size:25px;color:#fff;margin:5px 0}
.ticket-dept-card small{font-size:10px;color:#c78e9b}
.ticket-flow-banner{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:12px 15px;margin:0 0 14px;border:1px solid #6b2b39;border-radius:11px;background:linear-gradient(90deg,#31101a,#1b0a10);overflow-x:auto}
.flow-step{font-size:10px;font-weight:750;color:#b98b96;white-space:nowrap;padding:6px 9px;border-radius:7px}
.flow-step.active{background:#641827;color:#fff;border:1px solid #a63d4e}
.flow-arrow{color:#ef6576;font-size:14px;flex:none}
.ticket-advanced-filters{align-items:center}
.ticket-intake-note{padding:12px 14px;border:1px solid #8a3948;background:#3a101a;border-radius:9px;color:#f2cbd2;font-size:11px;line-height:1.6;margin:12px 0}
.ticket-fixed{display:flex;flex-direction:column;gap:7px;padding:13px;border:1px solid #69303b;background:#260e15;border-radius:9px;margin:12px 0;color:#e5bdc4;font-size:11px}
.ticket-fixed strong{color:#fff;font-size:15px}
.ticket-history{margin:15px 0;border-top:1px solid #63303a;padding-top:13px}
.ticket-history h3{font-size:13px;color:#fff;margin:0 0 12px}
.ticket-timeline{display:flex;flex-direction:column;gap:0}
.ticket-event{display:flex;gap:10px;padding:0 0 13px;position:relative}
.ticket-event:not(:last-child):before{content:'';position:absolute;left:5px;top:12px;bottom:0;width:1px;background:#733241}
.ticket-event-dot{width:11px;height:11px;border-radius:50%;background:#f32b43;border:2px solid #ffabb5;flex:none;margin-top:3px;z-index:1}
.ticket-event>div{min-width:0;flex:1}
.ticket-event b{display:block;color:#fff;font-size:11px}
.ticket-event p{font-size:11px;line-height:1.5;color:#e4c2c8;margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.ticket-event small{color:#b88a95;font-size:9px}
@media(max-width:1200px){.department-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ticket-department-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ticket-dept-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.department-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dept-summary-card{padding:10px}.dept-summary-card strong{font-size:23px}.permission-grid{grid-template-columns:1fr}.permission-editor{padding:11px}.ticket-department-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:10px}.ticket-dept-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-flow-banner{justify-content:flex-start}.ticket-advanced-filters select{min-width:100%;max-width:100%}.ticket-advanced-filters .search-wrap{min-width:100%}}
@media(prefers-reduced-motion:reduce){.ticket-dept-card{transition:none}}


/* The Express Deck V12.3.3 — motion design. Presentation-only; dark theme and all workflows preserved. */
@keyframes ed33-enter-left{from{opacity:0;transform:translate3d(-16px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes ed33-enter-right{from{opacity:0;transform:translate3d(18px,0,0) scale(.99)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes ed33-rise{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes ed33-reveal{from{opacity:0}to{opacity:1}}
@keyframes ed33-glow{0%,100%{box-shadow:0 0 0 1px rgba(255,93,112,.16),0 22px 58px rgba(0,0,0,.23)}50%{box-shadow:0 0 0 1px rgba(255,93,112,.27),0 24px 64px rgba(128,13,39,.28)}}
@keyframes ed33-drawer{from{opacity:.72;transform:translate3d(22px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes ed33-press{from{transform:scale(.985)}to{transform:scale(1)}}

/* Login, registration, password change and first-time setup share the same original layout. */
.auth-screen .auth-art>header{animation:ed33-enter-left .5s cubic-bezier(.2,.75,.2,1) both}
.auth-screen .auth-hero{animation:ed33-enter-left .62s .07s cubic-bezier(.2,.75,.2,1) both}
.auth-screen .auth-hero h1{animation:ed33-rise .6s .12s cubic-bezier(.2,.75,.2,1) both}
.auth-screen .auth-hero h3,.auth-screen .auth-hero>p{animation:ed33-reveal .65s .19s ease both}
.auth-screen .feature-strip .hero-feature{animation:ed33-rise .45s cubic-bezier(.2,.8,.2,1) both;transition:background-color .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease}
.auth-screen .feature-strip .hero-feature:nth-child(1){animation-delay:.15s}
.auth-screen .feature-strip .hero-feature:nth-child(2){animation-delay:.2s}
.auth-screen .feature-strip .hero-feature:nth-child(3){animation-delay:.25s}
.auth-screen .feature-strip .hero-feature:nth-child(4){animation-delay:.3s}
.auth-screen .feature-strip .hero-feature:nth-child(5){animation-delay:.35s}
.auth-screen .feature-strip .hero-feature:hover{transform:translateY(-3px);background-color:rgba(255,72,93,.07);border-color:rgba(255,105,123,.42);box-shadow:0 10px 25px rgba(0,0,0,.14)}
.auth-screen .auth-card{animation:ed33-enter-right .54s .06s cubic-bezier(.2,.8,.2,1) both}
.auth-screen .auth-box>.eyebrow,.auth-screen .auth-box>h2,.auth-screen .auth-box>p{animation:ed33-rise .4s .13s ease both}
.auth-screen .auth-box .form-field{animation:ed33-rise .4s cubic-bezier(.2,.8,.2,1) both}
.auth-screen .auth-box .form-field:nth-of-type(1){animation-delay:.19s}
.auth-screen .auth-box .form-field:nth-of-type(2){animation-delay:.23s}
.auth-screen .auth-box .form-field:nth-of-type(3){animation-delay:.27s}
.auth-screen .auth-box .form-field:nth-of-type(4){animation-delay:.31s}
.auth-screen .auth-box .form-field:nth-of-type(n+5){animation-delay:.34s}
.auth-screen .auth-box .btn.primary{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .22s ease,filter .22s ease}
.auth-screen .auth-box .btn.primary:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 10px 28px rgba(205,33,56,.28)}
.auth-screen .auth-box .btn.primary:active{transform:translateY(0) scale(.99)}
.auth-screen .auth-switch-btn{transition:color .2s ease,text-decoration-color .2s ease,transform .2s ease}
.auth-screen .auth-switch-btn:hover{transform:translateY(-1px)}
.auth-screen .form-field input,.auth-screen .form-field select{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.auth-screen .form-field input:focus,.auth-screen .form-field select:focus{box-shadow:0 0 0 3px rgba(235,62,83,.16);border-color:#f66a7b}
.auth-screen .password-visibility{transition:transform .2s ease,color .2s ease}
.auth-screen .password-visibility:hover{transform:translateY(-50%) scale(1.08)}

/* Navigation feedback and fresh page entrance; no delayed routing or extra event handlers. */
.app-shell .content{animation:ed33-rise .26s cubic-bezier(.2,.7,.2,1) both}
.app-shell .page-heading{animation:ed33-enter-left .33s cubic-bezier(.2,.7,.2,1) both}
.app-shell .breadcrumb strong{animation:ed33-reveal .32s ease both}
.app-shell .side-item{transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.app-shell .side-item:not(.active):hover{transform:translateX(3px)}
.app-shell .side-item:active{transform:translateX(1px) scale(.995)}
.app-shell .topbar .icon-plain,.app-shell .quick-search-launch{transition:background-color .2s ease,color .2s ease,transform .2s ease,border-color .2s ease}
.app-shell .topbar .icon-plain:hover,.app-shell .quick-search-launch:hover{transform:translateY(-1px)}
.app-shell .btn,.app-shell .link-action{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .2s ease,transform .18s ease}
.app-shell .btn:not(:disabled):hover,.app-shell .link-action:hover{transform:translateY(-1px)}
.app-shell .btn:not(:disabled):active,.app-shell .link-action:active{transform:translateY(0) scale(.985)}
.app-shell .panel{transition:border-color .22s ease,box-shadow .22s ease}
.app-shell .panel:hover{border-color:rgba(255,105,123,.28)}
.app-shell .stat-card,.app-shell .ops-metric-card{transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease}
.app-shell .stat-card:hover,.app-shell .ops-metric-card:hover{transform:translateY(-2px);border-color:rgba(244,103,119,.35);box-shadow:0 13px 28px rgba(0,0,0,.18)}
.app-shell .data-table tbody tr{transition:background-color .16s ease}
.app-shell input,.app-shell select,.app-shell textarea{transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.app-shell input:focus,.app-shell select:focus,.app-shell textarea:focus{box-shadow:0 0 0 3px rgba(232,67,89,.13)}
.app-shell .tag{transition:background-color .2s ease,border-color .2s ease}

/* Drawers, search and notifications appear without intercepting input or changing routing. */
#modal-root .overlay{animation:ed33-reveal .2s ease both}
#modal-root .drawer{animation:ed33-drawer .29s cubic-bezier(.2,.78,.2,1) both}
#modal-root .drawer .drawer-head{animation:ed33-reveal .25s .05s ease both}
#modal-root .drawer .form-field input,#modal-root .drawer .form-field select,#modal-root .drawer .form-field textarea{transition:border-color .18s ease,box-shadow .18s ease}
#modal-root .drawer .form-field input:focus,#modal-root .drawer .form-field select:focus,#modal-root .drawer .form-field textarea:focus{box-shadow:0 0 0 3px rgba(234,69,91,.16)}
#modal-root .drawer-actions .btn{transition:transform .18s ease,box-shadow .18s ease}
#modal-root .drawer-actions .btn:not(:disabled):hover{transform:translateY(-1px)}
#quick-search-root .quick-search-backdrop{animation:ed33-reveal .18s ease both}
#quick-search-root .quick-search-dialog{animation:ed33-reveal .25s ease both}
#quick-search-root [data-quick-kind]{transition:background-color .18s ease,transform .18s ease}
#quick-search-root [data-quick-kind]:hover{transform:translateX(2px)}
#toast-holder .toast{animation:ed33-rise .23s ease both}

/* Keep motion subtle and responsive on phones and when device/user requests less motion. */
@media(max-width:700px){
 .auth-screen .auth-art>header,.auth-screen .auth-hero{animation-duration:.38s}
 .auth-screen .auth-card{animation-duration:.38s;animation-delay:0s}
 .app-shell .side-item:not(.active):hover{transform:none}
 .app-shell .stat-card:hover,.app-shell .ops-metric-card:hover{transform:none}
 #modal-root .drawer{animation-duration:.21s}
}
@media(prefers-reduced-motion:reduce){
 .auth-screen .auth-art>header,.auth-screen .auth-hero,.auth-screen .auth-hero h1,.auth-screen .auth-hero h3,.auth-screen .auth-hero>p,.auth-screen .feature-strip .hero-feature,.auth-screen .auth-card,.auth-screen .auth-box>.eyebrow,.auth-screen .auth-box>h2,.auth-screen .auth-box>p,.auth-screen .auth-box .form-field,
 .app-shell .content,.app-shell .page-heading,.app-shell .breadcrumb strong,#modal-root .overlay,#modal-root .drawer,#modal-root .drawer .drawer-head,#quick-search-root .quick-search-backdrop,#quick-search-root .quick-search-dialog,#toast-holder .toast{animation:none!important}
 .auth-screen .auth-box .btn.primary,.auth-screen .auth-switch-btn,.auth-screen .form-field input,.auth-screen .form-field select,.auth-screen .password-visibility,.auth-screen .feature-strip .hero-feature,
 .app-shell .side-item,.app-shell .topbar .icon-plain,.app-shell .quick-search-launch,.app-shell .btn,.app-shell .link-action,.app-shell .panel,.app-shell .stat-card,.app-shell .ops-metric-card,.app-shell input,.app-shell select,.app-shell textarea,
 #modal-root .drawer .form-field input,#modal-root .drawer .form-field select,#modal-root .drawer .form-field textarea,#modal-root .drawer-actions .btn,#quick-search-root [data-quick-kind]{transition:none!important}
 .auth-screen .auth-box .btn.primary:hover,.auth-screen .auth-switch-btn:hover,.auth-screen .password-visibility:hover,.auth-screen .feature-strip .hero-feature:hover,.app-shell .side-item:hover,.app-shell .side-item:active,.app-shell .btn:hover,.app-shell .btn:active,.app-shell .link-action:hover,.app-shell .topbar .icon-plain:hover,.app-shell .quick-search-launch:hover,.app-shell .stat-card:hover,.app-shell .ops-metric-card:hover,#modal-root .drawer-actions .btn:hover,#quick-search-root [data-quick-kind]:hover{transform:none!important}
}

/* V12.4.0 clarity, role and workflow improvements. Inherits the existing burgundy theme. */
.role-focus-panel{margin:16px 0;border-radius:16px}
.role-focus-actions{display:flex;flex-wrap:wrap;gap:10px;padding:0 20px 19px}
.role-focus-actions .btn{min-height:38px}
.ticket-quick-area{margin:16px 0;padding:14px 16px;border:1px solid rgba(210,85,100,.25);border-radius:16px;background:rgba(103,17,36,.15)}
.ticket-quick-tabs{display:flex;flex-wrap:wrap;gap:8px}
.ticket-quick-tab{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,128,145,.23);border-radius:12px;background:rgba(38,5,15,.45);padding:10px 13px;color:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.ticket-quick-tab:hover,.ticket-quick-tab:focus-visible{border-color:#f26d82;background:rgba(181,19,47,.2)}
.ticket-quick-tab.active{background:#b90525;color:#fff;border-color:#f04d66}
.ticket-quick-tab b{font-size:11px;border-radius:9px;padding:2px 7px;background:rgba(255,255,255,.13)}
.ticket-quick-area .helper{margin:10px 0 0;line-height:1.5}
.ticket-availability-panel{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0;padding:14px 17px;border-radius:15px;background:rgba(120,26,42,.16);border:1px solid rgba(244,124,137,.22)}
.ticket-availability-panel>div{flex:1;min-width:220px}
.ticket-availability-panel b{display:block;font-weight:800;color:inherit}
.ticket-availability-panel small{display:block;color:var(--muted,#ac8c92);margin-top:4px;line-height:1.45}
.ticket-availability-panel label{font-size:11px;font-weight:800}
.ticket-availability-panel select{min-width:140px;max-width:200px}
.project-doc-checklist,.permission-preview{border:1px solid rgba(255,158,168,.3);border-radius:12px;background:rgba(111,17,42,.14);padding:13px 15px;display:grid;gap:6px;margin:12px 0 20px;color:inherit}
.project-doc-checklist strong,.permission-preview b{font-weight:850;font-size:13px}
.project-doc-checklist span,.permission-preview p{font-size:12px;color:var(--muted,#b9a5aa);line-height:1.5;margin:0;overflow-wrap:anywhere}
.project-doc-checklist.has-missing{border-color:rgba(245,146,80,.6)}
#ticket-history-more{margin-top:10px}
@media(max-width:680px){.ticket-availability-panel{align-items:stretch;flex-direction:column}.ticket-availability-panel select{max-width:none}.ticket-quick-tab{flex:1;justify-content:center}.role-focus-actions .btn{flex:1}}
@media(prefers-reduced-motion:reduce){.ticket-quick-tab{transition:none}}

/* Archived-record supervision (V12.4.0) */
.archive-overview{padding:16px;border:1px solid rgba(220,80,96,.3);border-radius:12px;margin-bottom:16px;background:rgba(220,80,96,.06)}
.archive-overview strong{font-size:15px;color:inherit}.archive-overview p{margin:8px 0 0;font-size:12px;line-height:1.5;opacity:.78}
.archive-outlets-list{display:grid;gap:9px}.archive-record{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid rgba(220,80,96,.2);border-radius:12px}.archive-record b{display:block;font-size:13px}.archive-record span{display:block;margin-top:4px;font-size:11px;opacity:.72}
@media(max-width:560px){.archive-record{align-items:flex-start;flex-direction:column}}

.team-capacity-panel{margin:12px 0}.team-capacity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;padding:10px 18px 18px}.capacity-member{border:1px solid rgba(220,80,96,.2);border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}.capacity-member b,.capacity-member small{display:block}.capacity-member b{font-size:12px}.capacity-member small{font-size:11px;opacity:.72}.capacity-select{max-width:120px;font-size:12px}

/* V12.4.3 — Compact, read-only team presence directory (dark dashboard theme) */
.team-presence-launch{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.team-presence-view{display:grid;gap:15px}
.team-presence-filters{display:grid;grid-template-columns:1.1fr 1fr .75fr;gap:10px;align-items:end}
.team-presence-filters .form-field{min-width:0;margin:0}
.team-presence-filters input,.team-presence-filters select{width:100%;min-width:0}
.presence-summary{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:13px;border:1px solid rgba(244,115,133,.22);border-radius:13px;background:rgba(104,16,36,.16)}
.presence-summary-item{display:grid;gap:2px;min-width:74px}
.presence-summary-item strong{font-size:21px;line-height:1.1;color:inherit;font-weight:850}
.presence-summary-item span{font-size:11px;opacity:.75}
.presence-summary-meta{margin-left:auto;font-size:11px;opacity:.75}
.presence-results{display:grid;gap:8px;max-height:min(55vh,520px);overflow:auto;overscroll-behavior:contain;padding-right:3px}
.presence-person{display:flex;gap:14px;justify-content:space-between;align-items:center;border:1px solid rgba(226,101,120,.24);border-radius:12px;background:rgba(100,16,35,.11);padding:12px 13px}
.presence-person-main{display:flex;align-items:center;gap:11px;min-width:0}
.presence-avatar{flex:0 0 37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:11px;font-weight:850;background:rgba(208,52,76,.22);color:#ffdce1}
.presence-person-main>div{min-width:0;overflow-wrap:anywhere}
.presence-person-main strong,.presence-person-main small{display:block}
.presence-person-main strong{font-size:13px;font-weight:800}
.presence-person-main small{font-size:11px;margin-top:3px;opacity:.74}
.presence-person-side{display:grid;justify-items:end;gap:8px;flex-shrink:0}
.presence-person-side small{font-size:11px;opacity:.7}
.presence-badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;border:1px solid rgba(231,162,174,.27);background:rgba(200,183,188,.1);font-size:11px;font-weight:800}
.presence-badge.online{background:rgba(28,151,106,.13);border-color:rgba(76,205,155,.43);color:#8de3bc}
.presence-badge.offline{color:#d4b4bc}
.presence-empty{padding:22px;text-align:center;border:1px dashed rgba(226,101,120,.24);border-radius:13px;font-size:12px;opacity:.78}
.presence-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:11px;opacity:.86}
.presence-footer>div{display:flex;gap:7px}
@media(max-width:680px){.team-presence-filters{grid-template-columns:1fr 1fr}.team-presence-filters .form-field:first-child{grid-column:1/-1}.presence-person{align-items:flex-start}.presence-person-side{gap:6px}.presence-summary-meta{margin-left:0;flex-basis:100%}}
@media(max-width:420px){.team-presence-filters{grid-template-columns:1fr}.team-presence-filters .form-field:first-child{grid-column:auto}.presence-person{flex-direction:column}.presence-person-side{display:flex;align-items:center;width:100%;justify-content:space-between}.presence-summary-item{min-width:64px}}

/* V12.4.5 reminder inbox controls – preserves Express Deck dark theme */
.reminder-topbar-btn{display:inline-flex;align-items:center;gap:7px;background:#310b17;color:#ffe9ed;border:1px solid #753343;border-radius:10px;padding:9px 12px;font:inherit;font-weight:750;cursor:pointer;white-space:nowrap}
.reminder-topbar-btn:hover{background:#4c1223;transform:translateY(-1px)}
.reminder-topbar-btn [data-reminder-count],.heading-actions [data-reminder-count]{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#bd123a;color:white;font-size:11px;font-weight:800}
.reminder-topbar-btn [hidden],.heading-actions [hidden]{display:none!important}
.reminder-inbox{display:grid;gap:14px}.reminder-inbox-actions{display:flex;gap:10px;flex-wrap:wrap}.reminder-ticket-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;border:1px solid #67303f;border-radius:12px;background:#280d18;margin:8px 0}.reminder-ticket-row>div{min-width:0;overflow-wrap:anywhere}.reminder-ticket-row b{display:block;font-size:13px;color:#fff}.reminder-ticket-row small{display:block;color:#d9b7c1;margin-top:5px}
@media(max-width:700px){.reminder-topbar-btn{padding:7px 9px}.reminder-ticket-row{align-items:flex-start;flex-direction:column}.reminder-inbox-actions .btn{width:100%}}

.reminder-bell-icon{font-size:17px;line-height:1}
@media(max-width:480px){.reminder-topbar-btn{position:relative;min-width:34px;width:34px;height:36px;padding:0;justify-content:center}.reminder-topbar-btn [data-reminder-count]{position:absolute;top:-3px;right:-5px;font-size:9px;min-width:15px;height:15px}.topbar .top-right{gap:4px}}
