:root{--bg:#0d1b2a;--panel:rgba(255,255,255,.12);--accent:#ff4444;--text:#f2f2f2}.panel{background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:16px}.btn{border:0;border-radius:14px;padding:12px 16px;background:var(--accent);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 6px 20px #ff44444d}.btn.secondary{background:#244a6f;box-shadow:0 6px 20px #244a6f4d}.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.2);box-shadow:none}.tag{padding:8px 10px;border-radius:12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.15);font-weight:700;font-variant-numeric:tabular-nums}.splash-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.splash-container{background:#fff;border-radius:16px;padding:40px;max-width:600px;width:100%;box-shadow:0 10px 40px #0000001a;text-align:center}.splash-container h1{font-size:2.5rem;margin-bottom:10px;color:#333}.splash-subtitle{font-size:1.1rem;color:#666;margin-bottom:30px}.departments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:30px}.department-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .3s ease;font-size:.9rem}.department-button:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-2px)}.dept-code{font-weight:700;font-size:1.2rem;color:#667eea;margin-bottom:4px}.dept-name{color:#666;font-size:.85rem}.splash-footer{color:#999;font-size:.9rem}.inscription-page,.express-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.form-container{background:#fff;border-radius:16px;padding:40px;max-width:500px;width:100%;box-shadow:0 10px 40px #0000001a}.form-container h1{font-size:2rem;margin-bottom:10px;color:#333}.form-subtitle{color:#666;margin-bottom:30px;font-size:1rem}.form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:#333;font-size:.95rem}.form-group input[type=text],.form-group input[type=email]{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input[type=text]:focus,.form-group input[type=email]:focus{outline:none;border-color:#667eea}.form-group input.input-error{border-color:#e74c3c}.error-message{color:#e74c3c;font-size:.85rem}.form-group.checkbox{flex-direction:row;align-items:flex-start;gap:12px}.form-group.checkbox input[type=checkbox]{margin-top:4px;cursor:pointer}.form-group.checkbox label{margin:0;cursor:pointer}.submit-button{padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease}.submit-button:hover{transform:translateY(-2px)}.form-divider{display:flex;align-items:center;gap:12px;margin:10px 0;color:#999}.form-divider:before,.form-divider:after{content:"";flex:1;height:1px;background:#e0e0e0}.express-button,.back-button{padding:12px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.express-button:hover,.back-button:hover{background:#f0f4ff}.calendar-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 120px);padding:20px}.status-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.win-page{background:linear-gradient(135deg,#84fab0,#8fd3f4)}.lose-page{background:linear-gradient(135deg,#fa709a,#fee140)}.patience-page{background:linear-gradient(135deg,#a8edea,#fed6e3)}.finished-page{background:linear-gradient(135deg,#ffecd2,#fcb69f)}.already-played-page{background:linear-gradient(135deg,#ff9a56,#ff6a88)}.status-container{background:#fff;border-radius:16px;padding:40px;max-width:500px;width:100%;box-shadow:0 10px 40px #0000001a;text-align:center}.status-icon{font-size:4rem;margin-bottom:20px}.status-container h1{font-size:2rem;margin-bottom:10px;color:#333}.status-message{font-size:1.1rem;color:#666;margin-bottom:20px}.status-content{background:#f8f9fa;border-radius:12px;padding:20px;margin-bottom:30px;text-align:left}.status-content p{color:#555;margin:10px 0;line-height:1.6}.countdown{margin-top:20px;padding:20px;background:#fff;border-radius:8px;border:2px solid #e0e0e0}.countdown p{margin:0 0 10px;font-weight:600;color:#333}.countdown-display{font-size:1.5rem;font-weight:700;color:#667eea;font-family:Courier New,monospace}.status-actions{display:flex;gap:12px;justify-content:center}.status-actions button{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.status-actions .primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.status-actions .primary:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.game-route{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.game-route.error{text-align:center}.game-route.error h2{color:#e74c3c;margin-bottom:10px}.game-route.error p{color:#666;margin-bottom:20px}.back-to-calendar{position:absolute;bottom:20px;left:50%;transform:translate(-50%);padding:10px 20px;background:#fff;border:2px solid #667eea;color:#667eea;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;z-index:10}.back-to-calendar:hover{background:#667eea;color:#fff}@media (max-width: 768px){.splash-container,.form-container,.status-container{padding:24px}.splash-container h1,.form-container h1,.status-container h1{font-size:1.5rem}.departments-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.status-icon{font-size:3rem}}html,body,#root{height:100%;margin:0;background:#fff;color:#f2f2f2;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}@media (min-width:720px){.grid{grid-template-columns:repeat(6,1fr)}}.card{aspect-ratio:1/1.1;display:grid;place-items:center;border-radius:12px;background:#ffffff12;border:1px solid rgba(255,255,255,.15);text-decoration:none;color:inherit;font-weight:800;font-size:24px}.header{display:flex;align-items:center;justify-content:space-between;gap:12px}
