:root{--rank-gold: #ffd700;--rank-silver: #c0c0c0;--rank-bronze: #cd7f32;--rank-default: #4a5568;--card-split: rgba(255, 255, 255, .05);--bg-main: #050505;--bg-gradient: radial-gradient(circle at center, #001126 0%, #000000 100%);--text-primary: #e0e0e0;--text-secondary: #0070FA;--green-color: rgb(11, 107, 59);--accent-glow: #0070FA;--accent-active: #0070FA;--grid-color: rgba(0, 112, 250, .15);--dock-bg: rgba(5, 12, 25, .6);--dock-rank: rgb(5, 12, 25);--dock-border: rgba(0, 112, 250, .2);--dock-item-bg: linear-gradient(135deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02));--dock-shadow: 0 10px 30px rgba(0, 0, 0, .7);--hero-gradient: linear-gradient(to right, #0070FA, #FF8F1F);--hero-shadow: 0 0 25px rgba(0, 112, 250, .4);--status-bg: transparent;--status-border: 1px solid rgba(0, 112, 250, .3);--status-text: #0070FA;--status-dot: #0070FA;--toggle-bg: rgba(0, 112, 250, .1);--toggle-icon: #ffd700;--border-dock-item: rgba(255, 255, 255, .1);--nexus-red: #d70f26;--nexus-teal: #0070FA;--nexus-title: #ffffff;--nexus-text-color: #ffffff;--nexus-teal-dark: #003b87;--nexus-teal-bright: #FF8F1F;--nexus-bg: linear-gradient(135deg, rgba(5, 15, 30, .95), rgba(2, 5, 15, .98));--nexus-card-bg: rgba(15, 25, 40, .6);--nexus-border: rgba(0, 112, 250, .3);--nexus-footer: rgba(0, 0, 0, .3);--font-head: "Orbitron", sans-serif;--font-body: "Rajdhani", sans-serif;--nexus-tab-color: rgba(0, 0, 0, .2);--nexus-inset-shadow: 0 0 30px rgba(0, 112, 250, .15), inset 0 0 50px rgba(0, 0, 0, .8);--nexus-empty-state: #8b8b8b;--shadow-elevation: 0 24px 38px 3px rgba(255, 255, 255, .05), 0 9px 46px 8px rgba(255, 255, 255, .02), 0 11px 15px -7px rgba(255, 255, 255, .1) !important;--surface-border: rgba(255, 255, 255, .06);--triangle-window: rgba(0, 0, 0, .948);--triangle-border: rgba(0, 112, 250, .3);--btn-training-bg: rgba(0, 0, 0, .4);--btn-training-text: var(--nexus-teal-bright);--bs-success-rgb: 46, 213, 115;--bs-info-rgb: 0, 112, 250;--bs-warning-rgb: 255, 143, 31;--bs-danger-rgb: 255, 71, 87;--header-h: 30px;--radius-hud: 40px;--timer-w: 59.5%;--timer-w-mobile: 80%;--bg-exam: #000;--bg-overlayexam: #1b2026;--nexus-cyan: #0070FA;--nexus-magenta: #FF8F1F;--nexus-border: rgba(0, 112, 250, .4);--nexus-glow: 0 0 15px rgba(0, 112, 250, .5);--font-sci-fi: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--light-badge1: rgba(255, 143, 31, .5);--light-badge2: rgba(255, 143, 31, .9);--light-badge3: rgba(255, 143, 31, .5);--text-white: #fff;--text-dark-primary: #1a222a;--shadow-color: rgba(42, 42, 132, .211)}body.light-mode{--shadow-color: rgba(0, 0, 0, .211);--card-split: rgba(255, 255, 255, .522);--bg-main: #f0f4f8;--bg-gradient: radial-gradient(circle at center, #ffffff 0%, #dbe3ec 100%);--text-primary: #1a222a;--text-secondary: #0056c6;--accent-glow: #0070FA;--accent-active: #0070FA;--grid-color: rgba(0, 112, 250, .08);--dock-bg: rgba(255, 255, 255, .85);--dock-rank: rgb(254, 254, 255);--dock-border: rgba(0, 112, 250, .3);--dock-item-bg: rgb(244, 247, 250);--dock-shadow: 0 20px 40px rgba(0, 112, 250, .15);--hero-gradient: linear-gradient(135deg, #0070FA, #e07613);--hero-shadow: 0 5px 15px rgba(0, 112, 250, .2);--status-bg: rgba(255, 255, 255, .8);--status-border: 1px solid rgba(0, 112, 250, .2);--status-text: #0056c6;--status-dot: #0070FA;--toggle-bg: rgba(0, 112, 250, .1);--toggle-icon: #f39c12;--border-dock-item: rgba(216, 220, 223, .643);--nexus-teal: #0056c6;--nexus-title: #0070FA;--nexus-text-color: #000000;--nexus-teal-dark: #003b87;--nexus-teal-bright: #0070FA;--nexus-bg: linear-gradient(135deg, rgba(255, 255, 255, .95), rgba(246, 246, 246, .98));--nexus-card-bg: rgba(255, 255, 255, .75);--nexus-border: rgba(0, 112, 250, .25);--nexus-shadow: 0 10px 30px rgba(0, 112, 250, .15);--nexus-inset-shadow: 0 0 0px rgba(0, 112, 250, .15), inset 0 0 0 rgba(0, 0, 0, .8);--nexus-tab-color: rgba(255, 255, 255, .2);--nexus-footer: rgba(243, 240, 240, .3);--nexus-empty-state: #aaa;--triangle-border: rgba(225, 230, 234, .25);--shadow-elevation: 0 10px 16px -8px rgba(0, 0, 0, .08), 0 4px 10px -6px rgba(0, 0, 0, .06), 0 3px 6px -3px rgba(0, 0, 0, .12);--surface-border: rgba(0, 0, 0, .08);--triangle-window: rgba(243, 240, 240, .948);--btn-training-bg: rgba(255, 255, 255, .8);--btn-training-text: var(--nexus-teal);--bg-exam: #fff;--bg-overlayexam: #f0f4f8;--light-badge1: rgba(0, 112, 250, .5);--light-badge2: rgba(0, 112, 250, .9);--light-badge3: rgba(0, 112, 250, .5);--text-dark-primary: #fff}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{background:var(--bg-gradient);color:var(--text-primary);font-family:Rajdhani,sans-serif;height:100vh;overflow:hidden!important;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:background .5s ease,color .5s ease}svg{width:24px;height:24px;transition:all .3s ease}.theme-switch{position:fixed;top:20px;right:20px;width:35px;height:35px;background:var(--toggle-bg);border-radius:30%;display:flex;justify-content:center;align-items:center;cursor:pointer;border:1px solid var(--dock-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 5px 15px #0000001a;overflow:hidden;z-index:250}.theme-switch svg,.ctrl-btn svg{fill:currentColor}.theme-switch:hover{transform:scale(1.1);border-color:var(--accent-glow)}.theme-switch svg{width:18px;height:18px;color:var(--toggle-icon);position:absolute;transition:transform .5s cubic-bezier(.68,-.55,.27,1.55),opacity .3s ease}.screen-switch{position:fixed;top:20px;right:65px;width:35px;height:35px;background:var(--toggle-bg);border-radius:30%;display:flex;justify-content:center;align-items:center;cursor:pointer;border:1px solid var(--dock-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 5px 15px #0000001a;overflow:hidden;z-index:250}.screen-switch svg{width:18px;height:18px;fill:currentColor;color:var(--toggle-icon);position:absolute;transition:transform .5s cubic-bezier(.68,-.55,.27,1.55),opacity .3s ease}.screen-switch:hover{transform:scale(1.1);border-color:var(--accent-glow)}.screen-switch.is-fullscreen .icon-expand{opacity:0;transform:scale(0) rotate(90deg)}.screen-switch.is-fullscreen .icon-shrink{opacity:1;transform:scale(1) rotate(0)}.screen-switch .icon-full{opacity:1;transform:scale(1)}.screen-switch .icon-min{opacity:0;transform:scale(0) rotate(-90deg)}.screen-switch.is-fullscreen .icon-full{opacity:0;transform:scale(0) rotate(90deg)}.screen-switch.is-fullscreen .icon-min{opacity:1;transform:scale(1) rotate(0)}.logout-switch{position:fixed;top:20px;right:110px;width:35px;height:35px;background:var(--toggle-bg);border-radius:30%;display:flex;justify-content:center;align-items:center;cursor:pointer;border:1px solid var(--dock-border);padding:0;outline:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;box-shadow:0 5px 15px #0000001a;overflow:hidden;z-index:250}.logout-switch svg{width:18px;height:18px;fill:transparent;color:var(--toggle-icon);transition:transform .3s ease}.logout-switch:hover{transform:scale(1.1);border-color:#ff4d4d;Opsional:Warna border merah saat hover khas logout}.logout-switch:hover svg{color:#ff4d4d;transform:translate(2px)}.icon-sun{opacity:0;transform:rotate(90deg) scale(.5)}.icon-moon{opacity:1;transform:rotate(0) scale(1)}body.light-mode .icon-moon{opacity:0;transform:rotate(-90deg) scale(.5)}body.light-mode .icon-sun{opacity:1;transform:rotate(0) scale(1)}.grid-bg{position:absolute;width:200%;height:200%;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:40px 40px;transform:perspective(500px) rotateX(60deg) translateY(-100px) translateZ(-200px);animation:gridMove 20s linear infinite;z-index:-1;opacity:.5;pointer-events:none;transition:background-image .5s ease}@keyframes gridMove{0%{transform:perspective(500px) rotateX(60deg) translateY(0) translateZ(-200px)}to{transform:perspective(500px) rotateX(60deg) translateY(40px) translateZ(-200px)}}.hero{text-align:center;z-index:1;padding:0 20px;margin-bottom:80px;position:fixed}.hero img{width:400px;max-width:100%;display:block;margin:0 auto 15px;letter-spacing:6px;background:var(--hero-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(var(--hero-shadow));transition:all .5s ease}.hero h1{font-family:Orbitron,sans-serif;font-size:4rem;letter-spacing:6px;background:var(--hero-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(var(--hero-shadow));margin-bottom:.5rem;transition:all .5s ease}.status{font-size:1.1rem;color:var(--status-text);text-transform:uppercase;letter-spacing:3px;font-weight:700;display:inline-flex;align-items:center;gap:10px;background:var(--status-bg);padding:8px 16px;border-radius:50px;border:var(--status-border);transition:all .5s ease}.status:before{content:"";width:8px;height:8px;background-color:var(--status-dot);border-radius:50%;box-shadow:0 0 10px var(--status-dot);animation:pulse 2s infinite;transition:background-color .5s}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.dock-container{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);display:flex;justify-content:center;align-items:flex-end;padding:10px;background:var(--dock-bg);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid var(--dock-border);border-radius:24px;box-shadow:var(--dock-shadow);height:auto;max-width:95vw;transition:width .3s,background-color .5s,box-shadow .5s,border-color .5s;z-index:10001}.dock-item{width:60px;height:60px;border-radius:16px;margin:0 6px;background:var(--dock-item-bg);border:1px solid transparent;display:flex;justify-content:center;align-items:center;color:var(--text-primary);cursor:pointer;position:relative;transition:all .2s ease-out;flex-shrink:0;border:1px solid var(--border-dock-item);box-sizing:border-box}.dock-item svg{width:50%;height:50%;pointer-events:none;fill:currentColor}.dock-item.active{border-color:var(--accent-active);color:var(--accent-active);background:#0ba69d26;box-shadow:0 0 15px #0ba69d40}.dock-item:after{content:attr(data-title);position:absolute;top:-45px;left:50%;transform:translate(-50%);background:var(--bg-main);color:var(--text-secondary);padding:4px 10px;font-size:.85rem;font-weight:600;border-radius:4px;opacity:0;pointer-events:none;transition:opacity .2s;font-family:Rajdhani,sans-serif;white-space:nowrap;letter-spacing:1px;display:none;border:1px solid var(--dock-border);box-shadow:0 5px 15px #0003}@media(min-width:769px){.dock-item:hover{transform:translateY(-10px);border-color:var(--accent-glow)}.dock-item:hover svg{color:var(--accent-glow);filter:drop-shadow(0 0 5px var(--accent-glow))}.dock-item:hover:after{opacity:1;display:block}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100005;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.active{opacity:1;visibility:visible}.modal-window{width:90%;max-width:500px;height:500px;background:var(--dock-bg);border:1px solid var(--dock-border);border-radius:9px;transform:scale(.8) translateY(20px);transition:transform .4s cubic-bezier(.175,.885,.32,1.275),opacity .3s;overflow:hidden;position:relative;display:flex}.modal-overlay.active .modal-window{transform:scale(1) translateY(0);transition:.3s}.slide{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;transition:transform .4s cubic-bezier(.25,1,.5,1);background:var(--dock-bg);z-index:1}.slide.active{transform:translate(0);z-index:2}.slide.next{transform:translate(100%);z-index:3}.slide.prev{transform:translate(-100%);opacity:.5;z-index:0}.modal-header{display:flex;align-items:center;padding:20px 24px;border-bottom:1px solid var(--grid-color);background:rgba(var(--accent-active),.05)}.modal-icon-box{width:40px;height:40px;border-radius:10px;background:#0ba69d26;display:flex;justify-content:center;align-items:center;margin-right:15px;color:var(--text-secondary);border:1px solid var(--dock-border);cursor:pointer}.modal-title-group{flex:1}.modal-title-group h3{font-family:Orbitron,sans-serif;font-size:1.1rem;letter-spacing:1px;color:var(--text-primary);margin-bottom:2px}.modal-subtitle{font-size:.8rem;text-transform:uppercase;color:var(--text-secondary);letter-spacing:2px;opacity:.8}.modal-close{background:transparent;border:none;color:var(--text-primary);cursor:pointer;opacity:.5;transition:.3s;padding:5px}.modal-close:hover{opacity:1;color:#ff4757;transform:rotate(90deg)}.modal-body{padding:30px 24px;min-height:100px;color:var(--text-primary);overflow-y:auto}.pusat{display:flex;justify-content:center;align-items:center;width:100%;height:100%;box-sizing:border-box}.modal-footer{padding:15px 24px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--grid-color);background:#0000001a}.btn-modal{padding:10px 24px;border-radius:8px;font-family:Rajdhani,sans-serif;font-weight:700;letter-spacing:1px;cursor:pointer;font-size:.9rem;transition:all .3s ease;text-transform:uppercase}.btn-modal:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-modal.secondary{background:transparent;border:1px solid var(--dock-border);color:var(--text-primary);opacity:.7}.btn-modal.secondary:hover{opacity:1;border-color:var(--text-primary);background:#ffffff0d}.btn-modal.primary{background:var(--text-secondary);border:1px solid var(--text-secondary);color:#000;box-shadow:0 0 15px #0ba69d4d}.btn-modal.primary:hover{background:#4ffff4;box-shadow:0 0 25px #0ba69d99;transform:translateY(-2px)}.results-header{padding:15px 24px;display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary);border-bottom:1px solid var(--grid-color);background:#0003;font-weight:700;letter-spacing:1px;flex-shrink:0}.results-grid{padding:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px}@media(min-width:600px){.results-grid{grid-template-columns:1fr 1fr}}.result-card{background:#ffffff08;border:1px solid var(--dock-border);border-radius:8px;padding:12px 16px;display:flex;flex-direction:column;gap:4px;transition:all .2s ease;position:relative;overflow:hidden;cursor:pointer}.result-card:hover{background:#0ba69d1a;border-color:var(--text-secondary);transform:translate(5px)}.card-top{display:flex;justify-content:space-between;align-items:center}.card-left{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex:1;min-width:0}.card-right{position:absolute;right:20px;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:6px;flex-shrink:0}.participant-name{font-weight:700;font-size:1rem;color:var(--text-primary);display:flex;align-items:center;gap:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.participant-school{font-size:.8rem;color:var(--text-secondary);opacity:.8}.card-bottom{margin-top:8px;display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--card-split);padding-top:8px}.score-box{font-family:Orbitron,sans-serif;font-size:.9rem}.medal-badge{font-size:.7rem;padding:2px 8px;border-radius:4px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 5px #0003}.medal-gold{background:linear-gradient(135deg,gold,#fdb931);color:#000;border:1px solid #FFD700;box-shadow:0 0 10px #ffd7004d}.medal-silver{background:linear-gradient(135deg,#e0e0e0,#bdbdbd);color:#000;border:1px solid #E0E0E0}.medal-bronze{background:linear-gradient(135deg,#cd7f32,sienna);color:#fff;border:1px solid #CD7F32}.results-grid::-webkit-scrollbar{width:6px}.results-grid::-webkit-scrollbar-track{background:#0000001a}.results-grid::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:3px}.results-grid::-webkit-scrollbar-thumb:hover{background:#4ffff4}.score-display{font-family:Orbitron,sans-serif;font-size:1rem;font-weight:700;text-shadow:0 0 15px rgba(255,215,0,.6);line-height:1;display:flex;border-top:1px solid var(--card-split);justify-content:space-between;align-items:center;padding:10px 5px}.score-label{font-family:Rajdhani,sans-serif;font-size:.9rem;font-weight:700;transform:translateY(-2px)}.results-grid{padding:10px 15px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}@media(max-width:768px){.hero h1{font-size:2.5rem;letter-spacing:3px}.status{font-size:.7rem}.dock-container{bottom:.5rem;padding:8px;overflow-x:auto;justify-content:flex-start;-ms-overflow-style:none;scrollbar-width:none}.dock-container::-webkit-scrollbar{display:none}.dock-item{width:33px!important;height:33px!important;margin:0 4px;transform:none!important;border-radius:12px}.dock-item:hover:after{opacity:1;display:block;top:-45px}.modal-window{width:100%}}.coverWindow{position:fixed;left:50%;top:0;transform:translate(-50%);overflow:visible;z-index:999;width:95%;max-width:1200px;height:85vh;opacity:0;visibility:hidden;transition:all .4s ease}.coverWindow.active{opacity:1;visibility:visible}.coverWindow .dock-window{width:100%;height:100%;background:var(--nexus-bg);border:1px solid var(--nexus-border);box-shadow:var(--nexus-inset-shadow);display:flex;flex-direction:column;border-radius:12px;overflow:visible;transform:scale(.79) translateY(20px);transition:all .4s cubic-bezier(.175,.885,.32,1.275);box-shadow:#64646f33 0 7px 29px}.coverWindow.active .dock-window{visibility:visible;transform:scale(1) translateY(0)}.dock-window:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--nexus-teal),transparent);z-index:2}.window-header{padding:15px 25px;display:flex;align-items:center;border-bottom:1px solid var(--nexus-border);background:#ffffff05}.header-icon{width:40px;height:40px;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--nexus-teal);margin-right:15px}.header-icon svg{width:24px;height:24px}.header-text h2{font-family:var(--font-head);font-size:1.2rem;color:var(--nexus-title);letter-spacing:2px;margin:0;text-shadow:0 0 10px rgba(11,166,157,.5)}.header-text span{font-family:var(--font-body);font-size:.85rem;color:var(--nexus-teal);text-transform:uppercase;letter-spacing:1px}.window-close{margin-left:auto;background:transparent;border:none;color:#666;cursor:pointer;transition:.3s}.window-close:hover{color:#ff4757;transform:rotate(90deg)}.window-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.tabs-nav{display:flex;padding:0 25px;border-bottom:1px solid rgba(255,255,255,.05);background:var(--nexus-tab-color);gap:20px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s ease}.tabs-nav:hover,.tabs-nav:active{scrollbar-color:var(--nexus-teal) transparent}.tabs-nav::-webkit-scrollbar{height:4px}.tabs-nav::-webkit-scrollbar-thumb{background:transparent;border-radius:10px;transition:background .3s ease}.tabs-nav:hover::-webkit-scrollbar-thumb,.tabs-nav:active::-webkit-scrollbar-thumb{background:var(--nexus-teal);box-shadow:0 0 5px var(--nexus-teal-bright)}.tabs-nav::-webkit-scrollbar-track{background:transparent}.tab-btn{background:transparent;border:none;padding:8px 3px;font-family:var(--font-head);color:#888;cursor:pointer;position:relative;transition:.3s;font-size:.8rem;letter-spacing:1px}.tab-btn:hover{color:#ccc}.tab-btn.active{color:var(--nexus-teal-bright);text-shadow:0 0 8px var(--nexus-teal)}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--nexus-teal);box-shadow:0 -2px 10px var(--nexus-teal)}.tabs-content{flex:1;overflow-y:auto;padding:15px;scrollbar-width:thin;scrollbar-color:var(--nexus-teal) transparent}.tabs-content::-webkit-scrollbar{width:6px}.tabs-content::-webkit-scrollbar-thumb{background:var(--nexus-teal);border-radius:3px}.tab-panel{display:none;animation:fadeIn .4s ease}.tab-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px}.event-card{background:#ffffff08;border:1px solid var(--nexus-border);border-radius:10px;overflow:hidden;transition:all .3s ease;position:relative}.event-card:hover{border-color:var(--nexus-teal);box-shadow:0 10px 30px #00000080;transform:translateY(-5px)}.card-image{height:240px;width:100%;position:relative;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:.5s;filter:grayscale(40%)}.event-card:hover .card-image img{transform:scale(1.1);filter:grayscale(0%)}.card-badge{position:absolute;top:10px;right:10px;background:var(--nexus-teal);color:#000;font-weight:700;font-size:.7rem;padding:2px 8px;border-radius:2px;font-family:var(--font-head)}.card-badge.warning{background:var(--toggle-icon);color:var(--nexus-title)}.card-badge.online{background:var(--nexus-teal);color:var(--nexus-text-color)}.card-badge.offline{background:#f39c12;color:var(--nexus-text-color)}.card-details{padding:15px}.event-title{font-family:var(--font-head);color:var(--nexus-title);font-size:1.1rem;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-subtitle{font-family:var(--font-body);color:#888;font-size:.85rem;margin-bottom:10px}.meta-info{background:#0000004d;border-radius:6px;padding:10px;margin-bottom:15px;border:1px solid rgba(255,255,255,.05)}.meta-row{display:flex;align-items:flex-start;margin-bottom:6px}.meta-row:last-child{margin-bottom:0}.meta-icon{width:16px;height:16px;color:var(--nexus-teal);margin-right:10px;margin-top:2px;flex-shrink:0}.meta-text{display:flex;flex-direction:column}.meta-text .label{font-size:.7rem;color:#666;text-transform:uppercase}.meta-text .value.location{text-decoration:underline;cursor:pointer;color:#fff}.meta-text .value{font-size:.85rem;color:#ddd;font-weight:600;font-family:var(--font-body)}.meta-text .value.price{color:gold;text-shadow:0 0 10px rgba(255,215,0,.3)}.card-actions{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:8px}.btn-action{border:none;border-radius:4px;padding:8px 0;font-family:var(--font-body);font-weight:700;font-size:.8rem;cursor:pointer;transition:.2s;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:4px}.btn-action svg{width:14px;height:14px}.btn-action.secondary{background:transparent;border:1px solid #444;color:#aaa}.btn-action.secondary:hover{border-color:#fff;color:var(--nexus-title);background:#ffffff0d}.btn-action.primary{background:#0ba69d26;border:1px solid var(--nexus-teal);color:var(--nexus-teal-bright)}.btn-action.primary:hover{background:var(--nexus-teal);color:#000;box-shadow:0 0 15px var(--nexus-teal)}.pagination{display:flex;justify-content:center;gap:5px;margin-top:0}.page-btn{width:25px;height:25px;background:#ffffff0d;border:1px solid var(--nexus-border);color:var(--nexus-text-color);font-family:var(--font-head);cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center;font-size:.6rem}.page-btn:hover:not(.disabled){border-color:var(--nexus-teal);color:var(--nexus-teal)}.page-btn.active{background:var(--nexus-teal);color:#fff!important;border-color:var(--nexus-teal)}.page-btn.disabled{opacity:.3;cursor:default}.window-footer{padding:10px 25px;background:var(--nexus-footer);border-top:1px solid var(--nexus-border);display:flex;justify-content:center;font-family:var(--font-body);font-size:.75rem;color:#555;text-transform:uppercase;letter-spacing:1px}.footer-status{color:var(--nexus-teal)}.empty-state{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:500px;height:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;box-sizing:border-box}.empty-state p{font-family:var(--font-head);font-size:1.6rem;margin:0 0 8px;letter-spacing:2px;background:var(--hero-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px rgba(0,112,250,.3))}.tab-panel{position:relative;min-height:400px}.empty-state span{font-family:var(--font-body);font-size:.95rem;font-weight:500;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);opacity:.8}@media(max-width:600px){body{touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none}.modal-window{width:100%;height:100vh;border-radius:0}.card-actions{grid-template-columns:1fr 1fr}.btn-action.primary{grid-column:span 2}.coverWindow.active{width:100%}.coverWindow.active .dock-window{border-radius:0}.header-text h2{font-size:.9rem}.header-text span{font-size:.7rem;display:block;line-height:1.2}.tab-btn{font-size:.6rem}.modal-title-group h3{font-size:.9rem}.modal-title-group .modal-subtitle{font-size:.7rem}}.toast-container{position:fixed;top:20px;right:20px;z-index:100009;display:flex;flex-direction:column;gap:15px;pointer-events:none}.toast{width:350px;background:var(--dock-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--nexus-border);border-left:4px solid var(--nexus-teal);border-radius:4px 12px 12px 4px;box-shadow:0 5px 20px #0000004d;padding:15px 20px;position:relative;overflow:hidden;pointer-events:auto;transform:translate(100%);opacity:0;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);display:flex;align-items:flex-start;gap:15px}.toast.show{transform:translate(0);opacity:1}.toast-icon{width:24px;height:24px;flex-shrink:0;color:var(--nexus-teal);filter:drop-shadow(0 0 5px currentColor)}.toast-content{flex:1}.toast-title{font-family:var(--font-head);font-size:.9rem;color:var(--nexus-title);margin-bottom:4px;letter-spacing:1px;text-transform:uppercase}.toast-message{font-family:var(--font-body);font-size:.9rem;color:var(--text-primary);opacity:.9;line-height:1.3}.toast-close{background:transparent;border:none;color:var(--text-primary);opacity:.5;cursor:pointer;padding:0;transition:.2s}.toast-close:hover{opacity:1;color:#ff4757}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--nexus-teal);width:100%;transform-origin:left;box-shadow:0 0 10px var(--nexus-teal)}.toast.success{border-left-color:var(--nexus-teal)}.toast.success .toast-icon,.toast.success .toast-progress{color:var(--nexus-teal);background:var(--nexus-teal)}.toast.error{border-left-color:#ff4757}.toast.error .toast-icon{color:#ff4757}.toast.error .toast-progress{background:#ff4757;box-shadow:0 0 10px #ff4757}.toast.error .toast-title{color:#ff4757}.toast.warning{border-left-color:#ffa502}.toast.warning .toast-icon{color:#ffa502}.toast.warning .toast-progress{background:#ffa502;box-shadow:0 0 10px #ffa502}.toast.info{border-left-color:#1e90ff}.toast.info .toast-icon{color:#1e90ff}.toast.info .toast-progress{background:#1e90ff;box-shadow:0 0 10px #1e90ff}@keyframes progressDecrease{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:600px){.toast-container{top:10px;right:5px!important}.toast{width:100%}.toast-title,.toast-message{font-size:.7rem}}.z-depth{box-shadow:#ffffff1a 0 1px 1px inset,#32325d40 0 50px 100px -20px,#0000004d 0 30px 60px -30px}.profileContainer{width:0px;height:0px;position:fixed;z-index:20005;left:30px;top:30px;background:#fff;border-radius:100%;background:#000;cursor:grab;transition:0s;color:#fff;overflow:hidden;display:none}.profileContainer video{width:100%;height:100%;object-fit:cover;border-radius:100%}.profileContainer .buka{position:absolute;width:20px;height:20px;left:calc(50% - 10px);top:calc(50% - 10px);transition:.3s;transform:scale(0);cursor:pointer;display:flex;justify-content:center;align-items:center}.profileContainer .buka .svg{width:20px;height:20px}.profileContainer:hover>.buka{transform:scale(1)}.profileContainer .tutup{position:absolute;width:40px;height:40px;left:calc(50% - 20px);top:calc(50% - 20px);transition:.3s;transform:scale(0);cursor:pointer}.profileContainer .tutup .svg{width:40px;height:40px}.profileContainer:hover>.tutup{transform:scale(1)}.schedule-grid{display:grid;grid-template-columns:1fr;gap:15px;padding:15px}@media(min-width:768px){.schedule-grid{grid-template-columns:1fr 1fr}}.schedule-card{background:var(--nexus-card-bg);border:1px solid var(--nexus-border);border-radius:12px;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;padding:12px 16px;gap:15px;width:100%;overflow:hidden;cursor:pointer}.schedule-card:hover{border-color:var(--nexus-teal);transform:translateY(-2px);background:#0ba69d0d}.card-side-icon{width:100px;height:100px}.card-side-icon .apexcharts-canvas{display:flex;align-items:center;justify-content:center}*/ */ .card-side-icon{width:100px!important;height:100px!important;position:relative;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden}.card-side-icon .apexcharts-canvas,.card-side-icon .apexcharts-canvas svg{width:100px!important;height:100px!important;display:block!important}.card-side-icon .apexcharts-ycrosshairs,.card-side-icon .apexcharts-ycrosshairs-hidden{display:none!important}.card-main-info{flex:1;min-width:0;display:flex;flex-direction:column}.event-nm{font-family:var(--font-head);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-field{font-size:.85rem;color:var(--nexus-teal);margin-bottom:4px}.timer-wrapper{display:flex;flex-direction:column}.timer-label{font-size:.7rem;color:#888;text-transform:uppercase}.countdown-val{font-family:var(--font-head);color:var(--nexus-teal-bright);font-size:1.1rem}.btn-print-card{background:var(--nexus-teal);color:#000;border:none;padding:8px 12px;border-radius:4px;font-family:var(--font-body);font-weight:700;font-size:.75rem;cursor:pointer;display:flex;align-items:center;gap:5px}.training-wide-card{background:#ffffff05;border:1px solid var(--nexus-border);border-radius:12px;overflow:hidden;margin-bottom:15px}.live-badge{position:absolute;top:15px;left:15px;z-index:2;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid var(--nexus-teal);color:var(--nexus-teal-bright);padding:4px 12px;border-radius:20px;font-family:var(--font-head);font-size:.7rem;letter-spacing:1.5px;display:flex;align-items:center;gap:8px;box-shadow:0 0 15px #0ba69d4d}.live-badge .dot{width:6px;height:6px;background-color:#ff4757;border-radius:50%;box-shadow:0 0 8px #ff4757;animation:pulse 1.5s infinite}.play-badge{position:absolute;top:50%;left:50%;width:60px;height:60px;transform:translate(-50%,-50%);z-index:2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:20px;font-family:var(--font-head);font-size:.7rem;box-shadow:0 0 15px #0ba69d4d;cursor:pointer;display:flex;justify-content:center;align-items:center}.play-badge svg{width:40px;height:40px}.training-banner{width:100%;height:180px;position:relative}.training-banner img{width:100%;height:100%;object-fit:cover;opacity:.6}.training-wide-card:hover .training-banner img{transform:scale(1.05);opacity:1;transition:all .5s ease}.training-text h3{font-family:var(--font-head);font-size:1.1rem;color:var(--nexus-teal-bright)}.attendance-summary{display:flex;align-items:center;gap:6px;margin-top:6px}.attendance-count{font-family:var(--font-head);font-size:.85rem;font-weight:700;color:var(--green-color);background:#0ba69d1a;padding:2px 6px;border-radius:4px;border:1px solid rgba(11,166,157,.2)}.attendance-label{font-size:.75rem;color:#888;font-family:var(--font-body)}.training-content{padding:15px;display:flex;justify-content:space-between;align-items:center}.training-info-meta{display:flex;align-items:center;gap:10px;margin-top:5px}.training-info-meta .date{color:#888;font-size:.85rem}.training-info-meta .separator{color:var(--nexus-border);font-weight:300}.training-info-meta .price{font-family:var(--font-head);color:gold;font-size:.9rem;text-shadow:0 0 10px rgba(255,215,0,.3)}.btn-training-timer{position:relative;background:var(--btn-training-bg);border:1px solid var(--nexus-border);color:var(--btn-training-text);padding:12px 24px;font-family:var(--font-head);font-size:.9rem;border-radius:4px;min-width:140px;cursor:default;overflow:hidden;transition:all .3s ease;letter-spacing:1px;text-shadow:0 0 8px rgba(79,255,244,.5);cursor:pointer}.btn-training-timer:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(79,255,244,.2),transparent);transition:.5s}.btn-training-timer:hover:before{left:100%}.btn-training-timer.ready{background:#0ba69d33;border:1px solid var(--nexus-teal-bright);color:#fff;cursor:pointer;box-shadow:0 0 15px #0ba69d66,inset 0 0 10px #0ba69d33;animation:pulseGlow 2s infinite}.btn-training-timer.ready:hover{background:var(--nexus-teal-bright);color:#000;box-shadow:0 0 30px var(--nexus-teal-bright);transform:scale(1.05)}@keyframes pulseGlow{0%{box-shadow:0 0 10px #0ba69d66;border-color:#4ffff480}50%{box-shadow:0 0 25px #0ba69dcc;border-color:#4ffff4}to{box-shadow:0 0 10px #0ba69d66;border-color:#4ffff480}}.training-list{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:768px){.training-list{grid-template-columns:1fr 1fr}}@media(max-width:600px){.schedule-card{flex-direction:column;align-items:flex-start}.btn-print-card{width:100%;justify-content:center}}.event-nexus-card{position:relative;background:#0ba69d0d;border:1px solid var(--nexus-border);border-radius:12px;padding:20px;margin-bottom:15px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.event-nexus-card:hover{background:#0ba69d1a;border-color:var(--nexus-teal-bright);box-shadow:0 0 20px #0ba69d33;transform:translate(5px)}.event-title-text{font-family:var(--font-head);font-size:1.1rem;color:var(--nexus-title);letter-spacing:1px;margin-bottom:8px}.field-badge{display:flex;gap:10px;margin-bottom:20px}.field-tag{font-size:.75rem;color:var(--nexus-teal-bright);border:1px solid var(--nexus-teal);padding:2px 8px;border-radius:4px;text-transform:uppercase}.status-tag{font-size:.75rem;color:#888;padding:2px 8px}.card-actions-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.btn-nexus{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:6px;font-family:var(--font-body);font-weight:700;font-size:.8rem;text-transform:uppercase;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.btn-nexus svg{width:16px;height:16px}.btn-nexus.primary{background:var(--nexus-teal);color:#000}.btn-nexus.primary:hover{background:var(--nexus-teal-bright);box-shadow:0 0 15px var(--nexus-teal)}.btn-nexus.secondary{background:#ffffff08;border-color:var(--nexus-border);color:var(--text-primary)}.btn-nexus.secondary:hover{background:#0ba69d26;border-color:var(--nexus-teal);color:var(--nexus-teal-bright)}@media(max-width:480px){.card-actions-wrapper{grid-template-columns:1fr 1fr}}.window-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 20px;gap:20px}.footer-search-wrapper{display:flex;align-items:center;background:#0ba69d14;border:1px solid var(--nexus-border);border-radius:4px;height:30px;width:30px;overflow:hidden;transition:all .4s cubic-bezier(.165,.84,.44,1)}.footer-search-wrapper.active{width:250px;background:var(--nexus-bg);border-color:var(--nexus-teal-bright);box-shadow:0 0 10px #0ba69d1a}.footer-search-toggle{min-width:30px;height:30px;background:transparent;border:none;color:var(--nexus-teal);cursor:pointer;display:flex;justify-content:center;align-items:center}.footer-search-input{flex:1;background:transparent;border:none;outline:none;color:var(--nexus-teal-bright);font-family:var(--font-body);font-size:.75rem;letter-spacing:2px;opacity:0;transition:opacity .3s ease;text-transform:uppercase}.footer-search-wrapper.active .footer-search-input{opacity:1}@media(max-width:600px){.footer-search-wrapper.active{width:100%}}.cart-list{display:flex;flex-direction:column;gap:15px;padding:10px}.cart-item{background:#ffffff08;border:1px solid var(--nexus-border);border-radius:12px;padding:15px;display:grid;grid-template-columns:80px 1fr auto;gap:15px;transition:all .3s ease;position:relative;overflow:hidden}.cart-item:hover{background:#0ba69d14;border-color:var(--nexus-teal-bright);transform:translate(5px)}.cart-img-box{width:80px;height:80px;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center}.cart-img-box img{width:100%;height:100%;object-fit:cover}.cart-info{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.cart-title{font-family:var(--font-head);font-size:1rem;color:var(--nexus-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-sub{font-size:.8rem;color:var(--nexus-teal);margin-bottom:8px}.cart-note-input{background:#0000001a;border:1px solid var(--nexus-border);border-radius:4px;color:#ccc;padding:5px 8px;font-size:.75rem;font-family:var(--font-body);outline:none;width:100%;transition:.3s}.cart-note-input:focus{border-color:var(--nexus-teal-bright);background:#0006}.cart-actions-column{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}.cart-price{font-family:var(--font-head);color:gold;font-size:1rem;text-shadow:0 0 10px rgba(255,215,0,.3)}.quantity-ctrl{display:flex;align-items:center;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:6px;overflow:hidden}.qty-btn{background:transparent;border:none;color:var(--nexus-teal-bright);width:28px;height:28px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:.2s}.qty-btn:hover{background:var(--nexus-teal);color:#000}.qty-val{width:35px;text-align:center;font-family:var(--font-head);font-size:.9rem;color:var(--nexus-title);border-left:1px solid var(--nexus-border);border-right:1px solid var(--nexus-border)}.cart-summary-fixed{position:absolute;bottom:0;left:0;width:100%;background:var(--nexus-bg);border-top:1px solid var(--nexus-border);padding:15px 25px;display:flex;justify-content:space-between;align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10;border-radius:0 0 12px 12px}.summary-info{display:flex;flex-direction:column}.summary-label{font-size:.7rem;color:#888;letter-spacing:2px}.summary-total{font-family:var(--font-head);font-size:1.3rem;color:var(--nexus-teal-bright);text-shadow:0 0 15px rgba(11,166,157,.4)}.btn-checkout{background:var(--nexus-teal);color:#000;border:none;padding:12px 25px;font-family:var(--font-head);font-size:.85rem;font-weight:800;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:.3s;box-shadow:0 0 20px #0ba69d33}.btn-checkout:hover{background:var(--nexus-teal-bright);box-shadow:0 0 30px var(--nexus-teal-bright);transform:translateY(-2px)}.btn-checkout svg{width:18px;height:18px}.btn-logout{background:var(--nexus-red);color:#fff;border:none;padding:8px 15px;font-family:var(--font-head);font-size:.85rem;font-weight:800;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:.3s;box-shadow:0 0 20px #0ba69d33}.btn-logout:hover{background:var(--nexus-teal-bright);box-shadow:0 0 30px var(--nexus-teal-bright);transform:translateY(-2px)}.btn-logout svg{width:18px;height:18px}@media(max-width:600px){.cart-item{grid-template-columns:60px 1fr}.cart-actions-column{grid-column:span 2;flex-direction:row;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.05)}.cart-img-box{width:60px;height:60px}.cart-summary-fixed{border-radius:0}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px) scale(.98);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.cart-item{animation:slideUpFade .5s cubic-bezier(.165,.84,.44,1) forwards;opacity:0}.cart-item:nth-child(1){animation-delay:.1s}.cart-item:nth-child(2){animation-delay:.2s}.cart-item:nth-child(3){animation-delay:.3s}.cart-item:nth-child(4){animation-delay:.4s}.cart-item:nth-child(5){animation-delay:.5s}.cart-item:nth-child(6){animation-delay:.6s}.cart-summary-fixed{animation:fadeIn .8s ease-out}.dock-item{position:relative}.dock-badge{position:absolute;margin-left:25px;margin-top:-25px;background-color:var(--nexus-teal-bright);color:var(--text-white);font-family:var(--font-head);font-size:.65rem;font-weight:800;min-width:18px;height:18px;padding:0 4px;border-radius:10px;display:flex;align-items:center;justify-content:center;border:2px solid var(--dock-bg);box-shadow:0 0 10px var(--light-badge1);z-index:10;pointer-events:none;animation:badgePulse 2s infinite}@keyframes badgePulse{0%{transform:scale(1);box-shadow:0 0 5px var(--light-badge1)}50%{transform:scale(1.1);box-shadow:0 0 15px var(--light-badge2)}to{transform:scale(1);box-shadow:0 0 5px var(--light-badge3)}}.dock-badge:empty{display:none}.notification-list{display:flex;flex-direction:column;gap:12px;padding:10px}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.notif-item{background:#ffffff08;border:1px solid var(--nexus-border);border-radius:12px;padding:12px 15px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;position:relative;transition:all .3s ease;opacity:0;animation:slideUpFade .5s cubic-bezier(.165,.84,.44,1) forwards}.notif-item:nth-of-type(1){animation-delay:.1s}.notif-item:nth-of-type(2){animation-delay:.15s}.notif-item:nth-of-type(3){animation-delay:.2s}.notif-item:nth-of-type(4){animation-delay:.25s}.notif-item:nth-of-type(5){animation-delay:.3s}.notif-item:nth-of-type(6){animation-delay:.35s}.tab-panel.active .notif-item{display:grid}.notif-img-box{width:44px;height:44px;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--nexus-teal);flex-shrink:0}.notif-item.unread{background:#0ba69d0f;border-left:3px solid var(--nexus-teal-bright)}.notif-status-dot{position:absolute;top:12px;right:12px;width:6px;height:6px;background:var(--nexus-teal-bright);border-radius:50%;box-shadow:0 0 10px var(--nexus-teal-bright)}.notif-img-box{width:50px;height:50px;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--nexus-teal)}.notif-item.unread .notif-img-box{background:var(--nexus-teal);color:#000}.notif-info{display:flex;flex-direction:column;min-width:0}.notif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.notif-title{font-family:var(--font-head);font-size:.95rem;color:var(--nexus-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-time{font-size:.7rem;color:#666;letter-spacing:1px;text-transform:uppercase}.notif-desc{font-size:.85rem;color:#999;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-item:hover{background:#0ba69d14;border-color:var(--nexus-teal-bright);transform:translate(5px)}@media(max-width:600px){.notification-list{padding:8px;gap:8px}.notif-item{padding:10px;grid-template-columns:max-content 1fr;gap:10px}.notif-img-box{width:38px;height:38px}.notif-img-box svg{width:18px;height:18px}.notif-title{font-size:.85rem}.notif-time{font-size:.65rem}.notif-desc{font-size:.8rem;line-height:1.3}.notif-status-dot{top:8px;right:8px}}.profile-nexus-container{padding:20px;display:flex;flex-direction:column;gap:25px}.profile-hero{display:flex;align-items:center;gap:25px;background:#0ba69d0d;padding:20px;border-radius:12px;border:1px solid var(--nexus-border)}.profile-avatar-wrapper{position:relative;width:100px;height:100px;flex-shrink:0}.profile-avatar-wrapper img{width:100%;height:100%;object-fit:cover;border-radius:12px;border:2px solid var(--nexus-teal);box-shadow:0 0 15px #0ba69d33}.avatar-edit-btn{position:absolute;bottom:-5px;right:-5px;background:var(--nexus-teal);color:#000;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 10px #0000004d;transition:.3s}.avatar-edit-btn svg{width:15px;height:15px}.avatar-edit-btn:hover{background:var(--nexus-teal-bright);transform:scale(1.1)}.user-full-name{font-family:var(--font-head);font-size:1.5rem;color:var(--nexus-title);letter-spacing:2px;margin:0;display:block;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:700px){.user-full-name{font-size:1.2rem;max-width:250px;margin:0 auto}}.user-id{display:block;font-size:.8rem;color:var(--nexus-teal);margin-bottom:15px;opacity:.8}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.data-module{background:#ffffff05;border:1px solid var(--nexus-border);border-radius:8px;overflow:hidden;transition:border-color .3s ease}.data-module:hover{border-color:#0ba69d80}.module-header{background:#0ba69d1a;padding:12px 15px;font-family:var(--font-head);font-size:.85rem;letter-spacing:1.5px;color:var(--nexus-teal-bright);border-bottom:1px solid var(--nexus-border);display:flex;justify-content:space-between;align-items:center}.module-body{padding:20px}.btn-nexus-edit{background:transparent;border:1px solid var(--nexus-teal);color:var(--nexus-teal-bright);padding:8px 15px;font-family:var(--font-head);font-size:.7rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:.3s}.btn-nexus-edit:hover{background:var(--nexus-teal);color:#000}.mini-edit-btn{background:#ffffff0d;border:1px solid var(--nexus-border);color:var(--nexus-teal-bright);width:28px;height:28px;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.3s}.mini-edit-btn:hover{background:var(--nexus-teal-bright);color:#000}.data-row{margin-bottom:15px}.data-row:last-child{margin-bottom:0}.data-label{font-size:.7rem;color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.data-label{font-size:.7rem;color:#666;text-transform:uppercase;display:flex;align-items:center;gap:6px;margin-bottom:4px}.data-label svg{width:12px;height:12px}.data-value{font-family:var(--font-body);font-size:1.05rem;color:var(--text-primary);font-weight:600}.data-row-flex{display:grid;grid-template-columns:1fr 1fr;gap:20px}.edu-card{border-left:3px solid var(--nexus-teal);padding-left:15px}.edu-role{font-family:var(--font-head);font-size:.7rem;color:var(--nexus-teal-bright);background:#0ba69d26;display:inline-block;padding:2px 10px;border-radius:2px;margin-bottom:10px}.edu-school-name{font-family:var(--font-head);font-size:1.1rem;color:var(--text-primary);margin-bottom:15px}.edu-info-grid{display:flex;flex-direction:column;gap:8px}.edu-info-item{display:flex;justify-content:space-between;font-size:.95rem}.edu-info-item .label{color:#666}.edu-info-item .val{color:var(--nexus-teal-bright);font-weight:600}.address-wrapper{display:flex;gap:18px;align-items:flex-start}.address-icon{width:48px;height:48px;background:#0ba69d1a;border:1px solid var(--nexus-border);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--nexus-teal-bright);flex-shrink:0}.address-main{font-family:var(--font-head);font-size:1.1rem;color:var(--text-primary);margin-bottom:6px}.address-detail{font-size:.95rem;color:#999;line-height:1.6}@media(max-width:600px){.profile-hero{flex-direction:column;text-align:center;padding:25px 15px}.data-row-flex{grid-template-columns:1fr;gap:15px}.edu-info-item{flex-direction:column;align-items:flex-start}}@keyframes profileEntrance{0%{opacity:0;transform:translateY(20px) scale(.95);filter:blur(10px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.profile-hero,.data-module{opacity:0;animation:profileEntrance .6s cubic-bezier(.23,1,.32,1) forwards}.profile-hero{animation-delay:.1s}.data-module:nth-child(1){animation-delay:.2s}.data-module:nth-child(2){animation-delay:.3s}.data-module:nth-child(3){animation-delay:.4s}.profile-avatar-wrapper:hover img{transform:scale(1.05);box-shadow:0 0 25px var(--nexus-teal);transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.table-responsive{width:100%;overflow-x:auto}.table-responsive::-webkit-scrollbar{height:8px}.table-responsive::-webkit-scrollbar-track{background:#0ba69d0d;border-radius:4px}.table-responsive::-webkit-scrollbar-thumb{background:#0ba69d4d;border-radius:4px}.nexus-table{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}.nexus-table th{font-family:var(--font-head);color:var(--nexus-teal-bright, #0070FA);padding:12px 15px;border-bottom:2px solid rgba(11,166,157,.3);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.nexus-table td{padding:15px;border-bottom:1px solid var(--nexus-border, rgba(11, 166, 157, .2));color:var(--text-primary, #ccc);white-space:nowrap}.nexus-table tbody tr{transition:background .3s ease}.nexus-table tbody tr:hover{background:#0ba69d0d}.badge-pilihan{background:var(--nexus-teal, #0070FA);color:#fff;font-weight:700;padding:4px 10px;border-radius:6px;font-size:.8rem;box-shadow:0 2px 5px #0ba69d4d}.action-btn{background:transparent;border:none;color:var(--nexus-teal-bright, #0070FA);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.3s;padding:5px;border-radius:4px}.action-btn:hover{background:#0ba69d1a;transform:scale(1.1)}.action-btn svg{width:16px;height:16px}.data-module.full-width-module{animation-delay:.15s}.text-bold{display:block;font-size:1.2rem;font-weight:800;color:var(--nexus-teal-bright, #00d2ff);margin-bottom:4px}.indicator-wrapper{display:flex;flex-direction:column;gap:4px;padding:6px 10px;background:#ffffff0d;border-radius:6px;width:fit-content}.status-row{display:flex;align-items:center;gap:8px}.text-detail{font-size:.7rem;color:#777;font-style:italic;padding-left:16px}.dot{width:8px;height:8px;border-radius:50%;position:relative;flex-shrink:0}.dot:after{content:"";position:absolute;inset:0;border-radius:50%;animation:pulse-dot 2s infinite;background:inherit}.dot-green{background-color:#2ecc71;box-shadow:0 0 8px #2ecc71}.dot-yellow{background-color:#f1c40f;box-shadow:0 0 8px #f1c40f}.dot-red{background-color:#e74c3c;box-shadow:0 0 8px #e74c3c}.dot-red+.status-text{color:#ff7675;font-weight:600}.dot-yellow+.status-text{color:#f1c123;font-weight:600}.dot-green+.status-text{color:#55efc4;font-weight:600}.status-text{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}@keyframes pulse-dot{0%{transform:scale(1);opacity:.8}70%{transform:scale(2.5);opacity:0}to{transform:scale(1);opacity:0}}.transaction-list{display:flex;flex-direction:column;gap:15px;padding:10px}.text-left{text-align:left!important;justify-content:flex-start!important}.text-center{text-align:center!important;justify-content:center!important}.td-responsif{max-width:200px;min-width:120px;white-space:normal!important;word-wrap:break-word!important;overflow-wrap:break-word!important;vertical-align:top;line-height:1.4;padding:10px}.trx-card{background:var(--nexus-card-bg);border:1px solid var(--nexus-border);border-radius:12px;padding:15px;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideUpFade .6s cubic-bezier(.23,1,.32,1) forwards;opacity:0}.trx-card:hover{border-color:var(--nexus-teal-bright);transform:translateY(-2px)}.trx-card:active{transform:scale(.98);background:#0ba69d1a}.trx-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;border-bottom:1px solid var(--surface-border);padding-bottom:10px}.trx-no{font-family:var(--font-head);font-size:.8rem;color:var(--nexus-teal-bright)}.trx-date{font-size:.65rem;color:var(--nexus-empty-state);display:block;margin-top:2px}.trx-status-badge{font-family:var(--font-head);font-size:.65rem;padding:3px 8px;border-radius:4px;font-weight:800;text-transform:uppercase}.unpaid .trx-status-badge{color:#ff4757;background:#ff47571a}.creating .trx-status-badge{color:#ffa502;background:#ffa5021a}.delivering .trx-status-badge{color:#1e90ff;background:#1e90ff1a}.succeed .trx-status-badge{color:#2ed573;background:#2ed5731a}.trx-body{display:grid;grid-template-columns:70px 1fr;gap:15px;align-items:center}.trx-proof-zone{width:70px;height:70px;border-radius:8px;background:#0000001a;border:1px solid var(--nexus-border);overflow:hidden;display:flex;align-items:center;justify-content:center}.trx-proof-zone img{width:100%;height:100%;object-fit:cover}.trx-item-name{font-family:var(--font-head);font-size:.9rem;color:var(--text-primary);margin-bottom:5px}.trx-timer-box{display:none;margin-top:10px}.unpaid .trx-timer-box{display:block}.timer-info{display:flex;justify-content:space-between;font-size:.65rem;color:var(--nexus-empty-state);margin-bottom:4px}.progress-bar-container{width:100%;height:5px;background:var(--toggle-bg);border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:#ff4757;box-shadow:0 0 10px #ff47574d}.trx-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}.btn-trx{padding:8px 4px;border-radius:6px;font-family:var(--font-head);font-size:.6rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:.3s;border:1px solid var(--nexus-border);background:var(--nexus-tab-color);color:var(--text-primary)}.btn-trx.primary{border-color:var(--nexus-teal);color:var(--nexus-teal-bright)}.btn-trx.btn-detail{background:#ffffff0d}.btn-trx:hover{background:var(--nexus-teal);color:#000!important;border-color:var(--nexus-teal)}.btn-upload,.btn-tracking{display:none}.unpaid .btn-upload,.delivering .btn-tracking,.succeed .btn-tracking{display:flex}body.light-mode .trx-item-name{color:#000}body.light-mode .btn-trx{color:#333}body.light-mode .btn-detail{background:#0000000d}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px) scale(.98);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.trx-card:nth-child(1){animation-delay:.1s}.trx-card:nth-child(2){animation-delay:.2s}.trx-card:nth-child(3){animation-delay:.3s}.trx-card:nth-child(4){animation-delay:.4s}.trx-card:nth-child(5){animation-delay:.5s}.trx-card:nth-child(n+6){animation-delay:.6s}@media(max-width:480px){.trx-footer{grid-template-columns:repeat(2,1fr)}.btn-detail{grid-column:span 2}}.hidden{display:none!important}.invisible{opacity:0}.visible{opacity:1}.input-group-nexus{position:relative}.formCombo{background:var(--nexus-bg);border:1px solid var(--nexus-border);border-radius:6px;box-shadow:0 6px 16px #00000073;overflow:hidden;position:absolute;z-index:100000;width:100%;margin-left:1px}.headerCombo{display:flex;align-items:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:3px;gap:10px;transition:all .2s ease}.headerCombo:focus-within{border-color:var(--nexus-border);background:var(--nexus-bg);box-shadow:0 0 2px #00e5ff33}.iconinput{width:30px;display:flex;text-align:center;align-items:center;justify-content:center;flex-shrink:0;color:#fff6}.iconinput svg{width:18px;height:18px}.iconinput svg path,.iconinput svg circle{stroke:var(--text-primary)}.searchCombo{flex:1;background:transparent!important;border:none!important;outline:none!important;color:#fff;font-size:14px;padding:0;margin:0;line-height:1;border-radius:6px}.searchCombo::placeholder{color:var(--nexus-empty-state)}.bodyCombo{max-height:200px;overflow-y:auto}.items{padding:10px 15px;color:var(--text-primary);cursor:pointer;font-size:14px;transition:background .2s}.items:hover{background:#00e5ff26;color:#00e5ff}.bodyCombo::-webkit-scrollbar{width:5px}.bodyCombo::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.textarea-nexus{width:100%;min-height:100px;background:#ffffff0d;border:1px solid var(--nexus-border);border-radius:8px;padding:12px 15px;color:var(--text-primary);font-family:Inter,sans-serif;font-size:14px;line-height:1.5;outline:none;resize:vertical;transition:all .3s ease;box-sizing:border-box}.textarea-nexus:focus{background:var(--nexus-bg);border-color:var(--nexus-teal-bright);box-shadow:0 0 15px #00e5ff1a,inset 0 0 5px #00e5ff0d}.textarea-nexus::placeholder{color:#ffffff4d}.textarea-nexus::-webkit-scrollbar{width:6px}.textarea-nexus::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.textarea-nexus::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.textarea-nexus::-webkit-scrollbar-thumb:hover{background:#00e5ff4d}.textarea-number{position:absolute;right:8px;bottom:5px;font-size:12px;color:#888;pointer-events:none}.input-group-nexus .otp-wrapper{display:flex;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box}.otp-input-nexus{flex:1;min-width:0;aspect-ratio:1 / 1.1;text-align:center;font-size:1.5rem;font-weight:700;background:#0000004d;border:1px solid #4f46e5;color:#fff;border-radius:6px;outline:none;transition:all .2s ease-in-out}.otp-input-nexus:focus{border-color:#818cf8;box-shadow:0 0 12px #4f46e580;background:#4f46e51a}.timeleft-otp{color:var(--nexus-text-color);font-weight:700}.input-group-nexus .warninglabel{transition:opacity .2s ease-in-out}@media(max-width:400px){.input-group-nexus .otp-wrapper{gap:4px}.otp-input-nexus{font-size:1.2rem}}.attendance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px;padding:0}.attendance-card{display:flex;align-items:center;background:var(--nexus-card-bg);border-radius:12px;padding:16px;box-shadow:var(--shadow-elevation);border:1px solid var(--surface-border);gap:16px;transition:background .3s ease,border .3s ease,box-shadow .3s ease}.card-avatar svg{width:60px;height:60px;border-radius:16px;object-fit:cover;background-color:var(--toggle-bg);fill:var(--text-primary)}.card-main{flex:1;display:flex;flex-direction:column;gap:4px}.participant-name{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.participant-school{font-size:.9rem;color:var(--nexus-teal);opacity:.8}.participant-location{display:flex;gap:6px;margin-top:4px}.location-badge{font-size:.75rem;background:var(--toggle-bg);color:var(--text-primary);padding:2px 8px;border-radius:4px;font-weight:500;border:1px solid var(--surface-border)}.card-status-wrapper{display:flex;align-items:center}.status-badge{font-size:.85rem;font-weight:700;padding:6px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.status-present{background-color:rgba(var(--bs-success-rgb),.15);color:rgb(var(--bs-success-rgb));border:1px solid rgba(var(--bs-success-rgb),.3)}.status-absent{background-color:rgba(var(--bs-danger-rgb),.15);color:rgb(var(--bs-danger-rgb));border:1px solid rgba(var(--bs-danger-rgb),.3)}.fireworks-container{position:fixed;left:0;top:0;width:100%;height:100%;z-index:10000000;pointer-events:none}.fireworks-container>canvas{cursor:crosshair}:root{--tp-base-background-color: hsla(0, 0%, 0%, .75);--tp-base-shadow-color: hsla(0, 0%, 0%, .2);--tp-button-background-color: hsla(0, 0%, 70%, 1);--tp-button-background-color-active: hsla(0, 0%, 85%, 1);--tp-button-background-color-focus: hsla(0, 0%, 80%, 1);--tp-button-background-color-hover: hsla(0, 0%, 75%, 1);--tp-button-foreground-color: hsla(0, 0%, 0%, 1);--tp-container-background-color: hsla(0, 0%, 10%, 1);--tp-container-background-color-active: hsla(0, 0%, 25%, 1);--tp-container-background-color-focus: hsla(0, 0%, 20%, 1);--tp-container-background-color-hover: hsla(0, 0%, 15%, 1);--tp-container-foreground-color: hsla(0, 0%, 50%, 1);--tp-groove-foreground-color: hsla(0, 0%, 10%, 1);--tp-input-background-color: hsla(0, 0%, 10%, 1);--tp-input-background-color-active: hsla(0, 0%, 25%, 1);--tp-input-background-color-focus: hsla(0, 0%, 20%, 1);--tp-input-background-color-hover: hsla(0, 0%, 15%, 1);--tp-input-foreground-color: hsla(0, 0%, 70%, 1);--tp-label-foreground-color: hsla(0, 0%, 50%, 1);--tp-monitor-background-color: hsla(0, 0%, 8%, 1);--tp-monitor-foreground-color: hsla(0, 0%, 48%, 1)}:root .tp-dfwv{padding-bottom:8px;width:350px!important;z-index:1}.auth-form{display:flex;flex-direction:column;gap:18px}.scrollable-form{max-height:350px;overflow-y:auto;padding-right:10px}.input-group-nexus{display:flex;flex-direction:column;gap:6px}.input-group-nexus label{font-family:var(--font-head);font-size:.65rem;color:var(--accent-active);letter-spacing:1.5px;text-transform:uppercase}.input-group-nexus input,.input-group-nexus select{background:#0ba69d0d;border:1px solid var(--nexus-border);padding:12px;border-radius:4px;color:var(--text-primary);font-family:var(--font-body);transition:all .3s ease}.input-group-nexus input:focus{outline:none;border-color:var(--nexus-teal-bright);background:#0ba69d1a;box-shadow:0 0 15px #0ba69d33}.btn-full{width:100%;margin-top:10px}.form-options{display:flex;justify-content:space-between;align-items:center;font-size:.8rem}.forgot-link{color:var(--nexus-teal);text-decoration:none;font-weight:700}.divider{text-align:center;border-bottom:1px solid var(--nexus-border);line-height:.1em;margin:10px 0}.divider span{background:var(--bg-main);padding:0 10px;font-size:.6rem;color:#555;letter-spacing:2px}.btn-google{background:#fff;color:#333;border:none;padding:10px;border-radius:4px;display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-body);font-weight:700;cursor:pointer;transition:.3s}.btn-google img{width:18px}.btn-google:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0003}.footer-note{font-size:.8rem;color:#666}.nexus-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;padding:5px 0;position:relative;-webkit-user-select:none;user-select:none}.nexus-checkbox input{display:none}.checkmark{position:relative;flex-shrink:0;height:20px;width:20px;background:#0ba69d1a;border:1px solid var(--nexus-border);transition:all .2s cubic-bezier(.4,0,.2,1);clip-path:polygon(0 0,80% 0,100% 20%,100% 100%,20% 100%,0 80%)}.label-text{font-family:var(--font-body);font-size:.9rem;color:var(--text-primary)}.nexus-checkbox:hover .checkmark{background:#0ba69d33;border-color:var(--nexus-teal-bright);box-shadow:0 0 10px #0ba69d4d}.nexus-checkbox input:checked~.checkmark{background:var(--nexus-teal-bright);border-color:#fff;box-shadow:0 0 15px var(--nexus-teal-bright)}.checkmark:after{content:"";position:absolute;display:none;left:6px;top:2px;width:5px;height:10px;border:solid #000;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}.nexus-checkbox input:checked~.checkmark:after{display:block}.true-side input:checked~.checkmark{background:#00f3ff!important;box-shadow:0 0 15px #00f3ff}.false-side input:checked~.checkmark{background:#f0f!important;box-shadow:0 0 15px #f0f}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{width:100%;padding-right:45px}.toggle-password{position:absolute;right:10px;background:transparent;border:none;color:var(--nexus-teal);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:5px;transition:all .3s ease;opacity:.6}.toggle-password:hover{opacity:1;color:var(--nexus-teal-bright);filter:drop-shadow(0 0 5px var(--nexus-teal-bright))}.toggle-password svg{width:18px;height:18px}.eye-closed{stroke:#ff4757}.btn-modal{display:flex;justify-content:center;align-items:center}.btn-modal img{width:18px;height:18px;margin-right:5px}.nexus-label-expand{font-family:var(--font-body);font-size:.85rem;color:var(--text-primary);transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:inline-block;letter-spacing:.5px;opacity:.8;cursor:pointer;position:relative}.nexus-checkbox input:checked~.nexus-label-expand{color:var(--nexus-teal-bright);font-weight:600;opacity:1;letter-spacing:1px;text-shadow:0 0 12px rgba(11,166,157,.8);transform:translate(8px)}.nexus-label-expand:after{content:"";position:absolute;bottom:-2px;left:0;width:0%;height:1px;background:var(--nexus-teal-bright);transition:width .3s ease;box-shadow:0 0 5px var(--nexus-teal-bright)}.nexus-checkbox:hover .nexus-label-expand:after{width:100%}.form-options{width:100%;display:flex;justify-content:flex-start}.nexus-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;width:100%;padding:8px 0}.nexus-label-expand{font-family:var(--font-body);font-size:.85rem;color:var(--text-primary);transition:all .4s cubic-bezier(.175,.885,.32,1.275);white-space:nowrap;display:inline-block;opacity:.8;letter-spacing:.5px}.nexus-checkbox:hover .nexus-label-expand{opacity:1;color:var(--nexus-teal-bright);transform:translate(5px) scale(1.02);text-shadow:0 0 8px rgba(11,166,157,.5)}.rank-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;opacity:0;visibility:hidden;transition:all .3s ease;pointer-events:none}.rank-overlay.active{opacity:1;visibility:visible}.rank-window{position:absolute;background:var(--dock-rank);border:1px solid var(--dock-border);border-radius:9px;box-shadow:0 10px 30px var(--shadow-color);pointer-events:auto;transition:.4s cubic-bezier(.175,.885,.32,1.275),opacity .3s;display:flex;flex-direction:column;overflow:hidden}.rank-window.active{cursor:grabbing}.rank-header{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid var(--grid-color);background:rgba(var(--accent-active),.05);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.rank-icon-box{width:40px;height:40px;border-radius:10px;background:#0ba69d26;display:flex;justify-content:center;align-items:center;margin-right:15px;color:var(--text-secondary);border:1px solid var(--dock-border);cursor:pointer}.rank-title-group{flex:1}.rank-title-group h3{font-family:Orbitron,sans-serif;font-size:1.1rem;letter-spacing:1px;color:var(--text-primary);margin-bottom:2px}.rank-subtitle{font-size:.8rem;text-transform:uppercase;color:var(--text-secondary);letter-spacing:2px;opacity:.8}.rank-close{background:transparent;border:none;color:var(--text-primary);cursor:pointer;opacity:.5;transition:.3s;padding:5px}.rank-close:hover{opacity:1;color:#ff4757;transform:rotate(90deg)}.rank-body{color:var(--text-primary);position:relative;flex:1;width:100%;box-sizing:border-box;overflow-y:auto;padding:20px}.cardRank{position:absolute;width:calc(100% - 40px);height:80px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;box-sizing:border-box;background:var(--nexus-card-bg);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all 1s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:var(--shadow-elevation);border:1px solid var(--surface-border)}.cardRank:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--shadow-color)}.rank-number{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease;box-shadow:0 1px 3px var(--shadow-color);border:1px solid var(--surface-border)}.rank-number .num{font-family:var(--font-head);font-weight:800;font-size:.9rem;color:var(--text-primary)}.rank-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px}.student-name{font-family:var(--font-body);font-weight:700;font-size:1.2rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.school-name{font-size:.9rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.1}.school-city{font-size:.9rem;color:var(--nexus-empty-state);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8;line-height:1.1}.rank-meta{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.rank-score{display:flex;align-items:baseline;gap:2px}.cardRank.rank-gold .score-value,.cardRank.rank-gold .rank-time{color:var(--rank-gold);text-shadow:0 0 10px rgba(255,215,0,.4)}.cardRank.rank-silver .score-value,.cardRank.rank-silver .rank-time{color:var(--rank-silver);text-shadow:0 0 8px rgba(192,192,192,.3)}.cardRank.rank-bronze .score-value,.cardRank.rank-bronze .rank-time{color:var(--rank-bronze);text-shadow:0 0 8px rgba(205,127,50,.3)}.cardRank .score-value,.cardRank .rank-time{color:var(--text-primary)}.score-label{font-size:.6rem;font-weight:700;color:var(--text-primary);opacity:.6}.rank-time{display:flex;align-items:center;gap:3px;font-size:.8rem;color:var(--text-secondary);margin-top:2px}.cardRank.rank-gold{border-color:#ffd70066;background:linear-gradient(135deg,rgba(255,215,0,.08) 0%,var(--nexus-card-bg) 100%)}.cardRank.rank-gold .rank-number{border-color:var(--rank-gold);box-shadow:0 0 10px #ffd70059;background:#ffd7001a}.cardRank.rank-gold .rank-number .num{color:var(--rank-gold)}.cardRank.rank-silver{border-color:#c0c0c066;background:linear-gradient(135deg,rgba(192,192,192,.08) 0%,var(--nexus-card-bg) 100%)}.cardRank.rank-silver .rank-number{border-color:var(--rank-silver);box-shadow:0 0 10px #c0c0c04d;background:#c0c0c01a}.cardRank.rank-silver .rank-number .num{color:var(--rank-silver)}.cardRank.rank-bronze{border-color:#cd7f3266;background:linear-gradient(135deg,rgba(205,127,50,.08) 0%,var(--nexus-card-bg) 100%)}.cardRank.rank-bronze .rank-number{border-color:var(--rank-bronze);box-shadow:0 0 10px #cd7f324d;background:#cd7f321a}.cardRank.rank-bronze .rank-number .num{color:var(--rank-bronze)}.cardRank.rank-default{border-color:var(--dock-border)}.cardRank.rank-default .rank-number{border-color:var(--rank-default);background:#ffffff08}.cardRank.rank-default .rank-number .num{color:var(--nexus-empty-state)}.lucky-body{flex:1;display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:20px;overflow:hidden;background:var(--nexus-bg)}.lucky-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;position:relative;background:#ffffff05;border:1px solid var(--nexus-border);border-radius:12px;padding:15px}.col-header{position:absolute;top:10px;font-family:var(--font-head);font-size:.7rem;color:var(--nexus-teal);letter-spacing:2px;width:100%;text-align:center;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:5px}.ctrl-btn{width:100%;height:35px;background:#0ba69d1a;border:1px solid var(--nexus-border);color:var(--nexus-teal);cursor:pointer;font-size:.8rem;transition:.2s;border-radius:6px;margin-top:15px}.ctrl-btn:hover{background:var(--nexus-teal);color:#000}.ctrl-btn.down{margin-top:0;margin-bottom:0}.display-frame{flex:1;width:100%;background:var(--nexus-teal);border:2px solid var(--nexus-border);border-radius:8px;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center;box-shadow:inset 0 0 20px #000c}.display-frame img{width:70%;height:220px!important;object-fit:cover}.display-frame .barcode-item{width:100%!important;height:100%!important;object-fit:contain}.scanner-frame{border-color:var(--nexus-teal-bright);box-shadow:0 0 15px #0ba69d33}.scanner-frame img{object-fit:contain;padding:3px;filter:drop-shadow(0 0 5px var(--nexus-teal))}.scan-line{position:absolute;display:none;top:0;left:0;width:100%;height:4px;background:var(--nexus-teal-bright);box-shadow:0 0 10px var(--nexus-teal-bright);animation:scanMove 2.5s linear infinite alternate;z-index:10;opacity:.6}@keyframes scanMove{0%{top:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.prize-label{position:absolute;bottom:0;width:100%;background:#000000b3;color:#fff;text-align:center;padding:8px;font-family:var(--font-body);font-weight:700;border-top:1px solid var(--nexus-border)}.btn-roll{width:100%;height:100%;max-height:150px;background:linear-gradient(180deg,var(--nexus-teal-dark),#000);border:2px solid var(--nexus-teal);border-radius:12px;color:var(--nexus-teal-bright);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .3s;box-shadow:0 0 20px #0ba69d33}.btn-roll:hover{box-shadow:0 0 30px #0ba69d99;transform:scale(1.02)}.btn-roll .btn-text{font-family:var(--font-head);font-size:2rem;font-weight:800;letter-spacing:2px}.btn-roll .btn-sub{font-family:var(--font-body);font-size:.8rem;opacity:.7;letter-spacing:4px}.btn-roll.active{background:linear-gradient(180deg,#5c0606,#2b0000);border-color:#ff4757;color:#ff4757;box-shadow:0 0 30px #ff475766}.lucky-footer{height:140px;border-top:1px solid var(--nexus-border);background:var(--nexus-card-bg);padding:15px 25px;display:flex;align-items:center;margin-top:20px}.winner-card{display:flex;width:100%;gap:20px;align-items:center}.winner-photo{width:80px;height:80px;border-radius:50%;border:2px solid var(--nexus-teal);overflow:hidden;background:#000;flex-shrink:0;box-shadow:0 0 15px #0ba69d4d}.winner-photo img{width:100%;height:100%;object-fit:cover}.winner-info{flex:1;display:flex;flex-direction:column;justify-content:center;gap:4px}.info-row{display:flex;align-items:baseline;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:2px}.info-row .label{width:120px;font-family:var(--font-body);font-size:.75rem;color:#888;letter-spacing:1px}.info-row .value{font-family:var(--font-head);font-size:1rem;color:var(--nexus-teal-bright)}.info-row .value.main{font-size:1.4rem;font-weight:800;color:var(--text-primary);text-shadow:0 0 10px var(--nexus-teal-bright)}@media(max-width:768px){.lucky-body{grid-template-columns:1fr;overflow-y:auto}.lucky-footer{height:auto;flex-direction:column}}.barcode-reel{position:relative;width:100%;height:100%;overflow:hidden;background:#0000001a;border-radius:6px}.barcode-item{position:absolute;width:60%;height:60%;top:0%;left:0%;object-fit:contain;transition:none;will-change:transform}.barcode-reel.spinning .barcode-item{filter:blur(3px);opacity:.7}.slot-1,.slot-2,.slot-3{will-change:transform;width:100px}.barcode-item.pos-center{top:50%;transform:translateY(-50%);z-index:2}.barcode-item.pos-top{top:-200%;transform:translateY(-50%);z-index:1}.barcode-item.pos-bottom{top:200%;transform:translateY(-50%);z-index:1}.barcode-item.animating{transition:top ease-in-out}.barcode-reel.blurring .barcode-item{filter:blur(2px)}.btn-annul{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 16px;background:#ff475714;border:1px solid rgba(255,71,87,.4);border-radius:8px;color:#ff4757;cursor:pointer;transition:all .2s ease;font-family:var(--font-head);font-size:.75rem;letter-spacing:1px;margin-left:10px;flex-shrink:0}.btn-annul svg{width:20px;height:20px}.btn-annul:hover{background:#ff4757;color:#fff;border-color:#ff4757;box-shadow:0 0 15px #ff475780;transform:translateY(-2px)}.btn-annul:active{transform:translateY(0)}@media(max-width:768px){.btn-annul{margin-left:0;margin-top:10px;width:100%;flex-direction:row;gap:8px}}
