:root{
  --bg:#07111f;
  --bg2:#0d1830;
  --surface:rgba(255,255,255,.08);
  --surface2:rgba(255,255,255,.13);
  --surface3:rgba(255,255,255,.18);
  --card:rgba(255,255,255,.08);
  --card2:rgba(255,255,255,.13);
  --text:#f7fbff;
  --heading:#ffffff;
  --muted:#aebbd0;
  --line:rgba(255,255,255,.14);
  --input:rgba(255,255,255,.10);
  --accent:#00d5ff;
  --accent3:#3a8bff;
  --accent2:#ff2e8a;
  --gold:#ffd166;
  --green:#3ddc97;
  --danger:#ff5a7a;
  --shadow:0 25px 80px rgba(0,0,0,.35);
  --soft-shadow:0 18px 55px rgba(0,0,0,.22);
  --radius:24px;
  --nav-bg:rgba(7,17,31,.76);
  --footer-bg:rgba(0,0,0,.18);
  --calendar-bg:rgba(255,255,255,.07);
  --table-head:rgba(255,255,255,.09);
  --bg-gradient:radial-gradient(circle at 18% 8%,rgba(0,213,255,.28),transparent 32%),radial-gradient(circle at 85% 20%,rgba(255,46,138,.22),transparent 35%),linear-gradient(135deg,#06101d,#111b38 55%,#140b23);
  --hero-text:linear-gradient(135deg,#fff,#9cebff 45%,#ffb4d6);
}
html[data-theme="light"]{
  --bg:#f4f8ff;
  --bg2:#e9f0ff;
  --surface:rgba(255,255,255,.76);
  --surface2:rgba(255,255,255,.92);
  --surface3:rgba(255,255,255,.98);
  --card:rgba(255,255,255,.78);
  --card2:rgba(255,255,255,.96);
  --text:#132036;
  --heading:#091528;
  --muted:#627089;
  --line:rgba(23,39,67,.13);
  --input:rgba(255,255,255,.92);
  --accent:#00a8dd;
  --accent3:#2e7bff;
  --accent2:#e51f7e;
  --gold:#b77a00;
  --green:#119866;
  --danger:#d9385c;
  --shadow:0 24px 80px rgba(33,48,77,.16);
  --soft-shadow:0 16px 50px rgba(33,48,77,.12);
  --nav-bg:rgba(255,255,255,.82);
  --footer-bg:rgba(255,255,255,.72);
  --calendar-bg:rgba(255,255,255,.82);
  --table-head:rgba(8,80,130,.07);
  --bg-gradient:radial-gradient(circle at 15% 10%,rgba(0,170,220,.18),transparent 33%),radial-gradient(circle at 88% 18%,rgba(229,31,126,.13),transparent 34%),linear-gradient(135deg,#f6fbff,#eef4ff 55%,#fff1fb);
  --hero-text:linear-gradient(135deg,#071528,#057ca5 46%,#d61a76);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
html[data-theme="light"]{color-scheme:light}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.55;overflow-x:hidden;transition:background .25s ease,color .25s ease}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.animated-bg{position:fixed;inset:0;z-index:-3;background:var(--bg-gradient)}.animated-bg:before,.animated-bg:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(25px);background:linear-gradient(135deg,rgba(0,213,255,.14),rgba(255,46,138,.14));animation:float 12s ease-in-out infinite}.animated-bg:before{left:-120px;bottom:5%}.animated-bg:after{right:-150px;top:25%;animation-delay:-4s}@keyframes float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-35px) scale(1.08)}}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 5%;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--nav-bg);border-bottom:1px solid var(--line);box-shadow:0 10px 40px rgba(0,0,0,.06)}.brand,.sidebar-brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img,.sidebar-brand img{width:46px;height:46px;border-radius:15px;object-fit:cover;border:1px solid var(--line);box-shadow:var(--soft-shadow)}.logo-mark{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-weight:1000;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;box-shadow:0 14px 38px rgba(0,213,255,.22)}.brand b,.sidebar-brand b{display:block;font-size:16px;letter-spacing:.3px;color:var(--heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand small,.sidebar-brand small{display:block;color:var(--muted);font-size:11px;margin-top:-1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-menu{display:flex;align-items:center;gap:8px}.nav-menu a{padding:10px 12px;border-radius:999px;color:var(--text);font-weight:800;font-size:13px}.nav-menu a:hover{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.nav-toggle,.sidebar-toggle{display:none;border:0;background:var(--surface2);color:var(--text);border-radius:14px;padding:10px 13px;font-size:20px;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--text);font-weight:900;padding:10px 13px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.08);transition:transform .2s,background .2s,border-color .2s}.theme-toggle:hover{transform:translateY(-1px);background:var(--surface3)}.theme-toggle .theme-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:13px}.theme-toggle b{font-size:12px}.login-theme{position:fixed;right:22px;top:22px;z-index:30}.top-actions{display:flex;align-items:center;gap:10px;min-width:0}.admin-topbar .theme-toggle b{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:13px 18px;background:linear-gradient(135deg,var(--accent),var(--accent3));color:white;font-weight:1000;box-shadow:0 14px 36px rgba(0,170,255,.24);cursor:pointer;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 18px 44px rgba(0,170,255,.28)}.btn-small{padding:9px 14px!important}.btn-pink{background:linear-gradient(135deg,var(--accent2),#ff8a00)}.btn-soft{background:var(--surface2);color:var(--text);box-shadow:none;border:1px solid var(--line)}.btn-danger{background:linear-gradient(135deg,#ff416c,#ff4b2b)}
.hero{position:relative;padding:78px 5% 38px;display:grid;grid-template-columns:1.08fr .92fr;gap:34px;align-items:center}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-weight:900;font-size:12px;box-shadow:0 8px 24px rgba(0,0,0,.06)}.hero h1{font-size:clamp(36px,6vw,78px);line-height:.95;margin:18px 0;background:var(--hero-text);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-2px}.hero p{color:var(--muted);font-size:17px;max-width:700px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.hero-card{position:relative;min-height:480px;border:1px solid var(--line);border-radius:34px;background:linear-gradient(180deg,var(--surface2),var(--surface));box-shadow:var(--shadow);overflow:hidden}.hero-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,213,255,.24),transparent 40%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 55%),url('../img/hero-pattern.svg');background-size:cover;opacity:.92}html[data-theme="light"] .hero-card:before{opacity:.35;filter:saturate(1.4)}.hero-card:after{content:"";position:absolute;inset:auto -80px -110px auto;width:260px;height:260px;border-radius:50%;background:rgba(255,46,138,.22);filter:blur(18px)}.hero-screen{position:absolute;inset:36px;border-radius:28px;background:rgba(0,0,0,.36);border:1px solid rgba(255,255,255,.18);padding:20px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}html[data-theme="light"] .hero-screen{background:rgba(255,255,255,.76);border-color:var(--line)}.live-dot{display:flex;align-items:center;gap:8px;font-weight:1000;color:var(--heading)}.live-dot span{width:11px;height:11px;border-radius:50%;background:#ff315f;box-shadow:0 0 0 7px rgba(255,49,95,.16);animation:pulse 1.2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 14px rgba(255,49,95,0)}}.equalizer{display:flex;gap:7px;align-items:end;height:90px}.equalizer i{display:block;width:14px;border-radius:99px;background:linear-gradient(180deg,var(--accent),var(--accent2));animation:eq 1s infinite alternate}.equalizer i:nth-child(1){height:44px}.equalizer i:nth-child(2){height:64px;animation-delay:.1s}.equalizer i:nth-child(3){height:35px;animation-delay:.2s}.equalizer i:nth-child(4){height:82px;animation-delay:.3s}.equalizer i:nth-child(5){height:50px;animation-delay:.4s}@keyframes eq{from{height:22px}to{height:92px}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0 5% 28px}.stat{padding:20px;border-radius:22px;background:var(--card);border:1px solid var(--line);backdrop-filter:blur(12px);box-shadow:var(--soft-shadow)}.stat b{font-size:28px;display:block;color:var(--heading)}.stat small{color:var(--muted);font-weight:800}.section{padding:54px 5%}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-title h2{font-size:clamp(28px,4vw,48px);margin:0;letter-spacing:-1px;color:var(--heading)}.section-title p{color:var(--muted);max-width:680px}.grid{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--soft-shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden}.card-body{padding:22px}.card h3{color:var(--heading)}.service-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));font-size:26px;margin-bottom:14px;color:#fff;box-shadow:0 12px 32px rgba(0,170,255,.18)}.price{font-size:24px;font-weight:1000;margin:14px 0;color:var(--heading)}.muted{color:var(--muted)}.feature-list{margin:14px 0 0;padding:0;list-style:none}.feature-list li{padding:7px 0;color:var(--text)}.feature-list li:before{content:'✓';color:var(--green);font-weight:1000;margin-right:8px}.portfolio-img{height:230px;width:100%;object-fit:cover;background:var(--surface)}.portfolio-placeholder{height:230px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(0,213,255,.18),rgba(255,46,138,.18));font-size:42px}.job-list{display:grid;gap:10px}.job-item{display:flex;gap:12px;align-items:center;padding:13px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}.job-date{width:62px;height:62px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--accent),var(--accent3));font-weight:1000;text-align:center;line-height:1.05;color:#fff;box-shadow:0 12px 28px rgba(0,170,255,.18)}.job-date small{display:block;font-size:11px}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:1000;background:rgba(61,220,151,.18);color:var(--green);border:1px solid rgba(61,220,151,.28)}.status.pending{background:rgba(255,209,102,.17);color:var(--gold);border-color:rgba(255,209,102,.28)}.status.cancel{background:rgba(255,90,122,.17);color:var(--danger);border-color:rgba(255,90,122,.28)}.cta{margin:44px 5%;padding:36px;border-radius:34px;background:linear-gradient(135deg,rgba(0,213,255,.18),rgba(255,46,138,.18));border:1px solid var(--line);box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:24px;align-items:center}.footer{margin-top:40px;padding:32px 5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);background:var(--footer-bg);backdrop-filter:blur(14px)}.footer b{color:var(--heading)}.footer a{margin-left:14px;color:var(--heading);font-weight:900}
.login-page{min-height:100vh;display:grid;place-items:center;padding:30px}.login-card{width:min(460px,100%);padding:30px;border-radius:32px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px);position:relative}.login-card:before{content:"";position:absolute;inset:-1px;border-radius:32px;padding:1px;background:linear-gradient(135deg,rgba(0,213,255,.44),rgba(255,46,138,.35),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.login-card h1{margin:18px 0 5px;font-size:34px;color:var(--heading);letter-spacing:-.6px}.form{display:grid;gap:13px}.form label{font-weight:1000;font-size:13px;color:var(--heading)}.input,select,textarea{width:100%;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:var(--input);color:var(--text);outline:0}.input:focus,select:focus,textarea:focus{border-color:rgba(0,213,255,.7);box-shadow:0 0 0 4px rgba(0,213,255,.10)}select option{color:#111;background:#fff}.alert{padding:13px 15px;border-radius:16px;margin:0 0 14px;border:1px solid var(--line);font-weight:900}.alert-success{background:rgba(61,220,151,.15);color:var(--green)}.alert-danger{background:rgba(255,90,122,.15);color:var(--danger)}.alert-info{background:rgba(0,213,255,.12);color:var(--accent)}
.player-wrap{padding:54px 5%}.player-box{border-radius:34px;overflow:hidden;border:1px solid var(--line);background:#030812;box-shadow:var(--shadow);position:relative}.video-stage{aspect-ratio:16/9;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(0,213,255,.12),#030812 58%);color:#fff}.video-stage video,.video-stage iframe{width:100%;height:100%;border:0;display:block;background:#000}.player-overlay{position:absolute;left:18px;top:18px;z-index:2;display:flex;gap:10px;align-items:center}.player-info{padding:18px 22px;display:flex;justify-content:space-between;gap:15px;align-items:center;background:rgba(255,255,255,.05);color:#fff}.marquee{overflow:hidden;white-space:nowrap;border-radius:18px;border:1px solid var(--line);background:var(--surface);padding:12px;margin-top:18px}.marquee span{display:inline-block;animation:marq 24s linear infinite}@keyframes marq{from{transform:translateX(100%)}to{transform:translateX(-100%)}}
.calendar-page{padding:34px 5%}.calendar-tools{display:flex;justify-content:space-between;align-items:center;margin:0 auto 14px;gap:12px;max-width:980px}.calendar-legend{max-width:980px;margin:0 auto 14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:11px;font-weight:1000}.calendar-legend span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line)}.calendar-legend i{width:12px;height:12px;border-radius:50%;display:inline-block;box-shadow:0 0 0 3px rgba(255,255,255,.05)}.legend-job{background:linear-gradient(135deg,var(--accent),var(--accent2))}.legend-red{background:var(--danger)}.legend-cuti{background:var(--gold)}.legend-jawa{background:var(--muted)}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;align-items:stretch;max-width:980px;margin:0 auto}.cal-head{min-width:0;padding:8px 4px;text-align:center;color:var(--muted);font-weight:1000;font-size:13px}.cal-day{min-width:0;min-height:62px;padding:8px;border-radius:14px;background:var(--calendar-bg);border:1px solid var(--line);position:relative;box-shadow:0 6px 18px rgba(0,0,0,.04);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.cal-day.out{opacity:.42}.cal-day.today{box-shadow:0 0 0 2px rgba(0,213,255,.65),var(--soft-shadow)}.cal-num{font-weight:1000;color:var(--heading);position:relative;z-index:2;font-size:14px;line-height:1}.cal-jawa{position:absolute;right:7px;top:7px;z-index:2;font-size:8px;font-weight:1000;line-height:1;color:var(--muted);letter-spacing:.2px}.cal-day.is-sunday .cal-num,.cal-day.is-holiday .cal-num,.cal-day.is-joint-leave .cal-num{color:var(--danger)}.cal-day.is-sunday .cal-jawa,.cal-day.is-holiday .cal-jawa,.cal-day.is-joint-leave .cal-jawa{color:var(--danger)}.cal-day.is-holiday,.cal-day.is-joint-leave{background:linear-gradient(135deg,rgba(255,90,122,.16),rgba(255,209,102,.11)),var(--calendar-bg);border-color:rgba(255,90,122,.44)}.cal-day.is-sunday:not(.is-holiday):not(.is-joint-leave){background:linear-gradient(135deg,rgba(255,90,122,.08),rgba(255,255,255,0)),var(--calendar-bg)}.cal-day.has-job{background:linear-gradient(135deg,rgba(0,213,255,.20),rgba(255,46,138,.18)),var(--calendar-bg);border-color:rgba(0,213,255,.58);box-shadow:0 0 0 1px rgba(0,213,255,.14),0 9px 22px rgba(0,170,255,.10)}.cal-day.has-info{cursor:pointer}.cal-day.has-info:hover,.cal-day.has-info:focus,.cal-day.show-tooltip{transform:translateY(-1px);border-color:rgba(255,46,138,.72);box-shadow:0 0 0 2px rgba(0,213,255,.20),0 12px 28px rgba(255,46,138,.13);outline:0;z-index:30}.cal-job-badge{position:absolute;right:5px;bottom:5px;z-index:2;padding:3px 6px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:8px;font-weight:1000;letter-spacing:.35px;box-shadow:0 6px 16px rgba(0,170,255,.18);white-space:nowrap;pointer-events:none}.cal-red-label{position:absolute;left:5px;bottom:5px;z-index:2;max-width:45px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 6px;border-radius:999px;background:rgba(255,90,122,.17);color:var(--danger);font-size:7px;font-weight:1000;letter-spacing:.35px;border:1px solid rgba(255,90,122,.25);pointer-events:none}.cal-day.has-job .cal-red-label{bottom:26px}.cal-tooltip{position:absolute;left:5px;top:5px;z-index:100;width:310px;max-width:min(310px,calc(100vw - 34px));max-height:220px;overflow:auto;padding:13px 14px;border-radius:14px;background:rgba(5,14,30,.97);color:#fff;border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 60px rgba(0,0,0,.38);opacity:0;visibility:hidden;transform:scale(.96);transform-origin:top left;transition:.16s ease;pointer-events:auto;white-space:pre-line;text-align:left;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.cal-day.tip-left .cal-tooltip{left:auto;right:5px;transform-origin:top right}.cal-tooltip strong{display:block;margin-bottom:8px;color:#fff;font-size:12px;letter-spacing:.5px}.cal-tooltip span{display:block;color:rgba(255,255,255,.88);font-size:12px;line-height:1.42;padding-top:7px;margin-top:7px;border-top:1px solid rgba(255,255,255,.12)}.cal-tooltip span:first-of-type{border-top:0;margin-top:0;padding-top:0}.cal-tooltip b{display:block;color:#9cebff;font-size:10px;letter-spacing:.45px;margin-bottom:4px}.cal-day.has-info:hover .cal-tooltip,.cal-day.has-info:focus .cal-tooltip,.cal-day.show-tooltip .cal-tooltip{opacity:1;visibility:visible;transform:scale(1)}.cal-day.tip-left.has-info:hover .cal-tooltip,.cal-day.tip-left.has-info:focus .cal-tooltip,.cal-day.tip-left.show-tooltip .cal-tooltip{transform:scale(1)}html[data-theme="light"] .cal-tooltip{background:rgba(255,255,255,.98);color:#0b1424;border-color:rgba(20,35,65,.16);box-shadow:0 24px 70px rgba(20,35,65,.22)}html[data-theme="light"] .cal-tooltip strong{color:#0b1424}html[data-theme="light"] .cal-tooltip span{color:#31435f;border-top-color:rgba(20,35,65,.12)}html[data-theme="light"] .cal-tooltip b{color:#057ca5}.admin-body{background:var(--bg);color:var(--text)}.admin-shell{display:flex;min-height:100vh}.sidebar{width:282px;background:var(--surface);border-right:1px solid var(--line);padding:18px;position:sticky;top:0;height:100vh;overflow:auto;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.sidebar-brand{padding:8px 4px 18px;border-bottom:1px solid var(--line);margin-bottom:12px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:12px 13px;border-radius:16px;color:var(--text);font-weight:900}.sidebar nav a:hover{background:var(--surface2)}.admin-main{flex:1;padding:20px;min-width:0}.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:18px;border-radius:26px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--soft-shadow);backdrop-filter:blur(14px)}.admin-topbar h1{margin:0;font-size:28px;color:var(--heading)}.admin-topbar p{margin:2px 0 0;color:var(--muted)}.user-pill{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);min-width:0}.user-pill span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));font-weight:1000;color:#fff;flex:0 0 auto}.user-pill b{color:var(--heading);white-space:nowrap}.user-pill small{display:block;color:var(--muted);font-weight:800}.dash-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.dash-card{padding:20px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--soft-shadow)}.dash-card small{color:var(--muted);font-weight:1000}.dash-card b{display:block;font-size:32px;margin-top:4px;color:var(--heading)}.table-wrap{overflow:auto;border-radius:22px;border:1px solid var(--line);background:var(--surface)}table{width:100%;border-collapse:collapse;min-width:780px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;color:var(--muted);background:var(--table-head)}td{color:var(--text)}.actions{display:flex;flex-wrap:wrap;gap:8px}.mini-btn{display:inline-flex;padding:8px 10px;border-radius:12px;background:var(--surface2);border:1px solid var(--line);font-weight:1000;font-size:12px;color:var(--text)}.mini-btn.danger{background:rgba(255,90,122,.18);color:var(--danger)}.admin-grid{display:grid;grid-template-columns:390px 1fr;gap:18px}.admin-form-card{padding:20px;border-radius:24px;background:var(--card);border:1px solid var(--line);align-self:start;box-shadow:var(--soft-shadow)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.preview-thumb{width:80px;height:54px;object-fit:cover;border-radius:12px;background:var(--surface)}.empty{padding:28px;text-align:center;color:var(--muted)}.install-box{max-width:900px;margin:40px auto;padding:24px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}code,pre{white-space:pre-wrap;background:rgba(0,0,0,.32);border:1px solid var(--line);border-radius:16px;padding:14px;display:block;color:#dff6ff}html[data-theme="light"] code,html[data-theme="light"] pre{background:#10192b;color:#e7f6ff}
@media(max-width:980px){.hero{grid-template-columns:1fr;padding-top:42px}.stats,.grid-4,.grid-3,.dash-cards{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.sidebar{position:fixed;left:-300px;z-index:50;transition:.25s}.sidebar.open{left:0}.sidebar-toggle{display:block}.admin-main{padding:12px}.admin-topbar{position:sticky;top:8px;z-index:10;backdrop-filter:blur(18px)}.user-pill b,.user-pill small{display:none}.cta{display:block}.calendar{gap:5px;max-width:880px}.cal-day{min-height:56px;padding:7px}.cal-job-badge{right:4px;bottom:4px;padding:2px 5px;font-size:7px}.cal-jawa{font-size:7px}.cal-red-label{font-size:6px;padding:2px 5px}.cal-tooltip{width:270px;max-height:210px}.theme-toggle b{display:none}}
@media(max-width:720px){body{font-size:13px}.site-header{padding:12px 4%}.nav-toggle{display:block}.nav-menu{position:fixed;left:4%;right:4%;top:76px;display:none;flex-direction:column;align-items:stretch;padding:12px;background:var(--nav-bg);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.nav-menu.open{display:flex}.nav-menu a,.nav-menu .theme-toggle{text-align:center;width:100%}.theme-toggle b{display:inline}.hero{padding:32px 4%}.hero-card{min-height:360px}.hero-screen{inset:18px}.stats,.grid-4,.grid-3,.dash-cards,.two-col{grid-template-columns:1fr}.section,.calendar-page,.player-wrap{padding-left:4%;padding-right:4%}.section-title{display:block}.footer{display:block}.footer a{display:block;margin:8px 0 0}.admin-topbar h1{font-size:21px}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;max-width:100%}.cal-head{font-size:10px;padding:6px 1px}.cal-day{min-height:44px;border-radius:10px;padding:5px}.cal-num{font-size:12px}.cal-job-badge{right:3px;bottom:3px;padding:2px 4px;font-size:6px}.cal-jawa{font-size:6px;right:4px;top:4px}.cal-red-label{left:3px;bottom:3px;font-size:6px;padding:1px 4px;max-width:38px}.cal-day.has-job .cal-red-label{bottom:20px}.cal-tooltip{left:3px;top:3px;right:auto;bottom:auto;width:245px;max-width:calc(100vw - 22px);max-height:210px;padding:11px 12px;transform:scale(.96)}.cal-day.tip-left .cal-tooltip{right:3px;left:auto}.cal-day.has-info:hover .cal-tooltip,.cal-day.has-info:focus .cal-tooltip,.cal-day.show-tooltip .cal-tooltip{transform:scale(1)}.player-info{display:block}.hero h1{letter-spacing:-1px}.login-card{padding:22px}.login-theme{right:14px;top:14px}.brand small{max-width:180px}.admin-topbar{gap:8px;padding:12px}.top-actions{gap:6px}}

/* Slide Dokumentasi Kegiatan */
.doc-section{position:relative;padding-top:44px}.doc-slider{position:relative;overflow:hidden;border-radius:34px;border:1px solid var(--line);background:linear-gradient(135deg,var(--surface2),var(--surface));box-shadow:var(--shadow);min-height:520px}.doc-track{display:flex;height:520px;transition:transform .55s cubic-bezier(.2,.85,.2,1);will-change:transform}.doc-slide{position:relative;flex:0 0 100%;min-width:100%;height:520px;overflow:hidden;background:var(--surface)}.doc-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 5s ease}.doc-slide.active img{transform:scale(1.12)}.doc-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.18) 48%,rgba(0,0,0,.45)),linear-gradient(0deg,rgba(0,0,0,.68),transparent 55%)}html[data-theme="light"] .doc-slide:after{background:linear-gradient(90deg,rgba(4,17,38,.62),rgba(4,17,38,.12) 48%,rgba(4,17,38,.34)),linear-gradient(0deg,rgba(4,17,38,.55),transparent 55%)}.doc-caption{position:absolute;z-index:2;left:34px;right:120px;bottom:34px;max-width:720px;color:#fff}.doc-caption span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);font-weight:1000;font-size:12px;backdrop-filter:blur(12px)}.doc-caption h3{font-size:clamp(30px,4vw,58px);line-height:1;margin:16px 0 10px;color:#fff;letter-spacing:-1px}.doc-caption p{margin:0;font-size:17px;max-width:680px;color:rgba(255,255,255,.84)}.doc-nav{position:absolute;top:50%;z-index:4;transform:translateY(-50%);width:52px;height:52px;border:1px solid var(--line);border-radius:50%;background:var(--surface2);color:var(--heading);font-size:34px;font-weight:900;display:grid;place-items:center;cursor:pointer;box-shadow:var(--soft-shadow);backdrop-filter:blur(16px);transition:.2s}.doc-nav:hover{transform:translateY(-50%) scale(1.06);background:var(--surface3)}.doc-prev{left:18px}.doc-next{right:18px}.doc-dots{position:absolute;z-index:5;left:0;right:0;bottom:16px;display:flex;justify-content:center;gap:8px}.doc-dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(255,255,255,.45);cursor:pointer;transition:.25s}.doc-dots button.active{width:34px;background:#fff}.doc-empty{display:grid;place-items:center;text-align:center;padding:30px;background:linear-gradient(135deg,var(--surface2),var(--surface))}.doc-empty:after{display:none}.doc-empty div{font-size:72px}.doc-empty h3{font-size:34px;margin:12px 0 4px;color:var(--heading)}.doc-empty p{color:var(--muted);margin:0}@media(max-width:720px){.doc-slider,.doc-track,.doc-slide{height:380px;min-height:380px}.doc-caption{left:20px;right:20px;bottom:48px}.doc-caption h3{font-size:30px}.doc-caption p{font-size:14px}.doc-nav{width:42px;height:42px;font-size:28px}.doc-prev{left:10px}.doc-next{right:10px}.doc-dots{bottom:12px}.doc-caption span{font-size:11px}}

/* === UPDATE MENU KAPITAL SEMUA === */
.nav-menu a,
.nav-menu .theme-toggle b,
.sidebar nav a,
.sidebar-brand small,
.admin-topbar .theme-toggle b,
.btn-small{
  text-transform:uppercase;
  letter-spacing:.55px;
}
.nav-menu a{
  font-size:12px;
}
.sidebar nav a{
  font-size:12.5px;
}
@media(max-width:720px){
  .nav-menu a, .nav-menu .theme-toggle b{font-size:12px;letter-spacing:.45px}
}

/* === UPDATE ANIMASI LOADING SAAT UPLOAD === */
.upload-loader-overlay{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(3,8,18,.72);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
html[data-theme="light"] .upload-loader-overlay{background:rgba(246,250,255,.78)}
body.is-uploading{overflow:hidden}
body.is-uploading .upload-loader-overlay{display:flex}
.upload-loader-card{
  width:min(480px,100%);
  border:1px solid var(--line);
  border-radius:30px;
  padding:28px;
  text-align:center;
  color:var(--text);
  background:linear-gradient(180deg,var(--surface3),var(--surface2));
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
}
.upload-loader-card:before{
  content:"";
  position:absolute;
  inset:-70px;
  background:conic-gradient(from 90deg,transparent,rgba(0,213,255,.18),rgba(255,46,138,.18),transparent 58%);
  animation:uploadGlow 3s linear infinite;
  z-index:-1;
}
@keyframes uploadGlow{to{transform:rotate(360deg)}}
.upload-loader-icon{
  width:88px;
  height:88px;
  margin:0 auto 16px;
  border-radius:28px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:#fff;
  font-size:38px;
  box-shadow:0 18px 45px rgba(0,170,255,.25);
  animation:uploadFloat 1.6s ease-in-out infinite;
}
@keyframes uploadFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.04)}}
.upload-loader-title{margin:0;color:var(--heading);font-size:24px;line-height:1.15;letter-spacing:-.4px}
.upload-loader-text{margin:10px 0 18px;color:var(--muted);font-weight:700}
.upload-progress-wrap{
  width:100%;
  height:13px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid var(--line);
  overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
html[data-theme="light"] .upload-progress-wrap{background:rgba(15,35,65,.10)}
.upload-progress-bar{
  width:0%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),var(--accent2),var(--gold));
  position:relative;
  transition:width .35s ease;
  overflow:hidden;
}
.upload-progress-bar:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  transform:translateX(-100%);
  animation:uploadShine 1.1s linear infinite;
}
@keyframes uploadShine{to{transform:translateX(100%)}}
.upload-loader-percent{margin-top:12px;font-size:13px;font-weight:1000;color:var(--heading)}
.upload-loader-note{margin-top:12px;color:var(--muted);font-size:12px;font-weight:800}
.upload-loader-spinner{
  width:30px;
  height:30px;
  margin:16px auto 0;
  border-radius:50%;
  border:3px solid rgba(255,255,255,.25);
  border-top-color:var(--accent);
  animation:uploadSpin .8s linear infinite;
}
html[data-theme="light"] .upload-loader-spinner{border-color:rgba(10,30,60,.16);border-top-color:var(--accent)}
@keyframes uploadSpin{to{transform:rotate(360deg)}}
.btn.upload-btn-loading{
  pointer-events:none;
  opacity:.9;
  filter:saturate(1.15);
}
.btn.upload-btn-loading:before{
  content:"";
  width:16px;
  height:16px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;
  animation:uploadSpin .75s linear infinite;
}
@media(max-width:720px){
  .upload-loader-card{border-radius:24px;padding:24px 18px}
  .upload-loader-icon{width:76px;height:76px;border-radius:24px;font-size:32px}
  .upload-loader-title{font-size:21px}
}

/* === UPDATE PERSENTASE UPLOAD REAL-TIME === */
.upload-loader-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
}
.upload-loader-overlay.upload-error .upload-loader-icon{
  background:linear-gradient(135deg,var(--danger),#ff8a00);
  animation:none;
}
.upload-loader-overlay.upload-error .upload-progress-bar{
  background:linear-gradient(90deg,var(--danger),#ff8a00);
}
.upload-loader-overlay.upload-error .upload-loader-spinner{
  display:none;
}


/* === UPDATE TEKS MOHON TUNGGU SAAT UPLOAD === */
.upload-loader-title{
  text-transform:uppercase;
  letter-spacing:.5px;
}
.upload-loader-text{
  text-transform:uppercase;
  font-size:15px;
  color:var(--heading);
}
.upload-loader-text:after{
  content:"";
  display:inline-block;
  width:1.2em;
  text-align:left;
  animation:uploadDots 1.1s steps(4,end) infinite;
}
@keyframes uploadDots{
  0%{content:""}
  25%{content:"."}
  50%{content:".."}
  75%,100%{content:"..."}
}
.upload-loader-card{
  animation:uploadCardPulse 1.8s ease-in-out infinite;
}
@keyframes uploadCardPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.015)}
}
.upload-loader-percent{
  font-size:28px;
  line-height:1;
  letter-spacing:-.8px;
}

/* =========================================================
   UPDATE TAMPILAN TEKNOLOGI & MULTIMEDIA PROFESIONAL
   Fakhira Record - Tech Broadcast Theme
   ========================================================= */
:root{
  --tech-cyan:#00e5ff;
  --tech-blue:#327cff;
  --tech-violet:#8b5cff;
  --tech-pink:#ff3dad;
  --tech-ink:#050b18;
  --glass-strong:rgba(255,255,255,.115);
  --glass-stroke:rgba(255,255,255,.18);
  --neon-shadow:0 0 38px rgba(0,229,255,.22),0 0 70px rgba(255,61,173,.10);
}
html[data-theme="light"]{
  --glass-strong:rgba(255,255,255,.80);
  --glass-stroke:rgba(18,44,83,.13);
  --neon-shadow:0 18px 70px rgba(37,112,255,.13),0 0 38px rgba(0,188,220,.11);
}
body.theme-tech:before,
body.tech-admin:before,
body.login-tech:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-2;
  background-image:
    linear-gradient(rgba(0,229,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,229,255,.07) 1px, transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 78%);
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 78%);
}
body.theme-tech:after,
body.tech-admin:after,
body.login-tech:after{
  content:"";
  position:fixed;
  inset:-2px;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(circle at 16% 16%,rgba(0,229,255,.24),transparent 25%),
    radial-gradient(circle at 78% 10%,rgba(139,92,255,.20),transparent 30%),
    radial-gradient(circle at 85% 70%,rgba(255,61,173,.15),transparent 30%);
  filter:saturate(1.12);
}
.animated-bg{overflow:hidden}
.animated-bg .tech-orb{position:absolute;border-radius:999px;filter:blur(1px);opacity:.65;pointer-events:none;box-shadow:0 0 45px rgba(0,229,255,.28)}
.animated-bg .orb-1{width:130px;height:130px;left:8%;top:18%;background:radial-gradient(circle,rgba(0,229,255,.42),rgba(0,229,255,0) 65%);animation:orbDrift 14s ease-in-out infinite}
.animated-bg .orb-2{width:190px;height:190px;right:6%;top:36%;background:radial-gradient(circle,rgba(255,61,173,.30),rgba(255,61,173,0) 68%);animation:orbDrift 18s ease-in-out infinite reverse}
.animated-bg .orb-3{width:90px;height:90px;left:48%;bottom:11%;background:radial-gradient(circle,rgba(139,92,255,.35),rgba(139,92,255,0) 66%);animation:orbDrift 16s ease-in-out infinite}
@keyframes orbDrift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(18px,-34px,0) scale(1.16)}}
.site-header{
  min-height:78px;
  border-bottom:1px solid rgba(0,229,255,.18);
  box-shadow:0 18px 70px rgba(0,0,0,.12), inset 0 -1px 0 rgba(255,255,255,.05);
}
.brand img,.brand .logo-mark,.sidebar-brand img,.sidebar-brand .logo-mark{position:relative;box-shadow:0 0 0 1px rgba(0,229,255,.16),0 12px 34px rgba(0,0,0,.16)}
.brand b,.sidebar-brand b{font-weight:1000;letter-spacing:.2px}
.nav-menu a{letter-spacing:.7px;position:relative;overflow:hidden}
.nav-menu a:before{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;background:linear-gradient(90deg,var(--tech-cyan),var(--tech-pink));transform:scaleX(0);transform-origin:left;transition:transform .22s ease;border-radius:99px}
.nav-menu a:hover:before{transform:scaleX(1)}
.theme-toggle,.btn{letter-spacing:.3px}
.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:-80% auto -80% -70%;width:55%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.33),transparent);transform:rotate(18deg);transition:left .5s ease}.btn:hover:after{left:120%}
.tech-hero{
  position:relative;
  padding:82px 5% 44px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:34px;
  align-items:center;
}
.tech-kicker{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.tech-chip{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(0,229,255,.22);background:linear-gradient(135deg,rgba(0,229,255,.12),rgba(255,61,173,.08));padding:9px 13px;border-radius:999px;font-size:12px;font-weight:1000;color:var(--heading);box-shadow:0 10px 30px rgba(0,0,0,.08);backdrop-filter:blur(14px)}
.tech-hero h1{font-size:clamp(38px,6.2vw,84px);line-height:.92;letter-spacing:-3.2px;margin:0 0 20px;background:linear-gradient(115deg,#ffffff 0%,#a7f5ff 33%,#7ba5ff 58%,#ff9bd0 92%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 50px rgba(0,229,255,.13)}
html[data-theme="light"] .tech-hero h1{background:linear-gradient(115deg,#091528 0%,#007fa4 36%,#3162d8 60%,#d31376 92%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.tech-hero p{font-size:17px;color:var(--muted);max-width:720px;margin:0 0 26px}.tech-hero .hero-actions{margin-top:0}
.tech-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:26px}.tech-metric{border:1px solid var(--line);background:linear-gradient(180deg,var(--glass-strong),rgba(255,255,255,.04));border-radius:20px;padding:15px 14px;box-shadow:var(--soft-shadow);backdrop-filter:blur(16px)}.tech-metric b{display:block;color:var(--heading);font-size:23px;line-height:1}.tech-metric small{font-weight:900;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}
.broadcast-rig{position:relative;min-height:520px;border-radius:34px;border:1px solid var(--glass-stroke);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));box-shadow:var(--shadow),var(--neon-shadow);overflow:hidden;isolation:isolate}.broadcast-rig:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 16%,rgba(0,229,255,.30),transparent 32%),radial-gradient(circle at 82% 24%,rgba(255,61,173,.24),transparent 36%),linear-gradient(120deg,rgba(255,255,255,.10),transparent 40%);z-index:-1}.broadcast-rig:after{content:"";position:absolute;inset:18px;border-radius:28px;border:1px solid rgba(255,255,255,.14);background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:26px 26px;opacity:.55;z-index:-1}
.rig-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 22px 0}.rig-live{display:inline-flex;align-items:center;gap:9px;font-weight:1000;color:var(--heading);letter-spacing:.7px}.rig-live i{width:12px;height:12px;border-radius:50%;background:#ff315f;box-shadow:0 0 0 8px rgba(255,49,95,.16);animation:pulse 1.2s infinite}.rig-time{font-family:Consolas,monospace;color:#b7f7ff;font-weight:1000;background:rgba(0,0,0,.20);border:1px solid rgba(255,255,255,.11);border-radius:999px;padding:8px 12px}
.rig-screen{margin:18px 22px;border-radius:26px;min-height:270px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,rgba(1,10,24,.78),rgba(18,16,45,.68));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);padding:18px;position:relative;overflow:hidden}.rig-screen:before{content:"";position:absolute;left:0;right:0;top:-30%;height:60%;background:linear-gradient(180deg,rgba(0,229,255,.10),transparent);animation:scanMove 4.2s linear infinite}.rig-frame{position:relative;height:100%;min-height:232px;border-radius:20px;border:1px solid rgba(0,229,255,.25);display:grid;place-items:center;text-align:center;background:radial-gradient(circle at center,rgba(0,229,255,.12),transparent 55%)}.rig-frame h3{font-size:33px;margin:8px 0;color:#fff}.rig-frame p{margin:0;color:#bad4e7}.rig-play{width:84px;height:84px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(135deg,var(--tech-cyan),var(--tech-pink));color:#fff;font-size:34px;box-shadow:0 0 42px rgba(0,229,255,.22);animation:techPulse 2.4s ease-in-out infinite}.rig-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 22px 22px}.rig-panel{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:18px;padding:14px}.rig-panel strong{display:block;color:var(--heading);font-size:20px}.rig-panel span{font-size:11px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.6px}@keyframes scanMove{to{transform:translateY(230%)}}@keyframes techPulse{50%{transform:scale(1.06);box-shadow:0 0 64px rgba(255,61,173,.28)}}
.section.tech-section{position:relative}.section.tech-section .section-title{border:1px solid var(--line);border-radius:28px;padding:22px;background:linear-gradient(135deg,var(--glass-strong),rgba(255,255,255,.04));box-shadow:var(--soft-shadow)}
.tech-service-card{position:relative;overflow:hidden;min-height:100%;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.tech-service-card:before{content:"";position:absolute;inset:-1px;background:linear-gradient(135deg,rgba(0,229,255,.22),transparent 42%,rgba(255,61,173,.16));opacity:.6;pointer-events:none}.tech-service-card:hover{transform:translateY(-5px);border-color:rgba(0,229,255,.35);box-shadow:var(--shadow),var(--neon-shadow)}.tech-service-card .card-body{position:relative;z-index:1}.service-icon{box-shadow:0 0 32px rgba(0,229,255,.22),0 12px 32px rgba(255,61,173,.12)}
.production-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.flow-step{position:relative;border:1px solid var(--line);background:linear-gradient(180deg,var(--card2),var(--card));border-radius:24px;padding:22px;box-shadow:var(--soft-shadow);overflow:hidden}.flow-step:before{content:attr(data-step);position:absolute;right:14px;top:8px;font-size:64px;line-height:1;font-weight:1000;color:rgba(0,229,255,.10)}.flow-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,var(--tech-blue),var(--tech-pink));font-size:24px;margin-bottom:14px}.flow-step h3{margin:0 0 8px;color:var(--heading)}.flow-step p{margin:0;color:var(--muted)}
.tech-feature-strip{margin:10px 5% 0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tech-feature{border-radius:24px;border:1px solid var(--line);background:linear-gradient(135deg,var(--glass-strong),rgba(255,255,255,.045));padding:20px;box-shadow:var(--soft-shadow)}.tech-feature b{display:block;font-size:20px;color:var(--heading)}.tech-feature span{display:block;color:var(--muted);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.6px}
.doc-slider,.card,.stat,.calendar-page .calendar,.player-box,.login-card,.sidebar,.admin-topbar{box-shadow:var(--shadow),0 0 0 1px rgba(0,229,255,.05)}
.doc-slider{border-color:rgba(0,229,255,.18)}.doc-caption{backdrop-filter:blur(18px)}.portfolio-img{filter:saturate(1.08) contrast(1.03)}
.player-wrap.tech-player{padding-top:54px}.player-stage-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:stretch}.tech-live-sidebar{border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,var(--card2),var(--card));padding:22px;box-shadow:var(--soft-shadow)}.tech-live-sidebar h3{margin-top:0;color:var(--heading)}.tech-live-list{display:grid;gap:12px;margin-top:16px}.tech-live-list div{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:12px}.tech-live-list span{width:34px;height:34px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--tech-cyan),var(--tech-pink))}.video-stage{background:#020713}.player-box{border-color:rgba(0,229,255,.20)}
.login-page{min-height:100vh}.login-card{border-color:rgba(0,229,255,.18);position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 0%,rgba(0,229,255,.20),transparent 34%),radial-gradient(circle at 100% 20%,rgba(255,61,173,.12),transparent 36%);pointer-events:none}.login-card>*{position:relative}.login-card h1{font-size:clamp(32px,5vw,52px);letter-spacing:-1.8px;margin-bottom:8px;background:linear-gradient(135deg,#fff,#a7f5ff,#ff9bd0);-webkit-background-clip:text;background-clip:text;color:transparent}html[data-theme="light"] .login-card h1{background:linear-gradient(135deg,#091528,#087ca5,#d31376);-webkit-background-clip:text;background-clip:text;color:transparent}.login-visual{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.login-visual i{height:7px;border-radius:99px;background:linear-gradient(90deg,var(--tech-cyan),var(--tech-pink));animation:eq 1.3s infinite alternate}.login-visual i:nth-child(2){animation-delay:.2s}.login-visual i:nth-child(3){animation-delay:.4s}
.sidebar nav a{position:relative;overflow:hidden}.sidebar nav a:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:99px;background:linear-gradient(180deg,var(--tech-cyan),var(--tech-pink));opacity:0;transition:opacity .2s}.sidebar nav a:hover:before{opacity:1}.admin-main{background:linear-gradient(135deg,rgba(0,229,255,.03),rgba(255,61,173,.02))}.admin-topbar h1{letter-spacing:-.8px}.user-pill{border:1px solid rgba(0,229,255,.15)}
.calendar-page{max-width:1240px;margin:0 auto}.calendar{background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.04));border:1px solid rgba(0,229,255,.13);border-radius:28px;padding:16px}.cal-day{box-shadow:0 10px 30px rgba(0,0,0,.06)}.cal-day.has-job{background:linear-gradient(135deg,rgba(0,229,255,.22),rgba(255,61,173,.16))!important}.cal-tooltip{box-shadow:0 18px 60px rgba(0,0,0,.22),0 0 0 1px rgba(0,229,255,.18)}
.cta{border:1px solid rgba(0,229,255,.18);background:linear-gradient(135deg,rgba(0,229,255,.14),rgba(255,61,173,.11));box-shadow:var(--shadow),var(--neon-shadow)}.footer{border-top:1px solid rgba(0,229,255,.13)}
@media(max-width:1100px){.tech-hero{grid-template-columns:1fr}.broadcast-rig{min-height:460px}.tech-feature-strip,.production-flow{grid-template-columns:repeat(2,1fr)}.player-stage-shell{grid-template-columns:1fr}.tech-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.site-header{min-height:auto}.tech-hero{padding-top:48px}.tech-hero h1{letter-spacing:-1.8px}.broadcast-rig{min-height:390px;border-radius:26px}.rig-screen{margin:14px}.rig-frame h3{font-size:26px}.rig-panels{grid-template-columns:1fr;padding:0 14px 14px}.tech-metrics,.tech-feature-strip,.production-flow{grid-template-columns:1fr}.tech-feature-strip{margin-left:5%;margin-right:5%}.section.tech-section .section-title{padding:18px}.calendar{padding:10px}.cal-day{min-height:58px!important}.nav-menu a:before{display:none}}
