/* Shared premium application layer. Keeps the existing KSE palette and functionality. */
:root{
  --p-navy-950:#061827;--p-navy-900:#0b2035;--p-navy-800:#123b5e;--p-gold-500:#d7a62d;
  --p-surface:#fff;--p-surface-soft:#f8faf9;--p-canvas:#f2f5f3;--p-text:#14283a;--p-muted:#607486;
  --p-border:rgba(11,32,53,.11);--p-focus:rgba(215,166,45,.38);--p-shadow-1:0 8px 28px rgba(11,32,53,.055);
  --p-shadow-2:0 20px 55px rgba(11,32,53,.11);--p-r-sm:10px;--p-r-md:15px;--p-r-lg:22px;
  --p-fast:160ms;--p-base:280ms;--p-ease:cubic-bezier(.22,1,.36,1);
}
*{scrollbar-color:rgba(11,32,53,.2) transparent;scrollbar-width:thin}
body{color:var(--p-text);background:radial-gradient(circle at 95% 2%,rgba(215,166,45,.07),transparent 24rem),var(--p-canvas);font-family:"Segoe UI Variable","Segoe UI",Inter,system-ui,sans-serif}
button,a,input,select,textarea{touch-action:manipulation}
button,a{transition:background-color var(--p-fast) ease,border-color var(--p-fast) ease,color var(--p-fast) ease,box-shadow var(--p-fast) ease,transform var(--p-fast) var(--p-ease)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--p-focus);outline-offset:2px}
button:active,.primary-btn:active,.secondary-btn:active,.platform-button:active{transform:scale(.98)}
.sidebar,.platform-shell>aside{background:linear-gradient(180deg,var(--p-navy-900),var(--p-navy-950));box-shadow:10px 0 38px rgba(6,24,39,.09)}
.brand,.platform-brand{min-height:62px}.brand-mark,.platform-brand>span{box-shadow:none!important}
.org-card,.tenant{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.055);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.sidebar nav a,.sidebar-foot>a,.sidebar-foot form button,.platform-shell aside nav a{min-height:44px;border-radius:10px}
.sidebar nav a:hover,.sidebar nav a.active,.sidebar-foot>a:hover,.platform-shell aside nav a:hover,.platform-shell aside nav a.active{background:rgba(255,255,255,.095)}
.main-area,.platform-shell>main{background:transparent}
.topbar,.platform-shell>main>header{background:rgba(255,255,255,.88);border-color:var(--p-border);backdrop-filter:blur(18px);box-shadow:0 8px 24px rgba(11,32,53,.035)}
.content,.platform-content{max-width:1600px;margin:0 auto}
.panel,.metric,.customer-card,.catalog-admin-grid article,.cart-pane,.platform-panel,.platform-metrics article{border-color:var(--p-border);border-radius:var(--p-r-md);box-shadow:var(--p-shadow-1);background:rgba(255,255,255,.96)}
.panel,.metric,.customer-card,.catalog-admin-grid article,.platform-panel,.platform-metrics article{transition:transform var(--p-base) var(--p-ease),box-shadow var(--p-base) ease,border-color var(--p-base) ease}
.metric:hover,.customer-card:hover,.catalog-admin-grid article:hover,.platform-metrics article:hover{transform:translateY(-3px);border-color:rgba(215,166,45,.38);box-shadow:var(--p-shadow-2)}
.welcome,.invite-banner{border:1px solid rgba(255,255,255,.08);border-radius:var(--p-r-lg);background:linear-gradient(125deg,var(--p-navy-950),#164667);box-shadow:var(--p-shadow-2)}
.welcome h2{font-family:Georgia,"Times New Roman",serif;text-wrap:balance}
.primary-btn,.secondary-btn,.platform-button{min-height:44px;border-radius:10px;font-size:13px}.primary-btn,.platform-button{box-shadow:0 8px 20px rgba(215,166,45,.2)}
.primary-btn:hover,.platform-button:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(215,166,45,.27)}
.field input,.field select,.field textarea,.setting-row input,.setting-row select,.platform-form input,.platform-form select{min-height:44px;border-color:var(--p-border);border-radius:10px;background:#fff;font-size:14px}
.field>span{font-size:12px}.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(11,32,53,.24)}
.field input:focus,.field select:focus,.field textarea:focus,.platform-form input:focus,.platform-form select:focus{border-color:var(--p-gold-500);box-shadow:0 0 0 4px var(--p-focus);outline:0}
.table-wrap,.platform-table{border-radius:12px}.table-wrap th,.platform-table th{background:#f6f8f7;color:#5e7182}.table-wrap tbody tr,.platform-table tbody tr{transition:background var(--p-fast) ease}.table-wrap tbody tr:hover,.platform-table tbody tr:hover{background:#fbf9f2}
.status,.payment-tag,.role-tag,.platform-pill{min-height:25px;padding-inline:10px}
.filter-bar,.provider-banner,.table-search,.workspace-search,.platform-search{border-color:var(--p-border);border-radius:11px;box-shadow:0 3px 12px rgba(11,32,53,.025)}
.catalog-item,.job-card,.receipt-card{transition:transform var(--p-fast) var(--p-ease),box-shadow var(--p-base) ease,border-color var(--p-fast) ease}.catalog-item:hover,.job-card:hover,.receipt-card:hover{transform:translateY(-3px);border-color:rgba(215,166,45,.4);box-shadow:var(--p-shadow-1)}
.auth-body{background:var(--p-canvas)}.auth-story{background:linear-gradient(145deg,var(--p-navy-950),#164667)}.auth-card{border:1px solid var(--p-border);border-radius:var(--p-r-lg);box-shadow:var(--p-shadow-2)}
.platform-button.secondary{border-color:var(--p-border)}.platform-panel{overflow:hidden}.platform-panel-head{background:linear-gradient(180deg,#fff,#fcfdfc)}
.message,.platform-messages>div{border-radius:12px;box-shadow:var(--p-shadow-2);animation:p-toast-in 320ms var(--p-ease) both}
@keyframes p-toast-in{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:820px){
  body{font-size:16px}.topbar{min-height:72px;height:auto;padding-top:10px;padding-bottom:10px}.page-identity h1{font-size:21px}.content{padding:20px 16px 36px}.welcome{min-height:150px;padding:24px}.welcome p{font-size:14px;max-width:70%}.metric-grid{gap:12px}.metric{padding:17px}.panel{padding:17px}.table-wrap{margin-inline:-2px}.filter-bar{padding:14px}.sidebar{width:min(286px,88vw)}
}
@media(max-width:560px){
  .content{padding:14px 12px 32px}.topbar{min-height:68px}.page-identity>span{font-size:10px}.page-identity h1{font-size:19px}.welcome{min-height:176px;padding:22px 20px;align-items:flex-start}.welcome h2{font-size:25px}.welcome p{max-width:100%;padding-right:0}.welcome .primary-btn{right:18px;bottom:17px}.metric{min-height:88px}.metric strong{font-size:22px}.panel-head{align-items:flex-start}.panel-head h3{font-size:16px}.panel-head p{font-size:12px}.table-wrap td{font-size:12px}.table-wrap th{font-size:10px}.catalog-cards{gap:10px}.catalog-item{min-height:150px}.form-panel{padding:16px}.filter-bar .field{min-width:0}.page-actions{align-items:stretch;gap:12px;flex-direction:column}.table-search{width:100%}.auth-card{padding:26px 20px}.auth-card h2{font-size:28px}
  .platform-shell>aside{padding:16px}.platform-brand{padding-bottom:14px}.platform-shell aside nav{gap:5px;padding-bottom:4px}.platform-shell aside nav a{display:flex;align-items:center;min-height:44px}.platform-shell>main>header{min-height:72px;height:auto}.platform-content{padding:14px 12px 32px}.platform-metrics{gap:10px}.platform-metrics article{padding:18px}.platform-panel-head{padding:16px}.platform-form>label{grid-template-columns:1fr;gap:6px;padding:9px 16px}.tenant-list>a{padding:14px 13px}.platform-search{width:100%}.platform-search input{min-width:0;width:100%}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
