.app{min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dashboard-welcome{text-align:center}.auth-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#667eea;padding:var(--spacing-lg);position:relative;overflow:hidden;color-scheme:light}.auth-layout__container{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--spacing-2xl);width:100%;max-width:480px;display:flex;flex-direction:column;gap:var(--spacing-2xl);animation:slideInUp .5s cubic-bezier(.34,1.56,.64,1);z-index:1;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-layout__header{text-align:center}.auth-layout__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);background:#667eea;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 var(--spacing-sm) 0}.auth-layout__subtitle{font-size:var(--font-size-base);color:var(--color-neutral-600);margin:0;line-height:1.5}.auth-layout__content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl);width:100%}.auth-layout__footer{text-align:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-neutral-200)}.auth-layout__footer-text{font-size:var(--font-size-sm);color:var(--color-neutral-500);margin:0}@media (max-width: 640px){.auth-layout{padding:var(--spacing-sm)}.auth-layout__container{padding:var(--spacing-xl)}.auth-layout__title{font-size:var(--font-size-2xl)}}.button{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--border-radius-md);font-family:inherit;font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-fast),box-shadow var(--transition-base),color var(--transition-base);text-decoration:none;white-space:nowrap;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff26;transform:translate(-50%,-50%);transition:width .6s,height .6s}.button:hover:before{width:300px;height:300px}.button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.button--small{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);min-height:2rem;gap:var(--spacing-xs)}.button--medium{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);min-height:2.5rem;gap:var(--spacing-sm)}.button--large{padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-lg);min-height:3rem;gap:var(--spacing-sm)}.button--primary{background-color:var(--color-button-primary);color:var(--color-button-primary-text)}.button--primary:hover:not(.button--disabled):not(.button--loading){background-color:var(--color-button-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.button--primary:active:not(.button--disabled):not(.button--loading){transform:translateY(0);box-shadow:var(--shadow-sm)}.button--secondary{background-color:var(--color-button-secondary);color:var(--color-button-secondary-text)}.button--secondary:hover:not(.button--disabled):not(.button--loading){background-color:var(--color-button-secondary-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.button--secondary:active:not(.button--disabled):not(.button--loading){transform:translateY(0);box-shadow:var(--shadow-sm)}.button--outline{background-color:var(--color-button-outline);color:var(--color-button-outline-text);border:2px solid var(--color-button-outline-border);box-shadow:none}.button--outline:hover:not(.button--disabled):not(.button--loading){background-color:var(--color-button-outline-hover);color:var(--color-button-outline-hover-text);box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--color-button-outline-hover)}.button--outline:active:not(.button--disabled):not(.button--loading){transform:translateY(0);box-shadow:var(--shadow-sm)}.button--danger{background-color:var(--color-button-danger);color:var(--color-button-danger-text)}.button--danger:hover:not(.button--disabled):not(.button--loading){background-color:var(--color-button-danger-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.button--danger:active:not(.button--disabled):not(.button--loading){transform:translateY(0);box-shadow:var(--shadow-sm)}.button--disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.button--loading{cursor:wait;position:relative}.button--loading .button__content{opacity:.7}.button__spinner{animation:spin 1s linear infinite;margin-right:var(--spacing-xs)}.input{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%}.input__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--spacing-xs)}.input__required{color:var(--color-danger-600);margin-left:var(--spacing-xs)}.input__field{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text);background-color:var(--color-surface);transition:border-color var(--transition-base),box-shadow var(--transition-base);min-height:2.5rem}.input__field::placeholder{color:var(--color-text-light)}.input__field:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15)}.input__field:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px;border-color:var(--color-border-focus)}.input__field--error{border-color:var(--color-danger-600)}.input__field--error:focus{border-color:var(--color-danger-600);box-shadow:0 0 0 3px #dc262626}.input__field--error:focus-visible{outline:2px solid var(--color-danger-600);outline-offset:2px}.input__field--disabled{background-color:var(--color-neutral-100);color:var(--color-text-light);cursor:not-allowed;opacity:.6}.input__error{font-size:var(--font-size-sm);color:var(--color-danger-600);margin-top:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs)}.login-form{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:400px}.login-form__fields{display:flex;flex-direction:column;gap:1rem}.login-form__error{padding:.75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:.875rem;text-align:center}.login-form__submit{width:100%}.login-page__divider{position:relative;width:100%;text-align:center;margin:1rem 0}.login-page__divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#e5e7eb;z-index:1}.login-page__divider-text{background-color:#fff;color:#9ca3af;font-size:.875rem;padding:0 1rem;position:relative;z-index:2}.login-page__oauth-button{width:100%}.login-page__links{text-align:center}.login-page__register-prompt{margin:0;font-size:.875rem;color:#6b7280}.login-page__register-link{color:#2563eb;text-decoration:none;font-weight:500}.login-page__register-link:hover{text-decoration:underline}.register-form{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:400px}.register-form__fields{display:flex;flex-direction:column;gap:1rem}.register-form__error{padding:.75rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:.875rem;text-align:center}.register-form__submit{width:100%}.register-page__divider{position:relative;width:100%;text-align:center;margin:1rem 0}.register-page__divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#e5e7eb;z-index:1}.register-page__divider-text{background-color:#fff;color:#9ca3af;font-size:.875rem;padding:0 1rem;position:relative;z-index:2}.register-page__oauth-button{width:100%}.register-page__links{text-align:center}.register-page__login-prompt{margin:0;font-size:.875rem;color:#6b7280}.register-page__login-link{color:#2563eb;text-decoration:none;font-weight:500}.register-page__login-link:hover{text-decoration:underline}.confirmation-modal{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-lg);animation:fadeInBackdrop var(--transition-base) ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirmation-modal__content{background-color:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);max-width:500px;width:100%;box-shadow:var(--shadow-xl);animation:modalSlideIn var(--transition-slow) cubic-bezier(.34,1.56,.64,1);border:1px solid var(--color-border)}.confirmation-modal__title{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.confirmation-modal__message{margin:0 0 var(--spacing-2xl) 0;font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6}.confirmation-modal__actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.confirmation-modal__actions .button{min-width:100px}.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner__circle{border-radius:var(--border-radius-full);border:2px solid rgba(0,0,0,.1);border-top-color:currentColor;border-right-color:currentColor;animation:spin .8s linear infinite;box-shadow:0 0 8px #0000000d}.spinner--small .spinner__circle{width:1rem;height:1rem;border-width:1px}.spinner--medium .spinner__circle{width:1.5rem;height:1.5rem;border-width:2px}.spinner--large .spinner__circle{width:2rem;height:2rem;border-width:3px}.spinner--primary{color:var(--color-primary-600)}.spinner--secondary{color:var(--color-secondary-600)}.spinner--white{color:var(--color-text-inverse)}.spinner--danger{color:var(--color-danger-600)}.spinner--success{color:var(--color-success-600)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.character-list-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--color-surface);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.character-list-item:hover{background-color:var(--color-background-hover);border-color:var(--color-border-focus);box-shadow:var(--shadow-md);transform:translateY(-1px)}.character-list-item--selected{background-color:var(--color-primary-50);border-color:var(--color-primary-500)}.character-list-item__image{width:48px;height:48px;border-radius:var(--border-radius-full);overflow:visible;flex-shrink:0;background-color:var(--color-neutral-100);display:flex;align-items:center;justify-content:center;position:relative}.character-list-item__image img{width:100%;height:100%;object-fit:cover;border-radius:var(--border-radius-full)}.character-list-item__overlay-backdrop{position:fixed;inset:0;z-index:var(--z-modal);pointer-events:none;display:flex;align-items:center;justify-content:center;background-color:#00000080;animation:backdropFadeIn .2s ease-in-out}.character-list-item__overlay{display:flex;align-items:center;justify-content:center;animation:modalSlideIn .25s ease-out}.character-list-item__overlay img{max-width:80vw;max-height:80vh;width:auto;height:auto;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);border:3px solid var(--color-border);background-color:var(--color-surface)}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.character-list-item__placeholder{font-size:var(--font-size-xl);color:var(--color-text-secondary);font-weight:var(--font-weight-bold)}.character-list-item__info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.character-list-item__name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text)}.character-list-item__description{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);line-height:1.3}.theme-mystery-dark .character-list-item{background-color:var(--color-surface);border-color:var(--color-border)}.theme-mystery-dark .character-list-item:hover{background-color:var(--color-surface-elevated);border-color:var(--color-border-focus)}.theme-mystery-dark .character-list-item--selected{background-color:var(--color-primary-500);border-color:var(--color-primary-600)}.theme-mystery-dark .character-list-item__image{background-color:var(--color-surface-elevated)}.theme-mystery-dark .character-list-item__placeholder{color:var(--color-text-secondary)}.theme-mystery-dark .character-list-item__name{color:var(--color-text)}.theme-mystery-dark .character-list-item__description{color:var(--color-text-secondary)}.theme-mystery-dark .character-list-item__overlay-backdrop{background-color:#000000bf}.theme-mystery-dark .character-list-item__overlay img{border-color:var(--color-border);background-color:var(--color-surface);box-shadow:0 8px 32px #000c}.character-list{display:flex;flex-direction:column;height:100%;background-color:var(--background-color, #ffffff)}.character-list__items{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.character-list__empty{text-align:center;padding:2rem 1rem;color:var(--text-muted, #666666);font-style:italic}.theme-mystery-dark .character-list{background-color:var(--color-surface)}.theme-mystery-dark .character-list__empty{color:var(--color-text-secondary)}.conversation-panel{display:flex;flex-direction:column;height:100%;background-color:var(--color-surface)}.conversation-panel__messages{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md);scroll-behavior:smooth}.conversation-panel__input-container{margin-bottom:var(--spacing-sm);display:flex;gap:var(--spacing-sm);align-items:flex-start}.conversation-panel__input{flex:1;min-height:80px;max-height:200px;padding:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-family:inherit;font-size:var(--font-size-base);resize:none;background-color:var(--color-surface-elevated);color:var(--color-text);transition:border-color var(--transition-base),box-shadow var(--transition-base);overflow-y:auto}.conversation-panel__input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.conversation-panel__input:disabled{background-color:var(--color-neutral-100);cursor:not-allowed;opacity:.6}.conversation-panel__input::placeholder{color:var(--color-text-secondary);font-style:italic}.conversation-panel__loading{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-md)}.conversation-panel__loading-text{color:var(--color-text-secondary);font-size:var(--font-size-base);font-style:italic}.conversation-panel__history{display:flex;flex-direction:column;gap:var(--spacing-md)}.conversation-panel__message{width:100%;min-height:60px;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);font-family:inherit;font-size:var(--font-size-base);resize:none;background-color:var(--color-surface-elevated);color:var(--color-text);cursor:default;overflow:hidden;height:auto;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.conversation-panel__message:hover{box-shadow:var(--shadow-md)}.conversation-panel__message--player{background-color:var(--color-primary-50);border-color:var(--color-primary-300);border-left:4px solid var(--color-primary-500)}.conversation-panel__message--character{background-color:var(--color-secondary-50);border-color:var(--color-secondary-300);border-left:4px solid var(--color-secondary-500)}.theme-mystery-dark .conversation-panel{background-color:var(--color-surface)}.theme-mystery-dark .conversation-panel__input{background-color:var(--color-surface-elevated);border-color:var(--color-border);color:var(--color-text)}.theme-mystery-dark .conversation-panel__input:focus{border-color:var(--color-border-focus)}.theme-mystery-dark .conversation-panel__input:disabled{background-color:var(--color-surface)}.theme-mystery-dark .conversation-panel__input::placeholder{color:var(--color-text-secondary)}.theme-mystery-dark .conversation-panel__loading{background-color:var(--color-surface-elevated);border-color:var(--color-border)}.theme-mystery-dark .conversation-panel__loading-text{color:var(--color-text-secondary)}.theme-mystery-dark .conversation-panel__message{background-color:var(--color-surface-elevated);border-color:var(--color-border);color:var(--color-text)}.theme-mystery-dark .conversation-panel__message--player{background-color:var(--color-primary-500);border-color:var(--color-primary-600)}.theme-mystery-dark .conversation-panel__message--character{background-color:var(--color-secondary-500);border-color:var(--color-secondary-600)}.conversation-panel__send-button{padding:var(--spacing-md) var(--spacing-xl);min-height:80px;background-color:var(--color-button-primary);color:var(--color-button-primary-text);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-fast),box-shadow var(--transition-base);white-space:nowrap;box-shadow:var(--shadow-sm)}.conversation-panel__send-button:hover:not(:disabled){background-color:var(--color-button-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.conversation-panel__send-button:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.conversation-panel__send-button:disabled{opacity:.5;cursor:not-allowed}.theme-mystery-dark .conversation-panel__send-button{background-color:var(--color-button-primary)}.theme-mystery-dark .conversation-panel__send-button:hover:not(:disabled){background-color:var(--color-button-primary-hover)}.scene-navigation{width:100%;background-color:var(--color-background-secondary);border-bottom:2px solid var(--color-border)}.scene-navigation__tabs{display:flex;gap:0;overflow-x:auto;padding:0}.scene-navigation__tab{flex:0 0 auto;padding:12px 24px;background-color:var(--color-background-secondary);border:none;border-bottom:3px solid transparent;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.scene-navigation__tab:hover{background-color:var(--color-background-hover);color:var(--color-text-primary)}.scene-navigation__tab--selected{background-color:var(--color-background-primary);color:var(--color-text-primary);border-bottom-color:var(--color-primary);font-weight:600}.scene-navigation__tab--current{border-left:3px solid var(--color-success);padding-left:21px}.scene-navigation__tab-name{flex:1}.scene-navigation__tab-indicator{font-size:16px;line-height:1}.scene-navigation__tabs::-webkit-scrollbar{height:6px}.scene-navigation__tabs::-webkit-scrollbar-track{background:var(--color-background-secondary)}.scene-navigation__tabs::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.scene-navigation__tabs::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.theme-mystery-dark .scene-navigation{background-color:var(--color-surface);border-bottom-color:var(--color-border)}.theme-mystery-dark .scene-navigation__tab{background-color:var(--color-surface);color:var(--color-text-secondary)}.theme-mystery-dark .scene-navigation__tab:hover{background-color:var(--color-surface-elevated);color:var(--color-text)}.theme-mystery-dark .scene-navigation__tab--selected{background-color:var(--color-surface-elevated);color:var(--color-text);border-bottom-color:var(--color-secondary-500)}.theme-mystery-dark .scene-navigation__tab--current{border-left-color:var(--color-success-500)}.theme-mystery-dark .scene-navigation__tabs::-webkit-scrollbar-track{background:var(--color-surface)}.theme-mystery-dark .scene-navigation__tabs::-webkit-scrollbar-thumb{background:var(--color-border)}.theme-mystery-dark .scene-navigation__tabs::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.scene-display{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:0;width:100%;height:100%}.scene-display__header{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0;color:var(--color-primary-500);padding:var(--spacing-lg) var(--spacing-xl);letter-spacing:-.02em;line-height:1.2}.scene-display__description{width:100%;min-height:200px;flex:0 0 auto;resize:none;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);font-family:inherit;font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);cursor:default;overflow:hidden;transition:border-color var(--transition-base);height:auto}.scene-display__description:focus{outline:none;border-color:var(--color-primary-400);box-shadow:0 0 0 3px #0ea5e91a}.scene-display .scene-navigation{margin:0 var(--spacing-xl);border-radius:var(--border-radius-lg);overflow:hidden}.scene-display__content{display:flex;gap:var(--spacing-lg);flex:1;min-height:400px;overflow:hidden}.scene-display__left{flex:0 0 300px;display:flex;flex-direction:column;overflow-y:auto}.scene-display__right{flex:1;display:flex;flex-direction:column;overflow:hidden}.scene-display__no-selection{display:flex;align-items:center;justify-content:center;height:100%;padding:var(--spacing-xl);background-color:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--border-radius-lg);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.scene-display--loading .scene-display__content,.scene-display--empty .scene-display__content{display:flex;align-items:center;justify-content:center;min-height:200px}.game-area{flex:1;background-color:var(--color-surface);border-radius:var(--border-radius-xl);padding:var(--spacing-2xl);box-shadow:var(--shadow-md);min-height:500px;display:flex;flex-direction:column;border:1px solid var(--color-border);transition:box-shadow var(--transition-base)}.game-area:hover{box-shadow:var(--shadow-lg)}.game-area--loading{justify-content:center;align-items:center;gap:var(--spacing-xl);background:var(--color-surface);position:relative;overflow:hidden}.game-area--error,.game-area--empty{justify-content:center;align-items:center;background:var(--color-surface)}.game-area__loading-text{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);animation:pulse 2s ease-in-out infinite;z-index:1}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.game-area__error-text,.game-area__empty-text{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--color-text);text-align:center}.game-area__error-text{color:var(--color-danger-600)}.game-area__placeholder{display:flex;align-items:center;justify-content:center;flex:1;border:2px dashed var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-3xl);background-color:var(--color-background)}.game-area__placeholder-text{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-align:center}.game-start-modal{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-lg);animation:fadeInBackdrop var(--transition-base) ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeInBackdrop{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.game-start-modal__content{background-color:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);max-width:600px;width:100%;box-shadow:var(--shadow-xl);animation:modalSlideIn var(--transition-slow) cubic-bezier(.34,1.56,.64,1);border:1px solid var(--color-border)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.game-start-modal__title{margin:0 0 var(--spacing-2xl) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:center}.game-start-modal__section{margin-bottom:var(--spacing-xl)}.game-start-modal__gender-options{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.game-start-modal__gender-option{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg);border:2px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-surface);cursor:pointer;transition:all var(--transition-base);min-width:140px;box-shadow:var(--shadow-sm)}.game-start-modal__gender-option:hover{border-color:var(--color-primary-500);background-color:var(--color-background-hover);transform:translateY(-3px);box-shadow:var(--shadow-lg)}.game-start-modal__gender-option:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.game-start-modal__gender-option:active{transform:translateY(-1px);box-shadow:var(--shadow-md)}.game-start-modal__gender-option--active{border-color:var(--color-primary-500);background-color:var(--color-primary-50);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.15);transform:scale(1.02)}.game-start-modal__gender-icon{font-size:48px;display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;margin-bottom:var(--spacing-xs)}.game-start-modal__gender-icon--male{background-color:#3b82f633}.game-start-modal__gender-icon--female{background-color:#ec489933}.game-start-modal__gender-icon--non-binary{background-color:#a855f733}.game-start-modal__gender-option--active .game-start-modal__gender-icon--male{background-color:#3b82f659}.game-start-modal__gender-option--active .game-start-modal__gender-icon--female{background-color:#ec489959}.game-start-modal__gender-option--active .game-start-modal__gender-icon--non-binary{background-color:#a855f759}.game-start-modal__gender-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.game-start-modal__actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-2xl)}.game-start-modal__actions .button{min-width:120px}@media (max-width: 600px){.game-start-modal__content{padding:var(--spacing-lg)}.game-start-modal__title{font-size:var(--font-size-xl)}.game-start-modal__gender-options{flex-direction:column}.game-start-modal__gender-option{width:100%;flex-direction:row;justify-content:flex-start}.game-start-modal__gender-icon{width:60px;height:60px;font-size:36px}.game-start-modal__actions{flex-direction:column-reverse}.game-start-modal__actions .button{width:100%}}.game-page{display:flex;flex-direction:column;gap:var(--spacing-xl);height:100%;padding:var(--spacing-xl)}.game-page__header{display:flex;justify-content:flex-start;align-items:center}.game-page__start-button{transition:all var(--transition-base);box-shadow:var(--shadow-lg);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.game-page__start-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.game-page__content{flex:1;display:flex;flex-direction:column;min-height:0}.game-page__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);gap:var(--spacing-3xl);max-width:800px;margin:0 auto}.game-page__intro{background:var(--color-surface-elevated);border-radius:var(--border-radius-xl);padding:var(--spacing-3xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);position:relative;overflow:hidden}.game-page__intro:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-primary-500)}.game-page__intro-text{margin:0;font-size:var(--font-size-lg);line-height:1.8;color:var(--color-text);white-space:pre-line;text-align:left;font-style:italic;position:relative}.game-page__intro-text:before{content:"“";font-size:var(--font-size-4xl);color:var(--color-primary-500);position:absolute;left:-24px;top:-8px;font-style:normal;opacity:.3}.game-page__intro-text:after{content:"”";font-size:var(--font-size-4xl);color:var(--color-primary-500);position:absolute;right:-8px;bottom:-24px;font-style:normal;opacity:.3}.blog-date{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-normal)}.blog-date--full{font-size:var(--font-size-sm)}.blog-date--short{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.blog-tag{display:inline-block;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em;transition:var(--transition-base)}.blog-tag--default{background-color:var(--color-neutral-200);color:var(--color-text-secondary)}.blog-tag--primary{background-color:var(--color-primary-500);color:#fff}.blog-tag--secondary{background-color:var(--color-secondary-500);color:#fff}.blog-post{max-width:800px;margin:0 auto;padding:var(--spacing-2xl)}.blog-post__back{margin-bottom:var(--spacing-2xl)}.blog-post__header{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-2xl);border-bottom:2px solid var(--color-border)}.blog-post__title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;line-height:1.2}.blog-post__meta{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.blog-post__separator{color:var(--color-text-light)}.blog-post__author,.blog-post__read-time{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.blog-post__tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.blog-post__content{color:var(--color-text-primary);line-height:1.8;font-size:var(--font-size-lg)}.blog-post__paragraph{margin:0 0 var(--spacing-xl) 0}.blog-post__paragraph:last-child{margin-bottom:0}@media (max-width: 768px){.blog-post{padding:var(--spacing-lg)}.blog-post__title{font-size:var(--font-size-3xl)}.blog-post__content{font-size:var(--font-size-base)}}.blog-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);display:flex;flex-direction:column;gap:var(--spacing-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.blog-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-primary-500);transform:scaleY(0);transition:transform var(--transition-base);transform-origin:bottom}.blog-card--clickable{cursor:pointer}.blog-card--clickable:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--color-primary-300)}.blog-card--clickable:hover:before{transform:scaleY(1);transform-origin:top}.blog-card--clickable:hover .blog-card__title{color:var(--color-primary-500)}.blog-card--clickable:active{transform:translateY(-2px);box-shadow:var(--shadow-md)}.blog-card--clickable:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.blog-card__header{display:flex;flex-direction:column;gap:var(--spacing-md)}.blog-card__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;line-height:1.3;transition:color var(--transition-base)}.blog-card__tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.blog-card__excerpt{color:var(--color-text-secondary);line-height:1.6;margin:0;font-size:var(--font-size-base)}.blog-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.blog-card__meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.blog-card__separator{color:var(--color-text-light)}.blog-card__author,.blog-card__read-time{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.blog-list{display:flex;flex-direction:column;gap:var(--spacing-2xl);max-width:900px;margin:0 auto;padding:var(--spacing-2xl)}.blog-list__empty{text-align:center;padding:var(--spacing-4xl) var(--spacing-2xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}@media (max-width: 768px){.blog-list{padding:var(--spacing-lg);gap:var(--spacing-xl)}}.blog-page{min-height:100vh;background-color:var(--color-background);padding:var(--spacing-2xl) 0}.blog-page__header{text-align:center;max-width:900px;margin:0 auto var(--spacing-3xl) auto;padding:0 var(--spacing-2xl);animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.blog-page__title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary-500);margin:0 0 var(--spacing-lg) 0;line-height:1.2;position:relative;display:inline-block}.blog-page__title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:4px;background:var(--color-primary-500);border-radius:var(--border-radius-full)}.blog-page__subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);margin:var(--spacing-lg) 0 0 0;line-height:1.6}@media (max-width: 768px){.blog-page{padding:var(--spacing-lg) 0}.blog-page__header{margin-bottom:var(--spacing-2xl);padding:0 var(--spacing-lg)}.blog-page__title{font-size:var(--font-size-3xl)}.blog-page__subtitle{font-size:var(--font-size-base)}}.protected-route__loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.theme-toggle-container{display:flex;align-items:center;gap:var(--spacing-sm)}.theme-toggle__label{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:var(--font-weight-medium);white-space:nowrap}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-base);font-family:inherit;color:var(--color-text);position:relative;overflow:hidden}.theme-toggle:hover{background-color:var(--color-neutral-100);border-color:var(--color-primary-300);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.theme-toggle:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.theme-toggle:active{transform:translateY(0);box-shadow:none}.theme-toggle--small{padding:var(--spacing-xs) var(--spacing-sm);min-width:2rem;min-height:2rem}.theme-toggle--medium{padding:var(--spacing-sm) var(--spacing-md);min-width:2.5rem;min-height:2.5rem}.theme-toggle--large{padding:var(--spacing-md) var(--spacing-lg);min-width:3rem;min-height:3rem}.theme-toggle__icon{font-size:1.2em;transition:transform var(--transition-base);display:flex;align-items:center;justify-content:center}.theme-toggle:hover .theme-toggle__icon{transform:scale(1.1) rotate(10deg)}.theme-toggle__text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.theme-toggle--dark{background-color:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.theme-toggle--dark:hover{background-color:var(--color-surface-elevated);border-color:var(--color-primary-400)}.theme-toggle{position:relative}.theme-toggle:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#627d9833;transition:left var(--transition-slow)}.theme-toggle:hover:before{left:100%}.theme-toggle[aria-label*=Dark] .theme-toggle__icon{color:var(--color-secondary-600)}.theme-toggle[aria-label*=Auto] .theme-toggle__icon,.theme-toggle[aria-label*=Light] .theme-toggle__icon{color:var(--color-primary-600)}@media (prefers-reduced-motion: reduce){.theme-toggle,.theme-toggle__icon,.theme-toggle:before{transition:none}.theme-toggle:hover .theme-toggle__icon{transform:none}}@media (prefers-contrast: high){.theme-toggle{border-width:2px}.theme-toggle:hover{border-width:3px}}.language-selector{position:relative;display:inline-block}.language-selector__wrapper{position:relative;display:flex;align-items:center;background-color:#ffffff1a;border:1px solid var(--color-neutral-400);border-radius:var(--border-radius-md);transition:all var(--transition-base);overflow:hidden}.language-selector__wrapper:hover{border-color:var(--color-primary-400);background-color:#ffffff26}.language-selector__wrapper:focus-within{border-color:var(--color-border-focus);outline:2px solid var(--color-border-focus);outline-offset:2px}.language-selector__flag{padding:0 var(--spacing-xs);font-size:1.4em;line-height:1;display:flex;align-items:center;justify-content:center;min-width:1.8rem;background-color:#ffffff0d;border-right:1px solid var(--color-neutral-400)}.language-selector__select{appearance:none;background:transparent;border:none;padding:var(--spacing-sm) var(--spacing-xs);padding-right:calc(var(--spacing-xs) + 1rem);color:var(--color-neutral-200);font-size:1.2em;font-weight:var(--font-weight-medium);cursor:pointer;outline:none;min-width:2.5rem;flex:1;text-align:center}.language-selector__select option{background-color:var(--color-neutral-800);color:var(--color-neutral-200);padding:var(--spacing-sm);font-size:1.2em;text-align:center}.language-selector__chevron{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--color-neutral-400);font-size:.7em;pointer-events:none;transition:transform var(--transition-base)}.language-selector__wrapper:hover .language-selector__chevron{color:var(--color-primary-400);transform:translateY(-50%) scale(1.1)}.language-selector--small .language-selector__flag{padding:0 calc(var(--spacing-xs) / 2);min-width:1.5rem;font-size:1.1em}.language-selector--small .language-selector__select{padding:var(--spacing-xs) calc(var(--spacing-xs) / 2);padding-right:calc(var(--spacing-xs) + .8rem);font-size:1em;min-width:2rem}.language-selector--small .language-selector__chevron{right:calc(var(--spacing-xs) / 2);font-size:.6em}.language-selector--large .language-selector__flag{padding:0 var(--spacing-sm);min-width:2.5rem;font-size:1.6em}.language-selector--large .language-selector__select{padding:var(--spacing-md) var(--spacing-sm);padding-right:calc(var(--spacing-sm) + 1.2rem);font-size:1.4em;min-width:3rem}.language-selector--large .language-selector__chevron{right:var(--spacing-sm);font-size:.8em}.theme-mystery-light .language-selector__wrapper{background-color:#0000000d;border-color:var(--color-neutral-300)}.theme-mystery-light .language-selector__wrapper:hover{background-color:#0000001a;border-color:var(--color-primary-500)}.theme-mystery-light .language-selector__select{color:var(--color-neutral-800)}.theme-mystery-light .language-selector__flag{background-color:#00000005;border-right-color:var(--color-neutral-300)}.theme-mystery-light .language-selector__chevron{color:var(--color-neutral-600)}.theme-mystery-light .language-selector__wrapper:hover .language-selector__chevron{color:var(--color-primary-500)}@media (max-width: 768px){.language-selector,.language-selector__wrapper,.language-selector__select{width:100%}}@media (prefers-reduced-motion: reduce){.language-selector__wrapper,.language-selector__chevron{transition:none}}@media (prefers-contrast: high){.language-selector__wrapper{border-width:2px}.language-selector__wrapper:focus-within{outline-width:3px}}.settings-panel__backdrop{position:fixed;inset:0;background-color:#00000080;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:flex-end;padding:var(--spacing-lg);padding-top:5rem}.settings-panel{background:var(--color-neutral-800);border:1px solid var(--color-neutral-600);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);width:320px;max-width:90vw;max-height:80vh;overflow:hidden;animation:slideInFromRight .3s ease-out}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.settings-panel__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-600);background:var(--color-neutral-700)}.settings-panel__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-inverse);margin:0}.settings-panel__close-button{background:none;border:none;color:var(--color-neutral-400);font-size:var(--font-size-xl);width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-md);transition:all var(--transition-base)}.settings-panel__close-button:hover{background-color:var(--color-neutral-600);color:var(--color-text-inverse)}.settings-panel__close-button:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.settings-panel__content{padding:var(--spacing-lg);max-height:calc(80vh - 5rem);overflow-y:auto}.settings-panel__section{margin-bottom:var(--spacing-xl)}.settings-panel__section:last-child{margin-bottom:0}.settings-panel__section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-primary-400);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-neutral-700)}.settings-panel__controls{display:flex;flex-direction:column;gap:var(--spacing-lg)}.settings-panel__control{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.settings-panel__control-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-200);flex:1}.settings-panel__logout-button{background-color:transparent;border-color:var(--color-danger-600);color:var(--color-danger-400);width:100%}.settings-panel__logout-button:hover{background-color:var(--color-danger-600);border-color:var(--color-danger-600);color:var(--color-text-inverse)}.settings-panel__logout-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.settings-panel__backdrop{padding:var(--spacing-md);padding-top:4rem}.settings-panel{width:100%;max-width:none}.settings-panel__header,.settings-panel__content{padding:var(--spacing-md)}}[data-theme=dark] .settings-panel{background:var(--color-neutral-900);border-color:var(--color-neutral-700)}[data-theme=dark] .settings-panel__header{background:var(--color-neutral-800);border-bottom-color:var(--color-neutral-700)}[data-theme=light] .settings-panel{background:var(--color-neutral-50);border-color:var(--color-neutral-300);color:var(--color-text-primary)}[data-theme=light] .settings-panel__header{background:var(--color-neutral-100);border-bottom-color:var(--color-neutral-300)}[data-theme=light] .settings-panel__title{color:var(--color-text-primary)}[data-theme=light] .settings-panel__close-button{color:var(--color-neutral-600)}[data-theme=light] .settings-panel__close-button:hover{background-color:var(--color-neutral-300);color:var(--color-text-primary)}[data-theme=light] .settings-panel__section-title{color:var(--color-primary-600);border-bottom-color:var(--color-neutral-300)}[data-theme=light] .settings-panel__control-label{color:var(--color-neutral-700)}.header{background:var(--color-neutral-900);border-bottom:2px solid var(--color-primary-600);box-shadow:var(--shadow-lg);position:sticky;top:0;z-index:var(--z-sticky);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header__container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;min-height:4rem;gap:var(--spacing-xl)}.header__brand{flex-shrink:0}.header__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary-400);margin:0;text-shadow:0 0 20px rgba(98,125,152,.3)}.header__navigation{flex:1;display:flex;justify-content:center}.header__nav-list{display:flex;align-items:center;gap:var(--spacing-md);list-style:none;margin:0;padding:0}.header__nav-item{position:relative}.header__nav-button{background:none;border:none;color:var(--color-neutral-300);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-base);position:relative;white-space:nowrap}.header__nav-button:before{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:0;height:2px;background:var(--color-primary-500);transition:width var(--transition-base)}.header__nav-button:hover{color:var(--color-text-inverse);background-color:#627d981a}.header__nav-button:hover:before{width:80%}.header__nav-button:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.header__nav-button--active{color:var(--color-secondary-400);background-color:#627d9833}.header__nav-button--active:before{width:100%}.header__nav-button--disabled{color:var(--color-neutral-600);cursor:not-allowed;opacity:.5}.header__nav-button--disabled:hover{color:var(--color-neutral-600);background-color:transparent}.header__nav-button--disabled:before{display:none}.header__user-section{display:flex;align-items:center;gap:var(--spacing-lg);flex-shrink:0}.header__welcome{color:var(--color-neutral-200);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.header__username{color:var(--color-secondary-400);font-weight:var(--font-weight-semibold)}.header__settings-button{background-color:transparent;border-color:var(--color-neutral-400);color:var(--color-neutral-200);min-width:5rem}.header__settings-button:hover,.header__settings-button[aria-expanded=true]{background-color:var(--color-primary-600);border-color:var(--color-primary-600);color:var(--color-text-inverse)}@media (max-width: 768px){.header__container{padding:0 var(--spacing-md);gap:var(--spacing-md);min-height:3.5rem}.header__title{font-size:var(--font-size-lg)}.header__nav-list{gap:var(--spacing-sm)}.header__nav-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.header__welcome{display:none}.header__user-section{gap:var(--spacing-md)}}@media (max-width: 480px){.header__container{flex-wrap:wrap;min-height:auto;padding:var(--spacing-sm) var(--spacing-md)}.header__brand{order:1;flex:1}.header__user-section{order:2;flex-shrink:0}.header__navigation{order:3;width:100%;justify-content:center;padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-700);margin-top:var(--spacing-sm)}.header__nav-list{justify-content:center;width:100%}.header__nav-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}}.header--investigation-mode{background:#0a1929;border-bottom-color:var(--color-secondary-600);box-shadow:var(--shadow-lg),0 0 30px #f59e0b33}.header--investigation-mode .header__title{animation:mystery-glow 3s infinite alternate}@keyframes mystery-glow{0%{text-shadow:0 0 20px rgba(98,125,152,.3)}to{text-shadow:0 0 20px rgba(98,125,152,.5),0 0 40px rgba(245,158,11,.3)}}.header--game-active{border-bottom-color:var(--color-success-500)}.header--game-active .header__nav-button--active{color:var(--color-success-400);background-color:#10b98133}.header__nav-item--has-notification:after{content:"";position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:.5rem;height:.5rem;background-color:var(--color-danger-500);border-radius:var(--border-radius-full);border:2px solid var(--color-neutral-900);animation:pulse 2s infinite}.game-over-modal{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.game-over-modal__content{background-color:var(--color-background);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideIn .3s ease-out}.game-over-modal__title{margin:0 0 var(--spacing-xl) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:center;padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.game-over-modal--victory .game-over-modal__title{color:var(--color-success)}.game-over-modal--defeat .game-over-modal__title{color:var(--color-danger)}.game-over-modal__section{margin-bottom:var(--spacing-xl)}.game-over-modal__section-title{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.game-over-modal__reason,.game-over-modal__explanation{margin:0;padding:var(--spacing-md);background-color:var(--color-background-secondary);border-radius:var(--border-radius-md);font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;border-left:4px solid var(--color-primary)}.game-over-modal--victory .game-over-modal__reason{border-left-color:var(--color-success)}.game-over-modal--defeat .game-over-modal__reason{border-left-color:var(--color-danger)}.game-over-modal__stats{display:flex;flex-direction:column;gap:var(--spacing-md)}.game-over-modal__stat{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-background-secondary);border-radius:var(--border-radius-md)}.game-over-modal__stat-label{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.game-over-modal__stat-value{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.game-over-modal__actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-2xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.game-over-modal__actions .button{min-width:120px}@media (max-width: 768px){.game-over-modal{padding:var(--spacing-md)}.game-over-modal__content{padding:var(--spacing-lg);max-height:95vh}.game-over-modal__title{font-size:var(--font-size-xl)}.game-over-modal__actions{flex-direction:column}.game-over-modal__actions .button{width:100%}}.bullshit-detection-modal{position:fixed;inset:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.bullshit-detection-modal__content{background-color:var(--color-background);border-radius:var(--border-radius-lg);padding:var(--spacing-2xl);max-width:550px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideIn .3s ease-out;border:3px solid var(--color-warning)}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.bullshit-detection-modal__header{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.bullshit-detection-modal__icon{font-size:48px;margin-bottom:var(--spacing-md);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.bullshit-detection-modal__title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-warning);text-align:center}.bullshit-detection-modal__section{margin-bottom:var(--spacing-xl)}.bullshit-detection-modal__section-title{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.bullshit-detection-modal__reason{margin:0;padding:var(--spacing-md);background-color:var(--color-background-secondary);border-radius:var(--border-radius-md);font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;border-left:4px solid var(--color-warning)}.bullshit-detection-modal__counter{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--color-background-secondary);border-radius:var(--border-radius-md);border:2px solid var(--color-warning)}.bullshit-detection-modal__counter-label{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.bullshit-detection-modal__counter-value{font-size:var(--font-size-2xl);color:var(--color-warning);font-weight:var(--font-weight-bold)}.bullshit-detection-modal__warning{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:#ffc1071a;border-radius:var(--border-radius-md);border:2px solid var(--color-warning);margin-bottom:var(--spacing-xl)}.bullshit-detection-modal__warning-icon{font-size:24px;flex-shrink:0}.bullshit-detection-modal__warning-content{flex:1}.bullshit-detection-modal__warning-title{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-warning)}.bullshit-detection-modal__warning-text{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.bullshit-detection-modal__actions{display:flex;justify-content:center;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.bullshit-detection-modal__actions .button{min-width:150px}@media (max-width: 768px){.bullshit-detection-modal{padding:var(--spacing-md)}.bullshit-detection-modal__content{padding:var(--spacing-lg);max-height:95vh}.bullshit-detection-modal__title{font-size:var(--font-size-xl)}.bullshit-detection-modal__icon{font-size:36px}.bullshit-detection-modal__counter{flex-direction:column;gap:var(--spacing-sm);text-align:center}.bullshit-detection-modal__warning{flex-direction:column;align-items:center;text-align:center}}.app-layout{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-background)}.app-layout__main{flex:1;display:flex;flex-direction:column}.app-layout__content{flex:1;max-width:1200px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);width:100%}@media (max-width: 768px){.app-layout__content{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 480px){.app-layout__content{padding:var(--spacing-md) var(--spacing-sm)}}.app-layout--investigation{background:var(--color-neutral-50)}.app-layout--dark{background:var(--color-neutral-900)}.app-layout--game-active{background:var(--color-background)}.app-layout--game-active .app-layout__content{background-color:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border)}:root{--color-primary-50: #f0f9ff;--color-primary-100: #e0f2fe;--color-primary-200: #bae6fd;--color-primary-300: #7dd3fc;--color-primary-400: #38bdf8;--color-primary-500: #0ea5e9;--color-primary-600: #0284c7;--color-primary-700: #0369a1;--color-primary-800: #075985;--color-primary-900: #0c4a6e;--color-primary-950: #082f49;--color-secondary-50: #fff7ed;--color-secondary-100: #ffedd5;--color-secondary-200: #fed7aa;--color-secondary-300: #fdba74;--color-secondary-400: #fb923c;--color-secondary-500: #f97316;--color-secondary-600: #ea580c;--color-secondary-700: #c2410c;--color-secondary-800: #9a3412;--color-secondary-900: #7c2d12;--color-danger-50: #fef2f2;--color-danger-100: #fee2e2;--color-danger-200: #fecaca;--color-danger-300: #fca5a5;--color-danger-400: #f87171;--color-danger-500: #ef4444;--color-danger-600: #dc2626;--color-danger-700: #b91c1c;--color-danger-800: #991b1b;--color-danger-900: #7f1d1d;--color-success-50: #f0fdf4;--color-success-100: #dcfce7;--color-success-200: #bbf7d0;--color-success-300: #86efac;--color-success-400: #4ade80;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-700: #15803d;--color-success-800: #166534;--color-success-900: #14532d;--color-neutral-50: #fafaf9;--color-neutral-100: #f5f5f4;--color-neutral-200: #e7e5e4;--color-neutral-300: #d6d3d1;--color-neutral-400: #a8a29e;--color-neutral-500: #78716c;--color-neutral-600: #57534e;--color-neutral-700: #44403c;--color-neutral-800: #292524;--color-neutral-900: #1c1917;--color-background: #f8fafc;--color-background-dark: var(--color-neutral-900);--color-background-secondary: #ffffff;--color-background-hover: #f1f5f9;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-text: #1e293b;--color-text-secondary: #64748b;--color-text-light: var(--color-neutral-500);--color-text-inverse: #ffffff;--color-text-primary: #0f172a;--color-border: #e2e8f0;--color-border-focus: var(--color-primary-400);--color-button-primary: var(--color-primary-500);--color-button-primary-hover: var(--color-primary-600);--color-button-primary-text: #ffffff;--color-button-secondary: var(--color-secondary-500);--color-button-secondary-hover: var(--color-secondary-600);--color-button-secondary-text: #ffffff;--color-button-outline: transparent;--color-button-outline-border: var(--color-primary-500);--color-button-outline-text: var(--color-primary-600);--color-button-outline-hover: var(--color-primary-500);--color-button-outline-hover-text: #ffffff;--color-button-danger: var(--color-danger-500);--color-button-danger-hover: var(--color-danger-600);--color-button-danger-text: #ffffff;--color-primary: var(--color-primary-500);--color-primary-light: var(--color-primary-100);--color-primary-rgb: 14, 165, 233;--color-likeability-low: var(--color-danger-500);--color-likeability-medium: var(--color-secondary-500);--color-likeability-high: var(--color-success-500);--color-suspicion-low: var(--color-success-500);--color-suspicion-medium: var(--color-secondary-500);--color-suspicion-high: var(--color-danger-500);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 3rem;--spacing-4xl: 4rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .1), 0 2px 4px -1px rgba(15, 23, 42, .06);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .1), 0 4px 6px -2px rgba(15, 23, 42, .05);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 10px 10px -5px rgba(15, 23, 42, .04);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}.theme-mystery-dark{--color-primary-500: #1e3a5f;--color-primary-600: #152844;--color-primary-700: #0d1929;--color-secondary-500: #8b0000;--color-secondary-600: #660000;--color-danger-500: #cc0000;--color-danger-600: #990000;--color-success-500: #2d5016;--color-success-600: #1f3810;--color-background: #0a0e14;--color-surface: #151921;--color-surface-elevated: #1f2531;--color-text: #c9d1d9;--color-text-primary: #e6edf3;--color-text-secondary: #8b949e;--color-text-light: #8b949e;--color-text-inverse: #0a0e14;--color-border: #2d333b;--color-border-focus: #8b0000;--color-background-secondary: #1f2531;--color-background-hover: #2a3142;--color-button-primary: #1e3a5f;--color-button-primary-hover: #2a4a7c;--color-button-secondary: #8b0000;--color-button-secondary-hover: #a00000;--color-button-outline-border: #8b0000;--color-button-outline-text: #8b0000;--color-button-outline-hover: #8b0000;--color-primary: #1e3a5f;--color-primary-light: rgba(30, 58, 95, .2);--color-primary-rgb: 30, 58, 95}.theme-mystery-light{--color-background: #f8fafc;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-text: #1e293b;--color-text-secondary: #64748b;--color-text-light: var(--color-neutral-500);--color-text-primary: #0f172a;--color-border: #e2e8f0;--color-border-focus: var(--color-primary-400)}*{transition-property:background-color,border-color,color,box-shadow;transition-duration:var(--transition-slow);transition-timing-function:ease-in-out}*[style*=transition],*[class*=button],*[class*=modal],*[class*=card]{transition:inherit}html,body{height:100%}body{line-height:1.5;-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--color-background);color:var(--color-text);transition:background-color var(--transition-slow),color var(--transition-slow)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate;min-height:100%}*:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}*:focus:not(:focus-visible){outline:none}button{background:none;border:none;padding:0;cursor:pointer}a{color:var(--color-primary-600);text-decoration:none}a:hover{color:var(--color-primary-700);text-decoration:underline}ul,ol{list-style:none;padding:0}table{border-collapse:collapse;border-spacing:0}input,textarea,select{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);transition:background-color var(--transition-slow),border-color var(--transition-slow),color var(--transition-slow)}:disabled{opacity:.6;cursor:not-allowed}::selection{background-color:var(--color-secondary-200);color:var(--color-neutral-900)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{height:100%}body{height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color:#111827;background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #2563eb;outline-offset:2px}button{font-family:inherit;font-size:inherit;background:none;border:none;cursor:pointer}
