*{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0a0a1a;--bg2:#111122;--cyan:#00FFFF;--green:#00FF88;--yellow:#FFD700;--red:#FF5555;--white:#FFFFFF;--dim:#445566;--border:#1a2a3a}body{background:var(--bg);color:var(--green);font-family:'Consolas','Courier New',monospace;min-height:100vh;display:flex;justify-content:center;align-items:center;overflow-x:hidden;overflow-y:auto}.splash-container{text-align:center;animation:fadeIn 1s ease-in}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.glitch-wrapper{position:relative;margin-bottom:1rem}.glitch{font-size:6rem;font-weight:bold;color:var(--cyan);text-shadow:0 0 20px rgba(0,255,255,0.5)}.subtitle{font-size:1.2rem;color:var(--white);margin-bottom:2rem;letter-spacing:2px}.terminal-line{font-size:1rem;color:var(--dim);margin-bottom:3rem;min-height:1.5em}.terminal-line .prompt{color:var(--green)}.terminal-line .typing{animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.enter-btn{background:transparent;border:2px solid var(--cyan);color:var(--cyan);padding:1rem 3rem;font-size:1.2rem;font-family:inherit;font-weight:bold;cursor:pointer;transition:all .3s ease;letter-spacing:3px}.enter-btn:hover{background:var(--cyan);color:var(--bg);box-shadow:0 0 30px rgba(0,255,255,0.4)}.version{margin-top:3rem;font-size:.8rem;color:var(--dim)}.login-container,.register-container{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:2.5rem;width:100%;max-width:420px;animation:fadeIn .5s ease-in}.register-container{max-width:500px}.logo{font-size:2.5rem;color:var(--cyan);text-align:center;margin-bottom:.5rem;text-shadow:0 0 10px rgba(0,255,255,0.3)}.tagline{text-align:center;color:var(--dim);font-size:.9rem;margin-bottom:2rem;letter-spacing:1px}.auth-form{display:flex;flex-direction:column;gap:1.2rem}.input-row{display:flex;gap:1rem}.input-row .input-group{flex:1}.input-group{display:flex;flex-direction:column;gap:.4rem}.input-group label{font-size:.8rem;color:var(--cyan);letter-spacing:1px}.input-group input{background:var(--bg);border:1px solid var(--border);color:var(--white);padding:.8rem;font-family:inherit;font-size:.9rem;border-radius:4px;transition:border-color .3s}.input-group input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 8px rgba(0,255,255,0.2)}.input-group input::placeholder{color:var(--dim)}.input-group small{font-size:.7rem;color:var(--dim)}.submit-btn{background:var(--green);color:var(--bg);border:none;padding:.9rem;font-size:1rem;font-family:inherit;font-weight:bold;cursor:pointer;border-radius:4px;transition:all .3s;letter-spacing:2px;margin-top:.5rem}.submit-btn:hover{background:#00CC66;box-shadow:0 0 15px rgba(0,255,136,0.3)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.error-msg{color:var(--red);font-size:.85rem;text-align:center;min-height:1.2em}.success-msg{color:var(--green);font-size:.85rem;text-align:center;min-height:1.2em}.auth-links{margin-top:1.5rem;text-align:center}.link-btn{background:transparent;border:1px solid var(--dim);color:var(--dim);padding:.6rem 1.5rem;font-size:.8rem;font-family:inherit;cursor:pointer;border-radius:4px;transition:all .3s;letter-spacing:1px}.link-btn:hover{border-color:var(--cyan);color:var(--cyan)}.back-link{margin-top:1rem;text-align:center}.back-link a{color:var(--dim);text-decoration:none;font-size:.8rem;transition:color .3s}.back-link a:hover{color:var(--cyan)}@media(max-width:600px){.glitch{font-size:4rem}.login-container,.register-container{margin:1rem;padding:1.5rem}.input-row{flex-direction:column}}
@media(max-width:768px){.login-container,.register-container{max-width:100%;margin:0 auto;padding:1.5rem;border-radius:6px}.input-row{flex-direction:column}.logo{font-size:2rem}.submit-btn{font-size:0.95rem;padding:0.85rem;letter-spacing:1px}}@media(max-width:480px){.login-container,.register-container{padding:1.2rem 1rem;border-radius:4px}.input-group input{font-size:0.85rem;padding:0.7rem}.input-group label{font-size:0.75rem}.submit-btn{font-size:0.88rem;padding:0.75rem}.logo{font-size:1.8rem}.tagline{font-size:0.8rem}.error-msg{font-size:0.82rem}.link-btn{padding:0.5rem 1rem;font-size:0.75rem}}
body.ccp-with-payment-page{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:100vh;overflow-x:hidden;width:100%;margin:0;position:relative}
body.ccp-with-payment-page .ccp-page-with-payment{display:block;width:100%;flex:1;min-height:0;min-width:0;position:relative}
body.ccp-with-payment-page .ccp-page-main{width:100%;box-sizing:border-box;padding:24px 16px 48px;padding-right:calc(min(400px,42vw) + 20px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;min-height:100vh;-webkit-overflow-scrolling:touch}
body.payment-collapsed.ccp-with-payment-page .ccp-page-main{padding-right:calc(40px*1.25 + 20px)}
body.ccp-with-payment-page .payment-drawer{position:fixed;top:0;right:0;bottom:0;height:100vh;max-height:100vh;width:min(400px,42vw);min-width:min(400px,42vw);border-left:2px solid #1e3a55;background:#0a0c12;display:flex;flex-direction:row;align-items:stretch;transition:width .22s ease,min-width .22s ease;overflow:hidden;z-index:100;box-sizing:border-box}
body.payment-collapsed.ccp-with-payment-page .payment-drawer{width:calc(40px*1.25);min-width:calc(40px*1.25)}body.ccp-with-payment-page #paymentDrawer.drawer-collapsed{width:calc(40px*1.25)!important;min-width:calc(40px*1.25)!important}#paymentDrawer.drawer-collapsed .payment-drawer-inner{display:none!important}#paymentDrawer.drawer-collapsed .payment-strip-btn{display:flex!important}
.payment-strip-btn{display:none;flex-direction:column;align-items:center;justify-content:center;gap:7.5px;width:100%;flex:1;min-height:120px;font-family:inherit;font-size:12.5px;font-weight:bold;cursor:pointer;border:1px solid #2a4a6a;border-right:none;background:#122030;color:#4dd0e1;padding:10px 5px;line-height:1.2}
.payment-strip-btn:hover{background:#00529b;color:#fff;border-color:#00aeef}
.payment-strip-chevron{font-size:20px;color:#00bcd4;line-height:1}
.payment-strip-text{writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.12em;text-transform:uppercase;font-size:11.25px}
body.payment-collapsed .payment-strip-btn{display:flex}
.payment-drawer-inner{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}
body.payment-collapsed .payment-drawer-inner{display:none}
.payment-hide-btn{flex-shrink:0;width:100%;padding:10px;font-family:inherit;font-size:11.25px;font-weight:bold;cursor:pointer;border:none;border-bottom:1px solid #1e3a55;background:#122030;color:#4dd0e1;text-align:center}
.payment-hide-btn:hover{background:#00529b;color:#fff}
.payment-drawer-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12.5px}
.payment-card{border:2px solid #1e3a55;border-radius:4px;background:#0a1018;padding:17.5px;margin-top:0}
.payment-card h2{color:#ffd54f;font-size:15px;margin-bottom:12.5px;text-align:center}
.pay-row{margin-bottom:12.5px}
.pay-row label{display:block;font-size:12.5px;color:#607d8b;margin-bottom:4px;text-align:left}
.pay-row input{width:100%;font-family:inherit;font-size:13.75px;padding:10px;background:#050810;border:1px solid #243548;color:#e0e0e0;border-radius:2px;box-sizing:border-box}
.pay-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12.5px;justify-content:center}
.pay-actions button{font-family:inherit;font-size:13.75px;font-weight:bold;padding:10px 17.5px;border:1px solid #2a4a6a;cursor:pointer;background:#122030;color:#4dd0e1}
.pay-actions button.primary{background:#1a3a1a;border-color:#2e6b3a;color:#a5d6a7}
.pay-actions button:disabled{opacity:.45;cursor:not-allowed}
.pay-msg{font-size:12.5px;margin-top:10px;min-height:1.3em;color:#78909c;text-align:center}
.pay-msg.ok{color:#81c784}
.pay-msg.err{color:#e57373}
.treasury-line{word-break:break-all;font-size:12.5px;color:#00FF88;background:#0d1810;padding:8px;border:1px dashed #2a5a3a;text-align:left}