.notification{position:fixed;top:1rem;left:1rem;transform:none;z-index:1000;min-width:360px;max-width:500px;width:auto;box-shadow:0 10px 25px #00000026;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto}.notification__content{padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;text-align:left;flex-wrap:nowrap}.notification__message{font-weight:500;font-size:.875rem;line-height:1.4;flex:1;min-width:0;word-wrap:break-word;overflow-wrap:break-word;margin-right:.5rem;pointer-events:none}.notification__close-button{background:transparent;border:none;cursor:pointer;font-size:1.25rem;padding:0;margin:-5px 0 0;width:24px;height:24px;min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;flex-shrink:0;line-height:1;position:relative;z-index:10;pointer-events:auto}.notification--success{background:#f0fdf4f2;border:1px solid #bbf7d0;color:#166534}.notification--success .notification__close-button{color:#166534}.notification--success .notification__close-button:hover{background:#1665341a}.notification--error{background:#fef2f2f2;border:1px solid #fecaca;color:#dc2626}.notification--error .notification__close-button{color:#dc2626}.notification--error .notification__close-button:hover{background:#dc26261a}.notification--warning{background:#fffbebf2;border:1px solid #fed7aa;color:#d97706}.notification--warning .notification__close-button{color:#d97706}.notification--warning .notification__close-button:hover{background:#d977061a}.notification--info{background:#eff6fff2;border:1px solid #bfdbfe;color:#1d4ed8}.notification--info .notification__close-button{color:#1d4ed8}.notification--info .notification__close-button:hover{background:#1d4ed81a}.notification--showing{animation:slideInFromTop .3s ease-out forwards}.notification--hiding{animation:slideOutToTop .3s ease-in forwards}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutToTop{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@media (max-width: 768px){.notification{top:1rem;left:1rem;right:1rem;transform:none;min-width:auto;max-width:none;width:auto}.notification--showing{animation:slideInFromTopMobile .3s ease-out forwards}.notification--hiding{animation:slideOutToTopMobile .3s ease-in forwards}.notification__content{padding:.875rem 1rem;flex-direction:row;align-items:flex-start;gap:.75rem;text-align:left}.notification__close-button{margin-top:-5px;margin-left:.5rem}.notification__message{margin-right:0}}@keyframes slideInFromTopMobile{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideOutToTopMobile{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:url(/assets/background-Koo2iaOi.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.4;z-index:-1}.home-page{color:#333}.connection-status{position:fixed;top:1rem;right:1rem;display:flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:#fffffff2;border-radius:12px;font-size:.75rem;font-weight:500;border:none;z-index:100;box-shadow:0 1px 3px #0000001a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.status-indicator{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-text{font-weight:500;line-height:1}.reconnect-button{background:transparent;border:none;color:#6b7280;cursor:pointer;font-size:14px;padding:2px;margin-left:4px;border-radius:3px;transition:color .2s ease}.reconnect-button:hover{color:#374151;background:#0000000d}.main-content{max-width:600px;min-width:380px;margin:0 auto;padding:1rem}.hero-section{text-align:center;margin-bottom:1.5rem;color:#1f2937}.hero-section h2{font-size:1.875rem;margin-top:var(--space-8, 3rem);margin-bottom:0;font-weight:600;color:#374151;text-shadow:0 0 16px #fff}.error-message{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem;border-radius:6px;margin-bottom:1.5rem;text-align:left;font-weight:400;font-size:.875rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.retry-button{background:#dc2626;color:#fff;border:none;padding:.375rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.retry-button:hover{background:#b91c1c}.retry-info{background:#fffbeb;border:1px solid #fed7aa;color:#d97706;padding:.75rem;border-radius:6px;margin-bottom:1.5rem;text-align:center;font-weight:400;font-size:.875rem}.action-tabs{display:flex;gap:0;margin-bottom:2rem;justify-content:center;background:#f3f4f6;border-radius:8px;padding:4px}.tab-button{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:transparent;color:#6b7280;flex:1;box-sizing:border-box}.tab-button:hover{color:#374151}.tab-button.active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.tab-content{background:#fff;border-radius:12px;padding:2rem;border:1px solid #e5e7eb;box-shadow:0 4px 6px #0000000d}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem;text-align:left}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s ease;background:#fff;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.form-group small{display:block;margin-top:.25rem;color:#6b7280;font-size:.8rem;text-align:left}.form-group small.error-message{color:#dc2626;font-weight:500}.form-group input.error{border-color:#dc3545!important;box-shadow:0 0 0 3px #dc35451a!important}.submit-button{width:100%;padding:.875rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:1rem;box-sizing:border-box}.create-button{background:#3b82f6;color:#fff}.join-button{background:#10b981;color:#fff}.submit-button:hover:not(:disabled){opacity:.9}.submit-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.hero-section h2{font-size:1.5rem}.tab-content{padding:1.5rem}.error-message{flex-direction:column;align-items:stretch;gap:.75rem;text-align:center}.retry-button{align-self:center;white-space:normal}}@media (max-width: 480px){.tab-content{padding:1rem}}@media (max-width: 360px){.main-content{min-width:100%;max-width:100%;margin:0}.tab-content{padding:1rem}}.voting-cards{display:flex;flex-direction:column;align-items:center;gap:var(--space-6, 2rem)}.instructions-text{font-size:var(--text-lg, 1.125rem);color:var(--color-gray-600, #6b7280);margin:0}.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}.cards-grid{display:grid;gap:var(--space-4, 1rem);max-width:100%;padding:var(--space-4, 1rem);perspective:1000px;justify-content:center;align-content:center}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));max-width:800px}.cards-grid[data-card-count="1"]{grid-template-columns:1fr;max-width:120px}.cards-grid[data-card-count="2"]{grid-template-columns:repeat(2,1fr);max-width:280px}.cards-grid[data-card-count="3"]{grid-template-columns:repeat(3,1fr);max-width:420px}.cards-grid[data-card-count="4"]{grid-template-columns:repeat(2,1fr);max-width:280px}.cards-grid[data-card-count="5"],.cards-grid[data-card-count="6"],.cards-grid[data-card-count="7"],.cards-grid[data-card-count="8"],.cards-grid[data-card-count="9"]{grid-template-columns:repeat(3,1fr);max-width:420px}.cards-grid[data-card-count="10"],.cards-grid[data-card-count="12"]{grid-template-columns:repeat(4,1fr);max-width:560px}.cards-grid[data-card-count="15"]{grid-template-columns:repeat(5,1fr);max-width:700px}.cards-grid[data-card-count="16"],.cards-fibonacci{grid-template-columns:repeat(4,1fr);max-width:560px}.cards-tshirt{grid-template-columns:repeat(3,1fr);max-width:420px}.cards-custom{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.voting-card{position:relative;aspect-ratio:3/4;background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid var(--color-primary, #3b82f6);border-radius:16px;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;justify-content:center;overflow:hidden;outline:none;box-shadow:0 4px 12px #0000000d;transform-style:preserve-3d}.card-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2, .5rem);z-index:2;padding:var(--space-3, .75rem);width:100%;height:100%}.card-value{font-size:var(--text-5xl, 3rem);font-weight:700;line-height:1;color:var(--color-gray-900, #111827);transition:color .3s ease}.card-description{font-size:var(--text-xs, .75rem);text-align:center;color:var(--color-gray-500, #6b7280);margin-top:auto;opacity:.8;line-height:1.2}.card-small{min-height:80px;min-width:60px}.card-small .card-value{font-size:var(--text-4xl, 2.25rem)}.card-small .card-description{font-size:var(--text-xs, .75rem)}.card-medium{min-height:120px;min-width:80px}.card-medium .card-value{font-size:var(--text-5xl, 3rem)}.card-large{min-height:160px;min-width:100px}.card-large .card-value{font-size:var(--text-6xl, 3.75rem)}.card-large .card-description{font-size:var(--text-sm, .875rem)}.voting-card:before{content:"✨";position:absolute;top:-5px;right:-5px;font-size:12px;opacity:0;transition:all .3s ease;transform:rotate(0) scale(0)}.voting-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(16,185,129,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(245,158,11,.1) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}.voting-card:hover:not(:disabled),.voting-card.hovered:not(:disabled){transform:translateY(-8px) rotate(2deg) scale(1.05);box-shadow:0 20px 40px #00000026;border-color:var(--color-primary, #3b82f6)}.voting-card:hover:not(:disabled) .card-description,.voting-card.hovered:not(:disabled) .card-description{color:var(--color-gray-600, #4b5563)}.voting-card:hover:before,.voting-card.hovered:before{opacity:1;transform:rotate(15deg) scale(1.2)}.voting-card:hover:after,.voting-card.hovered:after{opacity:1}.voting-card:hover .glow-effect,.voting-card.hovered .glow-effect{opacity:1}.voting-card[data-value="3"]:hover{animation:golden-ratio-pulse .8s ease-in-out}.voting-card[data-value="5"]:hover,.voting-card[data-value="8"]:hover{animation:high-five-wiggle .6s ease-in-out}@keyframes golden-ratio-pulse{0%,to{filter:brightness(1) hue-rotate(0deg)}50%{filter:brightness(1.3) hue-rotate(15deg)}}@keyframes high-five-wiggle{0%,to{transform:translateY(-4px) scale(1.05) rotate(0)}25%{transform:translateY(-4px) scale(1.05) rotate(-2deg)}75%{transform:translateY(-4px) scale(1.05) rotate(2deg)}}.voting-card:focus-visible,.voting-card.focused{background:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6);outline:3px solid var(--color-primary, #3b82f6);outline-offset:2px}.voting-card:focus-visible .card-value,.voting-card.focused .card-value{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.voting-card:focus-visible .card-description,.voting-card.focused .card-description{color:#ffffffe6}.voting-card:focus-visible:not(:hover),.voting-card.focused:not(.hovered){transform:translateY(-2px);box-shadow:0 4px 12px #3b82f633}.voting-card.selected{background:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6);transform:translateY(-4px) scale(1.08);box-shadow:0 15px 35px #3b82f699,0 0 0 3px #3b82f64d;animation:selected-glow 2s ease-in-out infinite alternate}.voting-card.selected .card-value{color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.voting-card.selected .card-description{color:#ffffffe6;opacity:1}.voting-card.selected:before{opacity:1}.voting-card.selected .selection-indicator{opacity:1;transform:scale(1);background:#fff3;border:2px solid white}@keyframes selected-glow{0%{box-shadow:0 15px 35px #3b82f699,0 0 0 3px #3b82f64d}to{box-shadow:0 15px 35px #3b82f6cc,0 0 0 3px #3b82f680}}.voting-card:active:not(:disabled){transform:translateY(-2px) scale(1.02);transition:transform .1s ease}.voting-card:active .ripple-effect{animation:ripple .6s ease-out}.voting-card.flipping{animation:card-flip-magic .6s ease-in-out}@keyframes card-flip-magic{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(90deg) scale(1.1);filter:brightness(1.2)}to{transform:rotateY(0) scale(1)}}.voting-card:disabled,.voting-card.disabled{opacity:.4;cursor:not-allowed;pointer-events:none;transform:none!important;box-shadow:none!important}.selection-indicator{position:absolute;top:var(--space-2, .5rem);right:var(--space-2, .5rem);width:24px;height:24px;background:var(--color-success, #10b981);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;opacity:0;transform:scale(0);transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.selection-indicator svg{width:12px;height:12px}.glow-effect{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(45deg,var(--color-primary, #3b82f6),var(--color-primary-light, #60a5fa),var(--color-primary, #3b82f6));border-radius:14px;opacity:0;transition:opacity .3s ease;z-index:0}.glow-effect:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:12px}.ripple-effect{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle,var(--color-primary, #3b82f6) 10%,transparent 70%);opacity:0;transform:scale(0);pointer-events:none}@keyframes ripple{0%{opacity:.3;transform:scale(0)}to{opacity:0;transform:scale(2)}}@media (max-width: 768px){.cards-grid{gap:var(--space-3, .75rem);padding:var(--space-3, .75rem);max-width:100%}.cards-grid[data-card-count="1"]{grid-template-columns:1fr;max-width:100px}.cards-grid[data-card-count="2"]{grid-template-columns:repeat(2,1fr);max-width:240px}.cards-grid[data-card-count="3"]{grid-template-columns:repeat(3,1fr);max-width:360px}.cards-grid[data-card-count="4"]{grid-template-columns:repeat(2,1fr);max-width:240px}.cards-grid[data-card-count="5"],.cards-grid[data-card-count="6"],.cards-grid[data-card-count="7"]{grid-template-columns:repeat(3,1fr);max-width:360px}.cards-grid[data-card-count="8"]{grid-template-columns:repeat(4,1fr);max-width:480px}.cards-grid[data-card-count="9"]{grid-template-columns:repeat(3,1fr);max-width:360px}.cards-grid[data-card-count="10"],.cards-grid[data-card-count="12"]{grid-template-columns:repeat(4,1fr);max-width:480px}.cards-grid:not([data-card-count]){grid-template-columns:repeat(4,1fr)}.voting-card{min-height:100px;min-width:70px}.card-value{font-size:var(--text-4xl, 2.25rem)}.card-description{display:none}.voting-card{padding:var(--space-2, .5rem)}.voting-card:hover:not(:disabled){transform:translateY(-2px) scale(1.02)}.voting-card.selected{transform:translateY(-2px) scale(1.05)}}@media (max-width: 480px){.cards-grid[data-card-count="1"]{grid-template-columns:1fr;max-width:90px}.cards-grid[data-card-count="2"]{grid-template-columns:repeat(2,1fr);max-width:200px}.cards-grid[data-card-count="3"]{grid-template-columns:repeat(3,1fr);max-width:300px}.cards-grid[data-card-count="4"]{grid-template-columns:repeat(2,1fr);max-width:200px}.cards-grid[data-card-count="5"],.cards-grid[data-card-count="6"],.cards-grid[data-card-count="7"],.cards-grid[data-card-count="8"],.cards-grid[data-card-count="9"]{grid-template-columns:repeat(3,1fr);max-width:300px}.cards-grid:not([data-card-count]){grid-template-columns:repeat(3,1fr)}.instructions-text{font-size:var(--text-base, 1rem)}}@media (max-width: 768px) and (orientation: landscape){.cards-grid{grid-template-columns:repeat(6,1fr);max-width:90vw}.voting-card{min-height:80px;aspect-ratio:1}}.participants-container{display:flex;flex-direction:column;height:100%;width:100%;gap:var(--space-3, .75rem);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;padding:var(--space-4, 1rem);box-shadow:0 2px 12px #00000014;border:1px solid var(--color-gray-200, #e5e7eb);box-sizing:border-box}.participants-header{display:flex;flex-direction:column;gap:var(--space-2, .5rem);padding:0}.participants-title{font-size:var(--text-lg, 1.125rem);font-weight:700;color:var(--color-gray-800, #1f2937);margin:0}.participants-summary{display:flex;gap:var(--space-3, .75rem);align-items:center}.summary-item{font-size:var(--text-sm, .875rem);font-weight:600;padding:4px 8px;border-radius:8px;display:flex;align-items:center;gap:4px}.summary-item.voted{background:#10b9811a;color:var(--color-success, #10b981)}.summary-item.pending{background:#f59e0b1a;color:var(--color-warning, #f59e0b)}.empty-state{padding:var(--space-6, 1.5rem);text-align:center;color:var(--color-gray-500, #6b7280);font-style:italic}.participants-controls{display:flex;flex-direction:column;gap:var(--space-2, .5rem);padding-top:var(--space-3, .75rem);border-top:1px solid var(--color-gray-200, #e5e7eb);margin-top:var(--space-3, .75rem)}.participants-controls .control-button{padding:var(--space-2, .5rem) var(--space-3, .75rem);border-radius:8px;font-size:var(--text-sm, .875rem);font-weight:600;border:none;cursor:pointer;transition:all .3s ease;width:100%;text-align:center}.participants-controls .control-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.participants-controls .reveal-votes{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff}.participants-controls .reset-voting{background:linear-gradient(135deg,var(--color-gray-500, #6b7280) 0%,#4b5563 100%);color:#fff}.participants-list{display:flex;flex-direction:column;gap:var(--space-1, .25rem);width:100%;flex:1;overflow-y:auto;padding:0}.participant-item{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-base, 1rem);font-weight:500;line-height:1.2;padding:var(--space-1, .25rem);border-radius:6px;transition:background-color .15s ease;gap:var(--space-2, .5rem)}.participant-item:hover{background-color:#00000005}.participant-name{flex:1;color:var(--color-gray-800, #1f2937);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.voting-status{display:flex;align-items:center;justify-content:center;font-size:var(--text-sm, .875rem);font-weight:600;min-width:20px;height:20px}.voting-status.voted{color:var(--color-success, #10b981)}.voting-status.pending{color:var(--color-warning, #f59e0b);opacity:.7}.vote-display{display:flex;align-items:center;justify-content:center}.bet-status{display:flex;align-items:center;justify-content:center;min-width:14px;margin-right:2px}.bet-placed{font-size:var(--text-sm, .875rem);color:var(--color-primary, #3b82f6);cursor:help}.bet-skipped{font-size:var(--text-sm, .875rem);color:var(--color-gray-600, #6b7280);opacity:.8;cursor:help}.vote-value{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff;font-size:var(--text-sm, .875rem);font-weight:700;padding:4px 8px;border-radius:6px;min-width:24px;text-align:center;box-shadow:0 2px 4px #3b82f64d}.vote-value.revealed{animation:vote-reveal .6s ease-out}.participants-controls{display:flex;gap:var(--space-3, .75rem)}@keyframes vote-reveal{0%{opacity:0;transform:scale(.3) rotate(-10deg)}50%{opacity:1;transform:scale(1.1) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media (max-width: 1024px){.participants-container{padding:var(--space-3, .75rem)}.participants-list{flex-direction:column;gap:var(--space-1, .25rem);width:100%;max-height:200px;overflow-y:auto}.participants-controls{flex-direction:row;gap:var(--space-2, .5rem)}.participants-controls .control-button{flex:1}.voting-status{font-size:14px;min-width:18px;height:18px}.vote-value{padding:2px 6px;min-width:20px}.participant-avatar{width:32px;height:32px}.participant-initials{font-size:12px}.participant-name{font-size:var(--text-sm, .875rem)}.status-text{font-size:12px;padding:1px 6px;min-width:50px}}@media (max-width: 768px){.voting-status{font-size:13px;min-width:16px;height:16px}.vote-value{min-width:18px}.participant-avatar{width:28px;height:28px}.participant-initials{font-size:11px}.participant-name{font-size:14px}.status-text{font-size:11px}.chips-display{font-size:10px}}@media (max-width: 480px){.voting-status{font-size:12px;min-width:15px;height:15px}.vote-value{min-width:16px}.participant-avatar{width:24px;height:24px}.participant-initials{font-size:10px}.participant-name{font-size:13px}.status-text{font-size:10px;padding:1px 4px;min-width:45px}.chips-display{font-size:9px}.participants-controls{flex-direction:column;gap:var(--space-1, .25rem)}}@media (prefers-reduced-motion: reduce){.participant-item,.participant-info,.vote-value{transition:none;animation:none}}.participant-item:focus{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.inline-text-field{display:inline-block;min-width:2rem;padding:var(--space-1, .25rem) var(--space-2, .5rem);font-size:var(--text-base);line-height:1.4;font-family:inherit;color:var(--color-gray-900);background-color:transparent;border:1px solid transparent;border-radius:4px;outline:none;cursor:text;transition:all .2s ease;word-wrap:break-word;overflow-wrap:break-word;-webkit-appearance:none;-moz-appearance:none;appearance:none}.inline-text-field:hover:not(.inline-text-field--disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-200)}.inline-text-field--editing{background-color:#fff;cursor:text}.inline-text-field--placeholder{color:var(--color-gray-400);font-style:italic}.inline-text-field--placeholder:hover:not(.inline-text-field--disabled){color:var(--color-gray-500)}.inline-text-field--disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-gray-50);color:var(--color-gray-500)}.inline-text-field--disabled:hover{background-color:var(--color-gray-50);border-color:transparent}.inline-text-field--multiline{display:block;white-space:pre-wrap;min-height:3rem;max-height:200px;overflow-y:auto;resize:vertical}.inline-text-field--small{padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.inline-text-field--large{padding:var(--space-3) var(--space-4);font-size:var(--text-lg)}.inline-text-field--bordered{border-color:var(--color-gray-300)}.inline-text-field--bordered:hover:not(.inline-text-field--disabled){border-color:var(--color-gray-400)}.inline-text-field--underlined{border:none;border-bottom:1px solid var(--color-gray-300);border-radius:0;padding-left:0;padding-right:0;background-color:transparent}.inline-text-field--underlined:hover:not(.inline-text-field--disabled){border-bottom-color:var(--color-gray-400);background-color:transparent}.inline-text-field--underlined.inline-text-field--editing{border-bottom-color:var(--color-primary);background-color:transparent}.inline-text-field--error{border-color:var(--color-error);color:var(--color-error)}.inline-text-field--error:hover:not(.inline-text-field--disabled){border-color:var(--color-error)}.inline-text-field--error.inline-text-field--editing{border-color:var(--color-error)}.inline-text-field--success{border-color:var(--color-success);color:var(--color-success-dark)}.inline-text-field--success:hover:not(.inline-text-field--disabled){border-color:var(--color-success)}.inline-text-field--success.inline-text-field--editing{border-color:var(--color-success)}.inline-text-field--editing::-moz-selection{background:#3b82f633}.inline-text-field--editing::selection{background:#3b82f633}@media (prefers-reduced-motion: reduce){.inline-text-field{transition:none}}@media (prefers-contrast: high){.inline-text-field{border-color:currentColor}.inline-text-field--editing{outline:1px solid currentColor}}.inline-text-field:focus-visible{outline:1px solid var(--color-primary)}.betting-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.betting-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;max-width:500px;width:90vw;max-height:85vh;overflow-y:auto;animation:modalSlideIn .3s ease-out;min-height:fit-content}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.betting-modal-header{padding:24px 24px 16px;border-bottom:1px solid #e5e7eb;text-align:center;position:relative}.betting-modal-close-button{position:absolute;top:16px;right:16px;background:transparent;border:none;cursor:pointer;color:#6b7280;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;z-index:10;padding:0}.betting-modal-close-button svg{min-width:20px!important;width:20px!important;min-height:20px!important;height:20px!important;display:block!important;flex-shrink:0}.betting-modal-close-button:hover{background:#f3f4f6;color:#374151;transform:scale(1.05)}.betting-modal-close-button:active{transform:scale(.95)}.betting-modal-header h3{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:#1f2937;text-align:center}.betting-modal-header p{margin:0;color:#6b7280;font-size:.95rem}.betting-form{padding:24px;display:flex;flex-direction:column;gap:24px}.bet-type-selector label,.bet-value-selector label,.bet-amount-selector label{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:.95rem}.bet-type-options{display:flex;gap:8px;flex-wrap:wrap}.bet-type-btn{flex:1;min-width:120px;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:4px}.bet-type-name{font-size:.9rem}.bet-multiplier{font-size:.8rem;font-weight:700;color:#10b981;opacity:.8}.bet-type-btn.active .bet-multiplier{color:#059669;opacity:1}.bet-type-btn:hover{border-color:#3b82f6;color:#1f2937}.bet-type-btn.active{border-color:#3b82f6;background:#eff6ff;color:#1d4ed8}.bet-value-select{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;font-size:.95rem;color:#374151;cursor:pointer;transition:border-color .2s ease}.bet-value-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.amount-input-group{display:flex;align-items:center;gap:16px}.amount-slider{flex:1;height:8px;background:#e5e7eb;border-radius:4px;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.amount-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:#3b82f6;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0000001a}.amount-slider::-moz-range-thumb{width:20px;height:20px;background:#3b82f6;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0000001a}.amount-display{font-weight:600;color:#1f2937;min-width:80px;text-align:right;font-size:1.1rem}.payout-preview{margin-top:12px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.payout-label{color:#64748b;font-weight:500}.payout-amount{color:#1e293b}.payout-amount strong{color:#10b981;font-weight:700}.betting-modal-actions{display:flex;gap:12px;margin-top:8px}.btn-secondary,.btn-primary{flex:1;padding:12px 24px;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.95rem}.btn-secondary{background:#f3f4f6;color:#6b7280}.btn-secondary:hover:not(:disabled){background:#e5e7eb;color:#4b5563}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f64d}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 640px){.betting-modal{margin:20px;width:calc(100vw - 40px);max-height:90vh}.bet-type-btn{min-width:unset}.amount-input-group{flex-direction:column;align-items:stretch;gap:8px}.amount-display{text-align:center}.betting-modal-actions{flex-direction:column}.payout-preview{gap:4px;align-items:center}.betting-modal-close-button{top:12px;right:12px;width:28px;height:28px}.betting-modal-close-button svg{width:16px!important;height:16px!important}}.leaderboard{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;overflow:hidden;margin-top:24px}.leaderboard-header{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;padding:16px 20px;text-align:center;position:relative;overflow:hidden}.leaderboard-header:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shine 3s ease-in-out infinite}@keyframes shine{0%{left:-100%}to{left:100%}}.leaderboard-header h3{margin:0;font-size:1.25rem;font-weight:700}.leaderboard-content{padding:0}.leaderboard-row{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.leaderboard-row:last-child{border-bottom:none}.leaderboard-row:hover{background:#f9fafb}.leaderboard-row.winner{background:linear-gradient(135deg,#fef3c7,#fde68a);position:relative}.leaderboard-row.winner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(to bottom,#fbbf24,#f59e0b)}.rank-section{display:flex;align-items:center;gap:8px;min-width:60px}.rank-icon{font-size:1.5rem;line-height:1}.rank-number{font-weight:600;color:#6b7280;font-size:.9rem}.participant-info{flex:1;margin:0 16px}.participant-name{display:block;font-weight:600;color:#1f2937;font-size:1rem}.bet-details{display:flex;gap:12px;align-items:center}.bet-result{font-size:.85rem;color:#6b7280}.bet-amount{font-size:.85rem;font-weight:600;padding:2px 8px;border-radius:12px;background:#f3f4f6;color:#374151}.no-bet-info{font-size:.85rem;color:#9ca3af;font-style:italic}.score-section{text-align:right;min-width:80px}.total-score{display:block;font-size:1.5rem;font-weight:700;color:#1f2937;line-height:1}.score-label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.empty-leaderboard{padding:32px 20px;text-align:center;color:#6b7280}.empty-icon{font-size:2.5rem;margin-bottom:16px;animation:gentle-bounce 2s ease-in-out infinite}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.empty-leaderboard p{margin:0 0 12px;line-height:1.5}.empty-leaderboard p:last-child{margin:0}.empty-leaderboard strong{color:#374151;font-weight:600}.getting-started{padding:16px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;border:1px solid #f59e0b}.getting-started p{margin:0;color:#92400e;font-weight:500;font-size:.9rem}.leaderboard-row.winner .rank-icon{animation:bounce 2s infinite}@media (max-width: 640px){.leaderboard-row{padding:12px 16px}.participant-info{margin:0 12px}.bet-details{gap:8px}.total-score{font-size:1.25rem}.rank-section{min-width:50px}.score-section{min-width:60px}}.session-code-badge{display:inline-flex;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #d1d5db;border-radius:12px;box-shadow:0 2px 12px #00000014;transition:all .3s ease;position:relative}.badge-content{display:flex;align-items:center;padding:.5rem 1rem}.badge-code-section{display:flex;align-items:center;gap:.5rem;margin-right:.75rem}.badge-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-code{font-family:Monaco,Menlo,Courier New,monospace;font-size:1rem;font-weight:700;color:#1d4ed8;letter-spacing:.08em;-webkit-user-select:all;user-select:all;cursor:pointer;padding:.25rem .5rem;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:12px;border:1px solid #60a5fa;transition:all .2s ease}.badge-code:hover{background:linear-gradient(135deg,#bfdbfe,#93c5fd);transform:scale(1.02)}.badge-actions{display:flex;align-items:center;gap:.25rem}.badge-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;padding:0}.badge-action-btn:hover{transform:scale(1.1)}.badge-action-btn:active{transform:scale(.95)}.copy-btn{background:linear-gradient(135deg,#3b82f626,#3b82f640);color:var(--color-primary, #3b82f6);border:1px solid rgba(59,130,246,.2)}.copy-btn:hover{background:linear-gradient(135deg,#3b82f640,#3b82f659);color:var(--color-primary-dark, #1d4ed8);border-color:#3b82f64d;box-shadow:0 2px 8px #3b82f626}.share-btn{background:linear-gradient(135deg,#3b82f61f,#3b82f633);color:var(--color-primary, #3b82f6);border:1px solid rgba(59,130,246,.18)}.share-btn:hover{background:linear-gradient(135deg,#3b82f633,#3b82f64d);color:var(--color-primary-dark, #1d4ed8);border-color:#3b82f647;box-shadow:0 2px 8px #3b82f61f}.leave-btn{background:linear-gradient(135deg,#ef44441f,#dc262633);color:#dc2626;border:1px solid rgba(239,68,68,.18)}.leave-btn:hover{background:linear-gradient(135deg,#ef444433,#dc26264d);color:#b91c1c;border-color:#ef444447;box-shadow:0 2px 8px #ef44441f}.badge-divider{width:1px;height:20px;background:linear-gradient(to bottom,transparent 0%,#d1d5db 20%,#d1d5db 80%,transparent 100%);margin:0 .25rem}.badge-icon{width:16px;height:16px;fill:currentColor;flex-shrink:0;display:block}@media (max-width: 768px){.session-code-badge{border-radius:20px}.badge-code{font-size:1rem}.badge-action-btn{width:28px;height:28px}.badge-icon{width:14px;height:14px}}@media (max-width: 480px){.session-code-badge{border-radius:16px}.badge-content{padding:.25rem .5rem}.badge-code{font-size:.875rem;padding:.25rem}.badge-action-btn{width:24px;height:24px}.badge-icon{width:12px;height:12px}}.vote-change-section{padding:var(--space-4, 1rem);background:linear-gradient(135deg,#fff7ed,#fed7aa);border-radius:8px;border:2px solid #f97316;margin-top:24px;position:relative}.vote-change-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f97316,#ea580c,#f97316);border-radius:8px 8px 0 0;animation:discussion-shimmer 3s ease-in-out infinite}@keyframes discussion-shimmer{0%,to{opacity:1}50%{opacity:.6}}.section-header{text-align:center;margin-bottom:var(--space-4, 1rem)}.section-header h4{font-size:var(--text-lg, 1.125rem);font-weight:600;color:#9a3412;margin:0 0 var(--space-2, .5rem) 0;display:flex;align-items:center;justify-content:center;gap:var(--space-2, .5rem)}.section-header h4:before{content:"🤔";font-size:var(--text-xl, 1.25rem)}.section-description{font-size:var(--text-sm, .875rem);color:#7c2d12;margin:0;line-height:1.5}.current-vote-display{display:flex;align-items:center;justify-content:center;gap:var(--space-2, .5rem);margin-bottom:var(--space-4, 1rem);padding:var(--space-3, .75rem);background:#fff;border-radius:8px;border:1px solid #fed7aa}.current-vote-label{font-size:var(--text-sm, .875rem);font-weight:500;color:#7c2d12}.current-vote-badge{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;font-size:var(--text-sm, .875rem);font-weight:700;padding:4px 12px;border-radius:6px;box-shadow:0 2px 4px #f973164d}.vote-change-dropdown-section{margin-bottom:var(--space-4, 1rem);display:flex;flex-direction:column;gap:var(--space-2, .5rem);align-items:center}.dropdown-label{font-size:var(--text-base, 1rem);font-weight:600;color:#9a3412;text-align:center}.vote-change-select{min-width:280px;max-width:400px;width:100%;padding:var(--space-3, .75rem);font-size:var(--text-base, 1rem);font-weight:500;color:#374151;background:#fff;border:2px solid #fed7aa;border-radius:8px;cursor:pointer;transition:all .2s ease}.vote-change-select:hover{border-color:#f97316;box-shadow:0 2px 8px #f973161a}.vote-change-select:focus{outline:none;border-color:#ea580c;box-shadow:0 0 0 3px #ea580c1a}.vote-change-select option{padding:var(--space-2, .5rem);font-size:var(--text-sm, .875rem)}.vote-change-select option:disabled{color:#9ca3af;font-style:italic}@media (max-width: 768px){.vote-change-select{min-width:250px}}@media (max-width: 480px){.vote-change-section{padding:var(--space-3, .75rem)}.current-vote-display{flex-direction:column;gap:var(--space-1, .25rem)}.vote-change-select{min-width:200px;font-size:var(--text-sm, .875rem);padding:var(--space-2, .5rem)}.dropdown-label{font-size:var(--text-sm, .875rem)}}.particle{position:absolute;border-radius:50%;pointer-events:none;will-change:transform,opacity;transform-origin:center;z-index:1050}.particle--circle{border-radius:50%}.particle--square{border-radius:2px}.particle--star{border-radius:0;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.particle--heart{border-radius:0;background:transparent}.particle--heart:before,.particle--heart:after{content:"";position:absolute;left:50%;top:0;background:inherit;border-radius:50px 50px 0 0;transform:rotate(-45deg);transform-origin:0 100%;width:52%;height:80%}.particle--heart:after{left:0;transform:rotate(45deg);transform-origin:100% 100%}.particle--fall{animation:particleFall var(--duration) linear var(--delay) forwards,particleRotate var(--duration) linear var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--float{animation:particleFloat var(--duration) ease-in-out var(--delay) forwards,particleRotate var(--duration) linear var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--burst{animation:particleBurst var(--duration) ease-out var(--delay) forwards,particleRotate var(--duration) linear var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--sparkle{animation:particleSparkle var(--duration) ease-in-out var(--delay) forwards,particleRotate var(--duration) linear var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}@keyframes particleFall{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}to{transform:translate(var(--end-x)) translateY(calc(var(--end-y) + 100px)) scale(calc(var(--scale) * .8))}}@keyframes particleFloat{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}25%{transform:translate(calc(var(--start-x) + 20px)) translateY(calc(var(--start-y) - 30px)) scale(var(--scale))}50%{transform:translate(calc(var(--start-x) - 15px)) translateY(calc(var(--start-y) - 10px)) scale(var(--scale))}75%{transform:translate(calc(var(--start-x) + 10px)) translateY(calc(var(--start-y) + 20px)) scale(calc(var(--scale) * .9))}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(calc(var(--scale) * .7))}}@keyframes particleBurst{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(0)}20%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(calc(var(--scale) * 1.2))}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(calc(var(--scale) * .6))}}@keyframes particleSparkle{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}10%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(calc(var(--scale) * 1.5))}20%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(calc(var(--scale) * .8))}30%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(calc(var(--scale) * 1.2))}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(0)}}@keyframes particleRotate{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale)) rotate(0)}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(calc(var(--scale) * .8)) rotate(var(--rotation))}}@keyframes particleFade{0%{opacity:0}10%{opacity:1}90%{opacity:.8}to{opacity:0}}@media (max-width: 768px){.particle{z-index:1030}.particle--fall{animation:particleFallSimple var(--duration) linear var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--float{animation:particleFloatSimple var(--duration) ease-in-out var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--burst{animation:particleBurstSimple var(--duration) ease-out var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}.particle--sparkle{animation:particleSparkleSimple var(--duration) ease-in-out var(--delay) forwards,particleFade var(--duration) ease-out var(--delay) forwards}}@keyframes particleFallSimple{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}to{transform:translate(var(--end-x)) translateY(calc(var(--end-y) + 80px)) scale(calc(var(--scale) * .8))}}@keyframes particleFloatSimple{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(calc(var(--scale) * .7))}}@keyframes particleBurstSimple{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(0)}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(calc(var(--scale) * .6))}}@keyframes particleSparkleSimple{0%{transform:translate(var(--start-x)) translateY(var(--start-y)) scale(var(--scale))}to{transform:translate(var(--end-x)) translateY(var(--end-y)) scale(0)}}.particle-effect{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:1040;overflow:hidden}.particle-effect:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;pointer-events:none}.particle-effect *{backface-visibility:hidden;perspective:1000px;transform-style:preserve-3d}@media (max-width: 768px){.particle-effect{z-index:1020}.particle-effect *{will-change:transform;transform-style:flat}}@media (prefers-contrast: high){.particle-effect{opacity:.7}}@media (prefers-reduced-motion: reduce){.particle-effect{display:none}}.particle-effect:focus{outline:none}.particle-effect{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.particle-effect{-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0)}.voting-interface{display:grid;grid-template-areas:"hero hero" "layout layout";grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:100vh;padding:var(--space-4, 1rem)}.voting-layout{grid-area:layout;display:flex;gap:var(--space-4, 1rem);align-items:flex-start}.voting-interface .hero-section{grid-area:hero;text-align:center;margin-bottom:var(--space-4, 1rem);color:#1f2937;padding:var(--space-8, 3rem) 0 var(--space-4, 1rem) 0}.hero-section .session-title-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;margin-bottom:var(--space-5, 1.25rem)}.hero-section .session-title-field{font-size:var(--text-3xl, 1.875rem);font-weight:600;color:#374151;text-shadow:0 0 16px #fff;background:transparent;border:none;text-align:center;border-radius:8px;transition:background-color .2s ease}.hero-section .session-title-field:hover{background:#ffffffb3}.hero-section .session-title-field:focus{background:#ffffffe6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.hero-section .story-title-field{font-size:var(--text-2xl, 1.5rem);font-weight:500;color:#4b5563;text-shadow:0 0 16px #fff;background:transparent;border:none;text-align:center;border-radius:8px;transition:background-color .2s ease}.hero-section .story-title-field:hover{background:#ffffffb3}.hero-section .story-title-field:focus{background:#ffffffe6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.story-title-input.inline{font-size:var(--text-sm, .875rem);font-weight:500;color:var(--color-gray-700, #374151);margin:0;padding:var(--space-2, .5rem) var(--space-3, .75rem);border:2px solid var(--color-gray-300, #d1d5db);border-radius:8px;background:#fff;outline:none;min-width:200px;max-width:300px;transition:border-color .2s ease}.story-title-input.inline:focus{border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.voting-main{flex:1;background:#fff;border-radius:12px;padding:var(--space-1, .25rem);box-shadow:0 2px 12px #00000014;border:1px solid var(--color-gray-200, #e5e7eb);overflow-y:auto}.voting-main.results-mode{padding:0}.voting-content{max-width:100%}.waiting-state{text-align:center;padding:var(--space-8, 3rem) var(--space-4, 1rem);color:var(--color-gray-600, #4b5563)}.waiting-state h2{font-size:var(--text-2xl, 1.5rem);font-weight:600;margin-bottom:var(--space-3, .75rem);color:var(--color-gray-800, #1f2937)}.waiting-state p{font-size:var(--text-base, 1rem);margin:0}.voting-results{padding:var(--space-6, 2rem);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;border:2px solid var(--color-primary-light, #93c5fd);position:relative;overflow:hidden;text-align:left}.voting-results:not(.consensus-achieved):before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#1d4ed8,#3b82f6);animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4, 1rem);flex-wrap:wrap;gap:var(--space-2, .5rem)}.voting-results h3{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--color-primary-dark, #1d4ed8);margin:0}.stat-item.consensus-achieved{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:2px solid #10b981;animation:consensus-celebration 2s ease-in-out;position:relative;overflow:hidden}.stat-item.consensus-achieved:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer-sweep 1.5s ease-in-out .5s}.consensus-celebration-text{font-weight:700;color:#059669;animation:celebration-bounce 1s ease-in-out infinite;text-shadow:0 1px 2px rgba(0,0,0,.1);display:inline-block}@keyframes consensus-celebration{0%{transform:scale(1);box-shadow:0 2px 8px #0000000d}50%{transform:scale(1.1);box-shadow:0 8px 25px #10b9814d}to{transform:scale(1);box-shadow:0 4px 15px #10b98133}}@keyframes shimmer-sweep{0%{left:-100%}to{left:100%}}@keyframes celebration-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1px)}}.voting-statistics{margin-top:var(--space-4, 1rem);padding:var(--space-4, 1rem);background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-4, 1rem)}.stat-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-3, .75rem);background:var(--color-gray-50, #f9fafb);border-radius:8px;border:1px solid var(--color-gray-200, #e5e7eb)}.stat-label{font-size:var(--text-sm, .875rem);color:var(--color-gray-600, #4b5563);margin-bottom:var(--space-1, .25rem);font-weight:500}.stat-value{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--color-gray-900, #111827)}.vote-breakdown{margin-top:24px;padding:var(--space-4, 1rem);background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}.vote-breakdown h4{font-size:var(--text-lg, 1.125rem);font-weight:600;color:var(--color-gray-800, #1f2937);margin:0 0 var(--space-3, .75rem) 0;text-align:center}.votes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-2, .5rem)}.vote-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2, .5rem) var(--space-3, .75rem);background:var(--color-gray-50, #f9fafb);border-radius:8px;border:1px solid var(--color-gray-200, #e5e7eb);transition:transform .2s ease}.vote-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.voter-name{font-size:var(--text-sm, .875rem);font-weight:500;color:var(--color-gray-700, #374151);flex:1;margin-right:var(--space-2, .5rem)}.vote-badge{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff;font-size:var(--text-sm, .875rem);font-weight:700;padding:2px 8px;border-radius:6px;min-width:24px;text-align:center;box-shadow:0 2px 4px #3b82f64d}.participants-sidebar{width:280px;min-width:280px;display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3, .75rem);text-align:left}@media (max-width: 1024px){.voting-layout{flex-direction:column}.participants-sidebar{width:100%;min-width:auto;flex-direction:column;align-items:stretch;max-height:300px;overflow-y:auto}.votes-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--space-1, .25rem)}}@media (max-width: 768px){.voting-interface{padding:var(--space-3, .75rem)}.hero-section .session-title-field{font-size:var(--text-2xl, 1.5rem)}.hero-section .story-title-field{font-size:var(--text-xl, 1.25rem)}.voting-main{padding:var(--space-4, 1rem)}.voting-main.results-mode{width:calc(100vw - 32px);padding:0}.voting-results{padding:var(--space-4, 1rem)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3, .75rem)}.results-header{flex-direction:column;align-items:center;text-align:center}.votes-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.vote-item{padding:var(--space-2, .5rem)}.voter-name{font-size:12px}.vote-badge{font-size:12px;padding:1px 6px}}@media (max-width: 480px){.voting-interface{padding:var(--space-2, .5rem)}.hero-section .session-title-field{font-size:var(--text-xl, 1.25rem)}.hero-section .story-title-field{font-size:var(--text-lg, 1.125rem)}.voting-main{padding:var(--space-3, .75rem)}.voting-main.results-mode{width:calc(100vw - 32px);padding:0}.stats-grid,.votes-grid{grid-template-columns:1fr}.vote-breakdown{padding:var(--space-3, .75rem)}.vote-breakdown h4{font-size:var(--text-base, 1rem)}}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.success-state{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:var(--color-success, #10b981)}.error-state{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:var(--color-error, #ef4444)}.voting-session-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:url(/assets/background-Koo2iaOi.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.4;z-index:-1}.voting-session-page{min-height:100vh}.session-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:var(--space-8, 3rem) var(--space-4, 1rem)}.session-prompt h2{font-size:var(--text-3xl, 1.875rem);font-weight:700;color:var(--color-gray-800, #1f2937);margin-bottom:var(--space-4, 1rem)}.session-prompt p{font-size:var(--text-lg, 1.125rem);color:var(--color-gray-600, #4b5563);margin-bottom:var(--space-6, 2rem);max-width:500px}.back-button{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff;border:none;padding:var(--space-3, .75rem) var(--space-6, 2rem);border-radius:8px;font-size:var(--text-base, 1rem);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}.back-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.loading-state,.results-waiting-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:var(--space-8, 3rem) var(--space-4, 1rem)}.loading-spinner{width:60px;height:60px;border:4px solid var(--color-gray-200, #e5e7eb);border-top:4px solid var(--color-primary, #3b82f6);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--space-6, 2rem)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state h2{font-size:var(--text-2xl, 1.5rem);font-weight:600;color:var(--color-gray-800, #1f2937);margin-bottom:var(--space-3, .75rem)}.loading-state p{font-size:var(--text-base, 1rem);color:var(--color-gray-600, #4b5563);margin:0}.results-waiting-state h2{font-size:var(--text-2xl, 1.5rem);font-weight:600;color:var(--color-gray-800, #1f2937);margin-bottom:var(--space-3, .75rem)}.results-waiting-state p{font-size:var(--text-base, 1rem);color:var(--color-gray-600, #4b5563);margin:0}.waiting-actions{display:flex;gap:var(--space-3, .75rem);justify-content:center;margin-top:var(--space-6, 2rem)}.reset-votes-button{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff;border:none;padding:var(--space-3, .75rem) var(--space-6, 2rem);border-radius:8px;font-size:var(--text-base, 1rem);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #3b82f64d}.reset-votes-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.leave-button{background:transparent;color:var(--color-gray-600, #4b5563);border:2px solid var(--color-gray-300, #d1d5db);padding:var(--space-3, .75rem) var(--space-6, 2rem);border-radius:8px;font-size:var(--text-base, 1rem);font-weight:600;cursor:pointer;transition:all .3s ease}.leave-button:hover{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-400, #9ca3af);transform:translateY(-1px)}.story-management{position:relative;margin-bottom:var(--space-6, 2rem)}.story-prompt{background:#fff;padding:var(--space-6, 2rem);border-radius:16px;box-shadow:0 4px 20px #00000014;border:2px solid var(--color-primary-light, #93c5fd);margin:var(--space-4, 1rem);text-align:center}.story-prompt h3{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--color-primary-dark, #1d4ed8);margin-bottom:var(--space-3, .75rem)}.story-prompt p{font-size:var(--text-base, 1rem);color:var(--color-gray-600, #4b5563);margin-bottom:var(--space-4, 1rem);line-height:1.6}.create-story-button{background:linear-gradient(135deg,var(--color-success, #10b981) 0%,#059669 100%);color:#fff;border:none;padding:var(--space-3, .75rem) var(--space-6, 2rem);border-radius:8px;font-size:var(--text-base, 1rem);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #10b9814d}.create-story-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.story-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4, 1rem)}.story-form{background:#fff;padding:var(--space-6, 2rem);border-radius:16px;box-shadow:0 20px 40px #0003;max-width:600px;width:100%;max-height:80vh;overflow-y:auto}.story-form h4{font-size:var(--text-xl, 1.25rem);font-weight:700;color:var(--color-gray-900, #111827);margin-bottom:var(--space-6, 2rem);text-align:center}.form-group{margin-bottom:var(--space-4, 1rem)}.form-group label{display:block;font-size:var(--text-sm, .875rem);font-weight:600;color:var(--color-gray-700, #374151);margin-bottom:var(--space-2, .5rem)}.form-group input,.form-group textarea{width:100%;padding:var(--space-3, .75rem);border:2px solid var(--color-gray-300, #d1d5db);border-radius:8px;font-size:var(--text-base, 1rem);transition:border-color .3s ease;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{min-height:100px;font-family:inherit}.form-actions{display:flex;gap:var(--space-3, .75rem);justify-content:flex-end;margin-top:var(--space-6, 2rem);padding-top:var(--space-4, 1rem);border-top:1px solid var(--color-gray-200, #e5e7eb)}.submit-button{background:linear-gradient(135deg,var(--color-primary, #3b82f6) 0%,#1d4ed8 100%);color:#fff;border:none;padding:var(--space-3, .75rem) var(--space-5, 1.25rem);border-radius:8px;font-size:var(--text-sm, .875rem);font-weight:600;cursor:pointer;transition:all .3s ease}.submit-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.cancel-button{background:transparent;color:var(--color-gray-600, #4b5563);border:2px solid var(--color-gray-300, #d1d5db);padding:var(--space-3, .75rem) var(--space-5, 1.25rem);border-radius:8px;font-size:var(--text-sm, .875rem);font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-button:hover{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-400, #9ca3af)}@media (max-width: 768px){.session-prompt{padding:var(--space-6, 2rem) var(--space-4, 1rem)}.session-prompt h2{font-size:var(--text-2xl, 1.5rem)}.session-prompt p{font-size:var(--text-base, 1rem)}.story-prompt{margin:var(--space-3, .75rem);padding:var(--space-4, 1rem)}.story-form{padding:var(--space-4, 1rem);margin:var(--space-2, .5rem)}.form-actions{flex-direction:column}.submit-button,.cancel-button{width:100%;justify-content:center}}@media (max-width: 480px){.story-form-overlay{padding:var(--space-2, .5rem)}.story-form{padding:var(--space-3, .75rem)}.loading-spinner{width:40px;height:40px}.loading-state h2{font-size:var(--text-xl, 1.25rem)}.results-waiting-state{padding:var(--space-6, 2rem) var(--space-4, 1rem)}.results-waiting-state h2{font-size:var(--text-xl, 1.25rem)}.waiting-actions{flex-direction:column;width:100%}.reset-votes-button,.leave-button{width:100%}}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 2rem;--space-8: 3rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--color-primary: #3b82f6;--color-primary-light: #60a5fa;--color-primary-dark: #1d4ed8;--color-success: #10b981;--color-success-light: #6ee7b7;--color-success-dark: #065f46;--color-warning: #f59e0b;--color-warning-light: #fcd34d;--color-warning-dark: #a16207;--color-error: #ef4444;--color-red-500: #ef4444;--color-purple-600: #9333ea;--color-purple-700: #7c3aed;--color-purple-300: #d8b4fe;--color-purple-100: #f3e8ff;--color-emerald-500: #10b981;--color-emerald-600: #059669;--color-emerald-300: #6ee7b7;--color-yellow-100: #fef3c7;--color-yellow-700: #a16207;--color-blue-100: #dbeafe;--color-blue-700: #1d4ed8;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827}#root{max-width:min(100%,1280px);margin:0 auto;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:start;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;color:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
