:root{--bg-color: #f5f5f5;--surface-color: #ffffff;--surface-alt: #e9e9e9;--surface-panel: #dddddd;--text-main: #333333;--text-muted: #666666;--text-light: #ffffff;--border-color: #cccccc;--border-dark: rgba(0, 0, 0, .3);--border-hover: rgba(0, 0, 0, .9);--primary-color: #333333;--primary-hover: #1a1a1a;--secondary-color: #dddddd;--secondary-hover: #cccccc;--success-bg: #d4edda;--success-border: #c3e6cb;--success-text: #155724;--error-bg: #f8d7da;--error-border: #f5c6cb;--error-text: #721c24;--font-family: "Inter", system-ui, -apple-system, sans-serif;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius: .5rem;--border-radius-sm: .3125rem;--border-width: .125rem;--shadow-main: -.5rem -.3125rem .75rem .0625rem rgba(0, 0, 0, .2);--shadow-hover: -.6rem -.4rem .8rem .0625rem rgba(0, 0, 0, .25);--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-main);line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-main);font-weight:700}.base-card{background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg)}.shadow-card{background-color:var(--surface-alt);border-radius:var(--border-radius);box-shadow:var(--shadow-main);padding:var(--spacing-lg)}.base-btn{background-color:var(--primary-color);color:var(--text-light);padding:.75rem 2rem;border:none;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.base-btn:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.base-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.base-btn-secondary{background-color:var(--secondary-color);color:var(--text-main);border:var(--border-width) solid var(--border-color)}.base-btn-secondary:hover:not(:disabled){background-color:var(--secondary-hover);border-color:var(--border-dark)}.base-input{padding:.75rem 1rem;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;font-family:inherit;transition:border-color var(--transition-fast);width:100%}.base-input:focus{outline:none;border-color:var(--primary-color)}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background-color:var(--surface-alt);color:var(--text-main);border:1px solid var(--border-color)}.quiz{display:flex;flex-direction:column;min-height:100vh;width:100%}.nav-bar{background-color:var(--primary-color);color:var(--text-light);padding:clamp(.875rem,1.5vw,1.25rem);display:flex;flex-direction:row;align-items:center;justify-content:space-around;gap:var(--spacing-lg)}.change-mode{text-align:center;color:var(--text-light);text-decoration:none;font-weight:600;transition:color var(--transition-fast)}.change-mode:hover{color:var(--secondary-color)}.box{display:grid;grid-template-columns:2.5fr 1fr;gap:var(--spacing-lg);padding:var(--spacing-lg);flex:1}@media(max-width:768px){.box{grid-template-columns:1fr}}.score-board{background-color:var(--surface-panel);padding:1.5rem;text-align:center;font-weight:700;border-radius:var(--border-radius);min-height:12.5rem;box-shadow:var(--shadow-main);display:flex;flex-direction:column;justify-content:center;gap:var(--spacing-md)}.score-board h2{font-size:2rem}.quiz-box{display:flex;flex-direction:column;height:100%;justify-content:space-between;gap:var(--spacing-lg)}.question-option-container{display:flex;flex-direction:column;gap:var(--spacing-md)}.question-box{background-color:var(--surface-color);padding:var(--spacing-lg);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius)}.question-box h2{font-size:1.25rem;font-weight:600}.option-box{display:flex;flex-direction:column;background-color:var(--surface-color);padding:var(--spacing-lg);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);gap:var(--spacing-md)}.btn-container{margin:0 auto;width:100%}.next-btn{width:100%;padding:1rem;font-size:1.125rem;background-color:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius);cursor:pointer;font-weight:700;transition:all var(--transition-fast)}.next-btn:hover{background-color:var(--primary-hover);transform:translateY(-2px)}.footer{background-color:var(--primary-color);color:var(--text-light);padding:var(--spacing-md);text-align:center;font-size:.875rem}.options{display:flex;min-height:3.5rem;border-radius:var(--border-radius-sm);padding:0 var(--spacing-md);transition:all var(--transition-fast);align-items:center;border:var(--border-width) solid var(--border-dark);cursor:pointer;background-color:var(--surface-color)}.options:hover{background-color:var(--surface-alt);border:var(--border-width) solid var(--border-hover)}.selected{display:flex;min-height:3.5rem;border-radius:var(--border-radius-sm);padding:0 var(--spacing-md);transition:all var(--transition-fast);align-items:center;border:var(--border-width) solid var(--border-hover);background-color:var(--text-muted);color:var(--text-light);font-weight:600}.game-over{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg);height:100%;background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-xl)}.game-over h2{font-size:2rem}.game-over button{padding:1rem 3rem;font-size:1.25rem;background-color:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius);cursor:pointer;font-weight:700;transition:all var(--transition-fast)}.game-over button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-2px)}.game-over button:disabled{opacity:.5;cursor:not-allowed}.profile-container{grid-column:1 / -1;height:100%;width:100%;display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-md)}.profile-info{background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-xl) var(--spacing-md)}.profile-avatar{width:clamp(5rem,12vw,8rem);height:clamp(5rem,12vw,8rem);border-radius:50%;object-fit:cover;border:.1875rem solid var(--primary-color)}.profile-meta{display:flex;flex-direction:column;gap:.5rem}.game-history{background-color:var(--surface-alt);flex:1;min-height:20rem;border-radius:var(--border-radius);box-shadow:var(--shadow-main);display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);justify-content:center;align-items:center}.defaultbox{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;height:100%;min-height:60vh;font-size:1.5rem;font-weight:600;color:var(--text-main);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);padding:var(--spacing-xl);text-align:center}.github-login-btn{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--primary-color);color:var(--text-light);border:var(--border-width) solid var(--primary-color);border-radius:var(--border-radius);padding:.6rem 1rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.github-login-btn:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.github-login-btn:active{transform:translateY(0)}.avatar-container{position:relative}.summery-show{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,3vw,2rem)}.summery-hide{display:none}.summery-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.summery-panel{position:relative;z-index:1;width:min(92vw,72rem);max-height:88vh;overflow:auto;border-radius:var(--border-radius);padding:var(--spacing-xl);background:var(--surface-color);color:var(--text-main);box-shadow:var(--shadow-main);border:var(--border-width) solid var(--border-color)}.summery-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);border-bottom:var(--border-width) solid var(--border-color);padding-bottom:var(--spacing-md)}.summery-header h2{font-size:2rem}.summery-header p{color:var(--text-muted);font-weight:600}.summery-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;font-weight:700;color:var(--text-main);margin-bottom:var(--spacing-sm)}.summery-close{border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:.5rem 1rem;font-weight:700;background:var(--surface-alt);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast)}.summery-close:hover{background:var(--text-main);color:var(--text-light)}.summery-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.summery-card{background:var(--bg-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg)}.summery-card-head{display:flex;gap:var(--spacing-md);align-items:flex-start;margin-bottom:var(--spacing-md)}.summery-step{flex:0 0 auto;width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;font-weight:800;background:var(--text-main);color:var(--text-light)}.summery-card h3{line-height:1.4;margin-bottom:var(--spacing-sm);font-size:1.125rem}.summery-card p{color:var(--text-muted);font-weight:600}.summery-options{display:grid;gap:var(--spacing-sm)}.summery-option{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);min-height:3rem;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);border:var(--border-width) solid var(--border-color);background:var(--surface-color);color:var(--text-main);font-weight:500}.summery-option strong{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.summery-option-correct{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text);font-weight:700}.summery-option-picked-correct{border-width:3px;border-color:var(--success-text)}.summery-option-wrong{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.mp-container{display:flex;flex-direction:column;grid-column:1 / -1;gap:var(--spacing-lg);padding:var(--spacing-md);min-height:100%}.mp-conn-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);font-size:.85rem;font-weight:700;text-transform:uppercase;padding:.5rem 1rem;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);align-self:flex-end;background-color:var(--surface-color)}.mp-conn-badge--online{color:var(--success-text);border-color:var(--success-border)}.mp-conn-badge--offline{color:var(--error-text);border-color:var(--error-border)}.mp-conn-dot{width:.75rem;height:.75rem;border-radius:50%;border:1px solid var(--text-main)}.mp-conn-badge--online .mp-conn-dot{background:var(--success-text)}.mp-conn-badge--offline .mp-conn-dot{background:var(--error-text)}.mp-error{background:var(--error-bg);border:var(--border-width) solid var(--error-border);color:var(--error-text);padding:1rem;border-radius:var(--border-radius);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);font-weight:700}.mp-error button{background:none;border:none;color:inherit;font-size:1.5rem;cursor:pointer}.mp-menu{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);max-width:600px;margin:0 auto;width:100%}.mp-menu h2{font-size:2rem;text-align:center}.mp-menu-actions{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.mp-btn{padding:1rem 1.5rem;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);font-size:1.125rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);text-align:center;background-color:var(--surface-alt);color:var(--text-main)}.mp-btn:disabled{opacity:.5;cursor:not-allowed}.mp-btn--primary{background-color:var(--primary-color);color:var(--text-light);border-color:var(--primary-color)}.mp-btn--primary:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px #0003}.mp-btn--secondary{background-color:var(--text-muted);color:var(--text-light);border-color:var(--text-main)}.mp-btn--secondary:hover:not(:disabled){background-color:var(--text-main)}.mp-btn--ghost{background:transparent;color:var(--text-main);border:var(--border-width) solid var(--border-color)}.mp-btn--ghost:hover:not(:disabled){background:var(--surface-alt);border-color:var(--border-dark)}.mp-btn--ready{background-color:var(--success-text);color:var(--text-light);border-color:var(--success-text)}.mp-btn--ready:hover:not(:disabled){opacity:.9;transform:translateY(-2px)}.mp-join-form{display:flex;gap:var(--spacing-md);width:100%}.mp-join-input{flex:1;padding:1rem;border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);font-size:1.125rem;font-weight:700;letter-spacing:.2em;text-align:center;outline:none;background-color:var(--bg-color)}.mp-join-input:focus{border-color:var(--primary-color)}.mp-lobby{display:flex;flex-direction:column;gap:var(--spacing-lg);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);padding:var(--spacing-xl)}.mp-lobby-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md);border-bottom:var(--border-width) solid var(--border-color);padding-bottom:var(--spacing-md)}.mp-lobby-header h2{font-size:1.75rem}.mp-room-code{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:var(--surface-alt);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:.75rem 1.25rem;font-size:1.25rem;font-weight:800;letter-spacing:.1em;cursor:pointer}.mp-room-code:hover{background:var(--border-color)}.mp-room-code-label{font-size:.85rem;text-transform:uppercase;color:var(--text-muted)}.mp-players-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.mp-player-card{display:flex;align-items:center;gap:var(--spacing-md);padding:1rem;background:var(--bg-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius)}.mp-player-card--disconnected{opacity:.5}.mp-player-avatar{width:3rem;height:3rem;border-radius:50%;background:var(--primary-color);color:var(--text-light);display:grid;place-items:center;font-weight:800;font-size:1.25rem;border:var(--border-width) solid var(--text-main)}.mp-player-info{flex:1}.mp-player-name{font-weight:700;font-size:1.125rem}.mp-player-badges{display:flex;gap:var(--spacing-sm);margin-top:.25rem}.mp-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;padding:.25rem .5rem;border-radius:var(--border-radius-sm);border:1px solid currentColor}.mp-badge--host{color:#d97706}.mp-badge--ready{color:var(--success-text)}.mp-badge--not-ready{color:var(--text-muted)}.mp-badge--disconnected{color:var(--error-text)}.mp-lobby-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-md)}.mp-lobby-settings{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:.95rem;font-weight:600}.mp-lobby-settings span{background:var(--surface-alt);padding:.5rem 1rem;border-radius:var(--border-radius-sm);border:1px solid var(--border-color)}.mp-game{display:flex;flex-direction:column;gap:var(--spacing-lg)}.mp-game-header{display:flex;align-items:center;justify-content:space-between;background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-md) var(--spacing-lg)}.mp-question-counter{font-size:1.125rem;font-weight:700}.mp-timer{display:inline-flex;align-items:center;font-size:1.25rem;font-weight:800;padding:.5rem 1.25rem;border-radius:var(--border-radius);border:var(--border-width) solid currentColor}.mp-timer--normal{color:var(--text-main)}.mp-timer--warning{color:#d97706}.mp-timer--danger{color:var(--error-text)}.mp-question-card{background:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-xl)}.mp-question-meta{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.mp-question-meta span{font-size:.8rem;font-weight:700;text-transform:uppercase;padding:.25rem .5rem;border-radius:var(--border-radius-sm);background:var(--surface-alt);border:1px solid var(--border-color)}.mp-question-text{font-size:1.5rem;font-weight:700;margin:0}.mp-options-grid{display:flex;flex-direction:column;background-color:var(--surface-color);padding:var(--spacing-lg);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);gap:var(--spacing-md)}.mp-option{display:flex;min-height:3.5rem;border-radius:var(--border-radius-sm);padding:0 var(--spacing-md);transition:all var(--transition-fast);align-items:center;border:var(--border-width) solid var(--border-dark);cursor:pointer;background-color:var(--surface-color);font-size:1.125rem;font-weight:600;gap:var(--spacing-md)}.mp-option:hover:not(.mp-option--disabled){background-color:var(--surface-alt);border:var(--border-width) solid var(--border-hover)}.mp-option--selected{border:var(--border-width) solid var(--border-hover);background-color:var(--text-muted);color:var(--text-light)}.mp-option--disabled{cursor:not-allowed;opacity:.7}.mp-option-marker{font-weight:800}.mp-result{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);text-align:center}.mp-result-icon{font-size:4rem}.mp-result h3{font-size:2rem}.mp-result-answer{background:var(--surface-alt);border:var(--border-width) solid var(--border-color);padding:1rem 1.5rem;border-radius:var(--border-radius);font-weight:700;font-size:1.25rem}.mp-result-scores{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--spacing-sm);border:var(--border-width) solid var(--border-color);padding:var(--spacing-md);border-radius:var(--border-radius);background-color:var(--bg-color)}.mp-result-score-row{display:flex;justify-content:space-between;padding:.5rem;font-weight:700;font-size:1.125rem;border-bottom:1px solid var(--border-color)}.mp-result-score-row:last-child{border-bottom:none}.mp-result-waiting{font-weight:700;color:var(--text-muted);margin-top:var(--spacing-md)}.mp-finished{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl);padding:var(--spacing-xl);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);text-align:center}.mp-finished h2{font-size:2.5rem}.mp-trophy{font-size:5rem}.mp-winner{font-size:1.5rem;font-weight:800;padding:var(--spacing-md);background-color:var(--surface-alt);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius)}.mp-final-scores{width:100%;max-width:500px;display:flex;flex-direction:column;gap:var(--spacing-sm)}.mp-final-score-row{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);font-size:1.25rem;font-weight:700}.mp-final-rank{color:var(--text-muted);width:3rem}.mp-final-name{flex:1;text-align:left}.mp-finished-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.mp-live-scores{background:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);padding:var(--spacing-lg)}.mp-live-scores h4{font-size:1.25rem;margin-bottom:var(--spacing-md);text-align:center}.mp-live-score-entry{display:flex;justify-content:space-between;padding:.5rem 0;font-size:1.125rem;font-weight:700;border-bottom:1px solid var(--surface-alt)}@media(max-width:640px){.mp-menu h2{font-size:1.5rem}.mp-question-text{font-size:1.25rem}}.profile-container-wrapper{position:relative;display:inline-block}.profile-pic-btn{display:flex;align-items:center;gap:var(--spacing-sm);background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:999px;padding:.25rem 1rem .25rem .25rem;cursor:pointer;transition:all var(--transition-fast);color:var(--text-main)}.profile-pic-btn:hover{background-color:var(--surface-alt);border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.profile-pic-img{width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover;border:1px solid var(--border-color)}.profile-username{font-weight:700;font-size:.95rem;color:var(--text-main)}.profile-dropdown{position:absolute;top:calc(100% + var(--spacing-sm));right:0;width:150px;background-color:var(--surface-color);border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-main);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast);z-index:50}.profile-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.profile-dropdown ul{list-style:none;padding:0;margin:0}.profile-dropdown li{padding:0;border-bottom:1px solid var(--border-color)}.profile-dropdown li:last-child{border-bottom:none}.profile-dropdown a,.profile-dropdown button{display:block;width:100%;text-align:left;padding:.75rem var(--spacing-md);font-weight:600;color:var(--text-main);background:none;border:none;text-decoration:none;cursor:pointer;font-size:1rem;font-family:inherit;transition:background-color var(--transition-fast)}.profile-dropdown a:hover,.profile-dropdown button:hover{background-color:var(--surface-alt);color:var(--primary-hover)}
