/* SMP Clipper Web FIX15
   Professional visual normalization for public, user, and administrator areas. */

:root{
  --fix15-bg:#07090e;
  --fix15-surface:#0d1118;
  --fix15-surface-2:#111722;
  --fix15-surface-3:#161d2a;
  --fix15-border:rgba(255,255,255,.085);
  --fix15-border-strong:rgba(255,255,255,.15);
  --fix15-muted:#8f9aaf;
  --fix15-text:#f6f8fc;
  --fix15-shadow:0 26px 80px rgba(0,0,0,.30);
  --fix15-shadow-soft:0 14px 42px rgba(0,0,0,.20);
  --fix15-radius:16px;
  --fix15-radius-lg:22px;
}

html{background:var(--fix15-bg)}
body{
  background:
    radial-gradient(900px circle at 16% -10%,rgba(var(--primary-rgb),.11),transparent 58%),
    radial-gradient(720px circle at 100% 18%,rgba(var(--secondary-rgb),.065),transparent 58%),
    var(--fix15-bg);
}
body::selection{background:rgba(var(--primary-rgb),.35)}

/* Shared shell */
.app-body{background:transparent}
.app-shell{min-height:100svh}
.sidebar{
  border-right:1px solid var(--fix15-border);
  background:linear-gradient(180deg,rgba(9,12,18,.985),rgba(7,9,14,.985));
  box-shadow:18px 0 60px rgba(0,0,0,.16);
}
.sidebar-head{border-bottom:1px solid var(--fix15-border)}
.sidebar-bottom{border-top:1px solid var(--fix15-border);background:rgba(5,7,11,.62)}
.sidebar-label{color:#69748a;letter-spacing:.17em}
.sidebar-link{
  min-height:41px;
  border:1px solid transparent;
  border-radius:11px;
  color:#a2acbd;
}
.sidebar-link:hover{
  color:#fff;
  border-color:rgba(255,255,255,.07);
  background:rgba(255,255,255,.035);
}
.sidebar-link.active{
  border-color:rgba(var(--primary-rgb),.34);
  color:#fff;
  background:linear-gradient(100deg,rgba(var(--primary-rgb),.16),rgba(121,88,247,.08));
  box-shadow:inset 3px 0 0 var(--primary),0 12px 30px rgba(0,0,0,.13);
}
.workspace{
  position:relative;
  background:
    radial-gradient(900px circle at 74% -18%,rgba(var(--primary-rgb),.065),transparent 58%),
    linear-gradient(180deg,rgba(8,10,15,.94),rgba(7,9,13,.98));
}
.workspace-topbar{
  border-bottom:1px solid var(--fix15-border);
  background:rgba(7,9,14,.83);
  box-shadow:0 12px 40px rgba(0,0,0,.10);
  backdrop-filter:blur(22px) saturate(1.15);
}
.workspace-main{
  width:min(1540px,100%);
  padding:34px clamp(20px,3vw,48px) 62px;
  margin:0 auto;
}
.workspace-footer{border-top:1px solid var(--fix15-border);background:rgba(7,9,14,.70)}

/* Typography and page rhythm */
.page-heading{
  gap:24px;
  padding:0 0 22px;
  margin:0 0 24px;
  border-bottom:1px solid var(--fix15-border);
}
.page-heading>div:first-child{max-width:900px}
.page-heading h1{
  margin:7px 0 7px;
  font-size:clamp(1.85rem,3vw,2.65rem);
  line-height:1.06;
  letter-spacing:-.045em;
}
.page-heading p{max-width:850px;margin:0;color:#9ba6b9;font-size:.82rem;line-height:1.72}
.eyebrow{color:#f06cab}
.panel-kicker{
  display:block;
  margin-bottom:5px;
  color:#77839a;
  font-size:.58rem;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.heading-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}

/* Cards and panels */
.form-panel,.data-panel,.dashboard-card,.table-card,.settings-card,.content-card,.support-card,.release-card,.license-card{
  overflow:hidden;
  border:1px solid var(--fix15-border)!important;
  border-radius:var(--fix15-radius-lg)!important;
  background:linear-gradient(180deg,rgba(16,21,30,.96),rgba(11,15,22,.98))!important;
  box-shadow:var(--fix15-shadow-soft);
}
.panel-heading{
  min-height:72px;
  padding:18px 21px;
  border-bottom:1px solid var(--fix15-border);
  background:linear-gradient(180deg,rgba(255,255,255,.018),transparent);
}
.panel-heading h2{margin:0;font-size:1.08rem;letter-spacing:-.03em}
.panel-heading>small{color:#7f899c;font-size:.65rem}

.metric-grid{gap:13px}
.metric-card{
  border-color:var(--fix15-border)!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,rgba(18,24,34,.98),rgba(11,15,22,.98))!important;
  box-shadow:0 12px 34px rgba(0,0,0,.15);
}
.metric-card:hover{border-color:var(--fix15-border-strong)!important;transform:translateY(-2px)}
.action-grid>*,.quick-link-grid>*,.premium-pricing-grid>*,.license-grid>*{height:100%}

/* Forms */
.settings-form,.admin-form{padding:22px}
.settings-grid,.admin-form.grid-4{gap:16px}
.form-group{gap:8px}
.form-group>span,.check-field strong{color:#e9edf5;font-size:.69rem;font-weight:780;letter-spacing:-.01em}
.form-group>small,.check-field small{color:#7e899d;font-size:.61rem;line-height:1.55}
input,select,textarea{
  min-height:44px;
  border:1px solid rgba(255,255,255,.105)!important;
  border-radius:11px!important;
  color:#eef2f8!important;
  background:#090d13!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
textarea{min-height:118px;padding:13px 14px!important;resize:vertical}
input::placeholder,textarea::placeholder{color:#566176!important}
input:hover,select:hover,textarea:hover{border-color:rgba(255,255,255,.16)!important}
input:focus,select:focus,textarea:focus{
  border-color:rgba(var(--primary-rgb),.62)!important;
  background:#0b1018!important;
  box-shadow:0 0 0 4px rgba(var(--primary-rgb),.11)!important;
}
select{background-color:#090d13!important}
input[type="checkbox"],input[type="radio"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  flex:0 0 18px!important;
  padding:0!important;
  margin:1px 0 0!important;
  border-radius:5px!important;
  accent-color:var(--primary);
  box-shadow:none!important;
}
input[type="radio"]{border-radius:50%!important}
.check-field{
  align-items:flex-start!important;
  gap:11px!important;
  min-height:auto!important;
  padding:14px!important;
  border:1px solid var(--fix15-border)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.018)!important;
}
.check-field>span{display:grid;gap:3px}
.professional-check{margin:0 22px 18px}

/* Native file inputs are replaced by a clear, full-width drop-style target. */
.professional-file-input{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:4px 14px;
  min-height:76px;
  padding:16px 18px;
  overflow:hidden;
  border:1px dashed rgba(var(--primary-rgb),.42);
  border-radius:13px;
  background:linear-gradient(135deg,rgba(var(--primary-rgb),.085),rgba(121,88,247,.035));
  cursor:pointer;
  transition:.18s ease;
}
.professional-file-input::before{
  content:"+";
  display:grid;
  grid-row:1/3;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(135deg,var(--primary),#7858f7);
  box-shadow:0 10px 26px rgba(var(--primary-rgb),.22);
  font-size:1.2rem;
  font-weight:500;
}
.professional-file-input:hover{border-color:rgba(var(--primary-rgb),.72);background:linear-gradient(135deg,rgba(var(--primary-rgb),.13),rgba(121,88,247,.055));transform:translateY(-1px)}
.professional-file-input strong{color:#f5f7fb;font-size:.74rem}
.professional-file-input small{overflow:hidden;color:#8995aa;font-size:.62rem;text-overflow:ellipsis;white-space:nowrap}
.professional-file-input input[type="file"]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;opacity:0!important;cursor:pointer!important}
.professional-file-input.secondary-file{border-color:rgba(76,203,192,.30);background:rgba(76,203,192,.035)}
.professional-file-input.secondary-file::before{background:linear-gradient(135deg,#1eaa9d,#4ccbc0)}

/* Tables */
.table-scroll{
  scrollbar-gutter:stable;
  border-radius:0 0 var(--fix15-radius-lg) var(--fix15-radius-lg);
}
table{border-collapse:separate;border-spacing:0;width:100%}
thead th{
  height:48px;
  padding:12px 14px;
  border-bottom:1px solid var(--fix15-border)!important;
  color:#7e899f;
  background:#0d121a;
  font-size:.59rem;
  letter-spacing:.12em;
}
tbody td{padding:14px!important;border-bottom:1px solid rgba(255,255,255,.065)!important;vertical-align:middle}
tbody tr{background:transparent}
tbody tr:hover{background:rgba(255,255,255,.024)!important}
td strong{font-size:.68rem!important}
.cell-sub{max-width:300px;margin-top:5px!important;color:#748096!important;line-height:1.45;white-space:normal}
.inline-actions,.row-action-form{flex-wrap:wrap}
.table-action,.button.tiny{white-space:nowrap}
.table-empty{padding:48px 24px}

/* Release center */
.release-console{display:grid;gap:20px}
.release-console>.page-heading{margin-bottom:0}
.release-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.release-policy-card{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  border:1px solid rgba(53,201,149,.19);
  border-radius:15px;
  background:linear-gradient(100deg,rgba(53,201,149,.075),rgba(76,203,192,.025));
}
.release-policy-card>div{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:11px;
  color:#72dfb8;
  background:rgba(53,201,149,.11);
}
.release-policy-card .icon{width:19px;height:19px}
.release-policy-card strong{display:block;color:#eaf8f2;font-size:.76rem}
.release-policy-card p{margin:3px 0 0;color:#84988f;font-size:.64rem}
.release-policy-card>span{
  padding:6px 9px;
  border:1px solid rgba(53,201,149,.20);
  border-radius:999px;
  color:#72dfb8;
  background:rgba(53,201,149,.08);
  font-size:.54rem;
  font-weight:850;
  letter-spacing:.1em;
}
.release-layout{
  display:grid;
  grid-template-columns:minmax(360px,450px) minmax(0,1fr);
  align-items:start;
  gap:18px;
}
.release-form-panel{position:sticky;top:86px}
.release-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.release-form-grid .full-span{grid-column:1/-1}
.release-upload-form>.button{margin:0 22px 22px;width:calc(100% - 44px)}
.release-history-panel{min-width:0}
.release-history-table{min-width:980px}
.release-file-name{display:block;max-width:210px;overflow:hidden;color:#dce2eb;text-overflow:ellipsis;white-space:nowrap}
.release-storage-state,.release-history-label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:max-content;
  margin-top:5px;
  padding:4px 7px;
  border-radius:999px;
  font-size:.53rem;
  font-weight:800;
}
.release-storage-state.stored{color:#70deb7;background:rgba(53,201,149,.09)}
.release-storage-state.purged,.release-history-label{color:#8792a6;background:rgba(255,255,255,.045)}
.release-heading .heading-actions form{margin:0}

/* Pricing, plans, and user surfaces */
.premium-pricing-grid,.pricing-grid,.plan-grid{align-items:stretch}
.premium-pricing-grid>article,.pricing-grid>article,.plan-grid>article{display:flex;flex-direction:column}
.premium-pricing-grid .button,.pricing-grid .button,.plan-grid .button{margin-top:auto}
.license-secret,.license-key-shell{overflow:hidden;border-color:var(--fix15-border-strong)!important;background:#090d13!important}
.dashboard-hero,.admin-command-hero{
  border:1px solid var(--fix15-border)!important;
  background:linear-gradient(120deg,rgba(var(--primary-rgb),.13),rgba(15,20,29,.98) 58%,rgba(var(--secondary-rgb),.055))!important;
  box-shadow:var(--fix15-shadow-soft);
}

/* Public side */
.public-body{background:transparent}
.public-header{border-bottom-color:var(--fix15-border);background:rgba(7,9,14,.80)}
.public-main{overflow:hidden}
.public-footer{border-top-color:var(--fix15-border)}
.premium-feature-grid article,.security-grid article,.workflow-grid article,.premium-price-card{
  border-color:var(--fix15-border)!important;
  background:linear-gradient(145deg,rgba(18,24,34,.96),rgba(11,15,22,.98))!important;
}

@media(max-width:1280px){
  .release-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .release-layout{grid-template-columns:minmax(340px,410px) minmax(0,1fr)}
}
@media(max-width:1080px){
  .release-layout{grid-template-columns:1fr}
  .release-form-panel{position:static}
  .release-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .workspace-main{padding:22px 12px 44px}
  .page-heading{padding-bottom:17px}
  .page-heading h1{font-size:1.72rem}
  .page-heading p{font-size:.75rem}
  .release-stat-grid{grid-template-columns:1fr 1fr}
  .release-policy-card{grid-template-columns:auto 1fr}
  .release-policy-card>span{display:none}
  .release-form-grid{grid-template-columns:1fr!important}
  .release-form-grid .full-span{grid-column:auto}
  .settings-form,.admin-form{padding:16px}
  .professional-check{margin:0 16px 16px}
  .release-upload-form>.button{margin:0 16px 16px;width:calc(100% - 32px)}
  .panel-heading{min-height:64px;padding:15px 16px}
  .form-panel,.data-panel,.dashboard-card,.table-card,.settings-card,.content-card,.support-card,.release-card,.license-card{border-radius:15px!important}
}
@media(max-width:460px){
  .release-stat-grid{grid-template-columns:1fr}
  .release-policy-card{grid-template-columns:1fr;text-align:left}
  .release-policy-card>div{display:none}
  .professional-file-input{grid-template-columns:1fr;padding:14px}
  .professional-file-input::before{display:none}
  .professional-file-input small{white-space:normal}
  .heading-actions,.heading-actions form,.heading-actions .button{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .professional-file-input,.metric-card{transition:none!important}
}
