@font-face{font-family:DSEG7 Classic;src:url(/fonts/DSEG7Classic-BoldItalic.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{font-size:min(.833333vw,1.48148vh)}:root{--cream:#fbf3e0;--cream-2:#f6e9cc;--cream-deep:#f2dfb6;--panel:#fcf7ea;--gold-1:#b9821c;--gold-2:#e0b341;--gold-3:#f8e79c;--gold-line:#c9a24b;--gold-deep:#9a6a14;--brown:#4a2a10;--brown-2:#6e4319;--led-bg-1:#1c1206;--led-bg-2:#070401;--led-on:#ff9a1f;--led-glow:#ff961e8c;--frame-shadow:#4a2a1047;--ok:#1f7a45;--danger:#b23a2a}[data-theme=maroon]{--cream:#b81f2d;--cream-2:#971525;--cream-deep:#c4202f;--panel:#aa1828;--brown:#fff;--brown-2:#f2e9e9;--gold-1:#e8c25a;--gold-2:#f0d370;--gold-3:#fbe9a6;--gold-line:#d8b257;--gold-deep:#b98a2c;--led-on:#ffd329;--led-glow:#ffcd2d80}#viewport[data-theme=maroon]{background:radial-gradient(circle at 50% 40%,#5a0e16,#1c0407 85%)}[data-theme=maroon] .board{background:radial-gradient(120% 90% at 50% -10%, #c8212f 0%, var(--cream) 45%, var(--cream-2) 100%)}[data-theme=maroon] .board:before{background-image:radial-gradient(#ffffff0a .0625rem,#0000 .0625rem)}[data-theme=maroon] .trow:nth-child(2n){background:#0000001f}[data-theme=maroon] .gold-fill{-webkit-text-fill-color:#fff;color:#fff;background:0 0;-webkit-background-clip:border-box;background-clip:border-box;animation:none}[data-theme=maroon] .title-wrap h1,[data-theme=maroon] .b-name{text-shadow:0 .0625rem .1875rem #00000059}[data-theme=maroon] .c-name,[data-theme=maroon] .thead .th .main,[data-theme=maroon] .trust .item .t,[data-theme=maroon] .banner .lines div{text-shadow:0 .0625rem .125rem #0000004d}.gold-fill{background:linear-gradient(#e0b341 0%,#c9971f 40%,#b9821c 70%,#7a4e12 100%);color:#0000;-webkit-background-clip:text;background-clip:text}@media (prefers-reduced-motion:no-preference){.gold-fill{background-size:100% 220%;animation:5.5s ease-in-out infinite shimmer}@keyframes shimmer{0%,to{background-position:0 0}50%{background-position:0 100%}}}.tv-body{font-family:Be Vietnam Pro,sans-serif;overflow:hidden}#viewport{background:radial-gradient(circle at 50% 40%,#2a1a0a,#0c0703 80%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#stage{width:120rem;height:67.5rem;position:relative}.board{background:radial-gradient(120% 90% at 50% -10%, #fffbf0 0%, var(--cream) 38%, var(--cream-2) 100%);box-shadow:inset 0 0 0 .1875rem var(--gold-1), inset 0 0 0 .5625rem var(--cream), inset 0 0 0 .6875rem #c9a24ba6, 0 1.875rem 5rem #00000080;border-radius:1.625rem;flex-direction:column;padding:1.5rem 2rem 1.25rem;display:flex;position:absolute;inset:0}.board:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(#9a6a140f .0625rem,#0000 .0625rem);background-size:.375rem .375rem;border-radius:1.625rem;position:absolute;inset:0}.tv-header{z-index:2;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding-bottom:.75rem;display:grid;position:relative}.brand{align-items:center;gap:1rem;display:flex}.brand img{filter:drop-shadow(0 .1875rem .375rem #78500a4d);height:6.25rem}.b-text{flex-direction:column;gap:.3125rem;display:flex}.b-name{letter-spacing:.025rem;text-shadow:0 .0625rem #4a2a1059;font-family:Playfair Display,serif;font-size:1.625rem;font-weight:900;line-height:1}.b-rule{align-items:center;gap:.5rem;display:flex}.b-rule .ln{background:linear-gradient(90deg, transparent, var(--gold-line), transparent);flex:1;height:.125rem}.b-rule .dot{color:var(--gold-1);font-size:.875rem}.b-tag{letter-spacing:.1125rem;color:var(--brown-2);text-align:center;font-size:.78125rem;font-weight:600}.title-wrap{text-align:center}.title-wrap h1{letter-spacing:.0625rem;text-shadow:0 .0625rem #4a2a1080,0 .125rem .375rem #0000002e;margin:0;font-family:Playfair Display,serif;font-size:4.5rem;font-weight:900;line-height:.95}.flourish{justify-content:center;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.flourish .ln{background:linear-gradient(90deg, transparent, var(--gold-line));width:6rem;height:.125rem}.flourish .ln.r{transform:scaleX(-1)}.flourish svg{height:1.375rem;color:var(--gold-1)}.clock-box{background:linear-gradient(180deg, var(--panel), var(--cream-deep));border:.125rem solid var(--gold-1);border-radius:1rem;flex-direction:column;justify-self:end;align-items:center;gap:.4375rem;padding:.6875rem 1rem .8125rem;display:flex;position:relative;box-shadow:0 .25rem 1rem #9a6a142e,inset 0 0 0 .125rem #ffffff80}.clock-box .lbl{letter-spacing:.25rem;color:var(--brown);font-size:.875rem;font-weight:800}.clock-led{background:linear-gradient(180deg, var(--led-bg-1), var(--led-bg-2));text-align:center;border-radius:.5625rem;width:100%;padding:.3125rem .875rem .375rem;box-shadow:inset 0 .125rem .4375rem #000000d9,inset 0 0 0 .0625rem #ff961e2e}.clock-led .digi{color:var(--led-on);letter-spacing:.0625rem;text-shadow:0 0 .5625rem var(--led-glow);font-family:DSEG7 Classic,DSEG7Classic,monospace;font-size:1.875rem;font-style:italic;font-weight:700}.clock-box .date{color:var(--brown);white-space:nowrap;font-size:1rem;font-weight:700}.clock-box .dow{color:var(--brown-2);white-space:nowrap;margin-top:-.125rem;font-size:.8125rem;font-weight:600}.table{z-index:2;border:.15625rem solid var(--gold-1);background:var(--panel);border-radius:.875rem;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden;box-shadow:0 .375rem 1.375rem #9a6a1429,inset 0 0 0 .125rem #fff6}.thead{grid-template-columns:var(--colspec);background:linear-gradient(180deg, var(--cream-deep), var(--cream-2));border-bottom:.15625rem solid var(--gold-1);display:grid}.thead .th{text-align:center;border-left:.125rem solid #c9a24b80;flex-direction:column;justify-content:center;align-items:center;padding:.4375rem 1.375rem;display:flex}.thead .th:first-child{text-align:left;border-left:none;align-items:flex-start}.thead .th .main{letter-spacing:.0625rem;color:var(--brown);white-space:nowrap;font-family:Playfair Display,serif;font-size:1.875rem;font-weight:800}.thead .th .unit{color:var(--brown-2);font-size:.8125rem;font-style:italic;font-weight:600}.tbody{flex-direction:column;flex:1;display:flex;position:relative}.trow{grid-template-columns:var(--colspec);border-bottom:.09375rem solid #c9a24b61;flex:1;align-items:center;display:grid;position:relative}.trow:last-child{border-bottom:none}.trow:nth-child(2n){background:#f2dfb666}.c-name{letter-spacing:.01875rem;color:var(--brown);text-transform:uppercase;padding:0 1.625rem;font-size:2.125rem;font-weight:800;line-height:1.05}.c-price{border-left:.125rem solid #c9a24b6b;justify-content:center;align-items:center;height:100%;padding:.3125rem 1rem;display:flex}.led{color:var(--led-on);letter-spacing:.125rem;background:linear-gradient(180deg, var(--led-bg-1), var(--led-bg-2));text-align:center;min-width:12.5rem;text-shadow:0 0 .625rem var(--led-glow);border-radius:.5625rem;padding:.3125rem 1.375rem .4375rem;font-family:DSEG7 Classic,DSEG7Classic,monospace;font-size:2.3125rem;font-style:italic;font-weight:700;box-shadow:inset 0 .1875rem .5625rem #000000d9,inset 0 0 0 .0625rem #ff961e29,0 .0625rem #ffffff80}.sweep{pointer-events:none;z-index:5;mix-blend-mode:screen;will-change:transform;background:linear-gradient(#0000,#ffdd8c57 45% 55%,#0000);height:30%;animation:7s linear infinite sweepMove;position:absolute;top:0;left:0;right:0}@keyframes sweepMove{0%{transform:translateY(-120%)}to{transform:translateY(430%)}}@media (prefers-reduced-motion:reduce){.sweep{display:none}}.trust{z-index:2;border:.125rem solid var(--gold-1);background:linear-gradient(180deg, var(--panel), var(--cream-2));border-radius:.8125rem;grid-template-columns:repeat(5,1fr);align-items:center;margin-top:.6875rem;padding:.625rem .5rem;display:grid;position:relative;box-shadow:inset 0 0 0 .125rem #ffffff73}.trust .item{border-left:.09375rem solid #c9a24b80;justify-content:center;align-items:center;gap:.8125rem;padding:0 .5rem;display:flex}.trust .item:first-child{border-left:none}.trust .item svg{width:2.25rem;height:2.25rem;color:var(--gold-1);flex:none}.trust .item .t{color:var(--brown);letter-spacing:.0125rem;white-space:nowrap;font-size:.9375rem;font-weight:800;line-height:1.16}.trust .item .t small{color:var(--brown-2);font-size:.875rem;font-weight:700;display:block}.banner{z-index:2;border:.125rem solid var(--gold-1);background:linear-gradient(180deg, var(--cream-deep), var(--cream-2));border-radius:.8125rem;justify-content:center;align-items:center;gap:1.375rem;margin-top:.625rem;padding:.5625rem 1.875rem;display:flex;position:relative;box-shadow:inset 0 0 0 .125rem #ffffff73}.banner svg{height:2.5rem;color:var(--gold-1);flex:none}.banner .lines{text-align:center}.banner .lines div{letter-spacing:.025rem;color:var(--brown);font-size:1.1875rem;font-weight:800;line-height:1.3}#controls{z-index:50;opacity:.32;align-items:center;gap:.625rem;transition:opacity .3s;display:flex;position:fixed;bottom:1rem;right:1.125rem}#controls:hover{opacity:1}.gear{color:#f8e79c;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);background:#140c05b8;border:.09375rem solid #c9a24bb3;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.gear svg{width:1.1875rem;height:1.1875rem}.conn{z-index:5;background:#2ecc71;border:.125rem solid #ffffffe6;border-radius:50%;width:.875rem;height:.875rem;transition:background .3s,box-shadow .3s;position:absolute;top:.5rem;right:.5rem;box-shadow:0 0 .75rem .1875rem #2ecc71e6,0 .0625rem .25rem #0006}.conn.off{background:#e74c3c;animation:1s steps(2,start) infinite connPulse;box-shadow:0 0 .625rem .125rem #e74c3ce6,0 .0625rem .25rem #0006}@keyframes connPulse{50%{opacity:.3}}.admin-body{color:var(--brown);background:radial-gradient(130% 100% at 50% 0%, #fffbf0, var(--cream) 45%, var(--cream-2));min-height:100vh;padding:0 0 80px;font-family:Be Vietnam Pro,sans-serif;font-size:15px}.admin-body main{max-width:1080px;margin:0 auto;padding:24px 18px 0}.admin-header{z-index:20;color:#f8e79c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#4a2a10f5;align-items:center;gap:16px;padding:12px 22px;display:flex;position:sticky;top:0;box-shadow:0 4px 20px #00000040}.admin-header img{height:42px}.admin-header .ht{flex-direction:column;line-height:1.1;display:flex}.admin-header .ht .a{color:#f8e79c;font-family:Playfair Display,serif;font-size:20px;font-weight:800}.admin-header .ht .b{letter-spacing:1.5px;color:#d9bd84;font-size:12px}.admin-header .spacer{flex:1}.admin-conn{color:#cfe8d2;white-space:nowrap;background:#1f7a4538;border:1px solid #1f7a458c;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.admin-conn .d{background:#36d07a;border-radius:50%;width:9px;height:9px;box-shadow:0 0 8px #36d07acc}.admin-conn.off{color:#f3c9c0;background:#b23a2a40;border-color:#b23a2a99}.admin-conn.off .d{box-shadow:none;background:#e0654f;animation:1s steps(2,start) infinite connBlink}@keyframes connBlink{50%{opacity:.35}}.remote-note{color:#f4d873;white-space:nowrap;font-size:12px;font-weight:700}@media (max-width:640px){.admin-conn{gap:0;padding:7px;font-size:0}.admin-conn .d{width:10px;height:10px}.remote-note{display:none}}.btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-family:Be Vietnam Pro,sans-serif;font-size:14px;font-weight:700;text-decoration:none;transition:transform .1s,filter .15s;display:inline-flex}.btn svg{width:16px;height:16px}.btn:active{transform:translateY(1px)}.btn-gold{color:#3a230c;background:linear-gradient(#f4d873,#c9971f);box-shadow:0 3px 10px #9a6a1466}.btn-ghost{color:#f8e79c;background:#ffffff1f;border:1px solid #f8e79c66}.btn-ghost:hover{background:#fff3}.card{border:1.5px solid var(--gold-line);background:#fff;border-radius:16px;margin-bottom:20px;padding:20px 22px;box-shadow:0 6px 22px #9a6a141a}.card h2{margin:0 0 4px;font-family:Playfair Display,serif;font-size:22px;font-weight:800}.card .sub{color:var(--brown-2);margin-bottom:16px;font-size:13px}.live-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.live-pick{gap:10px;display:flex}.live-opt{border:2px solid var(--gold-line);cursor:pointer;background:var(--cream);white-space:nowrap;border-radius:12px;align-items:center;gap:10px;padding:12px 22px;font-size:15px;font-weight:800;transition:all .15s;display:flex}.live-opt .dot{border:2px solid var(--gold-1);border-radius:50%;width:12px;height:12px}.live-opt.on{border-color:var(--gold-deep);background:linear-gradient(#f8e79c,#e7c25a);box-shadow:0 4px 14px #9a6a144d}.live-opt.on .dot{background:var(--gold-deep);border-color:var(--gold-deep)}.live-note{color:var(--brown-2);font-size:13px}.tabs{gap:8px;margin-bottom:16px;display:flex}.tab{border:1.5px solid var(--gold-line);background:var(--cream-2);cursor:pointer;color:var(--brown-2);border-bottom:none;border-radius:11px 11px 0 0;padding:11px 22px;font-size:15px;font-weight:700}.tab.on{color:var(--brown);background:#fff;box-shadow:0 -3px 10px #9a6a1414}.tab .live-tag{background:var(--gold-1);color:#fff;vertical-align:middle;border-radius:6px;margin-left:8px;padding:2px 7px;font-size:11px}.edit-head,.edit-row{grid-template-columns:1fr 150px 150px 42px;align-items:center;gap:10px;display:grid}.edit-head{letter-spacing:.5px;color:var(--brown-2);text-transform:uppercase;padding:0 4px 8px;font-size:12px;font-weight:700}.edit-head .c2,.edit-head .c3{text-align:center}.edit-row{margin-bottom:9px}.admin-body input[type=text]{width:100%;color:var(--brown);background:#fffdf8;border:1.5px solid #e3d3ac;border-radius:9px;padding:11px 12px;font-family:inherit;font-size:15px;font-weight:600}.admin-body input[type=text]:focus{border-color:var(--gold-1);outline:none;box-shadow:0 0 0 3px #c9a24b40}.edit-row .price{text-align:center;letter-spacing:1px;color:#7a4a12;font-weight:700}.del{width:38px;height:38px;color:var(--danger);cursor:pointer;background:#fbeeea;border:1.5px solid #e6c2b8;border-radius:9px;justify-content:center;align-items:center;font-size:18px;display:flex}.del:hover{background:#f6ddd5}.row-actions{gap:10px;margin-top:6px;display:flex}.btn-add{background:var(--cream-2);border:1.5px dashed var(--gold-1);color:var(--brown);cursor:pointer;border-radius:10px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:700}.copy-note{color:var(--brown-2);align-self:center;margin-left:auto;font-size:13px}.grid2{grid-template-columns:1fr 1fr;gap:16px;display:grid}label.fld{color:var(--brown-2);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}label.fld.full{grid-column:1/-1}.btn-reset{border:1.5px solid var(--danger);color:var(--danger);background:#fff}#toast{background:var(--brown);color:#f8e79c;z-index:50;border-radius:12px;padding:14px 26px;font-size:14px;font-weight:700;transition:transform .35s cubic-bezier(.2,.9,.3,1.4);position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(120%);box-shadow:0 8px 30px #0000004d}#toast.show{transform:translate(-50%)translateY(0)}.gate{max-width:380px;margin:12vh auto 0;padding:0 18px}.gate .card{text-align:center}.gate .btn-gold{justify-content:center;width:100%;margin-top:12px}.gate .err{color:var(--danger);min-height:18px;margin-top:10px;font-size:13px}@media (max-width:640px){.grid2{grid-template-columns:1fr}.edit-head{display:none}.edit-row{background:#fffdf6;border:1px solid #ecdcb8;border-radius:12px;grid-template-columns:1fr 1fr;grid-template-areas:"label label""buy sell""del del";gap:7px;margin-bottom:12px;padding:10px}.edit-row .c-label{grid-area:label}.edit-row .c-buy{grid-area:buy}.edit-row .c-sell{grid-area:sell}.edit-row .del{grid-area:del;width:100%}.edit-row .c-buy:before{content:"Mua vào";color:var(--brown-2);margin-bottom:3px;font-size:11px;display:block}.edit-row .c-sell:before{content:"Bán ra";color:var(--brown-2);margin-bottom:3px;font-size:11px;display:block}.admin-header .ht .b{display:none}}
