/**
 * Platinum Surface 2.9.1
 * Native presentation + interaction system for Platinum applications.
 * No Bootstrap, Bootstrap Icons, or jQuery dependency. Core icons are native to Surface.
 */

/* ===== Native Surface foundation ===== */
:root{
  --ps-primary:#1679fa;--ps-primary-rgb:22,121,250;--ps-primary-text:#0d5ec9;--ps-primary-bg-subtle:#eaf3ff;--ps-primary-border-subtle:#bfd8ff;
  --ps-secondary-color:#5f718d;--ps-secondary-bg:#eef3f9;
  --ps-success:#198754;--ps-success-text:#146c43;--ps-success-text-emphasis:#0f5132;--ps-success-bg-subtle:#e8f7ef;--ps-success-border-subtle:#b7e4c7;
  --ps-danger:#dc3545;--ps-danger-bg-subtle:#fdecef;--ps-danger-border-subtle:#f3b8c0;
  --ps-warning:#d99a00;--ps-warning-text:#8a6200;--ps-warning-text-emphasis:#664d03;--ps-warning-bg-subtle:#fff5d6;--ps-warning-border-subtle:#efd782;
  --ps-info:#0dcaf0;--ps-tertiary-bg:#f2f6fc;--ps-body-bg:#f3f6fb;--ps-body-color:#10233f;--ps-border-color:rgba(13,61,115,.14);
  --ps-font-sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --ps-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
}
.theme-dark,.dark,[data-ps-theme="dark"]{
  --ps-primary:#68a2ff;--ps-primary-text:#9bc1ff;--ps-primary-bg-subtle:#10294e;--ps-primary-border-subtle:#234c80;
  --ps-secondary-color:#bfd0e7;--ps-secondary-bg:#16243a;
  --ps-success:#57d394;--ps-success-text:#6ee7a8;--ps-success-text-emphasis:#8ef0ba;--ps-success-bg-subtle:#0d2a21;--ps-success-border-subtle:#205a42;
  --ps-danger:#ff7d8a;--ps-danger-bg-subtle:#32161d;--ps-danger-border-subtle:#6b2935;
  --ps-warning:#f4c451;--ps-warning-text:#f2c95f;--ps-warning-text-emphasis:#ffe49a;--ps-warning-bg-subtle:#30260c;--ps-warning-border-subtle:#67531b;
  --ps-tertiary-bg:#162844;--ps-body-bg:#07121f;--ps-body-color:#e8eff9;--ps-border-color:#263a58;
}
*,*::before,*::after{box-sizing:border-box}
html{font-family:var(--ps-font-sans);line-height:1.5;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ps-body-bg);color:var(--ps-body-color);font-family:var(--ps-font-sans);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input,optgroup,select,textarea{font:inherit}button,select{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.65}
a{color:var(--ps-primary);text-decoration:none}a:hover{text-decoration:none}img,svg{vertical-align:middle}img{max-width:100%}hr{margin:1rem 0;border:0;border-top:1px solid var(--ps-border-color);opacity:1}
h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:700;line-height:1.2}p{margin-top:0;margin-bottom:1rem}ol,ul{margin-top:0;margin-bottom:1rem}small,.small{font-size:.875em}.lead{font-size:1.25rem;font-weight:300;line-height:1.55}
[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Layout */
.container,.container-fluid,.container-sm,.container-md,.container-lg,.container-xl,.container-xxl{--ps-gutter-x:1.5rem;--ps-gutter-y:0;width:100%;padding-right:calc(var(--ps-gutter-x)*.5);padding-left:calc(var(--ps-gutter-x)*.5);margin-right:auto;margin-left:auto}
@media(min-width:576px){.container,.container-sm{max-width:540px}}
@media(min-width:768px){.container,.container-sm,.container-md{max-width:720px}}
@media(min-width:992px){.container,.container-sm,.container-md,.container-lg{max-width:960px}}
@media(min-width:1200px){.container,.container-sm,.container-md,.container-lg,.container-xl{max-width:1140px}}
@media(min-width:1400px){.container,.container-sm,.container-md,.container-lg,.container-xl,.container-xxl{max-width:1320px}}
.row{--ps-gutter-x:1.5rem;--ps-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--ps-gutter-y));margin-right:calc(-.5*var(--ps-gutter-x));margin-left:calc(-.5*var(--ps-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--ps-gutter-x)*.5);padding-left:calc(var(--ps-gutter-x)*.5);margin-top:var(--ps-gutter-y)}
.col{flex:1 0 0%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.333333%}.col-2{flex:0 0 auto;width:16.666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.333333%}.col-5{flex:0 0 auto;width:41.666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.333333%}.col-8{flex:0 0 auto;width:66.666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.333333%}.col-11{flex:0 0 auto;width:91.666667%}.col-12{flex:0 0 auto;width:100%}
@media(min-width:576px){.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{width:8.333333%}.col-sm-2{width:16.666667%}.col-sm-3{width:25%}.col-sm-4{width:33.333333%}.col-sm-5{width:41.666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333%}.col-sm-8{width:66.666667%}.col-sm-9{width:75%}.col-sm-10{width:83.333333%}.col-sm-11{width:91.666667%}.col-sm-12{width:100%}}
@media(min-width:768px){.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{width:8.333333%}.col-md-2{width:16.666667%}.col-md-3{width:25%}.col-md-4{width:33.333333%}.col-md-5{width:41.666667%}.col-md-6{width:50%}.col-md-7{width:58.333333%}.col-md-8{width:66.666667%}.col-md-9{width:75%}.col-md-10{width:83.333333%}.col-md-11{width:91.666667%}.col-md-12{width:100%}}
@media(min-width:992px){.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{width:8.333333%}.col-lg-2{width:16.666667%}.col-lg-3{width:25%}.col-lg-4{width:33.333333%}.col-lg-5{width:41.666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333%}.col-lg-8{width:66.666667%}.col-lg-9{width:75%}.col-lg-10{width:83.333333%}.col-lg-11{width:91.666667%}.col-lg-12{width:100%}}
@media(min-width:1200px){.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{width:8.333333%}.col-xl-2{width:16.666667%}.col-xl-3{width:25%}.col-xl-4{width:33.333333%}.col-xl-5{width:41.666667%}.col-xl-6{width:50%}.col-xl-7{width:58.333333%}.col-xl-8{width:66.666667%}.col-xl-9{width:75%}.col-xl-10{width:83.333333%}.col-xl-11{width:91.666667%}.col-xl-12{width:100%}}
.g-0,.gx-0{--ps-gutter-x:0}.g-0,.gy-0{--ps-gutter-y:0}.g-1,.gx-1{--ps-gutter-x:.25rem}.g-1,.gy-1{--ps-gutter-y:.25rem}.g-2,.gx-2{--ps-gutter-x:.5rem}.g-2,.gy-2{--ps-gutter-y:.5rem}.g-3,.gx-3{--ps-gutter-x:1rem}.g-3,.gy-3{--ps-gutter-y:1rem}.g-4,.gx-4{--ps-gutter-x:1.5rem}.g-4,.gy-4{--ps-gutter-y:1.5rem}.g-5,.gx-5{--ps-gutter-x:3rem}.g-5,.gy-5{--ps-gutter-y:3rem}

/* Display / flex / positioning */
.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.sticky-top{position:sticky!important;top:0;z-index:1020}.top-0{top:0!important}.start-0{left:0!important}.end-0{right:0!important}.bottom-0{bottom:0!important}
.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.justify-content-start{justify-content:flex-start!important}.justify-content-center{justify-content:center!important}.justify-content-end{justify-content:flex-end!important}.justify-content-between{justify-content:space-between!important}.align-items-start{align-items:flex-start!important}.align-items-center{align-items:center!important}.align-items-end{align-items:flex-end!important}.align-self-center{align-self:center!important}.vstack{display:flex;flex:1 1 auto;flex-direction:column}.hstack{display:flex;flex-direction:row;align-items:center}
.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-100{height:100%!important}.mw-100{max-width:100%!important}.min-vh-100{min-height:100vh!important}.overflow-hidden{overflow:hidden!important}.overflow-auto{overflow:auto!important}

/* Spacing */
.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}
.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}
.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}
.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}
.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}
.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}
.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}
.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}
@media(min-width:992px){.p-lg-4{padding:1.5rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.d-lg-flex{display:flex!important}.d-lg-block{display:block!important}.d-lg-none{display:none!important}.flex-lg-row{flex-direction:row!important}.text-lg-end{text-align:right!important}}
@media(min-width:768px){.d-md-flex{display:flex!important}.d-md-block{display:block!important}.d-md-none{display:none!important}.text-md-end{text-align:right!important}}
@media(min-width:576px){.d-sm-flex{display:flex!important}.d-sm-block{display:block!important}.d-sm-none{display:none!important}}

/* Type / visual utilities */
.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fst-italic{font-style:italic!important}.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.h1{font-size:2.5rem}.h2{font-size:2rem}.h3{font-size:1.75rem}.h4{font-size:1.5rem}.h5{font-size:1.25rem}.h6{font-size:1rem}
.text-start{text-align:left!important}.text-center{text-align:center!important}.text-end{text-align:right!important}.text-nowrap{white-space:nowrap!important}.text-wrap{white-space:normal!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-decoration-none{text-decoration:none!important}.text-uppercase{text-transform:uppercase!important}.text-lowercase{text-transform:lowercase!important}.text-capitalize{text-transform:capitalize!important}
.text-primary{color:var(--ps-primary)!important}.text-secondary,.text-muted,.text-body-secondary{color:var(--ps-text-soft,var(--ps-secondary-color))!important}.text-body{color:var(--ps-text,var(--ps-body-color))!important}.text-success,.text-success-emphasis{color:var(--ps-success)!important}.text-danger,.text-danger-emphasis{color:var(--ps-danger)!important}.text-warning,.text-warning-emphasis{color:var(--ps-warning-text)!important}.text-dark{color:#172033!important}.text-light{color:#f8fafc!important}.text-reset{color:inherit!important}
.bg-transparent{background:transparent!important}.bg-light,.bg-body-tertiary{background:var(--ps-surface-2,#f8fbff)!important}.bg-primary{background:var(--ps-primary)!important;color:#fff}.bg-secondary{background:var(--ps-secondary-color)!important;color:#fff}.bg-success{background:var(--ps-success)!important;color:#fff}.bg-danger{background:var(--ps-danger)!important;color:#fff}.bg-warning{background:var(--ps-warning)!important}.text-bg-light{background:var(--ps-surface-2)!important;color:var(--ps-text)!important}.text-bg-success{background:var(--ps-success)!important;color:#fff!important}.text-bg-warning{background:var(--ps-warning)!important;color:#1f2937!important}.text-bg-danger{background:var(--ps-danger)!important;color:#fff!important}.text-bg-primary{background:var(--ps-primary)!important;color:#fff!important}
.border{border:1px solid var(--ps-border-color)!important}.border-0{border:0!important}.border-top{border-top:1px solid var(--ps-border-color)!important}.border-bottom{border-bottom:1px solid var(--ps-border-color)!important}.border-start{border-left:1px solid var(--ps-border-color)!important}.border-end{border-right:1px solid var(--ps-border-color)!important}.rounded{border-radius:.375rem!important}.rounded-2{border-radius:.5rem!important}.rounded-3{border-radius:.75rem!important}.rounded-4{border-radius:1rem!important}.rounded-pill{border-radius:999px!important}.rounded-circle{border-radius:50%!important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(15,23,42,.075)!important}

/* Buttons */
.btn{--ps-btn-bg:transparent;--ps-btn-color:var(--ps-text,#10233f);--ps-btn-border:transparent;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:2.5rem;padding:.5rem .9rem;border:1px solid var(--ps-btn-border);border-radius:.72rem;background:var(--ps-btn-bg);color:var(--ps-btn-color);font-weight:700;line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;vertical-align:middle;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .08s ease}.btn:hover{filter:brightness(.985)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:3px solid rgba(var(--ps-primary-rgb),.2);outline-offset:2px}.btn-sm{min-height:2rem;padding:.34rem .65rem;border-radius:.6rem;font-size:.875rem}.btn-lg{min-height:3rem;padding:.68rem 1.1rem;font-size:1.05rem}
.btn-primary{--ps-btn-bg:var(--ps-primary);--ps-btn-border:var(--ps-primary);--ps-btn-color:#fff}.btn-secondary{--ps-btn-bg:var(--ps-secondary-bg);--ps-btn-border:var(--ps-border-color);--ps-btn-color:var(--ps-text)}.btn-success{--ps-btn-bg:var(--ps-success);--ps-btn-border:var(--ps-success);--ps-btn-color:#fff}.btn-danger{--ps-btn-bg:var(--ps-danger);--ps-btn-border:var(--ps-danger);--ps-btn-color:#fff}.btn-warning{--ps-btn-bg:var(--ps-warning);--ps-btn-border:var(--ps-warning);--ps-btn-color:#172033}.btn-light{--ps-btn-bg:#fff;--ps-btn-border:rgba(255,255,255,.45);--ps-btn-color:#10233f}.btn-dark{--ps-btn-bg:#172033;--ps-btn-border:#172033;--ps-btn-color:#fff}
.btn-outline-primary{--ps-btn-color:var(--ps-primary);--ps-btn-border:var(--ps-primary);--ps-btn-bg:transparent}.btn-outline-secondary{--ps-btn-color:var(--ps-text-soft);--ps-btn-border:var(--ps-border-color);--ps-btn-bg:transparent}.btn-outline-success{--ps-btn-color:var(--ps-success);--ps-btn-border:var(--ps-success)}.btn-outline-danger{--ps-btn-color:var(--ps-danger);--ps-btn-border:var(--ps-danger)}.btn-outline-warning{--ps-btn-color:var(--ps-warning-text);--ps-btn-border:var(--ps-warning)}.btn-outline-light{--ps-btn-color:#fff;--ps-btn-border:rgba(255,255,255,.5)}.btn-link{min-height:auto;padding:0;border:0;background:transparent;color:var(--ps-primary)}
.btn-outline-primary:hover{background:var(--ps-primary);color:#fff}.btn-outline-secondary:hover{background:var(--ps-surface-3);color:var(--ps-text)}.btn-outline-danger:hover{background:var(--ps-danger);color:#fff}.btn-outline-success:hover{background:var(--ps-success);color:#fff}.btn-outline-light:hover{background:#fff;color:#10233f}.btn-close{width:2.25rem;height:2.25rem;padding:0;border:0;border-radius:.65rem;background:transparent;color:inherit;font-size:0;position:relative}.btn-close::before,.btn-close::after{content:"";position:absolute;left:50%;top:50%;width:1.05rem;height:2px;border-radius:2px;background:currentColor}.btn-close::before{transform:translate(-50%,-50%) rotate(45deg)}.btn-close::after{transform:translate(-50%,-50%) rotate(-45deg)}

/* Forms */
.form-label{display:inline-block;margin-bottom:.42rem;color:var(--ps-text);font-weight:700}.form-control,.form-select{display:block;width:100%;min-height:2.75rem;padding:.58rem .78rem;border:1px solid var(--ps-border-color);border-radius:.72rem;background:var(--ps-surface,#fff);color:var(--ps-text,#10233f);font-size:1rem;line-height:1.35;transition:border-color .15s ease,box-shadow .15s ease}.form-control:focus,.form-select:focus{outline:0;border-color:var(--ps-primary);box-shadow:0 0 0 .2rem rgba(var(--ps-primary-rgb),.13)}textarea.form-control{min-height:6rem;resize:vertical}.form-control-sm,.form-select-sm{min-height:2.1rem;padding:.36rem .58rem;font-size:.875rem;border-radius:.58rem}.form-control-lg,.form-select-lg{min-height:3.1rem;padding:.72rem .9rem}.form-text{margin-top:.32rem;color:var(--ps-text-muted,var(--ps-secondary-color));font-size:.875em}.form-check{display:block;min-height:1.5rem;padding-left:1.75rem;margin-bottom:.35rem}.form-check-input{float:left;width:1.05rem;height:1.05rem;margin-top:.22rem;margin-left:-1.75rem;appearance:none;border:1px solid var(--ps-border-strong,var(--ps-border-color));background:var(--ps-surface);background-position:center;background-repeat:no-repeat;background-size:.75rem;border-radius:.25rem}.form-check-input[type="radio"]{border-radius:50%}.form-check-input:checked{border-color:var(--ps-primary);background-color:var(--ps-primary)}.form-check-input[type="checkbox"]:checked{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.25' d='M3.2 8.2 6.6 11.4 12.9 4.9'/%3E%3C/svg%3E")}.form-check-input[type="radio"]:checked{box-shadow:inset 0 0 0 .25rem var(--ps-primary),inset 0 0 0 .42rem #fff}.form-check-inline{display:inline-block;margin-right:1rem}.form-switch{padding-left:2.7rem}.form-switch .form-check-input{width:2.05rem;margin-left:-2.7rem;border-radius:999px;background-color:var(--ps-surface-3);background-image:radial-gradient(circle,#fff 0 43%,transparent 47%);background-size:.86rem .86rem;background-position:left .16rem center;background-repeat:no-repeat;transition:background-color .16s ease,border-color .16s ease,background-position .16s ease}.form-switch .form-check-input:checked{background-color:var(--ps-primary);background-image:radial-gradient(circle,#fff 0 43%,transparent 47%);background-position:right .16rem center}.form-check-label{color:var(--ps-text)}
.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group-text{display:flex;align-items:center;padding:.58rem .75rem;border:1px solid var(--ps-border-color);border-radius:.72rem;background:var(--ps-surface-2);color:var(--ps-text-soft);font-weight:600}.input-group>:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}


/* 2.5.1 native control theming: keep browser-owned date/time and file controls inside Surface theme. */
html[data-ps-theme="light"]{color-scheme:light}
html[data-ps-theme="dark"],html.theme-dark,html.dark{color-scheme:dark}
.form-control[type="date"],.form-control[type="datetime-local"],.form-control[type="month"],.form-control[type="time"],.form-control[type="week"]{color-scheme:light;background-color:var(--ps-surface);color:var(--ps-text)}
html[data-ps-theme="dark"] .form-control[type="date"],html[data-ps-theme="dark"] .form-control[type="datetime-local"],html[data-ps-theme="dark"] .form-control[type="month"],html[data-ps-theme="dark"] .form-control[type="time"],html[data-ps-theme="dark"] .form-control[type="week"],.theme-dark .form-control[type="date"],.theme-dark .form-control[type="datetime-local"],.theme-dark .form-control[type="month"],.theme-dark .form-control[type="time"],.theme-dark .form-control[type="week"]{color-scheme:dark}
.form-control[type="date"]::-webkit-calendar-picker-indicator,.form-control[type="datetime-local"]::-webkit-calendar-picker-indicator,.form-control[type="month"]::-webkit-calendar-picker-indicator,.form-control[type="time"]::-webkit-calendar-picker-indicator,.form-control[type="week"]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.78}
.form-control[type="file"],.ps-file-control{padding:.32rem .42rem;overflow:hidden}
.form-control[type="file"]::file-selector-button,.ps-file-control::file-selector-button{min-height:2.05rem;margin:-.32rem .7rem -.32rem -.42rem;padding:.45rem .72rem;border:0;border-right:1px solid var(--ps-border-color);background:var(--ps-surface-2);color:var(--ps-text);font-weight:750;cursor:pointer;transition:background .15s ease,color .15s ease}
.form-control[type="file"]:hover::file-selector-button,.ps-file-control:hover::file-selector-button{background:var(--ps-surface-3);color:var(--ps-primary-text)}
.form-control-sm[type="file"]::file-selector-button,.form-control-sm.ps-file-control::file-selector-button{min-height:1.75rem;padding:.34rem .58rem}

/* Cards / alerts / badges */
.card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--ps-surface,#fff);color:var(--ps-text);border:1px solid var(--ps-border-color);border-radius:1rem}.card-body{flex:1 1 auto;padding:1rem}.card-header,.card-footer{padding:.75rem 1rem;background:var(--ps-surface-2);border-color:var(--ps-border-color)}.card-header{border-bottom:1px solid var(--ps-border-color);border-radius:inherit inherit 0 0}.card-footer{border-top:1px solid var(--ps-border-color);border-radius:0 0 inherit inherit}
.alert{position:relative;padding:.8rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.75rem}.alert-primary{color:var(--ps-primary-text);background:var(--ps-primary-bg-subtle);border-color:var(--ps-primary-border-subtle)}.alert-success{color:var(--ps-success-text);background:var(--ps-success-bg-subtle);border-color:var(--ps-success-border-subtle)}.alert-danger{color:var(--ps-danger);background:var(--ps-danger-bg-subtle);border-color:var(--ps-danger-border-subtle)}.alert-warning{color:var(--ps-warning-text);background:var(--ps-warning-bg-subtle);border-color:var(--ps-warning-border-subtle)}.alert-info{color:#087990;background:#cff4fc;border-color:#9eeaf9}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.3em .58em;border-radius:.42rem;font-size:.75em;font-weight:700;line-height:1;white-space:nowrap}

/* Tables */
.table{width:100%;margin-bottom:1rem;border-collapse:collapse;color:var(--ps-text);vertical-align:top}.table>:not(caption)>*>*{padding:.65rem .7rem;border-bottom:1px solid var(--ps-border-color);background:transparent}.table>thead{vertical-align:bottom}.table>tbody{vertical-align:inherit}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-sm>:not(caption)>*>*{padding:.35rem .45rem}.table-hover>tbody>tr:hover>*{background:color-mix(in srgb,var(--ps-surface-3) 65%,transparent)}.align-middle{vertical-align:middle!important}

/* Nav / dropdown / collapse / accordion */
.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem .8rem;color:var(--ps-primary);border:0;background:transparent;text-decoration:none}.nav-link.disabled{pointer-events:none;opacity:.55}.nav-tabs{border-bottom:1px solid var(--ps-border-color)}.nav-tabs .nav-link{margin-bottom:-1px;border:1px solid transparent;border-radius:.65rem .65rem 0 0}.nav-tabs .nav-link.active{color:var(--ps-text);background:var(--ps-surface);border-color:var(--ps-border-color) var(--ps-border-color) var(--ps-surface)}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.fade{transition:opacity .15s linear}.fade:not(.show){opacity:0}
.dropdown,.dropup{position:relative}.dropdown-toggle::after{display:inline-block;margin-left:.35em;vertical-align:.18em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.45rem;margin:.125rem 0 0;font-size:.95rem;color:var(--ps-text);text-align:left;list-style:none;background:var(--ps-surface);border:1px solid var(--ps-border-color);border-radius:.75rem;box-shadow:0 14px 30px rgba(15,23,42,.12)}.dropdown-menu.show{display:block}.dropdown-menu-end{right:0;left:auto}.dropdown-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.48rem .7rem;clear:both;border:0;border-radius:.5rem;background:transparent;color:var(--ps-text);text-align:inherit;white-space:nowrap;text-decoration:none}.dropdown-item:hover,.dropdown-item:focus{background:var(--ps-surface-3);color:var(--ps-text)}.dropdown-divider{height:0;margin:.45rem 0;border-top:1px solid var(--ps-border-color)}
.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .2s ease}.accordion-item{border:1px solid var(--ps-border-color);background:var(--ps-surface);color:var(--ps-text)}.accordion-item:first-of-type{border-radius:.8rem .8rem 0 0}.accordion-item:last-of-type{border-radius:0 0 .8rem .8rem}.accordion-item+.accordion-item{border-top:0}.accordion-header{margin:0}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem;border:0;background:var(--ps-surface);color:var(--ps-text);font-weight:700;text-align:left}.accordion-button::after{content:"+";margin-left:auto;font-size:1.2rem}.accordion-button[aria-expanded="true"]::after{content:"−"}.accordion-body{padding:1rem}

/* Modal / drawer / popover support; lifecycle is owned by Platinum Surface JS */
.modal{position:fixed;inset:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal.show{display:block}.modal-dialog{position:relative;width:auto;margin:1rem;pointer-events:none}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 2rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background:var(--ps-surface);border:1px solid var(--ps-border-color);border-radius:1rem;outline:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--ps-border-color)}.modal-title{margin-bottom:0}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--ps-border-color)}.modal-sm{max-width:300px}.modal-lg{max-width:800px}.modal-xl{max-width:1140px}@media(min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}}
.offcanvas{position:fixed;z-index:1045;display:flex;flex-direction:column;max-width:100%;visibility:hidden;background:var(--ps-surface);color:var(--ps-text);transition:transform .2s ease}.offcanvas.show,.offcanvas.is-open{visibility:visible}.offcanvas-start{top:0;bottom:0;left:0;width:400px;border-right:1px solid var(--ps-border-color);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;bottom:0;width:400px;border-left:1px solid var(--ps-border-color);transform:translateX(100%)}.offcanvas.show,.offcanvas.is-open{transform:none}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:1rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:1rem;overflow-y:auto}.pf-surface-drawer-backdrop{position:fixed;inset:0;z-index:1040;background:rgba(2,10,22,.58);opacity:0;transition:opacity .16s ease}.pf-surface-drawer-backdrop.show{opacity:1}
.popover{position:absolute;z-index:1080;display:block;max-width:min(320px,calc(100vw - 16px));font-size:.875rem;word-wrap:break-word;background:var(--popover-bg,var(--ps-surface));border:1px solid var(--popover-border,var(--ps-border-color));border-radius:.75rem;box-shadow:0 12px 28px rgba(15,23,42,.18);opacity:0;transition:opacity .1s ease}.popover.show{opacity:1}.popover-header{padding:.55rem .75rem;margin:0;font-size:.9rem;background:var(--ps-surface-2);border-bottom:1px solid var(--ps-border-color);border-radius:.75rem .75rem 0 0}.popover-body{padding:.7rem .75rem;color:var(--ps-text)}

/* Misc primitives */
.progress{display:flex;height:.7rem;overflow:hidden;border-radius:999px;background:var(--ps-surface-3)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:var(--ps-primary);color:#fff;text-align:center;white-space:nowrap;transition:width .3s ease}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;border:.22em solid currentColor;border-right-color:transparent;border-radius:50%;animation:ps-spin .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.16em}@keyframes ps-spin{to{transform:rotate(360deg)}}
.list-unstyled{padding-left:0;list-style:none}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.75rem;overflow:hidden}.list-group-item{position:relative;display:block;padding:.7rem .9rem;color:var(--ps-text);background:var(--ps-surface);border:1px solid var(--ps-border-color);margin-top:-1px}.list-group-item:first-child{margin-top:0}.list-group-item-action{width:100%;color:var(--ps-text);text-align:inherit}.list-group-item-action:hover{background:var(--ps-surface-3)}
.ps-modal-open{overflow:hidden}.ps-drawer-open{overflow:hidden}.modal-open{overflow:hidden}
.ps-overlay-root{position:relative;z-index:10000}.ps-overlay-root>.pf-surface-modal-backdrop{z-index:10}.ps-overlay-root>.pf-surface-modal{z-index:20}

:root{
  --ps-bg:#f3f6fb;
  --ps-bg-accent:#e9eff8;
  --ps-surface:#fff;
  --ps-surface-2:#f8fbff;
  --ps-surface-3:#f2f6fc;
  --ps-border:rgba(13,61,115,.10);
  --ps-border-strong:rgba(13,61,115,.16);
  --ps-shadow:0 10px 24px rgba(15,23,42,.05);
  --ps-shadow-strong:0 16px 34px rgba(15,23,42,.08);
  --ps-text:#10233f;
  --ps-text-soft:#5f718d;
  --ps-text-muted:#7184a0;
  --ps-hero-bg:linear-gradient(135deg,#0d3d73 0%,#1763bc 58%,#5f97ff 100%);
  --ps-hero-border:rgba(255,255,255,.12);
  --ps-hero-text:#fff;
  --ps-hero-soft:rgba(255,255,255,.84);
  --ps-sticky-top:1rem;
  /* compatibility tokens used by existing Platinum consumers */
  --pf-bg:var(--ps-bg);--pf-bg-accent:var(--ps-bg-accent);--pf-surface:var(--ps-surface);
  --pf-surface-2:var(--ps-surface-2);--pf-surface-3:var(--ps-surface-3);--pf-border:var(--ps-border);
  --pf-border-strong:var(--ps-border-strong);--pf-shadow:var(--ps-shadow);--pf-shadow-strong:var(--ps-shadow-strong);
  --pf-text:var(--ps-text);--pf-text-soft:var(--ps-text-soft);--pf-text-muted:var(--ps-text-muted);
  --pf-hero-bg:var(--ps-hero-bg);--pf-hero-border:var(--ps-hero-border);--pf-hero-text:var(--ps-hero-text);--pf-hero-soft:var(--ps-hero-soft);
  --pf-sticky-top:var(--ps-sticky-top);
}

body.pf-theme-standard,
body.ps-theme-standard{
  --ps-bg:#f3f6fb;--ps-bg-accent:#e9eff8;--ps-surface:#fff;--ps-surface-2:#f8fbff;--ps-surface-3:#f2f6fc;
  --ps-border:rgba(13,61,115,.10);--ps-border-strong:rgba(13,61,115,.16);
  --ps-shadow:0 10px 24px rgba(15,23,42,.05);--ps-shadow-strong:0 16px 34px rgba(15,23,42,.08);
  --ps-text:#10233f;--ps-text-soft:#5f718d;--ps-text-muted:#7184a0;
  --ps-hero-bg:linear-gradient(135deg,#0d3d73 0%,#1763bc 58%,#5f97ff 100%);
  --ps-hero-border:rgba(255,255,255,.12);--ps-hero-text:#fff;--ps-hero-soft:rgba(255,255,255,.84);
  --pf-bg:var(--ps-bg);--pf-bg-accent:var(--ps-bg-accent);--pf-surface:var(--ps-surface);--pf-surface-2:var(--ps-surface-2);--pf-surface-3:var(--ps-surface-3);
  --pf-border:var(--ps-border);--pf-border-strong:var(--ps-border-strong);--pf-shadow:var(--ps-shadow);--pf-shadow-strong:var(--ps-shadow-strong);
  --pf-text:var(--ps-text);--pf-text-soft:var(--ps-text-soft);--pf-text-muted:var(--ps-text-muted);--pf-hero-bg:var(--ps-hero-bg);--pf-hero-border:var(--ps-hero-border);--pf-hero-text:var(--ps-hero-text);--pf-hero-soft:var(--ps-hero-soft);
  background:linear-gradient(180deg,var(--ps-bg) 0%,var(--ps-bg-accent) 100%)!important;
  color:var(--ps-text)!important;
}
html[data-ps-theme="dark"] body.pf-theme-standard,html[data-pf-resolved-theme="dark"] body.pf-theme-standard,
html[data-ps-theme="dark"] body.ps-theme-standard,html[data-pf-resolved-theme="dark"] body.ps-theme-standard,
body.pf-theme-standard.theme-dark,body.pf-theme-standard.dark,body.pf-theme-standard[data-user-theme="dark"],
body.ps-theme-standard.theme-dark,body.ps-theme-standard.dark,body.ps-theme-standard[data-user-theme="dark"]{
  --ps-bg:#07121f;--ps-bg-accent:#0a1730;--ps-surface:#101a2b;--ps-surface-2:#13213a;--ps-surface-3:#162844;
  --ps-border:#263a58;--ps-border-strong:#31517d;--ps-shadow:0 14px 30px rgba(2,12,26,.26);--ps-shadow-strong:0 18px 38px rgba(2,12,26,.34);
  --ps-text:#e8eff9;--ps-text-soft:#bfd0e7;--ps-text-muted:#8fa5c5;
  --ps-hero-bg:linear-gradient(135deg,#10203a 0%,#14315a 58%,#1f4f96 100%);--ps-hero-border:#29456f;--ps-hero-text:#f7fbff;--ps-hero-soft:#cfe0f8;
  --pf-bg:var(--ps-bg);--pf-bg-accent:var(--ps-bg-accent);--pf-surface:var(--ps-surface);--pf-surface-2:var(--ps-surface-2);--pf-surface-3:var(--ps-surface-3);
  --pf-border:var(--ps-border);--pf-border-strong:var(--ps-border-strong);--pf-shadow:var(--ps-shadow);--pf-shadow-strong:var(--ps-shadow-strong);
  --pf-text:var(--ps-text);--pf-text-soft:var(--ps-text-soft);--pf-text-muted:var(--ps-text-muted);--pf-hero-bg:var(--ps-hero-bg);--pf-hero-border:var(--ps-hero-border);--pf-hero-text:var(--ps-hero-text);--pf-hero-soft:var(--ps-hero-soft);
}

.pf-app-shell,.pf-site-standard,.pf-page-frame,.pf-page-stack{background:transparent!important;}
.pf-page-frame{display:block;}

/* Page header / hero */
.pf-page-head,.pf-standard-hero,.pf-standard-hero-block{
  padding:1.85rem 2rem;
  border:1px solid var(--ps-hero-border)!important;border-radius:24px!important;
  background:var(--ps-hero-bg)!important;color:var(--ps-hero-text)!important;box-shadow:var(--ps-shadow-strong)!important;
}
.pf-page-head-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.9fr);gap:1.35rem;align-items:start;}
.pf-page-head-main,.pf-page-head-intro{min-width:0}.pf-page-head-intro{max-width:780px;color:var(--ps-hero-soft)!important;line-height:1.58;}
.pf-page-head-aside{max-width:420px;justify-self:end;width:100%;min-width:0;}
.pf-page-head-eyebrow,.pf-standard-hero-eyebrow{margin-bottom:.55rem;color:var(--ps-hero-soft)!important;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.pf-page-head-title,.pf-standard-hero-title,.pf-page-head h1,.pf-page-head h2,.pf-page-head .h3{color:var(--ps-hero-text)!important;}
.pf-page-chip,.pf-standard-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .62rem;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px;background:rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:none!important;font-size:.75rem;font-weight:700;}
.pf-head-sidecard{padding:1rem 1.05rem;border:1px solid rgba(255,255,255,.18)!important;border-radius:1rem;background:rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;backdrop-filter:blur(6px);}
.pf-head-sidecard .title,.pf-head-sidecard .note{color:var(--ps-hero-soft)!important}.pf-head-sidecard .value{color:var(--ps-hero-text)!important}

/* Shared cards / KPIs */
.pf-standard-card,.pf-standard-featured,.pf-standard-kpi,.pf-standard-subcard,.pf-kpi-card,.pf-kpi,.pf-section{
  background:var(--ps-surface)!important;color:var(--ps-text)!important;border:1px solid var(--ps-border)!important;border-radius:20px!important;box-shadow:var(--ps-shadow)!important;background-image:none!important;
}
.pf-standard-featured{border-color:var(--ps-border-strong)!important;box-shadow:var(--ps-shadow-strong)!important}.pf-standard-subcard{background:var(--ps-surface-2)!important;box-shadow:none!important}
.pf-standard-pill{background:var(--ps-surface-2)!important;color:var(--ps-text-soft)!important;border:1px solid var(--ps-border)!important;box-shadow:none!important}
.pf-standard-listrow{border-bottom:1px solid color-mix(in srgb,var(--ps-border) 80%,transparent)!important}.pf-standard-listrow-last{border-bottom:0!important}
.pf-section-title,.pf-kpi-value,.panel-title{color:var(--ps-text)!important}.pf-section-sub,.pf-kpi-note,.pf-kpi-label,.text-muted{color:var(--ps-text-soft)!important}

.pf-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.pf-stat-card{padding:1rem 1.05rem}.pf-stat-card .label{color:var(--ps-text-soft);font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.pf-stat-card .value{margin-top:.28rem;color:var(--ps-text);font-size:1.45rem;font-weight:850;letter-spacing:-.03em}.pf-stat-card .note{margin-top:.18rem;color:var(--ps-text-muted);font-size:.76rem}
.pf-entity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.pf-entity-card{min-width:0}.pf-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.pf-meta-grid>div{min-width:0;padding:.65rem .7rem;border:1px solid var(--ps-border);border-radius:.72rem;background:var(--ps-surface-2)}.pf-meta-grid small{display:block;margin-bottom:.18rem;color:var(--ps-text-muted);font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.pf-meta-grid strong{display:block;overflow-wrap:anywhere;color:var(--ps-text)}
.pf-status-pill{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.28rem .55rem;border:1px solid var(--ps-border);border-radius:999px;background:var(--ps-surface-2);color:var(--ps-text-soft);font-size:.69rem;font-weight:800;line-height:1.15}.pf-status-pill.is-success{border-color:color-mix(in srgb,var(--ps-success) 28%,var(--ps-border));color:var(--ps-success)}.pf-status-pill.is-warning{border-color:color-mix(in srgb,var(--ps-warning) 38%,var(--ps-border));color:#9a6b00}.pf-status-pill.is-danger{border-color:color-mix(in srgb,var(--ps-danger) 30%,var(--ps-border));color:var(--ps-danger)}

/* Brand, rail, copy */
.pf-brand-mark{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--ps-border);border-radius:.75rem;background:#fff;color:#0f172a}.pf-brand-logo{max-width:24px;max-height:22px;object-fit:contain}.pf-brand-fallback{font-size:.78rem;font-weight:800;line-height:1;letter-spacing:-.02em}.pf-copy-measure{max-width:34rem}.pf-sticky-rail{top:var(--ps-sticky-top)}.pf-min-w-0{min-width:0}

/* Forms, tables, modals */
.pf-theme-standard .form-control,.pf-theme-standard .form-select,.ps-theme-standard .form-control,.ps-theme-standard .form-select{background:var(--ps-surface)!important;border:1px solid var(--ps-border)!important;color:var(--ps-text)!important;box-shadow:none!important}
.theme-dark .form-control,.theme-dark .form-select,.dark .form-control,.dark .form-select{background:var(--ps-surface-2)!important}.form-control::placeholder{color:var(--ps-text-muted)!important}
.pf-theme-standard .dropdown-menu,.pf-theme-standard .modal-content,.ps-theme-standard .dropdown-menu,.ps-theme-standard .modal-content{background:var(--ps-surface)!important;border:1px solid var(--ps-border)!important;color:var(--ps-text)!important}.dropdown-menu{box-shadow:var(--ps-shadow)!important}.modal-content{box-shadow:var(--ps-shadow-strong)!important}
.pf-surface-table{--ps-table-bg:transparent;--ps-table-color:var(--ps-text);--ps-table-border-color:var(--ps-border)}.pf-surface-table thead th{padding:.78rem 1rem;color:var(--ps-text-soft);font-size:.7rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;border-bottom-color:var(--ps-border)}.pf-surface-table tbody td{padding:.9rem 1rem;border-bottom-color:var(--ps-border)}.pf-table-group-row>td{padding:.7rem 1rem!important;background:var(--ps-surface-3)!important;border-top:1px solid var(--ps-border)!important;border-bottom:1px solid var(--ps-border)!important}.pf-table-group-row:first-child>td{border-top:0!important}
/* Surface modal system. The runtime is PlatinumSurface.modal; Bootstrap Modal JS is not required. */
body.ps-modal-open{overflow:hidden}
.pf-surface-modal{--ps-modal-width:min(44rem,calc(100vw - 2rem));position:fixed;inset:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0;color:var(--ps-text);opacity:0;transition:opacity .16s ease}
.pf-surface-modal.show,.pf-surface-modal.is-open{display:block;opacity:1}
.pf-surface-modal .modal-dialog{position:relative;display:flex;align-items:center;width:auto;max-width:var(--ps-modal-width)!important;min-height:calc(100% - 2rem);margin:1rem auto!important;pointer-events:none;transform:translateY(8px) scale(.992);transition:transform .16s ease}
.pf-surface-modal.show .modal-dialog,.pf-surface-modal.is-open .modal-dialog{transform:none}
.pf-surface-modal .modal-content{display:flex;flex-direction:column;width:100%;max-height:calc(100dvh - 2rem);overflow:hidden;border:1px solid var(--ps-border)!important;border-radius:1.2rem!important;background:var(--ps-surface)!important;color:var(--ps-text)!important;box-shadow:0 28px 70px rgba(2,12,26,.28)!important;pointer-events:auto}
.pf-surface-modal .modal-header,.pf-surface-modal .modal-footer{flex:0 0 auto;border-color:var(--ps-border)!important}
.pf-surface-modal .modal-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem}
.pf-surface-modal .modal-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--ps-bg);-webkit-overflow-scrolling:touch}
.pf-surface-modal .modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;padding:.85rem 1.2rem;background:var(--ps-surface)}
.pf-surface-modal-header.is-hero{background:var(--ps-hero-bg)!important;color:var(--ps-hero-text)!important;border-bottom:0!important}
.pf-surface-modal-header.is-hero .modal-title{color:var(--ps-hero-text)!important}.pf-surface-modal-header.is-hero .pf-surface-modal-eyebrow{color:var(--ps-hero-soft)!important}
.pf-surface-modal-eyebrow{font-size:.68rem;font-weight:850;letter-spacing:.065em;text-transform:uppercase}.pf-surface-modal-subtitle{margin-top:.28rem;color:var(--ps-text-soft);font-size:.8rem;line-height:1.4}.pf-surface-modal-header.is-hero .pf-surface-modal-subtitle{color:var(--ps-hero-soft)!important}
.pf-surface-modal-actions{display:flex;align-items:center;gap:.45rem;flex:0 0 auto}
.pf-surface-modal-hero-action{min-height:2.2rem;padding:.42rem .72rem;border:1px solid rgba(255,255,255,.22)!important;border-radius:.72rem!important;background:rgba(255,255,255,.11)!important;color:#fff!important;font-weight:800;text-decoration:none;box-shadow:none!important}
.pf-surface-modal-hero-action:hover,.pf-surface-modal-hero-action:focus-visible{background:rgba(255,255,255,.20)!important;border-color:rgba(255,255,255,.36)!important;color:#fff!important}
.pf-surface-modal-close{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;padding:0;border:1px solid transparent;border-radius:.72rem;background:transparent;color:var(--ps-hero-soft);font-size:1.05rem;line-height:1}
.pf-surface-modal-close:hover,.pf-surface-modal-close:focus-visible{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.10);color:#fff}
.pf-surface-modal-backdrop{position:fixed;inset:0;z-index:1050;background:rgba(2,10,22,.62);opacity:0;backdrop-filter:blur(3px);transition:opacity .16s ease}.pf-surface-modal-backdrop.show{opacity:1}
/* Modal sizing tiers. These are Surface-owned and deliberately override the
   Bootstrap-compatible size vocabulary when used with .pf-surface-modal. */
.pf-surface-modal .modal-dialog.modal-sm{max-width:min(22rem,calc(100vw - 2rem))!important}
.pf-surface-modal .modal-dialog.modal-lg{max-width:min(52rem,calc(100vw - 2rem))!important}
.pf-surface-modal .modal-dialog.modal-xl{max-width:min(72rem,calc(100vw - 2rem))!important}
.pf-modal-wide{--ps-modal-width:min(54rem,calc(100vw - 2rem))}
.pf-modal-workspace{--ps-modal-width:min(73.75rem,calc(100vw - 3rem))}
.pf-surface-modal.pf-modal-wide .modal-dialog{max-width:var(--ps-modal-width)!important}
.pf-surface-modal.pf-modal-workspace .modal-dialog{max-width:var(--ps-modal-width)!important}
.pf-modal-scrollframe .modal-dialog{display:flex;align-items:center;max-height:calc(100dvh - 2rem)}.pf-modal-scrollframe .modal-content{max-height:calc(100dvh - 2rem);overflow:hidden}.pf-modal-scrollframe .pf-modal-form{display:flex;min-height:0;flex:1 1 auto;flex-direction:column}.pf-modal-scrollframe .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.pf-modal-scrollframe .modal-header,.pf-modal-scrollframe .modal-footer{flex:0 0 auto}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem}.pf-theme-standard .btn-outline-secondary,.ps-theme-standard .btn-outline-secondary{color:var(--ps-text-soft);border-color:var(--ps-border-strong);background:transparent}.pf-theme-standard .btn-outline-secondary:hover,.pf-theme-standard .btn-outline-secondary:focus,.ps-theme-standard .btn-outline-secondary:hover,.ps-theme-standard .btn-outline-secondary:focus{background:var(--ps-surface-3);color:var(--ps-text);border-color:var(--ps-border-strong)}

/* Priority / decision queue */
.pf-priority-board{display:grid;gap:.95rem}.pf-priority-feature{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;align-items:center;overflow:hidden;padding:1.15rem 1.2rem 1.15rem 1.35rem}.pf-priority-feature::before{content:"";position:absolute;inset:.8rem auto .8rem .62rem;width:4px;border-radius:999px;background:var(--ps-primary)}.pf-priority-feature[data-status="overdue"]::before{background:var(--ps-danger)}.pf-priority-feature[data-status="due soon"]::before,.pf-priority-feature[data-status="unfunded"]::before{background:var(--ps-warning)}.pf-priority-feature[data-status="paid"]::before{background:var(--ps-success)}.pf-priority-feature-main{min-width:0;padding-left:.55rem}.pf-priority-kicker{display:flex;align-items:center;gap:.45rem;margin-bottom:.3rem;color:var(--ps-text-soft);font-size:.67rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.pf-priority-dot{display:inline-block;width:.42rem;height:.42rem;border-radius:50%;background:var(--ps-primary)}.pf-priority-title{margin:0;font-size:1.15rem;font-weight:800;letter-spacing:-.015em;line-height:1.25}.pf-priority-meta{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin-top:.42rem;color:var(--ps-text-soft);font-size:.82rem}.pf-priority-feature-action{display:flex;flex-direction:column;align-items:flex-end;gap:.48rem;min-width:154px}.pf-priority-value{font-size:1.45rem;font-weight:850;letter-spacing:-.03em;line-height:1}.pf-priority-queue{overflow:hidden;border:1px solid var(--ps-border);border-radius:1rem;background:var(--ps-surface)}.pf-priority-row{display:grid;grid-template-columns:2.05rem minmax(0,1fr) auto;gap:.8rem;align-items:center;padding:.85rem 1rem;border-bottom:1px solid var(--ps-border)}.pf-priority-row:last-child{border-bottom:0}.pf-priority-rank{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--ps-border);border-radius:.72rem;background:var(--ps-surface-3);color:var(--ps-text-soft);font-size:.72rem;font-weight:850}.pf-priority-row-end{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}

/* Floating command orb */
.pf-command-orb-shell{position:fixed;right:1.15rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:1045;display:inline-flex;width:2.72rem;height:2.72rem;pointer-events:auto}.pf-command-orb{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;width:2.72rem;height:2.72rem;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.68);border-radius:999px;background:linear-gradient(145deg,rgba(255,255,255,.64),rgba(225,239,255,.34));color:#0b477f;box-shadow:0 10px 28px rgba(26,73,118,.18),0 2px 8px rgba(19,63,105,.10),inset 0 1px 0 rgba(255,255,255,.92);backdrop-filter:blur(18px) saturate(158%);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.theme-dark .pf-command-orb,.dark .pf-command-orb{border-color:rgba(164,207,255,.30);background:linear-gradient(145deg,rgba(25,53,82,.70),rgba(8,27,49,.52));color:#e9f5ff;box-shadow:0 14px 34px rgba(1,12,27,.40),inset 0 1px 0 rgba(255,255,255,.22)}.pf-command-orb-halo{position:absolute;inset:-6px;z-index:-2;border-radius:inherit;background:radial-gradient(circle,rgba(89,164,255,.20),rgba(89,164,255,0) 70%);opacity:.58;transition:opacity .18s ease,transform .18s ease}.pf-command-orb:hover,.pf-command-orb:focus,.pf-command-orb[aria-expanded="true"]{transform:translateY(-2px);box-shadow:0 15px 36px rgba(22,77,129,.23),0 0 0 4px rgba(79,153,235,.08)}.pf-command-orb:focus-visible{outline:2px solid rgba(99,170,255,.92);outline-offset:3px}.pf-command-orb-icon{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:1.22rem;height:1.22rem}.pf-theme-mode-icon{display:none;font-size:1rem;line-height:1}html[data-ps-theme-mode="light"] .pf-theme-mode-icon-light,html[data-pf-theme-mode="light"] .pf-theme-mode-icon-light{display:inline-block}html[data-ps-theme-mode="dark"] .pf-theme-mode-icon-dark,html[data-pf-theme-mode="dark"] .pf-theme-mode-icon-dark{display:inline-block}html[data-ps-theme-mode="system"] .pf-theme-mode-icon-system,html[data-pf-theme-mode="system"] .pf-theme-mode-icon-system{display:inline-block}
.pf-command-panel{--ps-dropdown-min-width:17.25rem;position:fixed!important;inset:auto 1.15rem calc(4.45rem + env(safe-area-inset-bottom,0px)) auto!important;transform:none!important;width:17.25rem;min-width:17.25rem;margin:0!important;padding:.66rem;overflow:hidden;border:1px solid rgba(139,190,255,.22)!important;border-radius:1.08rem;background:radial-gradient(120% 85% at 92% -8%,rgba(72,150,255,.22),transparent 47%),linear-gradient(180deg,rgba(10,38,72,.985),rgba(6,25,51,.992))!important;color:#f7fbff!important;box-shadow:0 24px 60px rgba(2,20,45,.34),inset 0 1px 0 rgba(255,255,255,.07)!important;backdrop-filter:blur(22px) saturate(132%)}.pf-command-panel-head{display:flex;align-items:center;gap:.62rem;padding:.18rem .18rem .66rem}.pf-command-panel-mark{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex:0 0 2rem;border-radius:.68rem;background:rgba(92,164,255,.18);border:1px solid rgba(142,195,255,.18);color:#b9d9ff}.pf-command-panel-title-wrap{display:flex;min-width:0;flex-direction:column;line-height:1.1}.pf-command-panel-kicker{color:rgba(220,237,255,.58);font-size:.57rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.pf-command-panel-title{margin-top:.18rem;color:#fff;font-size:.82rem;font-weight:800}.pf-command-panel-section{padding:.58rem;border:1px solid rgba(255,255,255,.075);border-radius:.88rem;background:rgba(255,255,255,.035)}.pf-command-section-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.06rem .08rem .46rem}.pf-command-section-title{color:rgba(230,241,255,.74);font-size:.64rem;font-weight:760}.pf-command-section-value{display:inline-flex;align-items:center;padding:.18rem .42rem;border-radius:999px;background:rgba(108,173,255,.12);border:1px solid rgba(125,186,255,.14);color:#bddcff;font-size:.58rem;font-weight:780}.pf-command-theme-list{display:grid;gap:.28rem}.pf-command-theme-option{display:grid;grid-template-columns:2rem minmax(0,1fr) 1.1rem;align-items:center;gap:.56rem;width:100%;min-height:2.65rem;padding:.34rem .48rem;border:1px solid transparent;border-radius:.7rem;background:transparent;color:rgba(238,247,255,.78);font:inherit;text-align:left;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.pf-command-theme-option:hover,.pf-command-theme-option:focus{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.07);color:#fff}.pf-command-theme-option.active,.pf-command-theme-option[aria-pressed="true"]{background:linear-gradient(90deg,rgba(61,134,230,.21),rgba(82,157,255,.10));border-color:rgba(125,186,255,.20);color:#fff}.pf-command-theme-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.6rem;background:rgba(255,255,255,.055);color:#b8d7fb;font-size:.82rem}.pf-command-theme-copy{display:flex;min-width:0;flex-direction:column;line-height:1.13}.pf-command-theme-copy strong{font-size:.7rem;font-weight:790}.pf-command-theme-copy small{margin-top:.17rem;color:rgba(218,234,252,.48);font-size:.57rem}.pf-command-theme-check{display:flex;align-items:center;justify-content:center;width:1rem;height:1rem;border-radius:50%;background:#8fc5ff;color:#063464;font-size:.65rem;opacity:0;transform:scale(.82);transition:opacity .16s ease,transform .16s ease}.pf-command-theme-option.active .pf-command-theme-check,.pf-command-theme-option[aria-pressed="true"] .pf-command-theme-check{opacity:1;transform:scale(1)}body.modal-open .pf-command-orb-shell{opacity:0;pointer-events:none}

/* Toast stack */
.pf-surface-toast-viewport{position:fixed;right:1rem;bottom:calc(4.85rem + env(safe-area-inset-bottom,0px));z-index:1110;display:flex;flex-direction:column;align-items:flex-end;gap:.65rem;width:min(27rem,calc(100vw - 2rem));pointer-events:none}.pf-surface-toast{--ps-toast-accent:var(--ps-primary);position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:.72rem;row-gap:.48rem;width:100%;overflow:hidden;padding:.82rem .88rem .72rem .96rem;border:1px solid var(--ps-border-strong);border-radius:1rem;background:linear-gradient(145deg,var(--ps-surface) 0%,var(--ps-surface-2) 100%);color:var(--ps-text);box-shadow:var(--ps-shadow-strong);opacity:0;transform:translateY(10px) scale(.985);pointer-events:auto;transition:opacity .18s ease,transform .18s ease}.theme-dark .pf-surface-toast,.dark .pf-surface-toast{border-color:rgba(116,159,214,.26);background:linear-gradient(145deg,rgba(19,36,59,.97),rgba(12,27,48,.98));box-shadow:0 18px 42px rgba(2,12,26,.40)}.pf-surface-toast.is-visible{opacity:1;transform:translateY(0) scale(1)}.pf-surface-toast.is-leaving{opacity:0;transform:translateY(8px) scale(.99)}.pf-surface-toast-rail{position:absolute;inset:0 auto 0 0;width:4px;background:var(--ps-toast-accent)}.pf-surface-toast-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.68rem;background:color-mix(in srgb,var(--ps-toast-accent) 12%,transparent);color:var(--ps-toast-accent);font-size:1.02rem}.pf-surface-toast-copy{min-width:0;align-self:center}.pf-surface-toast-title{display:block;margin:0 0 .12rem;color:var(--ps-text);font-size:.82rem;font-weight:800}.pf-surface-toast-message{color:var(--ps-text-soft);font-size:.79rem;line-height:1.38;overflow-wrap:anywhere}.pf-surface-toast-controls{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;align-self:start}.pf-surface-toast-action{white-space:nowrap}.pf-surface-toast-close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:0;border-radius:.62rem;background:transparent;color:var(--ps-text-muted)}.pf-surface-toast-close:hover,.pf-surface-toast-close:focus-visible{background:var(--ps-surface-3);color:var(--ps-text)}.pf-surface-toast-progress{grid-column:2/-1;height:2px;overflow:hidden;border-radius:999px;background:var(--ps-border)}.pf-surface-toast-progress-fill{display:block;width:100%;height:100%;border-radius:inherit;background:var(--ps-toast-accent);transform-origin:left center}.pf-surface-toast.is-success{--ps-toast-accent:var(--ps-success)}.pf-surface-toast.is-error{--ps-toast-accent:var(--ps-danger)}.pf-surface-toast.is-warning{--ps-toast-accent:#d99a00}.pf-surface-toast.is-info{--ps-toast-accent:var(--ps-primary)}

@media(max-width:1199.98px){.pf-sticky-rail{position:static!important;top:auto!important}.pf-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:991.98px){.pf-page-head,.pf-standard-hero,.pf-standard-hero-block{padding:1.4rem;border-radius:20px!important}.pf-page-head-grid{grid-template-columns:1fr}.pf-page-head-aside{max-width:none;justify-self:stretch}.pf-standard-card,.pf-standard-kpi,.pf-kpi-card,.pf-kpi,.pf-section{border-radius:18px!important}}
@media(max-width:767.98px){.pf-stat-grid,.pf-entity-grid,.pf-meta-grid{grid-template-columns:1fr}.pf-priority-feature{grid-template-columns:1fr;align-items:start}.pf-priority-feature-action{width:100%;min-width:0;align-items:flex-start}.pf-priority-row{grid-template-columns:2rem minmax(0,1fr)}.pf-priority-row-end{grid-column:2;justify-content:flex-start}}
@media(max-width:575.98px){.pf-surface-modal{--ps-modal-width:calc(100vw - 1rem)}.pf-surface-modal .modal-dialog,.pf-surface-modal .modal-dialog.modal-sm,.pf-surface-modal .modal-dialog.modal-lg,.pf-surface-modal .modal-dialog.modal-xl,.pf-surface-modal.pf-modal-wide .modal-dialog,.pf-surface-modal.pf-modal-workspace .modal-dialog{max-width:calc(100vw - 1rem)!important;min-height:calc(100% - 1rem);margin:.5rem!important}.pf-surface-modal .modal-content{max-height:calc(100dvh - 1rem);border-radius:1rem!important}.pf-surface-modal .modal-header{padding:.85rem .9rem}.pf-surface-modal .modal-footer{padding:.75rem .9rem}.pf-surface-modal-actions{gap:.3rem}.pf-surface-modal-hero-action{padding:.4rem .58rem}.pf-command-orb-shell{right:.82rem;bottom:calc(.82rem + env(safe-area-inset-bottom,0px));width:2.65rem;height:2.65rem}.pf-command-orb{width:2.65rem;height:2.65rem}.pf-command-panel{right:.82rem!important;bottom:calc(4.05rem + env(safe-area-inset-bottom,0px))!important;width:min(17.25rem,calc(100vw - 1.5rem));min-width:min(17.25rem,calc(100vw - 1.5rem))}.pf-surface-toast-viewport{right:.75rem;bottom:calc(4.65rem + env(safe-area-inset-bottom,0px));width:calc(100vw - 1.5rem)}.pf-modal-scrollframe .modal-dialog,.pf-modal-scrollframe .modal-content{max-height:calc(100dvh - 1rem)}}
@media(prefers-reduced-motion:reduce){.pf-surface-modal,.pf-surface-modal .modal-dialog,.pf-surface-modal-backdrop,.pf-command-orb,.pf-command-orb-halo,.pf-command-theme-option,.pf-command-theme-check,.pf-surface-toast{transition:none!important}.pf-command-orb:hover,.pf-command-orb:focus,.pf-command-theme-option:hover{transform:none}}

/* ===== Surface utility completion: first-party vocabulary used by Platinum apps ===== */
.col-xl{flex:1 0 0%}.col-xxl-4{flex:0 0 auto;width:100%}
.row-cols-1>*{flex:0 0 auto;width:100%}
.align-baseline{vertical-align:baseline!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}
.flex-grow{flex-grow:1!important}.float-none{float:none!important}.min-w-0{min-width:0!important}.text-break{overflow-wrap:break-word!important;word-break:break-word!important}
.mx-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}
.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}
.ps-3{padding-left:1rem!important}.opacity-75{opacity:.75!important}
.bg-gradient{background-image:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,0))!important}.bg-opacity-10{--ps-bg-opacity:.1}.bg-opacity-75{--ps-bg-opacity:.75}
.bg-white{background:var(--ps-surface,#fff)!important}.bg-primary-subtle,.bg-primary-soft{background:var(--ps-primary-bg-subtle)!important}.bg-secondary-subtle{background:var(--ps-secondary-bg)!important}.bg-success-subtle,.bg-success-soft{background:var(--ps-success-bg-subtle)!important}.bg-warning-subtle,.bg-warning-soft{background:var(--ps-warning-bg-subtle)!important}.bg-danger-subtle,.bg-danger-soft{background:var(--ps-danger-bg-subtle)!important}
.text-white{color:#fff!important}.text-body-emphasis{color:var(--ps-body-color)!important}.text-primary-emphasis{color:var(--ps-primary-text)!important}.text-info-emphasis{color:#087990!important}
.text-bg-secondary{color:#fff!important;background:var(--ps-secondary-color)!important}.text-bg-info{color:#052c36!important;background:var(--ps-info)!important}.text-bg-primary-subtle{color:var(--ps-primary-text)!important;background:var(--ps-primary-bg-subtle)!important}.text-bg-success-subtle{color:var(--ps-success-text-emphasis)!important;background:var(--ps-success-bg-subtle)!important}.text-bg-warning-subtle{color:var(--ps-warning-text-emphasis)!important;background:var(--ps-warning-bg-subtle)!important}.text-bg-danger-subtle{color:var(--ps-danger)!important;background:var(--ps-danger-bg-subtle)!important}.text-bg-info-subtle{color:#087990!important;background:#cff4fc!important}
.border-danger{border-color:var(--ps-danger)!important}.border-warning-subtle{border-color:var(--ps-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--ps-danger-border-subtle)!important}.border-primary-subtle{border-color:var(--ps-primary-border-subtle)!important}.border-success-subtle{border-color:var(--ps-success-border-subtle)!important}.border-dashed{border-style:dashed!important}.border-top-0{border-top:0!important}
.rounded-top-4{border-top-left-radius:1rem!important;border-top-right-radius:1rem!important}.rounded-bottom-4{border-bottom-left-radius:1rem!important;border-bottom-right-radius:1rem!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}
.alert-light{color:var(--ps-body-color);background:var(--ps-tertiary-bg);border-color:var(--ps-border-color)}.alert-link{font-weight:700}.alert-primary-subtle{color:var(--ps-primary-text);background:var(--ps-primary-bg-subtle);border-color:var(--ps-primary-border-subtle)}
.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{min-height:2rem;padding:.25rem .5rem;font-size:.875rem}
.table-borderless>:not(caption)>*>*{border-bottom-width:0!important}.table-light{--ps-table-bg:var(--ps-tertiary-bg);background:var(--ps-tertiary-bg)}
.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}
.modal-dialog-scrollable{height:calc(100% - 2rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}
.pagination{display:flex;padding-left:0;list-style:none;gap:.2rem}.page-link{position:relative;display:block;padding:.45rem .7rem;border:1px solid var(--ps-border-color);border-radius:.55rem;background:var(--ps-surface,#fff);color:var(--ps-primary)}.page-item.active .page-link{border-color:var(--ps-primary);background:var(--ps-primary);color:#fff}.page-item.disabled .page-link{pointer-events:none;opacity:.5}
.accordion{--ps-accordion-border:var(--ps-border-color)}.accordion-collapse:not(.show){display:none}.collapsed[aria-expanded="false"]{ }
.nav-item{list-style:none}
@media(min-width:768px){.row-cols-md-3>*{flex:0 0 auto;width:33.333333%}.flex-md-row{flex-direction:row!important}.align-items-md-center{align-items:center!important}.mt-md-4{margin-top:1.5rem!important}.pt-md-2{padding-top:.5rem!important}}
@media(min-width:992px){.sticky-lg-top{position:sticky!important;top:0;z-index:1020}.align-items-lg-center{align-items:center!important}.align-items-lg-start{align-items:flex-start!important}.mb-lg-5{margin-bottom:3rem!important}.p-lg-5{padding:3rem!important}.px-lg-4{padding-left:1.5rem!important;padding-right:1.5rem!important}}
@media(min-width:1200px){.sticky-xl-top{position:sticky!important;top:0;z-index:1020}.d-xl-block{display:block!important}.justify-content-xl-end{justify-content:flex-end!important}.col-xl{flex:1 0 0%}}
@media(min-width:1400px){.col-xxl-4{flex:0 0 auto;width:33.333333%}}



/* ==========================================================================
   Platinum Surface 2.5.5 — responsive utility completeness / audit fixes
   First-party aliases used by migrated Platinum admin screens.
   ========================================================================== */
.align-content-start{align-content:flex-start!important}.align-self-start{align-self:flex-start!important}
.bg-body{background:var(--ps-body-bg)!important}.bg-light-subtle{background:var(--ps-surface-2)!important}.bg-info{background:var(--ps-info)!important}
.border-white{--ps-border-color-rgb:255,255,255;border-color:rgba(var(--ps-border-color-rgb),var(--ps-border-opacity,1))!important}.border-opacity-25{--ps-border-opacity:.25}.border-secondary-subtle{border-color:color-mix(in srgb,var(--ps-secondary-color) 28%,transparent)!important}
.text-bg-secondary-subtle{color:var(--ps-text)!important;background:var(--ps-surface-3)!important}
@media(min-width:768px){.p-md-5{padding:3rem!important}}
@media(min-width:992px){.d-lg-inline{display:inline!important}.justify-content-lg-end{justify-content:flex-end!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-center{align-self:center!important}.flex-lg-column{flex-direction:column!important}.ms-lg-2{margin-left:.5rem!important}}
@media(min-width:1200px){.d-xl-grid{display:grid!important}.d-xl-none{display:none!important}.align-items-xl-center{align-items:center!important}.flex-xl-row{flex-direction:row!important}.me-xl-2{margin-right:.5rem!important}.p-xl-5{padding:3rem!important}}
@media(min-width:1400px){.col-xxl-1{flex:0 0 auto;width:8.333333%}.col-xxl-2{flex:0 0 auto;width:16.666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.333333%}.col-xxl-5{flex:0 0 auto;width:41.666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.333333%}.col-xxl-8{flex:0 0 auto;width:66.666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.333333%}.col-xxl-11{flex:0 0 auto;width:91.666667%}.col-xxl-12{flex:0 0 auto;width:100%}.flex-xxl-row{flex-direction:row!important}}

/* ========================================================================== 
   Platinum Surface 2.1 — application/admin composition primitives
   ========================================================================== */
:root{
  --ps-rail-width:248px;--ps-rail-collapsed:76px;--ps-topbar-height:64px;
  --ps-shell-bg:#f3f6fb;--ps-shell-panel:#fff;--ps-shell-ink:#0f2746;--ps-shell-muted:#64748b;
  --ps-shell-border:rgba(15,39,70,.12);--ps-focus:0 0 0 3px rgba(31,125,241,.2);
}
.theme-dark{--ps-shell-bg:#07121f;--ps-shell-panel:#0f1d2e;--ps-shell-ink:#eef4ff;--ps-shell-muted:#a7b5c9;--ps-shell-border:rgba(148,163,184,.2)}
.ps-admin-body{margin:0;background:var(--ps-shell-bg);color:var(--ps-shell-ink);min-height:100vh}
.ps-admin-shell{min-height:100vh;display:grid;grid-template-columns:var(--ps-rail-width) minmax(0,1fr)}
.ps-admin-rail{position:sticky;top:0;height:100vh;overflow:auto;background:#071525;color:#e9f2ff;border-right:1px solid rgba(255,255,255,.08);z-index:30}
.ps-admin-rail__brand{height:var(--ps-topbar-height);display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}
.ps-admin-brand{color:#fff;text-decoration:none;font-weight:900;letter-spacing:-.02em;white-space:nowrap;overflow:hidden}
.ps-admin-rail__collapse{color:#dbeafe!important;border-color:transparent!important;flex:0 0 auto}
.ps-admin-nav{padding:.8rem}.ps-admin-nav__group+.ps-admin-nav__group{margin-top:1rem}.ps-admin-nav__label{padding:.3rem .7rem;color:#7f94ad;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.ps-admin-nav__link{display:flex;align-items:center;gap:.7rem;min-height:42px;padding:.55rem .7rem;border-radius:12px;color:#bdcce0;text-decoration:none;font-weight:750;font-size:.9rem}.ps-admin-nav__link:hover,.ps-admin-nav__link.is-active{background:rgba(31,125,241,.2);color:#fff}.ps-admin-nav__link i{width:20px;text-align:center}
/* Admin shell layering: page-local sticky content uses the 1020 tier; the shared topbar must remain above it so topbar dropdowns cannot fall behind workspace cards. */
.ps-admin-workspace{min-width:0}.ps-admin-topbar{height:var(--ps-topbar-height);position:sticky;top:0;z-index:1030;display:flex;align-items:center;gap:1rem;padding:0 1.25rem;background:color-mix(in srgb,var(--ps-shell-panel) 94%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--ps-shell-border)}
.ps-admin-topbar__title{font-weight:900;flex:1}.ps-admin-topbar__actions{display:flex;align-items:center;gap:.5rem}.ps-admin-mobile-nav{display:none}
.ps-admin-main{min-width:0}.ps-admin-content{width:min(1500px,100%);margin:0 auto;padding:1.35rem}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-shell{grid-template-columns:var(--ps-rail-collapsed) minmax(0,1fr)}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__link span,.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__label,.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-brand{display:none}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__link{justify-content:center}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-rail__brand{justify-content:center}
.ps-page-header{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:0 0 1.15rem;padding:1.7rem 1.85rem;border:1px solid var(--ps-hero-border);border-radius:24px;background:var(--ps-hero-bg);color:var(--ps-hero-text);box-shadow:var(--ps-shadow-strong)}.ps-page-header::after{content:"";position:absolute;z-index:-1;width:20rem;height:20rem;right:-7rem;top:-10rem;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,0) 68%);pointer-events:none}
.ps-page-header__copy{min-width:0}.ps-page-header__title{margin:.15rem 0 .25rem;color:var(--ps-hero-text);font-size:clamp(1.75rem,3vw,2.35rem);font-weight:900;line-height:1.06;letter-spacing:-.04em}.ps-page-header__subtitle{margin:0;color:var(--ps-hero-soft);max-width:78ch;line-height:1.58}.ps-page-header__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.ps-page-header .ps-eyebrow{color:var(--ps-hero-soft)}.ps-page-header .btn-light,.ps-page-header .btn-outline-secondary,.ps-page-header .btn-secondary{border-color:rgba(255,255,255,.24)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:none!important}.ps-page-header .btn-light:hover,.ps-page-header .btn-outline-secondary:hover,.ps-page-header .btn-secondary:hover{border-color:rgba(255,255,255,.38)!important;background:rgba(255,255,255,.20)!important;color:#fff!important}.ps-page-header .btn-primary{border-color:#fff!important;background:#fff!important;color:#0d5ec9!important;box-shadow:0 10px 24px rgba(2,12,26,.16)!important}.ps-eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#1f7df1}
.ps-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.7rem .8rem;border:1px solid var(--ps-shell-border);border-radius:16px;background:var(--ps-shell-panel)}.ps-page-toolbar__primary,.ps-page-toolbar__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.ps-list-shell{border:1px solid var(--ps-shell-border);border-radius:18px;background:var(--ps-shell-panel);overflow:hidden}.ps-list-shell__head{padding:.8rem 1rem;border-bottom:1px solid var(--ps-shell-border);font-weight:900}.ps-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.85rem 1rem;border-top:1px solid var(--ps-shell-border)}.ps-list-row:first-child{border-top:0}.ps-list-row.is-selected{background:rgba(31,125,241,.07);box-shadow:inset 3px 0 0 #1f7df1}
.ps-empty-state{text-align:center;padding:clamp(2rem,6vw,4rem) 1.25rem;border:1px dashed var(--ps-shell-border);border-radius:20px;background:var(--ps-shell-panel)}.ps-empty-state__icon{font-size:2rem;color:#1f7df1}.ps-empty-state__title{margin:.55rem 0 .25rem}.ps-empty-state__message{margin:0 auto;color:var(--ps-shell-muted);max-width:55ch}.ps-empty-state__actions{margin-top:1rem;display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}
.ps-validation-summary{padding:.85rem 1rem;border:1px solid rgba(220,38,38,.26);border-left:4px solid #dc2626;border-radius:14px;background:rgba(254,226,226,.6);color:#991b1b}.theme-dark .ps-validation-summary{background:rgba(127,29,29,.22);color:#fecaca}.ps-validation-summary__title{display:block;margin-bottom:.35rem}.ps-validation-summary ul{margin:.25rem 0 0;padding-left:1.2rem}
.ps-dropzone{display:grid;justify-items:center;gap:.4rem;padding:1.4rem;border:2px dashed rgba(31,125,241,.28);border-radius:18px;background:rgba(31,125,241,.035);cursor:pointer;text-align:center;transition:.16s ease}.ps-dropzone:hover,.ps-dropzone.is-dragover{border-color:#1f7df1;background:rgba(31,125,241,.08);transform:translateY(-1px)}.ps-dropzone__input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ps-dropzone__icon{font-size:1.8rem;color:#1f7df1}.ps-dropzone__help,.ps-dropzone__selection{color:var(--ps-shell-muted);font-size:.84rem}.ps-dropzone__selection:not(:empty){font-weight:800;color:var(--ps-shell-ink)}
.ps-media-tile{border:1px solid var(--ps-shell-border);border-radius:16px;background:var(--ps-shell-panel);overflow:hidden}.ps-media-tile__thumb{aspect-ratio:1/1;background:#e9eef6;display:block;width:100%;object-fit:cover}.ps-media-tile__body{padding:.75rem}.ps-media-tile__title{font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-skeleton{position:relative;overflow:hidden;background:color-mix(in srgb,var(--ps-shell-muted) 16%,transparent);border-radius:8px;min-height:1em}.ps-skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:ps-skeleton 1.25s infinite}@keyframes ps-skeleton{to{transform:translateX(100%)}}
.ps-progress{height:8px;border-radius:999px;background:color-mix(in srgb,var(--ps-shell-muted) 15%,transparent);overflow:hidden}.ps-progress>span{display:block;height:100%;width:var(--ps-progress,0%);background:#1f7df1;border-radius:inherit;transition:width .2s ease}
.dropdown-menu[data-ps-positioned="viewport"]{position:fixed!important;margin:0!important;z-index:2000;max-height:min(70vh,520px);overflow:auto}
@media(max-width:900px){.ps-admin-shell{display:block}.ps-admin-rail{position:fixed;left:0;top:0;bottom:0;width:min(86vw,290px);height:100vh;z-index:1040;transform:translateX(-102%);transition:transform .18s ease;box-shadow:0 28px 70px rgba(0,0,0,.35)}.ps-admin-body[data-ps-sidebar-state="mobile-open"] .ps-admin-rail{transform:none}.ps-admin-mobile-nav{display:inline-flex}.ps-admin-rail__collapse{display:none}.ps-admin-content{padding:1rem}.ps-page-header{flex-direction:column}.ps-page-header__actions{justify-content:flex-start}.ps-admin-body[data-ps-sidebar-state="mobile-open"]::after{content:"";position:fixed;inset:0;background:rgba(2,8,23,.55);z-index:1035}}

/* ========================================================================== 
   Platinum Surface 2.1.2 — contract-completion patch
   ========================================================================== */
/* Ghost buttons are part of the admin-shell template contract. */
.btn-ghost{border-color:transparent;background:transparent;color:inherit}.btn-ghost:hover,.btn-ghost:focus{border-color:color-mix(in srgb,currentColor 12%,transparent);background:color-mix(in srgb,currentColor 8%,transparent);color:inherit}

/* Canonical form validation states belong to Surface, not consuming apps/docs. */
.form-control.is-invalid,.form-select.is-invalid,.form-control[aria-invalid="true"],.form-select[aria-invalid="true"]{border-color:var(--ps-danger)!important;box-shadow:0 0 0 .18rem color-mix(in srgb,var(--ps-danger) 14%,transparent)!important}
.form-control.is-invalid:focus,.form-select.is-invalid:focus,.form-control[aria-invalid="true"]:focus,.form-select[aria-invalid="true"]:focus{border-color:var(--ps-danger)!important;box-shadow:0 0 0 .22rem color-mix(in srgb,var(--ps-danger) 18%,transparent)!important}
.invalid-feedback{display:none;margin-top:.35rem;color:var(--ps-danger);font-size:.78rem}.is-invalid~.invalid-feedback,[aria-invalid="true"]~.invalid-feedback,.invalid-feedback.d-block{display:block}
.form-control.is-valid,.form-select.is-valid{border-color:var(--ps-success)!important}.valid-feedback{display:none;margin-top:.35rem;color:var(--ps-success);font-size:.78rem}.is-valid~.valid-feedback,.valid-feedback.d-block{display:block}

/* Compact brand contract for the Surface admin shell. */
.ps-admin-brand[data-ps-brand-compact]{display:flex;align-items:center;gap:.65rem}.ps-admin-brand__mark{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#0d5aa7,#7fc3ff);color:#fff;font-size:.82rem;font-weight:900;box-shadow:0 8px 20px rgba(13,90,167,.25)}.ps-admin-brand__label{min-width:0;overflow:hidden;text-overflow:ellipsis}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-brand[data-ps-brand-compact]{display:flex}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-brand[data-ps-brand-compact] .ps-admin-brand__label{display:none}
/* Signature Planning Calendar shell aliases shipped by the Surface template. */
.dash-panel,.pf-calendar-planner{background:var(--ps-surface);color:var(--ps-text)}.pf-calendar-planner .panel-title{font-weight:850}


/* ==========================================================================
   Platinum Surface 2.1.3 — modal sizing reliability patch
   ========================================================================== */
/* Workspace and wide modal sizing is intentionally defined only once.
   Do not self-reference --ps-modal-width: cyclic custom properties invalidate
   max-width at computed-value time and allow dialogs to expand to the viewport. */


/* ========================================================================== 
   Platinum Surface 2.1.4 — component fidelity + signature calendar patch
   ========================================================================== */

/* Composed cards keep their own visible rounded edges without clipping
   overlays such as dropdowns/popovers that may originate inside a card. */
.card{--ps-card-radius:1rem;border-radius:var(--ps-card-radius)}
.card-header{border-top-left-radius:var(--ps-card-radius);border-top-right-radius:var(--ps-card-radius);border-bottom-left-radius:0;border-bottom-right-radius:0}
.card-footer{border-bottom-left-radius:var(--ps-card-radius);border-bottom-right-radius:var(--ps-card-radius);border-top-left-radius:0;border-top-right-radius:0}

/* List groups own their edge radii at the first/last item level as well as
   the shell so active/background states never visually square the corners. */
.list-group{--ps-list-radius:.75rem;border-radius:var(--ps-list-radius);overflow:hidden}
.list-group-item:first-child{border-top-left-radius:var(--ps-list-radius);border-top-right-radius:var(--ps-list-radius)}
.list-group-item:last-child{border-bottom-left-radius:var(--ps-list-radius);border-bottom-right-radius:var(--ps-list-radius)}

/* KPI/stat children are a vertical composition, not an inline text run. */
.pf-stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:.18rem}
.pf-stat-card .label,.pf-stat-card .value,.pf-stat-card .note{display:block;max-width:100%}
.pf-stat-card .value{margin-top:.08rem;line-height:1.05}
.pf-stat-card .note{margin-top:.08rem;line-height:1.3}
.pf-kpi-card,.pf-standard-kpi{display:flex;flex-direction:column;align-items:flex-start;gap:.28rem}
.pf-kpi-label,.pf-kpi-value,.pf-kpi-note{display:block;max-width:100%}
.pf-kpi-value{line-height:1.06}

/* Progress labels are intentionally compact enough to remain centered within
   the standard track height. */
.progress-bar{font-size:.68rem;font-weight:750;line-height:1}

/* Command Orb: light mode is a true light presentation. Dark colors are
   applied only when the resolved theme is dark. */
.pf-command-panel{border-color:rgba(13,61,115,.14)!important;background:radial-gradient(120% 85% at 92% -8%,rgba(72,150,255,.11),transparent 48%),linear-gradient(180deg,rgba(255,255,255,.995),rgba(247,250,255,.995))!important;color:#10233f!important;box-shadow:0 24px 60px rgba(16,43,76,.18),inset 0 1px 0 rgba(255,255,255,.96)!important}
.pf-command-panel .pf-command-panel-mark{background:#eaf3ff;border-color:#cfe2ff;color:#0d5ec9}
.pf-command-panel .pf-command-panel-kicker{color:#6b7d98}
.pf-command-panel .pf-command-panel-title{color:#10233f}
.pf-command-panel .pf-command-panel-section{border-color:rgba(13,61,115,.10);background:rgba(239,245,253,.68)}
.pf-command-panel .pf-command-section-title{color:#5f718d}
.pf-command-panel .pf-command-section-value{background:#eaf3ff;border-color:#cfe2ff;color:#0d5ec9}
.pf-command-panel .pf-command-theme-option{color:#31445f}
.pf-command-panel .pf-command-theme-option:hover,.pf-command-panel .pf-command-theme-option:focus{background:#edf4fd;border-color:#d8e6f6;color:#10233f}
.pf-command-panel .pf-command-theme-option.active,.pf-command-panel .pf-command-theme-option[aria-pressed="true"]{background:linear-gradient(90deg,#dbeaff,#eef6ff);border-color:#bfd8ff;color:#0d3d73}
.pf-command-panel .pf-command-theme-icon{background:#f5f8fc;color:#2d639c}
.pf-command-panel .pf-command-theme-copy small{color:#6b7d98}
.pf-command-panel .pf-command-theme-check{background:#1679fa;color:#fff}
.theme-dark .pf-command-panel,.dark .pf-command-panel,[data-ps-theme="dark"] .pf-command-panel{border-color:rgba(139,190,255,.22)!important;background:radial-gradient(120% 85% at 92% -8%,rgba(72,150,255,.22),transparent 47%),linear-gradient(180deg,rgba(10,38,72,.985),rgba(6,25,51,.992))!important;color:#f7fbff!important;box-shadow:0 24px 60px rgba(2,20,45,.34),inset 0 1px 0 rgba(255,255,255,.07)!important}
.theme-dark .pf-command-panel .pf-command-panel-mark,.dark .pf-command-panel .pf-command-panel-mark,[data-ps-theme="dark"] .pf-command-panel .pf-command-panel-mark{background:rgba(92,164,255,.18);border-color:rgba(142,195,255,.18);color:#b9d9ff}
.theme-dark .pf-command-panel .pf-command-panel-kicker,.dark .pf-command-panel .pf-command-panel-kicker,[data-ps-theme="dark"] .pf-command-panel .pf-command-panel-kicker{color:rgba(220,237,255,.58)}
.theme-dark .pf-command-panel .pf-command-panel-title,.dark .pf-command-panel .pf-command-panel-title,[data-ps-theme="dark"] .pf-command-panel .pf-command-panel-title{color:#fff}
.theme-dark .pf-command-panel .pf-command-panel-section,.dark .pf-command-panel .pf-command-panel-section,[data-ps-theme="dark"] .pf-command-panel .pf-command-panel-section{border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.035)}
.theme-dark .pf-command-panel .pf-command-section-title,.dark .pf-command-panel .pf-command-section-title,[data-ps-theme="dark"] .pf-command-panel .pf-command-section-title{color:rgba(230,241,255,.74)}
.theme-dark .pf-command-panel .pf-command-section-value,.dark .pf-command-panel .pf-command-section-value,[data-ps-theme="dark"] .pf-command-panel .pf-command-section-value{background:rgba(108,173,255,.12);border-color:rgba(125,186,255,.14);color:#bddcff}
.theme-dark .pf-command-panel .pf-command-theme-option,.dark .pf-command-panel .pf-command-theme-option,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-option{color:rgba(238,247,255,.78)}
.theme-dark .pf-command-panel .pf-command-theme-option:hover,.theme-dark .pf-command-panel .pf-command-theme-option:focus,.dark .pf-command-panel .pf-command-theme-option:hover,.dark .pf-command-panel .pf-command-theme-option:focus,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-option:hover,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-option:focus{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.07);color:#fff}
.theme-dark .pf-command-panel .pf-command-theme-option.active,.theme-dark .pf-command-panel .pf-command-theme-option[aria-pressed="true"],.dark .pf-command-panel .pf-command-theme-option.active,.dark .pf-command-panel .pf-command-theme-option[aria-pressed="true"],[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-option.active,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-option[aria-pressed="true"]{background:linear-gradient(90deg,rgba(61,134,230,.21),rgba(82,157,255,.10));border-color:rgba(125,186,255,.20);color:#fff}
.theme-dark .pf-command-panel .pf-command-theme-icon,.dark .pf-command-panel .pf-command-theme-icon,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-icon{background:rgba(255,255,255,.055);color:#b8d7fb}
.theme-dark .pf-command-panel .pf-command-theme-copy small,.dark .pf-command-panel .pf-command-theme-copy small,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-copy small{color:rgba(218,234,252,.48)}
.theme-dark .pf-command-panel .pf-command-theme-check,.dark .pf-command-panel .pf-command-theme-check,[data-ps-theme="dark"] .pf-command-panel .pf-command-theme-check{background:#8fc5ff;color:#063464}

/* Signature Planning Calendar. This is the preserved Finance calendar visual
   contract promoted into Surface. Applications own dates/events/editor logic;
   Surface owns the shell, navigation, day markers, legend, and responsiveness. */
.pf-calendar-planner{
  --ps-calendar-component-version:"2.0";
  --ps-calendar-payday:#22a06b;
  --ps-calendar-holiday:#ffc400;
  --ps-calendar-work:#224f90;
  --ps-calendar-bill:#e55353;
  --ps-calendar-event:#7c3aed;
  --ps-calendar-today-bg:#fff;
  --ps-calendar-today-text:#0d3d73;
  --ps-calendar-today-ring:#1679fa;
  --ps-calendar-today-glow:rgba(22,121,250,.18);
  --ps-calendar-today-shadow:rgba(13,61,115,.15);
  --ps-calendar-past-num-opacity:.65;
  --ps-calendar-past-dot-opacity:.45;
}
.theme-dark .pf-calendar-planner,.dark .pf-calendar-planner,[data-ps-theme="dark"] .pf-calendar-planner{
  --ps-calendar-payday:#34d399;
  --ps-calendar-holiday:#ffd357;
  --ps-calendar-work:#6aa2ff;
  --ps-calendar-bill:#ff6b6b;
  --ps-calendar-event:#b79cff;
  --ps-calendar-today-bg:rgba(255,255,255,.08);
  --ps-calendar-today-text:#eaf1ff;
  --ps-calendar-today-ring:#68a2ff;
  --ps-calendar-today-glow:rgba(90,141,255,.25);
  --ps-calendar-today-shadow:rgba(2,12,26,.5);
  --ps-calendar-past-num-opacity:.70;
  --ps-calendar-past-dot-opacity:.50;
}
.pf-calendar-planner .calendar-shell{min-width:0}
.pf-calendar-planner .calendar-nav{padding:.25rem 0 1rem;margin-bottom:1rem;border-bottom:1px solid var(--ps-border)}
.pf-calendar-planner .calendar-month-title{font-size:2rem;font-weight:800;color:#0b2f66;letter-spacing:.01em;line-height:1.1;text-align:center}
.pf-calendar-planner .calendar-subtitle{max-width:66ch;margin:.35rem auto 0;color:var(--ps-text-soft);font-size:.9rem;line-height:1.45;text-align:center}
.pf-calendar-planner .calendar-actions{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}
.pf-calendar-planner .calendar-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;padding:.5rem .95rem;font-weight:700;box-shadow:none}
.pf-calendar-planner .calendar-action.btn-outline-primary{border-color:rgba(23,105,213,.28);color:#124ea6;background:#fff}
.pf-calendar-planner .calendar-action.btn-outline-primary:hover{background:#eff6ff;border-color:#1769d5;color:#11448f}
.pf-calendar-planner .calendar-action.btn-light{background:#f8fafc;border-color:rgba(15,23,42,.08);color:#0f172a}
.pf-calendar-planner .calendar-table{width:100%;table-layout:fixed;margin-bottom:0!important;font-size:1.1rem!important}
.pf-calendar-planner .calendar-table thead tr,.pf-calendar-planner .calendar-table tbody tr{height:68px}
.pf-calendar-planner .calendar-table th,.pf-calendar-planner .calendar-table td{width:14.2857%;height:68px;padding:0!important;vertical-align:middle;text-align:center;border:0!important}
.pf-calendar-planner .calendar-table thead th{color:var(--ps-text-soft);font-weight:800}
.pf-calendar-planner .day{position:relative;width:100%;height:68px;min-height:68px}
.pf-calendar-planner .day-trigger{display:flex;min-height:68px;padding:.3rem 0;flex-direction:column;align-items:center;justify-content:center;border-radius:.8rem;outline:0;cursor:pointer}
.pf-calendar-planner .day-trigger:hover{background:color-mix(in srgb,var(--ps-primary) 5%,transparent)}
.pf-calendar-planner .day-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ps-primary) 18%,transparent)}
.pf-calendar-planner .day-num{display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0 auto;border-radius:50%;font-size:1.1em;font-weight:600;line-height:1}
.pf-calendar-planner .day-num.is-today{background:var(--ps-calendar-today-bg);color:var(--ps-calendar-today-text);font-weight:700;box-shadow:0 0 0 2px var(--ps-calendar-today-ring),0 0 0 6px var(--ps-calendar-today-glow),0 2px 8px var(--ps-calendar-today-shadow)}
.pf-calendar-planner .day-num.is-past{opacity:var(--ps-calendar-past-num-opacity)}
.pf-calendar-planner .dots{display:flex;align-items:center;justify-content:center;gap:.25rem;min-height:.65rem;margin-top:.22rem}
.pf-calendar-planner .dot{display:inline-block;width:8px;height:8px;flex:0 0 8px;border-radius:50%}
.pf-calendar-planner .dot--payday{background:var(--ps-calendar-payday)}
.pf-calendar-planner .dot--holiday{background:var(--ps-calendar-holiday)}
.pf-calendar-planner .dot--work{background:var(--ps-calendar-work)}
.pf-calendar-planner .dot--bill{background:var(--ps-calendar-bill)}
.pf-calendar-planner .dot--event{background:var(--ps-calendar-event)}
.pf-calendar-planner .dots.is-past .dot,.pf-calendar-planner .dot.is-past{opacity:var(--ps-calendar-past-dot-opacity);filter:grayscale(.25) saturate(.7)}
.pf-calendar-planner .dot-more{margin-left:2px;transform:translateY(-1px);color:var(--ps-text-soft);font-size:10px;font-weight:600;line-height:1}
.pf-calendar-planner .calendar-legend,.pf-calendar-planner .legend{display:flex;align-items:center;justify-content:center;gap:1rem 1.5rem;flex-wrap:wrap;margin:1rem 0 0;color:var(--ps-text-soft)}
.pf-calendar-planner .calendar-legend>span,.pf-calendar-planner .legend>span{display:inline-flex;align-items:center;gap:.38rem}
.pf-calendar-planner .legend-label{color:var(--ps-text-soft);font-size:.92rem}
.theme-dark .pf-calendar-planner .calendar-month-title,.dark .pf-calendar-planner .calendar-month-title,[data-ps-theme="dark"] .pf-calendar-planner .calendar-month-title{color:var(--ps-text)}
.theme-dark .pf-calendar-planner .calendar-action.btn-light,.theme-dark .pf-calendar-planner .calendar-action.btn-outline-primary,.dark .pf-calendar-planner .calendar-action.btn-light,.dark .pf-calendar-planner .calendar-action.btn-outline-primary,[data-ps-theme="dark"] .pf-calendar-planner .calendar-action.btn-light,[data-ps-theme="dark"] .pf-calendar-planner .calendar-action.btn-outline-primary{background:#15243c!important;border-color:#29456f!important;color:#eaf1ff!important}
.theme-dark .pf-calendar-planner .calendar-action.btn-light:hover,.theme-dark .pf-calendar-planner .calendar-action.btn-outline-primary:hover,.dark .pf-calendar-planner .calendar-action.btn-light:hover,.dark .pf-calendar-planner .calendar-action.btn-outline-primary:hover,[data-ps-theme="dark"] .pf-calendar-planner .calendar-action.btn-light:hover,[data-ps-theme="dark"] .pf-calendar-planner .calendar-action.btn-outline-primary:hover{background:#1a2e4d!important;border-color:#3a5f91!important;color:#fff!important}
@media(prefers-reduced-motion:no-preference){.pf-calendar-planner .day-num.is-today{animation:ps-calendar-today-pop .22s ease-out}@keyframes ps-calendar-today-pop{from{transform:scale(.92);opacity:.9}to{transform:scale(1);opacity:1}}}
@media(max-width:991.98px){.pf-calendar-planner .calendar-month-title{font-size:1.6rem}.pf-calendar-planner .calendar-table{font-size:1rem!important}}
@media(max-width:576px){.pf-calendar-planner .calendar-month-title{font-size:1.35rem}.pf-calendar-planner .calendar-subtitle{font-size:.82rem;line-height:1.35}.pf-calendar-planner .calendar-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:.4rem}.pf-calendar-planner .calendar-action{width:100%;padding:.45rem .35rem;font-size:.78rem;min-height:38px}.pf-calendar-planner .calendar-table{font-size:.82rem!important}.pf-calendar-planner .calendar-table thead tr,.pf-calendar-planner .calendar-table tbody tr,.pf-calendar-planner .calendar-table th,.pf-calendar-planner .calendar-table td,.pf-calendar-planner .day,.pf-calendar-planner .day-trigger{height:44px;min-height:44px}.pf-calendar-planner .day-trigger{padding:.2rem 0}.pf-calendar-planner .day-num{width:1.75rem;height:1.75rem;font-size:.82rem;line-height:1.75rem}.pf-calendar-planner .dots{gap:.12rem;margin-top:.05rem}.pf-calendar-planner .dot{width:.36rem;height:.36rem;flex-basis:.36rem}.pf-calendar-planner .dot-more{font-size:.58rem;padding:.02rem .2rem}.pf-calendar-planner .legend-label{font-size:.78rem}.pf-calendar-planner .calendar-legend,.pf-calendar-planner .legend{gap:.55rem .75rem}.pf-calendar-planner .d-flex.align-items-center.gap-4{gap:.75rem!important}}
@media(max-width:390px){.pf-calendar-planner .calendar-actions{grid-template-columns:1fr}.pf-calendar-planner .calendar-action{font-size:.82rem}.pf-calendar-planner .calendar-table thead tr,.pf-calendar-planner .calendar-table tbody tr,.pf-calendar-planner .calendar-table th,.pf-calendar-planner .calendar-table td,.pf-calendar-planner .day,.pf-calendar-planner .day-trigger{height:40px;min-height:40px}.pf-calendar-planner .day-num{width:1.55rem;height:1.55rem;font-size:.76rem;line-height:1.55rem}}


/* ===== 2.5.5 migrated-page compatibility completion ===== */
.font-monospace{font-family:var(--ps-font-monospace)!important}.lh-1{line-height:1!important}
.form-control-plaintext{display:block;width:100%;min-height:2.75rem;padding:.58rem 0;margin-bottom:0;color:var(--ps-text);background:transparent;border:solid transparent;border-width:1px 0;line-height:1.35}
.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{min-height:3.1rem;padding:.72rem .9rem;font-size:1.05rem}
.pagination-sm .page-link{padding:.3rem .55rem;border-radius:.48rem;font-size:.875rem}
.nav-pills{gap:.25rem}.nav-pills .nav-link{border-radius:.65rem;color:var(--ps-text-soft)}.nav-pills .nav-link:hover{background:var(--ps-surface-3);color:var(--ps-text)}.nav-pills .nav-link.active{background:var(--ps-primary);color:#fff}
.alert-dismissible{padding-right:3.25rem}.alert-dismissible .btn-close{position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}
.pf-standard-card-body{padding:1.15rem 1.2rem}

/* ===== 2.2.1 Selection + ordering primitives =====
   Canonicalized directly from the proven CMS Top Stories manager. Surface owns
   presentation; applications own records, selection/reorder rules, persistence,
   status meaning, and destructive-action safeguards. */
:root{--ps-selection-accent:#0d6efd;--ps-selection-accent-rgb:13,110,253}
.ps-selection-board{overflow:hidden}
.ps-selection-board__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;background:var(--ps-surface);border-bottom:1px solid var(--ps-border)}
.ps-selection-board__heading{min-width:0}.ps-selection-board__heading .small{max-width:42rem;color:var(--ps-text-soft)}
.ps-selection-toolbar{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.5rem;flex:0 0 auto}
.ps-selection-count{color:var(--ps-text-soft);font-size:.82rem;font-weight:800;white-space:nowrap;margin-right:.2rem}
.ps-selection-action{border-radius:999px!important;padding:.48rem .85rem!important;font-weight:800!important;line-height:1.1!important;white-space:nowrap}.ps-selection-action:disabled{opacity:.45;cursor:not-allowed}
.ps-select-page-toggle{display:inline-flex;align-items:center;gap:.45rem;min-height:2rem;padding:.34rem .7rem;border-radius:999px;background:var(--ps-surface-3);border:1px solid var(--ps-border);color:var(--ps-text);font-size:.82rem;font-weight:800;white-space:nowrap}.ps-select-page-toggle input{width:1rem;height:1rem;margin:0}
.ps-sortable-list{display:grid;gap:.85rem;padding:1rem;background:linear-gradient(180deg,rgba(248,250,252,.8),rgba(255,255,255,.95))}
.ps-selectable-card{position:relative;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s ease,background .16s ease}
.ps-ordering-card{display:grid;grid-template-columns:4.8rem 2rem 120px minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:.85rem;border:1px solid rgba(148,163,184,.28);border-radius:1.1rem;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06);cursor:pointer}
.ps-ordering-card:hover{transform:translateY(-1px);border-color:rgba(var(--ps-selection-accent-rgb),.24);box-shadow:0 18px 42px rgba(15,23,42,.08)}
.ps-ordering-card:focus-visible{outline:3px solid rgba(var(--ps-selection-accent-rgb),.25);outline-offset:2px}.ps-ordering-card.is-dragging{opacity:.58;transform:scale(.99)}
.ps-ordering-card.is-lead{border-color:rgba(var(--ps-selection-accent-rgb),.45);box-shadow:0 18px 46px rgba(var(--ps-selection-accent-rgb),.11)}
.ps-ordering-card.is-muted{background:linear-gradient(135deg,#fff,#f8fafc)}
/* aria-selected is canonical. Legacy class-only selection remains valid only when aria-selected is absent. */
.ps-selectable-card[aria-selected="true"],.ps-selectable-card.is-selected:not([aria-selected]),.ps-selectable-card.is-selected-for-bulk:not([aria-selected]){border-color:rgba(var(--ps-selection-accent-rgb),.55)!important;box-shadow:0 18px 46px rgba(var(--ps-selection-accent-rgb),.16)!important;background:linear-gradient(135deg,#eff6ff,#fff)!important}
.ps-selectable-card[aria-selected="true"]::after,.ps-selectable-card.is-selected:not([aria-selected])::after,.ps-selectable-card.is-selected-for-bulk:not([aria-selected])::after{content:attr(data-ps-selected-label);position:absolute;top:.65rem;right:.75rem;padding:.22rem .55rem;border-radius:999px;background:var(--ps-selection-accent);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 8px 20px rgba(var(--ps-selection-accent-rgb),.22);z-index:3}
.ps-selectable-card[aria-selected="true"]:not([data-ps-selected-label])::after,.ps-selectable-card.is-selected:not([aria-selected]):not([data-ps-selected-label])::after,.ps-selectable-card.is-selected-for-bulk:not([aria-selected]):not([data-ps-selected-label])::after{content:'Selected'}
.ps-rank-tile{width:4.8rem;height:4.8rem;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;border-radius:1rem;background:#eff6ff;color:var(--ps-selection-accent);font-weight:800;border:1px solid rgba(var(--ps-selection-accent-rgb),.15)}
.ps-rank-tile__number{font-size:1.35rem;line-height:1}.ps-rank-tile__label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}
.ps-drag-handle{width:2rem;height:3.5rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:.85rem;background:var(--ps-surface-3);color:var(--ps-text-soft);cursor:grab}.ps-drag-handle:active{cursor:grabbing}.ps-drag-handle:focus-visible{outline:3px solid rgba(var(--ps-primary-rgb),.20);outline-offset:2px}
.ps-media-thumb{width:120px;height:76px;overflow:hidden;display:block;border-radius:1rem;background:var(--ps-surface-3)}.ps-media-thumb>img{width:100%;height:100%;object-fit:cover;display:block}
.ps-ordering-card__details{min-width:0}.ps-ordering-card__title{color:var(--ps-text);text-decoration:none;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.ps-ordering-card__title:hover{color:var(--ps-primary)}
.ps-ordering-card__path{color:var(--ps-text-soft);font-size:.82rem;overflow-wrap:anywhere}.ps-ordering-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin-top:.25rem;color:var(--ps-text-soft);font-size:.82rem}
.ps-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;min-width:11rem}
.btn.ps-icon-button{width:2.25rem;height:2.25rem;min-width:2.25rem;min-height:2.25rem;padding:0!important;border-radius:999px!important;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.btn.ps-icon-button.btn-sm,.btn.ps-icon-button.ps-icon-button--sm{width:2.1rem;height:2.1rem;min-width:2.1rem;min-height:2.1rem}.btn.ps-icon-button.ps-icon-button--lg{width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem}.btn.ps-icon-button>i,.btn.ps-icon-button>svg{margin:0!important;pointer-events:none}.btn.ps-icon-button.btn-light{background:#f8fafc!important;border-color:rgba(148,163,184,.34)!important;color:#334155!important}.btn.ps-icon-button.btn-outline-primary{background:transparent!important;border-color:#0d6efd!important;color:#0d6efd!important}.btn.ps-icon-button.btn-outline-secondary{background:transparent!important;border-color:#64748b!important;color:#475569!important}.btn.ps-icon-button.btn-outline-danger{background:transparent!important;border-color:#dc3545!important;color:#dc3545!important}.btn.ps-icon-button:hover{filter:none;background:color-mix(in srgb,currentColor 6%,transparent)!important}
.ps-selection-footer{display:flex;align-items:center;gap:.45rem;padding:.72rem 1rem;color:var(--ps-text-soft);font-size:.84rem;line-height:1.35}.ps-selection-footer .ps-icon,.ps-selection-footer .bi,.ps-selection-footer [data-ps-note-icon]{color:var(--ps-primary)}
.theme-dark .ps-sortable-list,.dark .ps-sortable-list,[data-ps-theme="dark"] .ps-sortable-list{background:linear-gradient(180deg,rgba(15,23,42,.55),rgba(15,23,42,.25))}
.theme-dark .ps-ordering-card,.dark .ps-ordering-card,[data-ps-theme="dark"] .ps-ordering-card{background:#111827;border-color:rgba(148,163,184,.18)}
.theme-dark .ps-ordering-card.is-muted,.dark .ps-ordering-card.is-muted,[data-ps-theme="dark"] .ps-ordering-card.is-muted{background:linear-gradient(135deg,#111827,#0f172a)}
.theme-dark .ps-selectable-card[aria-selected="true"],.dark .ps-selectable-card[aria-selected="true"],[data-ps-theme="dark"] .ps-selectable-card[aria-selected="true"],.theme-dark .ps-selectable-card.is-selected:not([aria-selected]),.theme-dark .ps-selectable-card.is-selected-for-bulk:not([aria-selected]),.dark .ps-selectable-card.is-selected:not([aria-selected]),.dark .ps-selectable-card.is-selected-for-bulk:not([aria-selected]),[data-ps-theme="dark"] .ps-selectable-card.is-selected:not([aria-selected]),[data-ps-theme="dark"] .ps-selectable-card.is-selected-for-bulk:not([aria-selected]){background:linear-gradient(135deg,rgba(var(--ps-primary-rgb),.16),rgba(15,23,42,.92))!important}
.theme-dark .btn.ps-icon-button.btn-light,.dark .btn.ps-icon-button.btn-light,[data-ps-theme="dark"] .btn.ps-icon-button.btn-light{background:#111827!important;border-color:rgba(148,163,184,.28)!important;color:#e5e7eb!important}.theme-dark .btn.ps-icon-button.btn-outline-secondary,.dark .btn.ps-icon-button.btn-outline-secondary,[data-ps-theme="dark"] .btn.ps-icon-button.btn-outline-secondary{border-color:#94a3b8!important;color:#cbd5e1!important}
.theme-dark .ps-rank-tile,.dark .ps-rank-tile,[data-ps-theme="dark"] .ps-rank-tile{background:rgba(var(--ps-primary-rgb),.13);color:var(--ps-primary-text);border-color:rgba(var(--ps-primary-rgb),.24)}
@media(max-width:1199.98px){.ps-ordering-card{grid-template-columns:4.2rem 2rem 96px minmax(0,1fr)}.ps-media-thumb{width:96px;height:66px}.ps-row-actions{grid-column:4;justify-content:flex-start;min-width:0}}
@media(max-width:991.98px){.ps-selection-board__header{align-items:flex-start;flex-direction:column}.ps-selection-toolbar{width:100%;justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:767.98px){.ps-sortable-list{padding:.75rem}.ps-ordering-card{grid-template-columns:3.8rem minmax(0,1fr);gap:.65rem;align-items:start}.ps-ordering-card[aria-selected="true"]::after,.ps-ordering-card.is-selected:not([aria-selected])::after,.ps-ordering-card.is-selected-for-bulk:not([aria-selected])::after{top:.5rem;right:.55rem}.ps-drag-handle{display:none}.ps-media-thumb{grid-column:1;width:100%;height:4.5rem}.ps-ordering-card__details{grid-column:2;grid-row:1 / span 2;padding-right:4.8rem}.ps-row-actions{grid-column:1 / -1;justify-content:flex-start}.ps-selection-toolbar{justify-content:flex-start}}
@media(max-width:575.98px){.ps-selection-toolbar{display:grid;grid-template-columns:1fr}.ps-selection-count{margin:0}.ps-selection-action,.ps-select-page-toggle{width:100%;justify-content:center}.ps-row-actions{justify-content:flex-start}}

/* ===== Platinum native icon system (2.3) ===== */
.ps-icon{--ps-icon-size:1em;display:inline-block;width:var(--ps-icon-size);height:var(--ps-icon-size);flex:0 0 var(--ps-icon-size);background-color:currentColor;-webkit-mask-image:var(--ps-icon);mask-image:var(--ps-icon);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;vertical-align:-.125em;pointer-events:none}
.ps-icon--xs{--ps-icon-size:.75em}.ps-icon--sm{--ps-icon-size:.875em}.ps-icon--lg{--ps-icon-size:1.25em}.ps-icon--xl{--ps-icon-size:1.5em}
.ps-icon-label{display:inline-flex;align-items:center;gap:.42em}
.btn>.ps-icon:first-child:not(:last-child){margin-right:.38em}.btn>.ps-icon:last-child:not(:first-child){margin-left:.38em}.btn.ps-icon-button>.ps-icon{margin:0!important;--ps-icon-size:1.05rem}
.ps-drag-handle>.ps-icon{--ps-icon-size:1.05rem}
.ps-icon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.75rem}.ps-icon-swatch{display:flex;align-items:center;gap:.65rem;padding:.8rem .9rem;border:1px solid var(--ps-border-color);border-radius:.85rem;background:var(--ps-surface-1,#fff);color:var(--ps-body-color)}.ps-icon-swatch>.ps-icon{--ps-icon-size:1.25rem;color:var(--ps-primary)}.ps-icon-swatch code{font-size:.75rem;color:var(--ps-secondary-color)}
.ps-icon--arrow-up{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2019V5%22%2F%3E%3Cpath%20d%3D%22m6.5%2010.5%205.5-5.5%205.5%205.5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--arrow-down{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v14%22%2F%3E%3Cpath%20d%3D%22m6.5%2013.5%205.5%205.5%205.5-5.5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--edit{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4.5%2019.5%208%2019l10.2-10.2-3-3L5%2016z%22%2F%3E%3Cpath%20d%3D%22m13.8%207.2%203%203%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--edit-square{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M13%205H6a2%202%200%200%200-2%202v11a2%202%200%200%200%202%202h11a2%202%200%200%200%202-2v-7%22%2F%3E%3Cpath%20d%3D%22M16.5%203.5a2.1%202.1%200%200%201%203%203L11%2015l-4%201%201-4z%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--external{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%205h5v5%22%2F%3E%3Cpath%20d%3D%22m19%205-9%209%22%2F%3E%3Cpath%20d%3D%22M19%2013v5a1%201%200%200%201-1%201H6a1%201%200%200%201-1-1V6a1%201%200%200%201%201-1h5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--close{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%206%2012%2012M18%206%206%2018%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--drag{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229%22%20cy%3D%226%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%226%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2212%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2212%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2218%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2218%22%20r%3D%221%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--check{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%2012.5%204.2%204.2L19%207%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--check-circle{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22m7.5%2012.3%203%203L16.8%209%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--x-circle{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22m8.5%208.5%207%207M15.5%208.5l-7%207%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--error-circle{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v6%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2217%22%20r%3D%22.8%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--warning{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10.2%204.7%203.1%2017a2%202%200%200%200%201.7%203h14.4a2%202%200%200%200%201.7-3L13.8%204.7a2%202%200%200%200-3.6%200Z%22%2F%3E%3Cpath%20d%3D%22M12%209v4%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2216.5%22%20r%3D%22.8%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--info{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%2011v6%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%227.5%22%20r%3D%22.8%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--shield-check{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203%205%206v5c0%204.8%202.9%208%207%2010%204.1-2%207-5.2%207-10V6z%22%2F%3E%3Cpath%20d%3D%22m8.5%2012%202.2%202.2%204.8-5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--save{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%204h12l2%202v14H5z%22%2F%3E%3Cpath%20d%3D%22M8%204v6h8V4M8%2020v-6h8v6%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--upload{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2016V5%22%2F%3E%3Cpath%20d%3D%22m7.5%209.5%204.5-4.5%204.5%204.5%22%2F%3E%3Cpath%20d%3D%22M5%2014v5h14v-5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--download{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v11%22%2F%3E%3Cpath%20d%3D%22m7.5%2011.5%204.5%204.5%204.5-4.5%22%2F%3E%3Cpath%20d%3D%22M5%2019h14%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--sun{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M12%202v2M12%2020v2M4.9%204.9l1.4%201.4M17.7%2017.7l1.4%201.4M2%2012h2M20%2012h2M4.9%2019.1l1.4-1.4M17.7%206.3l1.4-1.4%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--moon{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2015.2A8.5%208.5%200%200%201%208.8%204a8.5%208.5%200%201%200%2011.2%2011.2Z%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--display{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2213%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%2021h6M12%2017v4%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--sparkles{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%201.2%203.1L16%207.3l-2.8%201.2L12%2012l-1.2-3.5L8%207.3l2.8-1.2z%22%2F%3E%3Cpath%20d%3D%22m18%2013%20.8%202.2L21%2016l-2.2.8L18%2019l-.8-2.2L15%2016l2.2-.8z%22%2F%3E%3Cpath%20d%3D%22m6%2014%20.7%201.7L8.5%2016l-1.8.7L6%2018.5l-.7-1.8L3.5%2016l1.8-.3z%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--menu{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16M4%2012h16M4%2017h16%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--sidebar{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M9%204v16M13%208h5M13%2012h5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--search{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%226%22%2F%3E%3Cpath%20d%3D%22m16%2016%204%204%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--plus{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v14M5%2012h14%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--minus{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2012h14%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--chevron-down{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--chevron-up{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%2015%206-6%206%206%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--calendar{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%225%22%20width%3D%2216%22%20height%3D%2215%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%203v4M16%203v4M4%2010h16%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--settings{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3Cpath%20d%3D%22M19%2012a7%207%200%200%200-.1-1l2-1.5-2-3.4-2.4%201a7%207%200%200%200-1.8-1L14.4%203h-4.8l-.4%203.1a7%207%200%200%200-1.8%201l-2.4-1-2%203.4L5%2011a7%207%200%200%200%200%202l-2%201.5%202%203.4%202.4-1a7%207%200%200%200%201.8%201l.4%203.1h4.8l.4-3.1a7%207%200%200%200%201.8-1l2.4%201%202-3.4-2-1.5a7%207%200%200%200%20.1-1Z%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--user{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M4%2021a8%208%200%200%201%2016%200%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--eye{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.5%2012s3.5-6%209.5-6%209.5%206%209.5%206-3.5%206-9.5%206-9.5-6-9.5-6Z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%222.5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--trash{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16M9%207V4h6v3M7%207l1%2013h8l1-13M10%2011v5M14%2011v5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--copy{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2211%22%20height%3D%2211%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M16%208V6a2%202%200%200%200-2-2H6a2%202%200%200%200-2%202v8a2%202%200%200%200%202%202h2%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--link{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2014a4%204%200%200%200%205.7%200l2.3-2.3a4%204%200%200%200-5.7-5.7L11%207.3%22%2F%3E%3Cpath%20d%3D%22M14%2010a4%204%200%200%200-5.7%200L6%2012.3A4%204%200%200%200%2011.7%2018l1.3-1.3%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--link-split{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%206h4a5%205%200%200%201%205%205v7%22%2F%3E%3Cpath%20d%3D%22M14%2011a5%205%200%200%201%205-5%22%2F%3E%3Cpath%20d%3D%22m17%204%202%202-2%202M14%2018h5M17%2016l2%202-2%202%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--star{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%202.8%205.7%206.2.9-4.5%204.4%201.1%206.2L12%2017.3l-5.6%202.9%201.1-6.2L3%209.6l6.2-.9z%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--article{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%223%22%20width%3D%2216%22%20height%3D%2218%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%207h8M8%2011h8M8%2015h5%22%2F%3E%3C%2Fsvg%3E")}

/* ==========================================================================
   Platinum Surface 2.4.1 — collapsible admin navigation / shell extension
   ========================================================================== */
.ps-admin-nav__group--collapsible+.ps-admin-nav__group{margin-top:.65rem}
.ps-admin-nav__collapse{border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.015);overflow:hidden}
.ps-admin-nav__summary{list-style:none;display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:.7rem;min-height:42px;padding:.58rem .7rem;color:#91a4bd;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;user-select:none}
.ps-admin-nav__summary::-webkit-details-marker{display:none}
.ps-admin-nav__summary:hover{color:#e7f1ff;background:rgba(255,255,255,.035)}
.ps-admin-nav__summary>.ps-icon:first-child{--ps-icon-size:1rem}
.ps-admin-nav__summary-chevron{--ps-icon-size:.82rem;transition:transform .16s ease}
.ps-admin-nav__collapse[open]>.ps-admin-nav__summary .ps-admin-nav__summary-chevron{transform:rotate(180deg)}
.ps-admin-nav__items{padding:.15rem .35rem .42rem}
.ps-admin-nav__group--collapsible .ps-admin-nav__link{min-height:39px;padding:.48rem .58rem;font-size:.86rem}
.ps-admin-rail__footer{margin-top:auto;padding:1rem;color:#8fa5be;font-size:.78rem;border-top:1px solid rgba(255,255,255,.07)}
.ps-admin-rail__footer strong{display:block;margin-top:.12rem;color:#edf5ff;font-size:.84rem}
.ps-admin-rail{display:flex;flex-direction:column}.ps-admin-nav{flex:1 0 auto}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__summary{grid-template-columns:1fr;justify-items:center;padding:.58rem}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__summary-label,.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__summary-chevron,.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-rail__footer{display:none}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__collapse:not([open])>.ps-admin-nav__items{display:none}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__group--collapsible .ps-admin-nav__link{justify-content:center}.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__group--collapsible .ps-admin-nav__link>span:last-child{display:none}
@media(max-width:900px){.ps-admin-rail__footer{display:block}.ps-admin-nav__summary{grid-template-columns:20px minmax(0,1fr) 16px}}

.ps-icon--chat{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%205h14a2%202%200%200%201%202%202v8a2%202%200%200%201-2%202H10l-5%204v-4a2%202%200%200%201-2-2V7a2%202%200%200%201%202-2Z%22%2F%3E%3Cpath%20d%3D%22M8%209h8M8%2013h5%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--clock{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--grid{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%224%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%224%22%20y%3D%2214%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3Crect%20x%3D%2214%22%20y%3D%2214%22%20width%3D%226%22%20height%3D%226%22%20rx%3D%221%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--image{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%222%22%2F%3E%3Ccircle%20cx%3D%228.5%22%20cy%3D%229%22%20r%3D%221.5%22%2F%3E%3Cpath%20d%3D%22m4%2017%205-5%204%204%202-2%205%205%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--lock{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%2210%22%20width%3D%2214%22%20height%3D%2210%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%2010V7a4%204%200%200%201%208%200v3%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--refresh{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%206v5h-5%22%2F%3E%3Cpath%20d%3D%22M18.2%2017.2A8%208%200%201%201%2020%2011%22%2F%3E%3C%2Fsvg%3E")}

.ps-icon--tag{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2012V5a2%202%200%200%201%202-2h7l9%209-9%209Z%22%2F%3E%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%221.2%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E")}

/* 2.5 editor utility completion */
.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--ps-aspect-ratio);content:""}.ratio>*{position:absolute;inset:0;width:100%;height:100%}.ratio-1x1{--ps-aspect-ratio:100%}.ratio-16x9{--ps-aspect-ratio:56.25%}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:checked+.btn{border-color:var(--ps-primary);background:var(--ps-primary-bg-subtle);color:var(--ps-primary-text)}
/* 2.5.0 utility aliases used by complex Surface editors */
.btn-group{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group-sm>.btn{min-height:2rem;padding:.34rem .65rem;font-size:.875rem}.btn-group-sm>.btn:first-child{border-top-left-radius:.6rem;border-bottom-left-radius:.6rem}.btn-group-sm>.btn:last-child{border-top-right-radius:.6rem;border-bottom-right-radius:.6rem}
.fw-black{font-weight:900!important}.min-width-0{min-width:0!important}.text-secondary-emphasis{color:var(--ps-secondary-color)!important}.bg-info-subtle{background:#cff4fc!important}

/* ========================================================================== 
   Platinum Surface 2.8.1 — unified application shell + command dashboard
   The application topbar follows the same horizontal composition contract as
   the Surface documentation site. It spans the full viewport; the navigation
   rail begins beneath it. Dashboard primitives are framework-owned so consuming
   applications do not need page-specific layout CSS.
   ========================================================================== */
.ps-admin-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:var(--ps-rail-width) minmax(0,1fr);
  grid-template-rows:var(--ps-topbar-height) minmax(0,1fr);
}
.ps-admin-topbar{
  grid-column:1/-1;
  grid-row:1;
  height:var(--ps-topbar-height);
  position:sticky;
  top:0;
  z-index:1030;
  display:flex;
  align-items:center;
  gap:1rem;
  min-width:0;
  padding:0 1rem;
  background:color-mix(in srgb,var(--ps-shell-panel) 96%,transparent);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--ps-shell-border);
}
.ps-admin-topbar__identity{display:flex;align-items:center;gap:.65rem;min-width:max-content}
.ps-admin-sidebar-toggle{flex:0 0 auto;color:var(--ps-shell-muted)!important;border-color:transparent!important}
.ps-admin-topbar__brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--ps-shell-ink);text-decoration:none;font-weight:900;letter-spacing:-.025em;white-space:nowrap}
.ps-admin-topbar__brand:hover{color:var(--ps-shell-ink)}
.ps-admin-topbar__brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.68rem;background:linear-gradient(135deg,#1f7df1,#72bdff);color:#fff;font-size:.92rem;font-weight:900;box-shadow:0 7px 18px rgba(31,125,241,.2)}
.ps-admin-topbar__brand-label{font-size:1rem}
.ps-admin-topbar__version{display:inline-flex;align-items:center;min-height:1.8rem;padding:.2rem .55rem;border:1px solid var(--ps-shell-border);border-radius:999px;color:var(--ps-shell-muted);font-size:.72rem;font-weight:800;letter-spacing:.01em}
.ps-admin-topbar__search{position:relative;display:flex;align-items:center;width:min(420px,34vw);margin-left:auto}
.ps-admin-topbar__search>.ps-icon{position:absolute;left:.78rem;z-index:2;color:var(--ps-shell-muted);pointer-events:none}
.ps-admin-topbar__search .form-control{width:100%;min-height:2.35rem;padding-left:2.25rem;background:color-mix(in srgb,var(--ps-shell-panel) 80%,var(--ps-shell-bg));border-color:var(--ps-shell-border)}
.ps-admin-topbar__search .form-control:focus{background:var(--ps-shell-panel);border-color:color-mix(in srgb,var(--ps-primary) 55%,var(--ps-shell-border))}
.ps-admin-topbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;min-width:max-content}
.ps-admin-counter{position:relative;gap:.35rem;color:var(--ps-shell-ink)!important;border-color:var(--ps-shell-border)!important}
.ps-admin-counter>span:last-child{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:color-mix(in srgb,var(--ps-primary) 16%,transparent);color:var(--ps-primary);font-size:.68rem;font-weight:900}
.ps-admin-rail{grid-column:1;grid-row:2;position:sticky;top:var(--ps-topbar-height);height:calc(100vh - var(--ps-topbar-height));overflow:auto;background:#071525;color:#e9f2ff;border-right:1px solid rgba(255,255,255,.08);z-index:30}
.ps-admin-workspace{grid-column:2;grid-row:2;min-width:0}
.ps-admin-content{width:min(1500px,100%);margin:0 auto;padding:1.35rem}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-shell{grid-template-columns:var(--ps-rail-collapsed) minmax(0,1fr)}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__link span,.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__label{display:none}
.ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-nav__link{justify-content:center}

/* Command-center/dashboard composition. */
.ps-dashboard{display:grid;gap:1rem}
.ps-dashboard-hero{margin-bottom:0}
.ps-dashboard-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}
.ps-dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.ps-dashboard-stat-grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}
.ps-dashboard-stat{display:flex;flex-direction:column;gap:.45rem;min-height:9rem;padding:1rem 1.05rem;border:1px solid var(--ps-border);border-radius:1rem;background:var(--ps-surface);color:var(--ps-text);text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.ps-dashboard-stat:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--ps-primary) 38%,var(--ps-border));box-shadow:var(--ps-shadow-sm)}
.ps-dashboard-stat.is-fresh{box-shadow:0 0 0 .2rem color-mix(in srgb,var(--ps-success) 17%,transparent)}
.ps-dashboard-stat.is-error{border-color:color-mix(in srgb,var(--ps-danger) 58%,var(--ps-border))}
.ps-dashboard-stat__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--ps-text-soft);font-size:.72rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}
.ps-dashboard-stat__icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.72rem;background:color-mix(in srgb,var(--ps-primary) 10%,var(--ps-surface-2));color:var(--ps-primary)}
.ps-dashboard-stat__arrow{color:var(--ps-text-muted);transition:transform .16s ease}
.ps-dashboard-stat:hover .ps-dashboard-stat__arrow{transform:translateX(2px)}
.ps-dashboard-stat .value{margin-top:auto;font-size:clamp(1.7rem,3vw,2.25rem);font-weight:900;letter-spacing:-.04em;line-height:1}
.ps-dashboard-stat .note{color:var(--ps-text-soft);font-size:.8rem;line-height:1.35}
.ps-dashboard-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:1rem;align-items:start}
.ps-dashboard-main,.ps-dashboard-side{display:grid;gap:1rem;min-width:0}
.ps-dashboard-side{position:sticky;top:calc(var(--ps-topbar-height) + 1rem)}
.ps-dashboard-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ps-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;padding:1rem 1.1rem;border-bottom:1px solid var(--ps-border)}
.ps-section-head h2,.ps-section-head h3{margin:0;font-size:1rem;font-weight:850;letter-spacing:-.015em}
.ps-section-head p{margin:.2rem 0 0;color:var(--ps-text-soft);font-size:.8rem}
.ps-priority-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center;color:inherit;text-decoration:none}
.ps-priority-link:hover .pf-priority-title{color:var(--ps-primary)}
.ps-feed{display:grid}
.ps-feed-item{display:grid;grid-template-columns:5.25rem minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.9rem 1rem;border-bottom:1px solid var(--ps-border)}
.ps-feed-item:last-child{border-bottom:0}
.ps-feed-media{width:5.25rem;height:3.65rem;border-radius:.72rem;overflow:hidden;background:var(--ps-surface-3)}
.ps-feed-media img{display:block;width:100%;height:100%;object-fit:cover}
.ps-feed-copy{min-width:0}
.ps-feed-title{display:block;overflow:hidden;color:var(--ps-text);font-weight:800;line-height:1.25;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}
.ps-feed-title:hover{color:var(--ps-primary)}
.ps-feed-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-top:.3rem;color:var(--ps-text-soft);font-size:.76rem}
.ps-feed-state{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;white-space:nowrap}
.ps-activity-feed__item{min-height:5.6rem}
.ps-activity-feed__event-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.32rem}
.ps-activity-feed__event{display:inline-flex;align-items:center;gap:.32rem;padding:.2rem .48rem;border:1px solid var(--ps-border);border-radius:999px;background:var(--ps-surface-2);color:var(--ps-text-soft);font-size:.68rem;font-weight:850;line-height:1.2;letter-spacing:.01em}
.ps-activity-feed__event .ps-icon{width:.78rem;height:.78rem}
.ps-activity-feed__event--success{border-color:color-mix(in srgb,var(--ps-success) 36%,var(--ps-border));background:color-mix(in srgb,var(--ps-success) 10%,var(--ps-surface));color:var(--ps-success)}
.ps-activity-feed__event--primary{border-color:color-mix(in srgb,var(--ps-primary) 36%,var(--ps-border));background:color-mix(in srgb,var(--ps-primary) 10%,var(--ps-surface));color:var(--ps-primary)}
.ps-activity-feed__actor{color:var(--ps-text-soft);font-size:.72rem;font-weight:650;line-height:1.25}
.ps-activity-feed__actor time{font:inherit;color:inherit}
.ps-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding:1rem}
.ps-metric{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.3rem;min-width:0;padding:.8rem;border:1px solid var(--ps-border);border-radius:.85rem;background:var(--ps-surface-2)}
.ps-metric__label{display:block;color:var(--ps-text-soft);font-size:.72rem;font-weight:750;line-height:1.2}
.ps-metric__value{display:block;margin:0;font-size:1.25rem;font-weight:900;line-height:1.05;letter-spacing:-.025em;white-space:nowrap}
.ps-simple-list{display:grid}
.ps-simple-list__row{display:flex;align-items:center;justify-content:space-between;gap:.85rem;min-height:3rem;padding:.72rem 1rem;border-bottom:1px solid var(--ps-border);color:var(--ps-text);text-decoration:none}
.ps-simple-list__row:last-child{border-bottom:0}
.ps-simple-list__row--link:hover{background:var(--ps-surface-2);color:var(--ps-primary)}
.ps-simple-list__main{min-width:0}.ps-simple-list__title{font-weight:800}.ps-simple-list__meta{margin-top:.15rem;color:var(--ps-text-soft);font-size:.75rem}
.ps-dashboard-system-icon{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:.72rem;background:var(--ps-surface-3);color:var(--ps-primary)}
.ps-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;padding:1rem}
.ps-media-tile{display:block;min-width:0;color:var(--ps-text);text-decoration:none}
.ps-media-tile:hover{border-color:color-mix(in srgb,var(--ps-primary) 38%,var(--ps-border));color:var(--ps-primary)}
.ps-dashboard-platform-card{display:flex;align-items:center;gap:.9rem;padding:1rem}
.ps-dashboard-platform-mark{display:inline-flex;align-items:center;justify-content:center;width:2.7rem;height:2.7rem;border-radius:.85rem;background:linear-gradient(135deg,#1f7df1,#72bdff);color:#fff;font-weight:900;box-shadow:0 8px 22px rgba(31,125,241,.18)}

@media(max-width:1199.98px){
  .ps-dashboard-layout{grid-template-columns:1fr}
  .ps-dashboard-side{position:static}
  .ps-dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .ps-admin-shell{display:block;min-height:100vh}
  .ps-admin-topbar{position:sticky;top:0;width:100%;padding:0 .75rem}
  .ps-admin-rail{position:fixed;left:0;top:var(--ps-topbar-height);bottom:0;width:min(86vw,290px);height:calc(100vh - var(--ps-topbar-height));z-index:1040;transform:translateX(-102%);transition:transform .18s ease;box-shadow:0 28px 70px rgba(0,0,0,.35)}
  .ps-admin-body[data-ps-sidebar-state="mobile-open"] .ps-admin-rail{transform:none}
  .ps-admin-body[data-ps-sidebar-state="mobile-open"]::after{content:"";position:fixed;inset:var(--ps-topbar-height) 0 0 0;background:rgba(2,8,23,.55);z-index:1035}
  .ps-admin-body[data-ps-sidebar-state="collapsed"] .ps-admin-shell{display:block}
  .ps-admin-topbar__search{width:min(380px,38vw)}
  .ps-admin-content{padding:1rem}
}
@media(max-width:767.98px){
  .ps-admin-topbar__search{display:none}
  .ps-admin-topbar__identity{margin-right:auto}
  .ps-dashboard-stat-grid,.ps-dashboard-split{grid-template-columns:1fr}
  .ps-feed-item{grid-template-columns:4.2rem minmax(0,1fr)}
  .ps-feed-media{width:4.2rem;height:3.15rem}
  .ps-feed-state{grid-column:2;justify-content:flex-start}
  .ps-activity-feed__item{min-height:0}
  .ps-activity-feed__event-row{gap:.38rem}
  .ps-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .ps-admin-topbar__brand-label{display:none}
  .ps-admin-topbar__version{display:none}
  .ps-admin-topbar__actions{gap:.3rem}
  .ps-admin-topbar__actions .btn{padding-inline:.55rem}
  .ps-dashboard-actions{justify-content:flex-start}
  .ps-metric-grid,.ps-media-grid{grid-template-columns:1fr}
}

/* Platinum Surface 2.9.1 — communication icon vocabulary for first-class CMS add-ons */
.ps-icon--mail{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2214%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22m4%207%208%206%208-6%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--inbox{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16l2%209v5H2v-5Z%22%2F%3E%3Cpath%20d%3D%22M2.5%2014H8l2%203h4l2-3h5.5%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--send{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%2011%2018-8-7%2018-3-7Z%22%2F%3E%3Cpath%20d%3D%22m11%2014%204-4%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--reply{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%208-5%204%205%204%22%2F%3E%3Cpath%20d%3D%22M5%2012h8a6%206%200%200%201%206%206v1%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--forward{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m15%208%205%204-5%204%22%2F%3E%3Cpath%20d%3D%22M19%2012h-8a6%206%200%200%200-6%206v1%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--archive{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%227%22%20width%3D%2216%22%20height%3D%2213%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M3%204h18v4H3zM9%2012h6%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--paperclip{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m8%2012%206-6a4%204%200%201%201%206%206l-8%208a6%206%200%200%201-8-8l8-8%22%2F%3E%3Cpath%20d%3D%22m8%2012%206-6a2%202%200%200%201%203%203l-7%207a2%202%200%200%201-3-3l6-6%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--arrow-left{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m10%206-6%206%206%206%22%2F%3E%3Cpath%20d%3D%22M4%2012h16%22%2F%3E%3C%2Fsvg%3E")}
.ps-icon--globe{--ps-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M3%2012h18M12%203a15%2015%200%200%201%200%2018M12%203a15%2015%200%200%200%200%2018%22%2F%3E%3C%2Fsvg%3E")}
