@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;700;900&display=swap";:root{font-family:Inter,sans-serif;color:#d8e6fb;background:#040810;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background-color:#040810;color:#d8e6fb;display:flex;justify-content:center;align-items:center;min-height:100dvh;margin:0;overflow:hidden;font-family:Inter,sans-serif;letter-spacing:.05em;padding:8px}button,input{font:inherit}button{letter-spacing:inherit}#root{width:100%}.dash-container{width:100%;max-width:1200px;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:0;min-height:calc(100dvh - 16px);margin:0 auto}.top-motto{text-align:center;font-size:.64rem;line-height:1.2;letter-spacing:.45px;margin:0 0 4px;padding:0}.motto-line-1{color:#e8eefc;text-shadow:0 0 6px rgba(122,162,247,.18),0 0 12px rgba(122,162,247,.08)}.motto-line-2{color:#bb9af7;text-shadow:0 0 8px rgba(187,154,247,.22),0 0 14px rgba(187,154,247,.08)}.dash-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid rgba(122,162,247,.1);gap:10px}#logo-thdp{height:25px;width:auto;flex-shrink:0}#logo-oppa{height:18px;width:auto;flex-shrink:0}.user-status{font-size:.9rem;color:#7aa2f7;text-align:center;flex:1;line-height:1.5}#user-identity{color:#fff}.header-action{cursor:pointer;border:0;background:transparent;padding:0;font-size:.75rem}.change-pass-action{color:#bb9af7;margin-left:10px}.user-refresh-action{color:#9ece6a;margin-left:10px}.exit-action{color:#ff9e64;margin-left:10px}.header-action:disabled{opacity:.6;cursor:wait}.dash-title{font-size:2rem;font-weight:900;text-align:center;margin:4px 0 10px;background:linear-gradient(135deg,#7aa2f7 10%,#bb9af7 90%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px rgba(187,154,247,.4));letter-spacing:2px;line-height:1.4}.status-note{text-align:center;color:#565f89;font-size:.7rem;margin-top:-2px;margin-bottom:4px}.status-note.review-active{color:#ffcf70;font-weight:700;line-height:1.5}.status-note.review-expired{color:#ff8b8b;font-weight:700;line-height:1.5}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;align-items:stretch}.menu-card{background-color:#0b1018;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:12px;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden;min-height:118px;display:flex;flex-direction:column;justify-content:flex-start;text-decoration:none;text-align:left;font-family:inherit}.card-mode{font-size:.62rem;text-transform:uppercase;font-weight:700;color:var(--card-color);margin-bottom:8px;line-height:1.3;position:relative;z-index:1}.card-title{font-size:1rem;font-weight:700;color:#fff;margin:0;line-height:1.28;word-break:keep-all;position:relative;z-index:1}.menu-card:hover{transform:translateY(-6px);border-color:var(--card-color);box-shadow:0 15px 40px -10px var(--hover-shadow)}.menu-card:after{content:"";position:absolute;bottom:-50px;right:-50px;width:100px;height:100px;border-radius:50%;background-color:var(--card-color);filter:blur(50px);opacity:.1;transition:opacity .3s ease}.menu-card:hover:after{opacity:.3}.card-blue{--card-color: #7aa2f7;--hover-shadow: rgba(122, 162, 247, .5)}.card-purple{--card-color: #bb9af7;--hover-shadow: rgba(187, 154, 247, .5)}.card-orange{--card-color: #ff9e64;--hover-shadow: rgba(255, 158, 100, .5)}.card-green{--card-color: #9ece6a;--hover-shadow: rgba(158, 206, 106, .45)}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:#000000d9;padding:16px}.dialog{background:#0b1018;padding:25px;border-radius:12px;width:min(90%,350px)}.dialog-centered{text-align:center}.dialog-wide{width:min(92%,380px);padding:24px}.dialog-blue{border:1px solid #7aa2f7;box-shadow:0 0 20px #7aa2f74d}.dialog-green{border:1px solid #9ece6a;box-shadow:0 0 22px #9ece6a38}.dialog-red{border:1px solid #ff5c5c;box-shadow:0 0 20px #ff5c5c33}.dialog-title{margin:0;font-size:1rem;line-height:1.35;text-align:center}.dialog-title-purple{color:#bb9af7}.dialog-title-green{color:#9ece6a;font-size:1.05rem}.dialog-title-red{color:#ff5c5c;font-size:1.1rem}.dialog-lead{font-size:.75rem;color:#565f89;margin:10px 0 15px;text-align:center}.password-field{position:relative;width:100%;height:40px;margin-bottom:20px}.password-field input{width:100%;height:100%;background:#ffffff0d;border:1px solid rgba(122,162,247,.3);padding:0 35px 0 12px;border-radius:6px;color:#fff;outline:none}.password-eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);cursor:pointer;opacity:.5;-webkit-user-select:none;user-select:none;font-size:.9rem;border:0;background:transparent;padding:0}.dialog-actions{display:flex;gap:10px}.primary-button,.secondary-button{flex:1;border-radius:6px;padding:10px;cursor:pointer}.primary-button{border:none;font-weight:700;color:#040810}.secondary-button{background:transparent;border:1px solid #565f89;color:#565f89}.secondary-light{color:#a9b1d6}.blue-purple-button{background:linear-gradient(135deg,#7aa2f7,#bb9af7)}.green-blue-button{background:linear-gradient(135deg,#9ece6a,#7aa2f7)}.red-button{background:#ff5c5c}.refresh-description{font-size:.78rem;color:#a9b1d6;margin:10px 0 18px;line-height:1.6}.logout-description{font-size:.8rem;color:#a9b1d6;margin:10px 0 20px}.updating-dialog{width:min(90%,360px);box-shadow:0 0 20px #9ece6a2e}.updating-title{font-size:1.02rem;line-height:1.3;margin-bottom:10px}.updating-description{font-size:.8rem;color:#a9b1d6;margin:0 0 20px;line-height:1.55}.full-button{width:100%}@media(max-width:900px){.dash-header{gap:6px}#logo-thdp{height:18px}#logo-oppa{height:13px}.user-status{font-size:.64rem;line-height:1.55}.dash-title{font-size:1.02rem;letter-spacing:.8px;margin:2px 0 8px;line-height:1.3}.status-note{font-size:.6rem;margin-bottom:2px}.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.menu-card{min-height:102px;padding:10px;border-radius:9px}.card-mode{font-size:.54rem;margin-bottom:6px}.card-title{font-size:.84rem;line-height:1.22}}@media(max-height:520px)and (orientation:landscape){body{align-items:flex-start;overflow-y:auto;overflow-x:hidden}.dash-container{justify-content:flex-start;min-height:auto;padding-top:6px;padding-bottom:6px}}@media(max-width:900px)and (orientation:portrait){body{justify-content:center;align-items:flex-start;padding:14px 10px 10px;overflow-y:auto;overflow-x:hidden}.dash-container{width:100%;max-width:420px;min-height:auto;justify-content:flex-start;gap:10px;margin:0 auto;padding-top:50px;padding-bottom:12px}.top-motto{font-size:.56rem;line-height:1.15;letter-spacing:.2px;margin:0 0 2px}.dash-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:6px 0 8px}#logo-thdp{height:18px}#logo-oppa{height:13px}.user-status{min-width:0;font-size:.64rem;line-height:1.45;text-align:center}.change-pass-action,.exit-action{display:inline-block;margin-left:6px;margin-top:4px;font-size:.62rem}.user-refresh-action{margin-left:6px;font-size:.62rem}.dash-title{font-size:1rem;letter-spacing:.5px;line-height:1.2;margin:2px 0 6px}.status-note{font-size:.6rem;margin-top:0;margin-bottom:4px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-card{min-height:92px;padding:12px 12px 10px;border-radius:10px}.card-mode{font-size:.54rem;margin-bottom:6px;line-height:1.2}.card-title{font-size:.82rem;line-height:1.18}.dialog{width:100%;max-width:340px;padding:20px 16px;border-radius:12px}.dialog-title-green{font-size:.94rem}.refresh-description{font-size:.74rem;line-height:1.6;margin-bottom:16px}.primary-button,.secondary-button{padding:11px;font-size:.82rem;border-radius:8px}}@media(max-width:420px)and (orientation:portrait){.menu-grid{grid-template-columns:1fr}.menu-card{min-height:88px}.card-title{font-size:.86rem}.dialog{max-width:none;padding:18px 14px}.dialog-title-green{font-size:.9rem}.refresh-description,.updating-description{font-size:.72rem}}.login-shell,.auth-loading{width:100%;min-height:calc(100dvh - 16px);display:grid;place-items:center}.login-card{width:min(100%,430px);background:#0b1018;border:1px solid rgba(122,162,247,.22);border-radius:12px;padding:22px;box-shadow:0 18px 54px #00000061,0 0 28px #bb9af714}.login-motto{margin-bottom:14px}.login-logo-row,.auth-loading-logo-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:7px 0 9px;border-bottom:1px solid rgba(122,162,247,.1)}.login-logo-thdp,.auth-loading-logo-row img:first-child{height:25px;width:auto}.login-logo-oppa,.auth-loading-logo-row img:last-child{height:18px;width:auto}.login-title{margin:18px 0 5px;text-align:center;font-size:1.45rem;font-weight:900;letter-spacing:1.5px;line-height:1.35;background:linear-gradient(135deg,#7aa2f7 10%,#bb9af7 90%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 8px rgba(187,154,247,.25))}.login-subtitle{margin:0 0 18px;text-align:center;color:#565f89;font-size:.72rem;line-height:1.55}.login-form{display:grid;gap:13px}.login-field{display:grid;gap:6px}.login-field>span,.login-device>span{color:#7aa2f7;font-size:.62rem;font-weight:700;letter-spacing:.7px}.login-field input{width:100%;height:42px;border:1px solid rgba(122,162,247,.28);border-radius:7px;outline:none;background:#ffffff0b;color:#fff;padding:0 12px;font-size:.82rem;letter-spacing:.03em}.login-field input:focus{border-color:#7aa2f7;box-shadow:0 0 0 3px #7aa2f71a}.login-field input::placeholder{color:#565f89}.login-password-wrap{position:relative}.login-password-wrap input{padding-right:42px}.login-password-wrap button{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer;opacity:.58;padding:6px}.login-notice,.login-error,.login-recognized,.login-device{margin:0;border-radius:8px;padding:10px;font-size:.7rem;line-height:1.55}.login-notice{color:#ffcf70;border:1px solid rgba(255,207,112,.25);background:#ffcf700f}.login-error{color:#ff8b8b;border:1px solid rgba(255,139,139,.24);background:#ff8b8b0f}.login-recognized{display:grid;gap:3px;color:#a9b1d6;border:1px solid rgba(187,154,247,.22);background:#bb9af70e}.login-recognized strong{color:#fff}.login-device{display:grid;gap:8px;border:1px solid rgba(158,206,106,.28);background:#9ece6a0e}.login-device code{display:block;overflow-wrap:anywhere;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem;letter-spacing:0;-webkit-user-select:all;user-select:all}.login-device button{border:1px solid rgba(158,206,106,.42);border-radius:6px;padding:8px 10px;background:transparent;color:#9ece6a;cursor:pointer;font-size:.66rem;font-weight:700}.login-device small{color:#9ece6a;font-size:.62rem}.login-submit-row{display:grid;grid-template-columns:1fr;align-items:stretch;gap:9px;margin-top:3px}.login-submit-row.has-exit{grid-template-columns:minmax(0,1fr) minmax(92px,.34fr)}.login-submit{width:100%;height:42px;margin:0;border:0;border-radius:7px;cursor:pointer;color:#040810;font-size:.76rem;font-weight:900;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;background:linear-gradient(135deg,#7aa2f7,#bb9af7)}.login-submit:disabled{opacity:.62;cursor:wait}.login-exit{width:100%;height:42px;margin:0;border:1px solid rgba(255,158,100,.48);border-radius:7px;cursor:pointer;color:#ff9e64;background:transparent;font-size:.74rem;font-weight:900;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.login-exit:hover{border-color:#ff9e64;background:#ff9e6412}.login-exit:disabled{opacity:.55;cursor:wait}.auth-loading{align-content:center;gap:14px}.auth-loading-logo-row{width:min(88vw,430px)}.auth-loading p{margin:0;color:#7aa2f7;font-size:.68rem;font-weight:700;animation:auth-pulse 1.15s ease-in-out infinite alternate}@keyframes auth-pulse{0%{opacity:.42}to{opacity:1}}@media(max-width:900px)and (orientation:portrait){.login-shell,.auth-loading{min-height:auto;padding-top:40px;padding-bottom:12px}.login-card{width:min(100%,390px);padding:18px 16px}.login-logo-thdp,.auth-loading-logo-row img:first-child{height:18px}.login-logo-oppa,.auth-loading-logo-row img:last-child{height:13px}.login-title{margin-top:15px;font-size:1.08rem}.login-subtitle{font-size:.66rem}}
