:root{
  --sg-bg:#f7f3ed;
  --sg-surface:#fffdfa;
  --sg-surface-soft:rgba(255,253,250,.9);
  --sg-line:#e8dfd4;
  --sg-line-strong:#d9ccbf;
  --sg-title:#24303d;
  --sg-text:#5f6d7c;
  --sg-muted:#8a94a0;
  --sg-blue:#5b88c8;
  --sg-blue-deep:#466eab;
  --sg-teal:#6ea89c;
  --sg-warm:#d8a669;
  --sg-success:#3b8c69;
  --sg-shadow-sm:0 14px 34px rgba(43,37,30,.05);
  --sg-shadow-md:0 24px 54px rgba(43,37,30,.08);
  --sg-shadow-lg:0 28px 74px rgba(28,25,20,.18);
  --sg-radius-lg:28px;
  --sg-radius-md:22px;
  --sg-radius-sm:16px;
  --sg-shell:1305px;
}

*{
  box-sizing:border-box;
}

html,
body{
  margin:0;
  min-height:100%;
  font-family:"Manrope", sans-serif;
  background:var(--sg-bg);
  color:var(--sg-text);
}

body{
  position:relative;
  overflow-x:hidden;
}

a{
  color:inherit;
  text-decoration:none;
}

button,
input,
select,
textarea{
  font:inherit;
}

.sg-body{
  padding:34px 22px 56px;
}

.sg-shell{
  position:relative;
  z-index:2;
  width:min(100%, var(--sg-shell));
  margin:0 auto;
}

.sg-shell-wide{
  width:min(100%, 1385px);
}

.sg-shell-narrow{
  width:min(100%, 860px);
}

.sg-bg-orb{
  position:fixed;
  border-radius:999px;
  filter:blur(14px);
  opacity:.7;
  pointer-events:none;
}

.sg-bg-orb-a{
  width:340px;
  height:340px;
  top:-60px;
  left:-80px;
  background:radial-gradient(circle, rgba(91,136,200,.14) 0%, rgba(91,136,200,0) 68%);
  animation:sgFloat 10s ease-in-out infinite;
}

.sg-bg-orb-b{
  width:420px;
  height:420px;
  right:-120px;
  top:120px;
  background:radial-gradient(circle, rgba(110,168,156,.16) 0%, rgba(110,168,156,0) 70%);
  animation:sgFloat 14s ease-in-out infinite reverse;
}

.sg-hero{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:28px;
  align-items:stretch;
  margin-bottom:28px;
}

.sg-hero-copy,
.sg-hero-panel,
.sg-panel,
.sg-stat-card,
.sg-device-card{
  background:var(--sg-surface-soft);
  border:1px solid rgba(255,250,245,.76);
  backdrop-filter:blur(8px);
  box-shadow:var(--sg-shadow-sm);
}

.sg-hero-copy{
  padding:38px;
  border-radius:34px;
  position:relative;
  overflow:hidden;
}

.sg-hero-copy::after,
.sg-panel::after,
.sg-stat-card::after,
.sg-device-card::after{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:linear-gradient(90deg, rgba(91,136,200,.26), rgba(110,168,156,.10), transparent 78%);
}

.sg-panel,
.sg-stat-card,
.sg-device-card{
  position:relative;
}

.sg-hero-copy h1,
.sg-topbar h1,
.sg-device-card h1{
  margin:16px 0 14px;
  color:var(--sg-title);
  font-size:clamp(1.35rem, 2.2vw, 2rem);
  font-weight:700;
  line-height:1.14;
  letter-spacing:-.018em;
  max-width:720px;
}

.sg-hero-copy p,
.sg-topbar p,
.sg-device-card p{
  margin:0;
  font-size:.98rem;
  line-height:1.82;
  max-width:640px;
  color:#617286;
}

.sg-hero-actions,
.sg-topbar-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.sg-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 19px;
  border-radius:16px;
  border:1px solid transparent;
  font-weight:600;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}

.sg-btn:hover{
  transform:translateY(-1px);
}

.sg-btn:disabled{
  cursor:not-allowed;
  opacity:.5;
  transform:none;
  box-shadow:none;
}

.sg-btn-primary{
  color:#fff;
  background:linear-gradient(180deg, #5f8dcc 0%, #4f79b0 100%);
  box-shadow:0 14px 28px rgba(79,121,176,.18);
}

.sg-btn-secondary{
  color:var(--sg-title);
  background:rgba(255,255,255,.82);
  border-color:var(--sg-line);
}

.sg-pill,
.sg-kicker,
.sg-player-badge,
.sg-chip-button{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.72rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.sg-pill{
  color:#5a6f8c;
  background:#f6f1ea;
  border:1px solid #e7ddd0;
  padding:9px 14px;
  border-radius:999px;
}

.sg-kicker{
  color:#7a8693;
}

.sg-surface{
  height:100%;
  border-radius:34px;
  padding:30px;
  background:linear-gradient(145deg, rgba(255,253,250,.98), rgba(248,244,237,.94));
  border:1px solid rgba(255,251,247,.84);
}

.sg-surface-accent{
  position:relative;
  overflow:hidden;
}

.sg-surface-accent::after{
  content:"";
  position:absolute;
  inset:auto -10% -30% auto;
  width:220px;
  height:220px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(110,168,156,.22), rgba(110,168,156,0) 72%);
}

.sg-surface-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
  color:var(--sg-muted);
  font-size:.88rem;
}

.sg-surface-head strong{
  color:var(--sg-title);
  font-size:1rem;
}

.sg-surface h3,
.sg-panel h2{
  margin:8px 0 12px;
  color:var(--sg-title);
  font-size:1.18rem;
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.012em;
}

.sg-surface p,
.sg-panel p{
  margin:0;
  line-height:1.78;
  color:#5d6f84;
}

.sg-inline-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  list-style:none;
  margin:22px 0 0;
  padding:0;
}

.sg-inline-list li{
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid var(--sg-line);
  color:#617082;
  font-size:.82rem;
}

.sg-grid{
  display:grid;
  gap:24px;
  margin-bottom:24px;
}

.sg-grid-4{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.sg-grid-2{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.sg-grid-admin{
  grid-template-columns:1.2fr .8fr;
}

.sg-stat-card{
  padding:24px;
  border-radius:26px;
}

.sg-stat-card span{
  display:block;
  color:var(--sg-muted);
  font-size:.82rem;
  margin-bottom:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.sg-stat-card strong{
  display:block;
  color:var(--sg-title);
  font-size:1.58rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.03em;
  margin-bottom:8px;
}

.sg-stat-card small{
  color:#64758a;
  line-height:1.6;
}

.sg-panel{
  padding:30px;
  border-radius:30px;
}

.sg-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:24px;
}

.sg-chip-button{
  border:1px solid var(--sg-line);
  background:#fff;
  color:#446688;
  border-radius:999px;
  padding:10px 14px;
  cursor:pointer;
}

.sg-route-list,
.sg-stack-list,
.sg-slide-list,
.sg-screen-list,
.sg-timeline{
  display:grid;
  gap:16px;
}

.sg-route-item,
.sg-stack-item,
.sg-timeline-item{
  padding:20px;
  border-radius:20px;
  background:rgba(255,255,255,.72);
  border:1px solid var(--sg-line);
}

.sg-route-item strong,
.sg-stack-item strong,
.sg-timeline-item strong,
.sg-screen-item strong,
.sg-slide-copy strong{
  display:block;
  color:var(--sg-title);
  margin-bottom:8px;
  font-weight:700;
  letter-spacing:-.015em;
}

.sg-route-item span,
.sg-stack-item p,
.sg-timeline-item p,
.sg-screen-item p,
.sg-slide-copy p{
  color:var(--sg-text);
  line-height:1.72;
  font-size:.95rem;
  margin:0;
}

.sg-topbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:28px;
}

.sg-playlist-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-bottom:18px;
}

.sg-playlist-meta > div,
.sg-composer-card{
  padding:20px;
  border-radius:20px;
  border:1px solid var(--sg-line);
  background:rgba(255,255,255,.72);
}

.sg-playlist-meta span,
.sg-device-meta span{
  display:block;
  color:var(--sg-muted);
  font-size:.78rem;
  margin-bottom:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.sg-playlist-meta strong,
.sg-device-meta strong{
  color:var(--sg-title);
  font-weight:700;
}

.sg-slide-item{
  display:grid;
  grid-template-columns:auto 126px 1fr auto;
  gap:16px;
  align-items:center;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.74);
  border:1px solid var(--sg-line);
}

.sg-slide-index{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#f0ede7;
  color:#64748a;
  font-weight:600;
}

.sg-slide-preview{
  min-height:92px;
  border-radius:18px;
  padding:14px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  color:var(--sg-title);
  font-size:.74rem;
  font-weight:600;
  letter-spacing:.07em;
}

.sg-slide-preview-video{
  color:#fff;
}

.sg-slide-meta{
  display:grid;
  gap:8px;
  text-align:right;
  color:var(--sg-muted);
  font-size:.8rem;
}

.sg-form-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.sg-field{
  display:grid;
  gap:8px;
}

.sg-field-full{
  grid-column:1 / -1;
}

.sg-field span{
  color:var(--sg-muted);
  font-size:.8rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.sg-field input,
.sg-field select,
.sg-field textarea{
  width:100%;
  border:1px solid var(--sg-line);
  background:rgba(255,255,255,.84);
  border-radius:16px;
  padding:14px 16px;
  color:var(--sg-title);
  outline:none;
  line-height:1.6;
}

.sg-composer-preview{
  margin-top:18px;
}

.sg-composer-card{
  background:linear-gradient(145deg, #f6f0e8 0%, #fffdfa 50%, #eef6f2 100%);
}

.sg-composer-card h3{
  margin:10px 0 12px;
  color:#29384a;
  font-size:1.46rem;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.02em;
}

.sg-screen-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:18px 20px;
  border-radius:20px;
  background:rgba(255,255,255,.74);
  border:1px solid var(--sg-line);
}

.sg-screen-main{
  display:flex;
  align-items:center;
  gap:14px;
}

.sg-screen-side{
  text-align:right;
}

.sg-screen-side span{
  display:block;
  color:var(--sg-title);
  font-weight:600;
  margin-bottom:6px;
}

.sg-screen-side small{
  color:var(--sg-muted);
}

.sg-status-dot{
  width:12px;
  height:12px;
  border-radius:999px;
  flex:none;
}

.sg-status-online{
  background:var(--sg-success);
  box-shadow:0 0 0 8px rgba(28,164,108,.14);
}

.sg-status-syncing{
  background:var(--sg-blue);
  box-shadow:0 0 0 8px rgba(62,134,247,.12);
}

.sg-status-draft{
  background:var(--sg-warm);
  box-shadow:0 0 0 8px rgba(246,184,87,.16);
}

.sg-device-card{
  padding:40px;
  border-radius:34px;
  text-align:center;
}

.sg-device-body{
  background:#ffffff;
  min-height:100vh;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
}

.sg-device-body .sg-bg-orb{
  display:none;
}

.sg-device-body .sg-shell{
  width:min(100%, 920px);
  padding:36px 22px;
}

.sg-device-body .sg-device-card{
  background:#ffffff;
  border:1px solid #eaedf5;
  box-shadow:0 24px 60px rgba(42,54,101,.08);
}

.sg-device-body .sg-device-card::after{
  display:none;
}

.sg-pair-code{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-width:280px;
  min-height:104px;
  margin:28px 0;
  padding:0 24px;
  border-radius:28px;
  background:linear-gradient(180deg, #15314b 0%, #1f4468 100%);
  color:#fff;
  font-size:2rem;
  font-weight:700;
  letter-spacing:.22em;
  box-shadow:var(--sg-shadow-lg);
}

.sg-device-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  margin-bottom:18px;
}

.sg-device-meta > div{
  padding:16px;
  border-radius:20px;
  border:1px solid var(--sg-line);
  background:rgba(255,255,255,.72);
}

.sg-device-note{
  margin:8px 0 0;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(223,228,238,.95);
  background:rgba(246,248,252,.92);
  color:#5e6c80;
  font-size:.95rem;
  line-height:1.65;
}


.sg-admin-body{
  min-height:100vh;
  padding:18px;
  background:
    radial-gradient(circle at 20% 0%, rgba(255,255,255,.2) 0%, rgba(255,255,255,0) 30%),
    linear-gradient(180deg, #606be9 0%, #5b6ce7 56%, #eef1ff 100%);
}

.sg-admin-app{
  min-height:calc(100vh - 36px);
  display:grid;
  grid-template-columns:270px minmax(0, 1fr);
  border-radius:38px;
  overflow:hidden;
  background:rgba(250,250,255,.96);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 40px 90px rgba(44,56,129,.22);
}

.sg-admin-sidebar{
  position:relative;
  padding:26px 20px 20px;
  background:linear-gradient(180deg, rgba(247,248,255,.96) 0%, rgba(243,244,252,.92) 100%);
  border-right:1px solid rgba(114,125,214,.12);
  display:flex;
  flex-direction:column;
  gap:18px;
}

.sg-admin-sidebar::after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:1px;
  background:linear-gradient(180deg, rgba(91,108,231,.08), rgba(91,108,231,0));
}

.sg-admin-brand{
  display:flex;
  align-items:center;
  gap:14px;
  padding:8px 4px 14px;
}

.sg-admin-brand-mark{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#ffffff;
  color:#36408f;
  font-weight:800;
  box-shadow:0 12px 24px rgba(66,78,154,.12);
}

.sg-admin-brand strong{
  display:block;
  color:#1f275e;
  font-size:1rem;
}

.sg-admin-brand small{
  color:#7f86ab;
}

.sg-admin-nav{
  display:grid;
  gap:10px;
}

.sg-admin-nav-item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 14px;
  border-radius:18px;
  color:#667292;
  transition:background .2s ease, transform .2s ease;
}

.sg-admin-nav-item:hover{
  transform:translateX(2px);
  background:rgba(255,255,255,.56);
}

.sg-admin-nav-item.is-active{
  background:#ffffff;
  color:#263160;
  box-shadow:0 14px 30px rgba(77,89,165,.1);
}

.sg-admin-nav-icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(96,107,233,.1);
  color:#4d59a5;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.06em;
}

.sg-admin-nav-item strong{
  display:block;
  font-size:.95rem;
  color:inherit;
}

.sg-admin-nav-item small{
  color:#8791ae;
}

.sg-admin-side-card{
  padding:18px;
  border-radius:24px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(114,125,214,.12);
  box-shadow:0 16px 34px rgba(58,69,138,.08);
}

.sg-admin-context-card{
  display:grid;
  gap:12px;
}

.sg-admin-context-card .sg-editor-field select{
  font-size:.88rem;
  padding:11px 14px;
}

.sg-admin-side-list{
  margin-top:0;
}

.sg-admin-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
}

.sg-admin-card-head strong{
  display:block;
  color:#222d52;
  font-size:1rem;
  margin-top:4px;
}

.sg-admin-card-head small{
  color:#8b92ae;
}

.sg-admin-card-head-tight{
  margin-bottom:12px;
}

.sg-admin-label{
  display:inline-block;
  color:#7780a4;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.sg-admin-screen-pill{
  display:grid;
  gap:12px;
  padding:14px 0;
  border-top:1px solid rgba(114,125,214,.08);
}

.sg-admin-screen-pill.is-current{
  padding-left:12px;
  padding-right:12px;
  margin-left:-12px;
  margin-right:-12px;
  border-radius:18px;
  background:rgba(94,108,231,.08);
}

.sg-admin-screen-pill:first-of-type{
  border-top:none;
}

.sg-admin-screen-main{
  display:flex;
  align-items:center;
  gap:10px;
}

.sg-admin-screen-main > div{
  min-width:0;
}

.sg-admin-screen-main strong{
  display:block;
  color:#263160;
  font-size:.92rem;
}

.sg-admin-screen-main strong a{
  color:inherit;
}

.sg-admin-screen-main small{
  display:block;
  color:#8b92ae;
  margin-left:2px;
  font-size:10px;
  line-height:1.38;
}

.sg-admin-screen-playlist{
  margin-top:3px;
  color:#6170a6;
}

.sg-admin-screen-actions{
  display:flex;
  flex-wrap:nowrap;
  gap:5px;
  align-items:center;
  width:100%;
}

.sg-admin-screen-actions-secondary{
  margin-top:-4px;
}

.sg-chip-button-small{
  flex:1 1 auto;
  min-width:0;
  min-height:30px;
  padding:0 8px;
  font-size:.58rem;
  letter-spacing:.03em;
  white-space:nowrap;
  justify-content:center;
}

.sg-chip-button-manifest{
  flex:1.15 1 0;
}

.sg-admin-screen-actions-secondary .sg-chip-button-small{
  flex:1 1 0;
  width:auto;
}

.sg-chip-button-full{
  width:100%;
  justify-content:center;
  min-height:38px;
}

.sg-chip-button-danger{
  color:#b94b3d;
  background:#fff3f1;
  border-color:#f2d1cc;
}

.sg-admin-screen-dot{
  width:11px;
  height:11px;
  border-radius:999px;
  flex:none;
}

.sg-admin-screen-dot-online{ background:#3ca67b; box-shadow:0 0 0 8px rgba(60,166,123,.12); }
.sg-admin-screen-dot-syncing{ background:#5b6ce7; box-shadow:0 0 0 8px rgba(91,108,231,.11); }
.sg-admin-screen-dot-draft{ background:#d8a669; box-shadow:0 0 0 8px rgba(216,166,105,.14); }

.sg-admin-main{
  padding:28px 30px 26px;
  display:flex;
  flex-direction:column;
  gap:22px;
}

.sg-admin-warning{
  display:grid;
  gap:8px;
  padding:18px 20px;
  border-radius:20px;
  background:#fff7ed;
  border:1px solid #f2d3ad;
  box-shadow:0 16px 34px rgba(149,96,32,.08);
}

.sg-admin-warning strong{
  color:#7c4b12;
  font-size:.96rem;
}

.sg-admin-warning p{
  margin:0;
  color:#9b6530;
  line-height:1.7;
}

.sg-admin-topbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
}

.sg-admin-topbar h1{
  margin:8px 0 10px;
  max-width:900px;
  color:#202a58;
  font-size:clamp(1.4rem, 2vw, 2rem);
  line-height:1.12;
  letter-spacing:-.03em;
}

.sg-admin-topbar p{
  margin:0;
  max-width:720px;
  color:#7c86a6;
  line-height:1.7;
}

.sg-admin-topbar-actions{
  display:flex;
  flex-wrap:nowrap;
  gap:10px;
}

.sg-admin-topbar-actions .sg-btn{
  min-height:40px;
  padding:0 14px;
  font-size:.84rem;
  white-space:nowrap;
}

.sg-admin-metrics{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}

.sg-admin-metric{
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(145deg, rgba(102,113,239,.98), rgba(86,103,236,.95));
  color:#ffffff;
  box-shadow:0 18px 32px rgba(91,108,231,.18);
}

.sg-admin-metric span{
  display:block;
  font-size:.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  opacity:.82;
  margin-bottom:10px;
}

.sg-admin-metric strong{
  display:block;
  font-size:1.45rem;
  margin-bottom:6px;
}

.sg-admin-metric small{
  display:block;
  color:rgba(255,255,255,.78);
  line-height:1.5;
}

.sg-admin-workspace{
  display:grid;
  grid-template-columns:360px minmax(0, 1fr);
  grid-template-areas:
    "editor preview"
    "rail rail";
  gap:18px;
  align-items:start;
}

.sg-editor-card,
.sg-preview-card,
.sg-rail-card{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(114,125,214,.12);
  border-radius:28px;
  box-shadow:0 18px 40px rgba(57,68,126,.08);
}

.sg-editor-card{ grid-area:editor; }
.sg-preview-card{ grid-area:preview; }
.sg-rail-card{ grid-area:rail; }

.sg-editor-card{
  padding:22px;
}

.sg-composer-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.sg-composer-tab{
  min-height:40px;
  padding:0 16px;
  border:none;
  border-radius:999px;
  background:rgba(245,248,251,.95);
  color:#607087;
  box-shadow:inset 0 0 0 1px rgba(216,224,233,.95);
  font-size:.84rem;
  font-weight:700;
  letter-spacing:-.01em;
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}

.sg-composer-tab:hover{
  transform:translateY(-1px);
  box-shadow:inset 0 0 0 1px rgba(201,211,223,.96), 0 12px 24px rgba(40,54,76,.06);
}

.sg-composer-tab.is-current-type{
  color:#233247;
}

.sg-composer-tab.is-active{
  background:linear-gradient(180deg, #171d28, #222b3a);
  color:#ffffff;
  box-shadow:0 16px 30px rgba(23,29,40,.14);
}

.sg-editor-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.sg-editor-field{
  display:grid;
  gap:8px;
}

.sg-editor-field-full{
  grid-column:1 / -1;
}

.sg-editor-field span{
  color:#7a85a7;
  font-size:.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.sg-editor-field input,
.sg-editor-field select,
.sg-editor-field textarea{
  width:100%;
  border:none;
  border-radius:16px;
  background:#f4f6fd;
  color:#253242;
  padding:13px 14px;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.1);
}

.sg-editor-field input:focus,
.sg-editor-field select:focus,
.sg-editor-field textarea:focus{
  box-shadow:inset 0 0 0 1px rgba(91,108,231,.35);
}

.sg-editor-panel{
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(114,125,214,.12);
}

.sg-editor-panel-general{
  margin-top:18px;
}

.sg-editor-panel-head{
  margin-bottom:14px;
}

.sg-editor-panel-head strong{
  display:block;
  color:#253242;
  margin-bottom:4px;
}

.sg-editor-panel-head small{
  color:#8d95af;
}

.sg-editor-actions{
  display:flex;
  gap:12px;
  margin-top:20px;
}

.sg-editor-status{
  margin:14px 0 0;
  color:#7983a5;
  font-size:.92rem;
  line-height:1.6;
}

.sg-preview-card{
  padding:22px;
}

.sg-preview-meta-strip{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:16px;
}

.sg-preview-meta-strip span,
.sg-preview-foot span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#f4f6fd;
  color:#65708f;
  font-size:.82rem;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.08);
}

.sg-preview-stage{
  position:relative;
  min-height:560px;
  border-radius:30px;
  overflow:hidden;
  background:#ffffff;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.1);
}

.sg-preview-stage.is-text{
  background:#ffffff;
}

.sg-preview-stage.is-image,
.sg-preview-stage.is-video{
  background:#101827;
}

.sg-preview-text-layer{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:18px;
  padding:52px;
}

.sg-preview-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(246,248,251,.92), rgba(235,240,246,.8));
  border:1px solid rgba(128,141,159,.18);
  backdrop-filter:blur(12px);
  color:#16212e;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    0 10px 18px rgba(14,22,33,.08);
}

.sg-preview-eyebrow::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:radial-gradient(circle at 35% 35%, #ffffff 0%, #dbe5ef 46%, #7d95ac 100%);
  box-shadow:
    0 0 0 4px rgba(122,143,163,.12),
    0 0 12px rgba(128,151,173,.18);
}

.sg-preview-text-layer h2{
  margin:0;
  max-width:780px;
  color:#253242;
  font-size:32px;
  line-height:1.08;
  letter-spacing:-.03em;
}

.sg-preview-text-layer p{
  margin:0;
  max-width:720px;
  color:#5e6c7c;
  font-size:1.14rem;
  line-height:1.8;
}

.sg-preview-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(246,248,251,.92), rgba(235,240,246,.8));
  border:1px solid rgba(128,141,159,.18);
  color:#16212e;
  font-weight:700;
  font-size:.64rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  backdrop-filter:blur(12px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    0 10px 18px rgba(14,22,33,.08);
}

.sg-preview-cta::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:radial-gradient(circle at 35% 35%, #ffffff 0%, #dbe5ef 46%, #7d95ac 100%);
  box-shadow:
    0 0 0 4px rgba(122,143,163,.12),
    0 0 12px rgba(128,151,173,.18);
}

.sg-preview-media{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:none;
  object-fit:cover;
}

.sg-preview-video{
  background:#0f1723;
}

.sg-preview-placeholder{
  position:absolute;
  inset:0;
  display:none;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:30px;
  text-align:center;
  color:#f7fbff;
  background:
    radial-gradient(circle at top right, rgba(91,108,231,.34), rgba(91,108,231,0) 32%),
    linear-gradient(160deg, #131d2b 0%, #1d2b40 100%);
}

.sg-preview-placeholder-mark{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  font-size:1.2rem;
  font-weight:800;
}

.sg-preview-placeholder strong{
  font-size:1.15rem;
}

.sg-preview-placeholder p{
  max-width:420px;
  color:rgba(255,255,255,.76);
  line-height:1.7;
}

.sg-preview-overlay{
  position:absolute;
  inset:auto 24px 24px;
  display:none;
  flex-direction:column;
  gap:10px;
  padding:18px 18px 20px;
  border-radius:24px;
  background:
    radial-gradient(circle at top right, rgba(116,137,255,.22), rgba(116,137,255,0) 34%),
    linear-gradient(180deg, rgba(12,18,30,.42), rgba(12,18,30,.82));
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.12);
  color:#ffffff;
  max-width:68%;
  box-shadow:0 20px 40px rgba(9,13,22,.18);
}

.sg-preview-overlay-tag{
  display:inline-flex;
  width:max-content;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.10));
  border:1px solid rgba(255,255,255,.2);
  color:#ffffff;
  font-size:.68rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

.sg-preview-overlay-tag::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:linear-gradient(180deg, #ffffff, #dbe8ff);
  box-shadow:0 0 0 4px rgba(255,255,255,.08);
}

.sg-preview-overlay strong{
  color:#ffffff;
  font-size:1.18rem;
  line-height:1.18;
  letter-spacing:-.02em;
}

.sg-preview-overlay p{
  margin:0;
  color:rgba(255,255,255,.88);
  line-height:1.72;
}

.sg-preview-foot{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.sg-rail-card{
  padding:22px;
  display:grid;
  gap:18px;
}

.sg-rail-manage{
  display:grid;
  gap:14px;
}

.sg-rail-manage-card{
  padding:16px;
  border-radius:20px;
  background:#f7f8fe;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.08);
}

.sg-manage-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.sg-manage-actions .sg-btn{
  min-height:38px;
  padding:0 13px;
  font-size:.8rem;
}

.sg-btn-ghost-danger{
  color:#b94b3d;
  background:#fff3f1;
  border-color:#f0d0cb;
}

.sg-btn-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:16px;
  border:1px solid rgba(214,221,232,.95);
  background:rgba(255,255,255,.82);
  color:#465671;
  font-size:.88rem;
  font-weight:700;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(42,54,101,.05);
}

.sg-btn-ghost:hover{
  background:#f7f9fc;
}

.sg-rail-summary{
  display:grid;
  gap:12px;
}

.sg-rail-summary-card{
  padding:16px;
  border-radius:20px;
  background:#f7f8fe;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.08);
}

.sg-rail-summary-card span{
  display:block;
  color:#7a85a7;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin-bottom:8px;
}

.sg-rail-summary-card strong{
  display:block;
  color:#24303d;
  font-size:1rem;
  margin-bottom:6px;
}

.sg-rail-summary-card small{
  color:#8c95b0;
  line-height:1.6;
}

.sg-rail-list{
  padding-top:2px;
}

.sg-rail-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 14px;
  border:1px solid rgba(114,125,214,.1);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,255,.95));
  box-shadow:0 10px 24px rgba(42,54,101,.04);
  margin-top:10px;
}

.sg-rail-item-copy{
  flex:1;
  min-width:0;
}

.sg-rail-item:first-of-type{
  margin-top:0;
}

.sg-rail-item.is-active{
  border-color:rgba(86,104,228,.22);
  box-shadow:0 18px 34px rgba(59,80,163,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(242,246,255,.97));
}

.sg-rail-order{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#eef1ff;
  color:#5364d4;
  font-size:.84rem;
  font-weight:700;
  flex:none;
}

.sg-rail-item strong{
  display:block;
  color:#253242;
  font-size:.94rem;
  margin-bottom:4px;
}

.sg-rail-item small{
  color:#8992ad;
  line-height:1.55;
}

.sg-rail-delete{
  flex:none;
  min-height:30px;
  padding:0 8px;
  border:none;
  border-radius:10px;
  background:#fff1f0;
  color:#c74b41;
  font-size:.64rem;
  letter-spacing:.03em;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}

.sg-rail-item-actions{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
}

.sg-rail-edit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:0 10px;
  border-radius:10px;
  border:1px solid rgba(209,218,232,.95);
  background:#ffffff;
  color:#42536d;
  font-size:.68rem;
  letter-spacing:.03em;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}

.sg-rail-edit:hover{
  background:#f6f8fc;
}

.sg-rail-delete:hover{
  background:#ffe3e0;
}

.sg-player-body{
  margin:0;
  min-height:100vh;
  overflow:hidden;
  background:#ffffff;
  color:#1f2a38;
}

.sg-player-app{
  position:relative;
  min-height:100vh;
  background:#ffffff;
}

.sg-player-stage{
  position:relative;
  min-height:100vh;
}

.sg-player-slide{
  position:absolute;
  inset:0;
  padding:64px;
  opacity:0;
  transform:scale(1.02);
  transition:opacity .7s ease, transform .8s ease;
}

.sg-player-slide.is-active{
  opacity:1;
  transform:scale(1);
}

.sg-player-slide.is-media-fullscreen{
  padding:0;
}

.sg-player-content{
  height:100%;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:30px;
  align-items:center;
}

.sg-player-content.is-media-only{
  grid-template-columns:1fr;
}

.sg-player-content.is-text-slide{
  display:flex;
  align-items:center;
  justify-content:center;
}

.sg-player-content.has-full-media{
  position:relative;
  display:block;
}

.sg-player-visual.is-fullscreen{
  position:absolute;
  inset:0;
  z-index:1;
}

.sg-player-copy{
  max-width:920px;
  position:relative;
  z-index:2;
}

.sg-player-copy.is-hidden{
  display:none;
}

.sg-player-content.is-text-slide .sg-player-copy{
  max-width:min(100%, 980px);
  margin:0 auto;
}

.sg-player-content.has-full-media .sg-player-copy{
  position:absolute;
  left:40px;
  bottom:122px;
  max-width:min(42%, 720px);
  padding:22px 24px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(12,16,24,.28), rgba(12,16,24,.68));
  backdrop-filter:blur(16px);
  box-shadow:0 24px 54px rgba(8,10,14,.18);
  z-index:5;
  color:#ffffff !important;
}

.sg-player-content.has-full-media .sg-player-copy,
.sg-player-content.has-full-media .sg-player-copy h1,
.sg-player-content.has-full-media .sg-player-copy p,
.sg-player-content.has-full-media .sg-player-copy .sg-player-eyebrow,
.sg-player-content.has-full-media .sg-player-copy .sg-player-cta{
  color:#ffffff !important;
}

.sg-player-copy .sg-player-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(246,248,251,.94), rgba(232,238,244,.82));
  border:1px solid rgba(122,139,156,.2);
  font-size:.6rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#15202d !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.66),
    0 10px 22px rgba(8,12,20,.12);
  backdrop-filter:blur(12px);
}

.sg-player-copy .sg-player-eyebrow::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:radial-gradient(circle at 35% 35%, #ffffff 0%, #dde8f2 46%, #809ab1 100%);
  box-shadow:
    0 0 0 4px rgba(122,143,163,.12),
    0 0 12px rgba(128,151,173,.18);
  animation:sgBadgePulse 2.6s ease-in-out infinite;
}

.sg-player-copy h1{
  margin:18px 0 14px;
  font-size:clamp(1.35rem, 2vw, 2rem);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.024em;
  color:inherit;
  text-shadow:0 8px 28px rgba(7,11,20,.32);
}

.sg-player-copy p{
  margin:0;
  max-width:820px;
  font-size:.96rem;
  line-height:1.86;
  color:inherit;
  text-shadow:0 6px 18px rgba(7,11,20,.24);
}

.sg-player-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:24px;
  padding:7px 11px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(246,248,251,.94), rgba(232,238,244,.82));
  border:1px solid rgba(122,139,156,.2);
  font-weight:700;
  font-size:.6rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#15202d !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.66),
    0 10px 20px rgba(10,18,28,.12);
  backdrop-filter:blur(12px);
}

.sg-player-cta::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:radial-gradient(circle at 35% 35%, #ffffff 0%, #dde8f2 46%, #809ab1 100%);
  box-shadow:
    0 0 0 4px rgba(122,143,163,.12),
    0 0 12px rgba(128,151,173,.18);
  animation:sgBadgePulse 2.2s ease-in-out infinite;
}

.sg-player-art{
  position:relative;
  min-height:420px;
  border-radius:34px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.10);
  overflow:hidden;
}

.sg-player-media-shell{
  position:relative;
  min-height:620px;
  height:72vh;
  border-radius:34px;
  overflow:hidden;
  background:#0f1723;
  box-shadow:0 28px 60px rgba(17,26,43,.14);
}

.sg-player-content.has-full-media .sg-player-media-shell{
  min-height:auto;
  height:100%;
  border-radius:0;
  box-shadow:none;
}

.sg-player-full-media{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  background:#0f1723;
}

.sg-player-empty-media{
  width:100%;
  min-height:100vh;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:32px;
  text-align:center;
  color:#ffffff;
  background:
    radial-gradient(circle at top right, rgba(91,108,231,.28), rgba(91,108,231,0) 30%),
    linear-gradient(160deg, #131d2b 0%, #1d2b40 100%);
}

.sg-player-empty-media-mark{
  width:84px;
  height:84px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  font-size:1.2rem;
  font-weight:800;
  letter-spacing:.08em;
}

.sg-player-empty-media strong{
  font-size:1.18rem;
}

.sg-player-empty-media p{
  max-width:420px;
  margin:0;
  color:rgba(255,255,255,.76);
  line-height:1.7;
}

.sg-player-art::before,
.sg-player-art::after{
  content:"";
  position:absolute;
  border-radius:999px;
  filter:blur(2px);
}

.sg-player-art::before{
  width:220px;
  height:220px;
  top:-40px;
  right:-10px;
  background:radial-gradient(circle, rgba(255,255,255,.34), rgba(255,255,255,0) 72%);
}

.sg-player-art::after{
  width:180px;
  height:180px;
  bottom:-20px;
  left:20px;
  background:radial-gradient(circle, rgba(72,196,182,.46), rgba(72,196,182,0) 72%);
}

.sg-player-art-inner{
  position:absolute;
  inset:18px;
  border-radius:28px;
  background:rgba(255,255,255,.88);
  color:#17314f;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:0 18px 40px rgba(12,23,38,.12);
}

.sg-player-art-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.sg-player-art-tile{
  min-height:148px;
  border-radius:22px;
  background:linear-gradient(145deg, #edf7ff 0%, #f8f4ff 100%);
  padding:18px;
}

.sg-player-art-tile strong{
  display:block;
  color:#17314f;
  margin-bottom:8px;
  font-weight:700;
}

.sg-player-art-tile p{
  margin:0;
  color:#5b6e82;
  font-size:.9rem;
  line-height:1.68;
}

.sg-player-video-card{
  position:absolute;
  inset:18px;
  border-radius:30px;
  background:linear-gradient(160deg, rgba(10,16,25,.88), rgba(21,44,66,.88));
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  padding:24px;
}

.sg-player-video-card::after{
  content:"";
  position:absolute;
  inset:auto -10% -20% auto;
  width:300px;
  height:300px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(72,196,182,.32), rgba(72,196,182,0) 72%);
}

.sg-player-video-screen{
  position:relative;
  z-index:1;
  height:100%;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(160deg, #0d1825 0%, #14314a 100%);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:22px;
}

.sg-player-play{
  width:84px;
  height:84px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.16);
  display:grid;
  place-items:center;
  margin-bottom:auto;
}

.sg-player-play::before{
  content:"";
  margin-left:6px;
  border-top:14px solid transparent;
  border-bottom:14px solid transparent;
  border-left:24px solid #fff;
}

.sg-player-video-meta{
  position:relative;
  z-index:1;
}

.sg-player-video-meta strong{
  display:block;
  font-size:1.08rem;
  font-weight:700;
  margin-bottom:6px;
}

.sg-player-video-meta span{
  display:block;
  color:rgba(255,255,255,.74);
}

.sg-player-overlay{
  position:absolute;
  inset:24px 24px auto;
  z-index:4;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.sg-player-overlay-start{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}

.sg-player-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(220,226,239,.95);
  box-shadow:0 10px 20px rgba(38,50,94,.08);
  color:#40506e;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.sg-player-back:hover{
  color:#1f2b3d;
  background:rgba(255,255,255,.98);
}

.sg-player-brand{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 14px;
  border-radius:20px;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  border:1px solid rgba(220,226,239,.95);
  box-shadow:0 10px 22px rgba(38,50,94,.08);
}

.sg-player-mark{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(180deg, rgba(77,149,255,.98), rgba(53,127,246,.94));
  font-weight:700;
}

.sg-player-brand strong{
  display:block;
  margin-bottom:4px;
}

.sg-player-brand small{
  color:#7a86a1;
}

.sg-player-badges{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.sg-player-badge{
  color:#3f4d6b;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(220,226,239,.95);
  padding:10px 14px;
  border-radius:999px;
  box-shadow:0 10px 20px rgba(38,50,94,.08);
}

.sg-player-footer{
  position:absolute;
  inset:auto 24px 24px;
  z-index:4;
}

.sg-player-progress{
  padding:14px 16px;
  border-radius:22px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(220,226,239,.96);
  backdrop-filter:blur(14px);
  box-shadow:0 12px 24px rgba(38,50,94,.08);
}

.sg-player-progress span{
  display:block;
  margin-bottom:10px;
  color:#53617d;
  font-size:.92rem;
}

.sg-player-progress-track{
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:#e9eef8;
}

.sg-player-progress-bar{
  width:0%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, #4d95ff 0%, #48c4b6 100%);
}

.sg-copy-toast{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1300;
  padding:14px 16px;
  border-radius:16px;
  background:#17314f;
  color:#fff;
  box-shadow:var(--sg-shadow-lg);
}

.sg-admin-loader{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(243, 247, 252, .68);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease, visibility .22s ease;
  z-index:1200;
}

.sg-admin-loader.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.sg-admin-loader-shell{
  width:min(420px, calc(100vw - 48px));
  display:flex;
  align-items:center;
  gap:18px;
  padding:22px 24px;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,250,253,.94));
  border:1px solid rgba(217,224,234,.9);
  box-shadow:0 28px 60px rgba(43,58,82,.12);
}

.sg-admin-loader-spinner{
  width:56px;
  height:56px;
  border-radius:18px;
  flex:0 0 56px;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.9) 0 16%, transparent 17%),
    conic-gradient(from 180deg, #f17843, #f9c9ad, #dbe5f3, #6f88ab, #f17843);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7), 0 14px 30px rgba(63,83,114,.14);
  animation:sgLoaderSpin 1.1s linear infinite;
}

.sg-admin-loader-copy{
  display:grid;
  gap:6px;
  min-width:0;
}

.sg-admin-loader-copy strong{
  color:#182234;
  font-size:1.08rem;
  letter-spacing:-.03em;
}

.sg-admin-loader-copy small{
  color:#718097;
  font-size:.93rem;
  line-height:1.6;
}

.sg-auth-app{
  width:min(100%, 1360px);
  min-height:calc(100vh - 56px);
  display:block;
}

.sg-auth-main{
  padding:34px 38px 40px;
  display:grid;
  gap:24px;
}

.sg-auth-brand{
  padding-bottom:0;
}

.sg-auth-hero{
  display:grid;
  gap:14px;
  padding:8px 0 4px;
}

.sg-auth-hero h1{
  margin:0;
  max-width:920px;
  color:#101723;
  font-size:clamp(2rem, 3.2vw, 38px);
  line-height:.98;
  letter-spacing:-.08em;
  font-weight:500;
}

.sg-auth-hero p{
  margin:0;
  max-width:960px;
  color:#6f7f95;
  font-size:14px;
  line-height:1.75;
}

.sg-auth-warning{
  margin-top:-6px;
}

.sg-auth-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.sg-auth-card{
  min-height:168px;
}

.sg-auth-tools{
  padding:24px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,252,.96));
  border:1px solid rgba(221,227,236,.88);
  box-shadow:0 22px 48px rgba(43,58,82,.07);
}

.sg-auth-tool-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}

.sg-auth-tool{
  display:grid;
  gap:12px;
  padding:22px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,252,.92));
  border:1px solid rgba(220,227,236,.86);
  box-shadow:0 18px 36px rgba(48,62,84,.06);
}

.sg-auth-tool strong{
  color:#172133;
  font-size:1.28rem;
  letter-spacing:-.04em;
}

.sg-auth-tool p{
  margin:0;
  color:#6f7f95;
  line-height:1.72;
}

.sg-auth-tool-single{
  margin-top:18px;
  max-width:540px;
}

.sg-auth-tool .sg-btn{
  justify-self:start;
}

.sg-auth-form{
  margin-top:18px;
  max-width:640px;
  align-items:start;
}

.sg-auth-field{
  display:grid;
  gap:8px;
}

.sg-auth-field span{
  color:#7a85a7;
  font-size:.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.sg-auth-field input{
  width:100%;
  min-height:54px;
  border:none;
  border-radius:18px;
  background:#f4f6fd;
  color:#253242;
  padding:0 16px;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(114,125,214,.1);
}

.sg-auth-field input:focus{
  box-shadow:inset 0 0 0 1px rgba(91,108,231,.35);
}

body.sg-admin-busy{
  overflow:hidden;
}

@keyframes sgFloat{
  0%, 100%{ transform:translate3d(0,0,0); }
  50%{ transform:translate3d(0,16px,0); }
}

@keyframes sgBadgePulse{
  0%, 100%{
    transform:scale(1);
    opacity:.96;
  }
  50%{
    transform:scale(1.14);
    opacity:1;
  }
}

@keyframes sgLoaderSpin{
  from{
    transform:rotate(0deg);
  }
  to{
    transform:rotate(360deg);
  }
}

@media (max-width: 1120px){
  .sg-hero,
  .sg-grid-admin,
  .sg-grid-2,
  .sg-grid-4,
  .sg-player-content,
  .sg-device-meta{
    grid-template-columns:1fr;
  }

  .sg-admin-app{
    grid-template-columns:1fr;
  }

  .sg-admin-sidebar{
    border-right:none;
    border-bottom:1px solid rgba(114,125,214,.12);
  }

  .sg-admin-main{
    padding:22px;
  }

  .sg-admin-topbar{
    flex-direction:column;
    align-items:flex-start;
  }

  .sg-admin-metrics,
  .sg-admin-workspace{
    grid-template-columns:1fr;
    grid-template-areas:
      "editor"
      "preview"
      "rail";
  }

  .sg-topbar{
    flex-direction:column;
    align-items:flex-start;
  }

  .sg-slide-item{
    grid-template-columns:1fr;
    text-align:left;
  }

  .sg-slide-meta{
    text-align:left;
    grid-auto-flow:column;
    justify-content:flex-start;
  }

  .sg-playlist-meta,
  .sg-form-grid{
    grid-template-columns:1fr;
  }

  .sg-player-slide{
    padding:92px 28px 120px;
  }

  .sg-player-slide.is-media-fullscreen{
    padding:0;
  }

  .sg-player-art,
  .sg-player-video-card{
    min-height:320px;
  }
}

@media (max-width: 720px){
  .sg-admin-body{
    padding:10px;
  }

  .sg-device-body{
    padding:0;
  }

  .sg-device-body .sg-shell{
    padding:18px 14px;
  }

  .sg-admin-app{
    min-height:calc(100vh - 20px);
    border-radius:26px;
  }

  .sg-admin-sidebar,
  .sg-admin-main,
  .sg-editor-card,
  .sg-preview-card,
  .sg-rail-card{
    padding:18px;
  }

  .sg-editor-grid,
  .sg-admin-metrics{
    grid-template-columns:1fr;
  }

  .sg-editor-actions,
  .sg-admin-topbar-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .sg-preview-stage{
    min-height:420px;
  }

  .sg-preview-text-layer{
    padding:28px;
  }

  .sg-preview-text-layer h2{
    font-size:2rem !important;
  }

  .sg-preview-overlay{
    inset:auto 14px 14px;
    max-width:calc(100% - 28px);
  }

  .sg-body{
    padding:20px 14px 34px;
  }

  .sg-hero-copy,
  .sg-panel,
  .sg-device-card{
    padding:22px;
    border-radius:24px;
  }

  .sg-player-overlay{
    inset:14px 14px auto;
    flex-direction:column;
  }

  .sg-player-footer{
    inset:auto 14px 14px;
  }

  .sg-player-copy h1{
    font-size:2rem;
  }

  .sg-player-copy p{
    font-size:1rem;
  }

  .sg-player-content.has-full-media .sg-player-copy{
    left:14px;
    right:14px;
    bottom:118px;
    max-width:none;
  }

.sg-pair-code{
  min-width:100%;
  font-size:1.7rem;
  letter-spacing:.14em;
}
}

/* Premium Light theme overrides */
:root{
  --sg-bg:#c8cfdf;
  --sg-surface:#f9fbfd;
  --sg-surface-soft:rgba(250,252,255,.94);
  --sg-line:#dde3ea;
  --sg-line-strong:#cfd7e1;
  --sg-title:#1d2430;
  --sg-text:#677487;
  --sg-muted:#93a0b1;
  --sg-blue:#87a4ca;
  --sg-blue-deep:#6b88b0;
  --sg-teal:#9cb8bb;
  --sg-warm:#d6b58c;
  --sg-shadow-sm:0 22px 44px rgba(45,58,83,.06);
  --sg-shadow-md:0 28px 64px rgba(45,58,83,.09);
  --sg-shadow-lg:0 42px 90px rgba(37,49,72,.13);
  --sg-shell:1420px;
}

.sg-admin-body{
  background:
    radial-gradient(circle at 20% 10%, rgba(255,255,255,.55), rgba(255,255,255,0) 28%),
    linear-gradient(180deg, #b9c1d8 0%, #cfd6e4 36%, #dfe4ed 100%);
  padding:34px 28px;
}

.sg-admin-app{
  width:min(100%, 1410px);
  min-height:calc(100vh - 68px);
  margin:0 auto;
  background:rgba(248,250,252,.88);
  border:1px solid rgba(255,255,255,.5);
  border-radius:34px;
  box-shadow:0 30px 90px rgba(50,63,89,.14);
  backdrop-filter:blur(20px);
  grid-template-columns:270px minmax(0, 1fr);
  overflow:hidden;
}

.sg-admin-sidebar{
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(245,248,252,.92));
  border-right:1px solid rgba(205,214,226,.72);
  padding:28px 22px 24px;
}

.sg-admin-sidebar::after{
  display:none;
}

.sg-admin-brand{
  padding-bottom:18px;
}

.sg-admin-brand-mark{
  background:linear-gradient(145deg, #f26c3d, #ef875e);
  color:#fff;
  box-shadow:0 14px 28px rgba(242,108,61,.22);
}

.sg-admin-nav{
  gap:8px;
}

.sg-admin-nav-item{
  border-radius:18px;
  padding:12px 14px;
  background:transparent;
}

.sg-admin-nav-item.is-active{
  background:rgba(255,255,255,.84);
  box-shadow:0 14px 28px rgba(48,60,84,.06);
}

.sg-admin-side-card,
.sg-admin-context-card,
.sg-admin-screen-pill,
.sg-editor-card,
.sg-preview-card,
.sg-rail-card,
.sg-admin-metric,
.sg-rail-manage-card,
.sg-rail-summary-card{
  background:rgba(255,255,255,.86);
  border:1px solid rgba(220,226,235,.92);
  box-shadow:0 16px 38px rgba(57,69,93,.06);
}

.sg-admin-side-card{
  border-radius:28px;
}

.sg-admin-context-card{
  gap:14px;
}

.sg-admin-context-card .sg-editor-field select{
  background:#f3f6fa;
  box-shadow:inset 0 0 0 1px rgba(208,216,227,.8);
  color:#243041;
}

.sg-admin-screen-pill{
  padding:16px 14px;
  border-radius:22px;
}

.sg-admin-screen-pill.is-current{
  border-color:#c7d4e7;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,249,252,.92));
}

.sg-chip-button{
  background:#f5f7fb;
  color:#405068;
  border:1px solid #d7dfeb;
  box-shadow:none;
}

.sg-chip-button-manifest{
  background:#eef3f8;
}

.sg-chip-button-danger{
  background:#fff5f2;
  color:#bb624f;
  border-color:#efd0c8;
}

.sg-admin-main{
  padding:30px 34px 30px;
  gap:24px;
}

.sg-admin-topbar{
  align-items:flex-start;
  padding:2px 2px 10px;
}

.sg-admin-topbar h1{
  max-width:780px;
  color:#111722;
  font-size:clamp(1.7rem, 2.5vw, 3rem);
  font-weight:500;
  letter-spacing:-.05em;
  line-height:1.02;
}

.sg-admin-topbar p{
  max-width:760px;
  color:#778296;
  font-size:.97rem;
  line-height:1.75;
}

.sg-admin-topbar-actions{
  gap:8px;
}

.sg-admin-topbar-actions .sg-btn{
  min-height:38px;
  padding:0 15px;
  font-size:.8rem;
  border-radius:999px;
}

.sg-btn-primary{
  background:#1f2733;
  box-shadow:0 14px 30px rgba(31,39,51,.14);
}

.sg-btn-secondary{
  background:#ffffff;
  border-color:#d9e1ea;
}

.sg-admin-metrics{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}

.sg-admin-metric{
  color:#223045;
  border-radius:24px;
  padding:18px 18px 16px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,252,.94));
}

.sg-admin-metric span{
  color:#8f9bad;
}

.sg-admin-metric strong{
  color:#1a2536;
  font-size:1.34rem;
}

.sg-admin-metric small{
  color:#7b8798;
}

.sg-admin-workspace{
  grid-template-columns:340px minmax(0, 1fr);
  gap:20px;
}

.sg-editor-card,
.sg-preview-card,
.sg-rail-card{
  border-radius:30px;
}

.sg-editor-card{
  padding:24px;
}

.sg-editor-field input,
.sg-editor-field select,
.sg-editor-field textarea{
  background:#f4f7fb;
  box-shadow:inset 0 0 0 1px rgba(212,220,231,.9);
}

.sg-editor-field input:focus,
.sg-editor-field select:focus,
.sg-editor-field textarea:focus{
  box-shadow:inset 0 0 0 1px rgba(111,135,167,.52);
}

.sg-preview-card{
  padding:24px;
}

.sg-preview-meta-strip span,
.sg-preview-foot span{
  background:#f4f7fb;
  color:#6d7a8e;
  box-shadow:inset 0 0 0 1px rgba(216,224,234,.9);
}

.sg-preview-stage{
  min-height:585px;
  border-radius:34px;
  background:linear-gradient(180deg, #ffffff, #f5f8fb);
  box-shadow:inset 0 0 0 1px rgba(215,223,233,.85);
}

.sg-preview-text-layer{
  padding:58px 54px;
  gap:16px;
}

.sg-preview-eyebrow,
.sg-preview-cta{
  background:rgba(244,247,251,.95);
  border:1px solid rgba(206,216,226,.95);
  color:#1b2430;
  box-shadow:0 10px 22px rgba(52,66,91,.06);
}

.sg-preview-text-layer h2{
  color:#141c27;
  font-size:32px;
  font-weight:600;
  max-width:760px;
}

.sg-preview-text-layer p{
  color:#6d778a;
  max-width:680px;
  font-size:1.05rem;
}

.sg-preview-overlay{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(223,229,237,.9);
  color:#132031;
  box-shadow:0 22px 44px rgba(37,49,72,.12);
}

.sg-preview-overlay-tag{
  background:#f3f6fa;
  border:1px solid #dbe3eb;
  color:#213246;
}

.sg-preview-overlay strong{
  color:#152131;
}

.sg-preview-overlay p{
  color:#657488;
}

.sg-rail-card{
  padding:24px;
}

.sg-rail-manage-card,
.sg-rail-summary-card{
  background:linear-gradient(180deg, #fbfcfd, #f4f7fa);
  box-shadow:inset 0 0 0 1px rgba(222,228,236,.92);
}

.sg-rail-item{
  border-top:1px solid rgba(216,224,233,.85);
}

.sg-rail-item-draggable{
  align-items:center;
  cursor:default;
  padding:14px 14px 14px 12px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,249,252,.94));
  box-shadow:0 12px 28px rgba(45,60,86,.06), inset 0 0 0 1px rgba(219,226,235,.92);
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.sg-rail-item-draggable.is-dragging{
  opacity:.94;
  transform:scale(.992) rotate(.2deg);
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,253,.98));
  box-shadow:0 22px 52px rgba(45,60,86,.16), inset 0 0 0 1px rgba(202,211,223,.98);
}

.sg-rail-item-draggable.is-drop-target{
  background:linear-gradient(180deg, rgba(250,252,255,.98), rgba(243,247,251,.96));
  box-shadow:0 0 0 3px rgba(97,114,223,.08), 0 12px 26px rgba(45,60,86,.08), inset 0 0 0 1px rgba(188,199,214,.9);
  transform:translateY(-2px);
}

.sg-rail-drag{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:none;
  border:none;
  border-radius:10px;
  background:#f2f5f8;
  box-shadow:inset 0 0 0 1px rgba(216,224,233,.92);
  cursor:grab;
  transition:background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.sg-rail-drag:hover{
  background:#eef3fb;
  box-shadow:inset 0 0 0 1px rgba(187,198,214,.98);
}

.sg-rail-drag:active{
  cursor:grabbing;
  transform:scale(.97);
}

.sg-rail-drag span{
  display:block;
  width:12px;
  height:2px;
  border-radius:999px;
  background:#9aa6b8;
}

.sg-rail-drag span + span{
  margin-top:3px;
}

.sg-player-body{
  background:linear-gradient(180deg, #cad2e1, #e0e6ef);
}

.sg-player-overlay{
  background:linear-gradient(180deg, rgba(255,255,255,.48), rgba(255,255,255,0));
}

.sg-player-badge{
  background:rgba(247,250,253,.92);
  color:#213146;
  border:1px solid rgba(216,224,233,.92);
}

.sg-player-footer{
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.74));
}

/* Premium Light v2 */
:root{
  --sg-bg:#d5dbe7;
  --sg-surface:#ffffff;
  --sg-surface-soft:rgba(255,255,255,.9);
  --sg-line:#dfe5ec;
  --sg-line-strong:#cad4df;
  --sg-title:#121826;
  --sg-text:#69768a;
  --sg-muted:#99a4b4;
  --sg-blue:#91abcf;
  --sg-blue-deep:#6f88af;
  --sg-teal:#a7c0c2;
  --sg-warm:#d8b48b;
  --sg-shadow-sm:0 18px 42px rgba(43,58,82,.07);
  --sg-shadow-md:0 28px 70px rgba(43,58,82,.11);
  --sg-shadow-lg:0 46px 110px rgba(34,47,68,.16);
  --sg-shell:1460px;
}

.sg-admin-body{
  background:
    radial-gradient(circle at 14% 8%, rgba(255,255,255,.55), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 86% 18%, rgba(247,250,255,.45), rgba(247,250,255,0) 22%),
    linear-gradient(180deg, #c8cedd 0%, #dbe1ea 52%, #e7ecf4 100%);
  padding:28px;
}

.sg-admin-app{
  width:min(100%, 1460px);
  min-height:calc(100vh - 56px);
  margin:0 auto;
  grid-template-columns:288px minmax(0, 1fr);
  background:rgba(249,251,253,.78);
  border:1px solid rgba(255,255,255,.52);
  border-radius:38px;
  box-shadow:0 38px 110px rgba(38,50,72,.15);
  backdrop-filter:blur(22px);
  overflow:hidden;
}

.sg-admin-sidebar{
  padding:30px 22px 24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.62), rgba(246,249,252,.94)),
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,0));
  border-right:1px solid rgba(209,218,229,.8);
}

.sg-admin-brand{
  gap:14px;
  padding-bottom:14px;
}

.sg-admin-brand-mark{
  width:54px;
  height:54px;
  border-radius:18px;
  background:linear-gradient(145deg, #ff8d54 0%, #f26f42 100%);
  box-shadow:0 16px 32px rgba(242,111,66,.24);
}

.sg-admin-brand strong{
  color:#162032;
  font-size:1.42rem;
  letter-spacing:-.04em;
}

.sg-admin-brand small{
  color:#7b8699;
  font-size:.9rem;
}

.sg-admin-nav{
  margin-top:10px;
  gap:10px;
}

.sg-admin-nav-item{
  padding:14px 16px;
  border-radius:22px;
  background:rgba(255,255,255,.36);
  border:1px solid rgba(226,232,240,.25);
}

.sg-admin-nav-item:hover{
  background:rgba(255,255,255,.72);
  box-shadow:0 14px 28px rgba(43,58,82,.06);
}

.sg-admin-nav-item.is-active{
  background:linear-gradient(180deg, #ffffff, #f5f8fb);
  border-color:#dfe6ee;
  box-shadow:0 16px 30px rgba(43,58,82,.08);
}

.sg-admin-nav-icon{
  background:#f1f5fb;
  color:#53657d;
  box-shadow:inset 0 0 0 1px rgba(213,222,232,.8);
}

.sg-admin-nav-item strong{
  color:#182234;
  font-size:1rem;
}

.sg-admin-nav-item small{
  color:#7b8798;
  font-size:.88rem;
}

.sg-admin-side-card,
.sg-admin-context-card,
.sg-admin-screen-pill{
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,252,.92));
  border:1px solid rgba(220,227,236,.86);
  box-shadow:0 18px 36px rgba(48,62,84,.06);
}

.sg-admin-context-card{
  padding:18px;
}

.sg-admin-card-head strong{
  color:#182132;
  font-size:1.32rem;
  letter-spacing:-.04em;
}

.sg-admin-card-head small{
  color:#9aa5b4;
}

.sg-admin-label,
.sg-editor-field span,
.sg-rail-summary-card span,
.sg-admin-metric span{
  color:#91a0b0;
  letter-spacing:.16em;
}

.sg-admin-screen-pill{
  padding:16px 16px 15px;
  border-radius:24px;
}

.sg-admin-screen-pill.is-current{
  background:linear-gradient(180deg, #ffffff, #f7fafe);
  border-color:#d4deea;
}

.sg-admin-screen-main strong a{
  color:#182235;
  letter-spacing:-.03em;
}

.sg-admin-screen-main small{
  color:#7f8ba0;
}

.sg-chip-button{
  min-height:34px;
  border-radius:999px;
  padding:0 12px;
  background:#f4f7fb;
  border:1px solid #dce4ee;
  color:#33455f;
  font-size:.6rem;
  letter-spacing:.08em;
}

.sg-chip-button-manifest{
  background:#eef3f8;
}

.sg-chip-button-danger{
  background:#fff4f0;
  border-color:#f0d6cf;
  color:#bf6651;
}

.sg-admin-main{
  padding:34px 36px 32px;
  gap:26px;
}

.sg-admin-topbar{
  display:grid;
  grid-template-columns:minmax(0, 6fr) minmax(320px, 4fr);
  align-items:flex-start;
  gap:24px;
}

.sg-admin-topbar h1{
  max-width:760px;
  margin:6px 0 12px;
  color:#101723;
  font-size:40px;
  font-weight:500;
  letter-spacing:-.075em;
  line-height:.96;
}

.sg-admin-topbar p{
  max-width:740px;
  color:#748196;
  font-size:1rem;
  line-height:1.8;
}

.sg-admin-topbar-actions{
  display:grid;
  gap:10px;
  padding-top:6px;
  justify-self:stretch;
}

.sg-admin-topbar-actions .sg-btn{
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  font-size:.82rem;
}

.sg-admin-topbar-actions-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}

.sg-admin-topbar-actions-row-bottom{
  justify-content:flex-end;
}

.sg-btn-primary{
  background:linear-gradient(180deg, #171d28, #222b3a);
  box-shadow:0 18px 34px rgba(23,29,40,.16);
}

.sg-btn-secondary{
  background:rgba(255,255,255,.86);
  color:#223147;
  border-color:#dbe3ed;
}

.sg-admin-metrics{
  gap:16px;
}

.sg-admin-metric{
  position:relative;
  overflow:hidden;
  padding:19px 19px 18px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,251,.95));
  color:#213146;
}

.sg-admin-metric::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  border-radius:999px;
  background:linear-gradient(180deg, #9db4d7, #c7d8ea);
}

.sg-admin-metric:nth-child(2)::before{
  background:linear-gradient(180deg, #f5a06a, #f0c19d);
}

.sg-admin-metric:nth-child(3)::before{
  background:linear-gradient(180deg, #9cc0c2, #c8dbdc);
}

.sg-admin-metric:nth-child(4)::before{
  background:linear-gradient(180deg, #aeb6c7, #d4dbe6);
}

.sg-admin-metric strong{
  color:#152132;
  font-size:1.5rem;
  letter-spacing:-.05em;
}

.sg-admin-metric small{
  color:#7f8b9e;
}

.sg-admin-workspace{
  grid-template-columns:352px minmax(0, 1fr);
  gap:22px;
}

.sg-editor-card,
.sg-preview-card,
.sg-rail-card{
  background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,252,.96));
  border:1px solid rgba(221,227,236,.88);
  border-radius:32px;
  box-shadow:0 22px 48px rgba(43,58,82,.07);
  margin-top:20px;
}

.sg-editor-card{
  padding:24px;
}

.sg-editor-field input,
.sg-editor-field select,
.sg-editor-field textarea{
  border-radius:18px;
  background:#f5f8fb;
  color:#1f2a3a;
  box-shadow:inset 0 0 0 1px rgba(216,224,233,.95);
}

.sg-editor-field input:focus,
.sg-editor-field select:focus,
.sg-editor-field textarea:focus{
  box-shadow:inset 0 0 0 1px rgba(120,145,178,.56), 0 0 0 5px rgba(143,169,201,.08);
}

.sg-preview-card{
  padding:24px;
}

.sg-preview-meta-strip span,
.sg-preview-foot span{
  background:#f5f8fb;
  box-shadow:inset 0 0 0 1px rgba(220,227,235,.95);
  color:#6c788d;
}

.sg-preview-stage{
  min-height:610px;
  border-radius:36px;
  background:
    radial-gradient(circle at top right, rgba(208,220,234,.58), rgba(208,220,234,0) 28%),
    linear-gradient(180deg, #ffffff, #f4f7fb);
  box-shadow:inset 0 0 0 1px rgba(219,226,235,.92);
}

.sg-preview-text-layer{
  padding:62px 58px;
  gap:18px;
}

.sg-preview-eyebrow,
.sg-preview-cta{
  border-radius:999px;
  padding:8px 14px;
  background:rgba(246,249,252,.95);
  border:1px solid rgba(215,223,233,.95);
  color:#162030;
  box-shadow:0 12px 24px rgba(40,54,76,.05);
}

.sg-preview-text-layer h2{
  max-width:740px;
  color:#101826;
  font-size:34px;
  font-weight:600;
  letter-spacing:-.055em;
  line-height:1.02;
}

.sg-preview-text-layer p{
  max-width:640px;
  color:#6b778b;
  font-size:1.05rem;
  line-height:1.82;
}

.sg-preview-overlay{
  max-width:62%;
  padding:18px 18px 20px;
  border-radius:26px;
  background:rgba(255,255,255,.8);
  border:1px solid rgba(223,229,238,.94);
  backdrop-filter:blur(20px);
  box-shadow:0 26px 52px rgba(32,44,64,.12);
}

.sg-preview-overlay-tag{
  border-radius:999px;
  background:#f3f6fa;
  border:1px solid #dde4ec;
  color:#223347;
}

.sg-preview-overlay strong{
  color:#152131;
  font-size:1.14rem;
}

.sg-preview-overlay p{
  color:#657486;
}

.sg-rail-card{
  padding:24px;
}

.sg-rail-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.sg-rail-summary-card,
.sg-rail-manage-card{
  border-radius:24px;
  background:linear-gradient(180deg, #fbfcfe, #f4f7fa);
  box-shadow:inset 0 0 0 1px rgba(223,229,237,.95);
}

.sg-rail-summary-card strong{
  color:#132031;
  font-size:1.02rem;
}

.sg-rail-summary-card small{
  color:#7c889c;
}

.sg-player-body{
  background:linear-gradient(180deg, #ced6e4, #e5ebf3);
}

.sg-player-overlay{
  background:linear-gradient(180deg, rgba(255,255,255,.32), rgba(255,255,255,0));
}

.sg-player-badge{
  background:rgba(248,250,253,.94);
  border:1px solid rgba(219,226,235,.95);
  color:#203145;
}

.sg-player-footer{
  background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.68));
}

@media (max-width: 1240px){
  .sg-admin-app{
    grid-template-columns:1fr;
  }

  .sg-admin-sidebar{
    border-right:none;
    border-bottom:1px solid rgba(209,218,229,.8);
  }

  .sg-admin-topbar{
    grid-template-columns:1fr;
  }

  .sg-admin-topbar-actions-row,
  .sg-admin-topbar-actions-row-bottom{
    justify-content:flex-start;
  }

  .sg-rail-summary{
    grid-template-columns:1fr;
  }

  .sg-auth-grid,
  .sg-auth-tool-grid{
    grid-template-columns:1fr;
  }
}

.sg-admin-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.sg-admin-tab{
  flex:1 1 320px;
  display:grid;
  gap:5px;
  text-align:left;
  cursor:pointer;
  padding:18px 20px;
  border:none;
  border-radius:24px;
  background:rgba(255,255,255,.56);
  box-shadow:inset 0 0 0 1px rgba(215,223,233,.72);
  color:#6f7d91;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.sg-admin-tab:hover{
  transform:translateY(-1px);
  box-shadow:inset 0 0 0 1px rgba(215,223,233,.72), 0 16px 30px rgba(36,50,72,.06);
}

.sg-admin-tab strong{
  color:#152132;
  font-size:1.02rem;
  letter-spacing:-.035em;
}

.sg-admin-tab-label{
  color:#93a0b2;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.16em;
}

.sg-admin-tab.is-active{
  background:linear-gradient(180deg, #ffffff, #f6f9fc);
  box-shadow:0 18px 38px rgba(41,54,77,.08), inset 0 0 0 1px rgba(216,223,233,.84);
}

.sg-admin-tab-panels{
  display:grid;
  gap:18px;
  min-width:0;
}

.sg-admin-tab-panel[hidden]{
  display:none !important;
}

.sg-admin-studio{
  display:grid;
  grid-template-columns:minmax(0, 4fr) minmax(0, 6fr);
  gap:22px;
  align-items:start;
  min-width:0;
}

.sg-studio-setup-card{
  display:grid;
  grid-column:1 / -1;
  grid-template-columns:minmax(300px, .78fr) minmax(0, 1.22fr);
  grid-template-areas:
    "intro form"
    "context form";
  gap:18px;
  min-width:0;
}

.sg-studio-setup-card > .sg-admin-card-head{
  grid-area:intro;
  align-self:stretch;
  padding:24px 26px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(248,250,252,.96));
  border:1px solid rgba(221,227,236,.88);
  box-shadow:0 22px 48px rgba(43,58,82,.07);
}

.sg-studio-setup-card > .sg-admin-card-head strong{
  font-size:1.9rem;
  line-height:1.02;
  letter-spacing:-.065em;
}

.sg-studio-setup-card > .sg-admin-card-head small{
  display:block;
  max-width:320px;
  margin-top:10px;
  line-height:1.75;
}

.sg-rail-manage-card-standalone{
  grid-area:form;
  padding:22px;
  border-radius:26px;
  align-self:stretch;
}

.sg-studio-context{
  grid-area:context;
  display:grid;
  gap:12px;
  align-self:start;
}

.sg-studio-playlists{
  grid-column:1 / -1;
  padding:18px 20px;
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.94));
  border:1px solid rgba(221,227,236,.88);
  box-shadow:0 18px 38px rgba(43,58,82,.06);
}

.sg-studio-playlist-list{
  margin-top:14px;
  display:grid;
  gap:12px;
}

.sg-studio-playlist-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border-radius:22px;
  background:linear-gradient(180deg, #fbfcfe, #f4f7fa);
  box-shadow:inset 0 0 0 1px rgba(223,229,237,.95);
  text-decoration:none;
}

.sg-studio-playlist-item strong{
  display:block;
  color:#152131;
  font-size:1rem;
  letter-spacing:-.03em;
}

.sg-studio-playlist-item small{
  display:block;
  margin-top:4px;
  color:#7c889c;
}

.sg-studio-playlist-item span{
  color:#6e7c90;
  font-size:.85rem;
  white-space:nowrap;
}

.sg-studio-playlist-item.is-current{
  background:linear-gradient(180deg, #ffffff, #f6f9fc);
  box-shadow:inset 0 0 0 1px rgba(206,216,228,.98), 0 14px 30px rgba(43,58,82,.06);
}

.sg-studio-context .sg-rail-summary-card{
  min-height:154px;
}

.sg-admin-activity-grid{
  display:block;
  gap:18px;
  min-width:0;
}

.sg-admin-tab-panel{
  min-width:0;
}

.sg-admin-tab-panel .sg-editor-card,
.sg-admin-tab-panel .sg-preview-card,
.sg-admin-tab-panel .sg-rail-card,
.sg-admin-tab-panel .sg-studio-setup-card{
  min-width:0;
}

.sg-admin-tab-panel .sg-editor-card{
  grid-column:1;
}

.sg-admin-studio .sg-preview-card{
  grid-column:2;
}

.sg-admin-activity-grid .sg-rail-card{
  width:100%;
  grid-area:auto;
  display:grid;
  gap:18px;
  justify-self:stretch;
  align-self:start;
}

.sg-admin-activity-grid > *{
  min-width:0;
}

.sg-admin-activity-grid .sg-rail-summary{
  grid-template-columns:minmax(0, 1fr);
  gap:14px;
}

.sg-admin-activity-grid .sg-rail-manage{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:14px;
}

.sg-admin-activity-grid .sg-rail-summary-card,
.sg-admin-activity-grid .sg-rail-manage-card,
.sg-admin-activity-grid .sg-rail-list{
  width:100%;
}

.sg-admin-activity-grid .sg-rail-list{
  width:100%;
}

.sg-admin-studio > *{
  min-width:0;
}

.sg-admin-studio .sg-editor-card,
.sg-admin-studio .sg-preview-card{
  height:100%;
}

.sg-editor-saved-views{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(218,225,234,.84);
}

.sg-rail-list-inline{
  margin-top:14px;
}

@media (max-width: 1240px){
  .sg-admin-studio{
    grid-template-columns:1fr;
  }

  .sg-studio-setup-card{
    grid-template-columns:1fr;
    grid-template-areas:
      "intro"
      "form"
      "context";
  }

  .sg-admin-studio .sg-editor-card,
  .sg-admin-studio .sg-preview-card{
    grid-column:auto;
  }

  .sg-admin-activity-grid .sg-rail-summary{
    grid-template-columns:1fr;
  }
}
