.mock-lobby{max-width:640px;margin:0 auto;padding:1.5rem 1rem 3rem}.mock-lobby__header{margin-bottom:2rem}.mock-lobby__title{color:var(--color-gray-900,#111827);margin:0 0 .375rem;font-size:1.35rem;font-weight:700;line-height:1.2}.mock-lobby__subtitle{color:var(--color-gray-500,#6b7280);font-size:var(--font-size-sm);margin:0}.mock-lobby__section-header{border-left:2px solid var(--color-primary,#1c497c);margin-bottom:1rem;padding-left:.625rem}.mock-lobby__section-header-title{color:var(--color-gray-900,#111827);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;margin:0;font-weight:700}.mock-lobby__section-header-sub{color:var(--color-gray-400,#9ca3af);margin:.25rem 0 0;font-size:.8125rem}.mock-lobby__auth-wall{background:var(--color-gray-50,#f9fafb);text-align:center;border-radius:.5rem;padding:3rem 1rem}html.dark .mock-lobby__auth-wall{box-shadow:0 0 0 1px var(--content-border,#555),var(--shadow-lg)}.mock-lobby__auth-wall p{color:var(--color-gray-500,#6b7280);margin:0 0 1rem}.mock-lobby__signin-btn{border-radius:.375rem;padding:.5rem 1.5rem;font-weight:600}.mock-lobby__create{margin-bottom:2.5rem}.mock-lobby__create-form{flex-direction:column;gap:1rem;display:flex}.mock-lobby__form-row{flex-direction:column;gap:.375rem;display:flex}.mock-lobby__label{color:var(--color-gray-400,#9ca3af);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.mock-lobby__timer-chips{flex-wrap:wrap;gap:.5rem;display:flex}.mock-lobby__chip{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);color:var(--color-gray-600,#4b5563);cursor:pointer;transition:all var(--transition-fast);border-radius:999px;padding:.375rem .875rem;font-size:.8125rem;font-weight:500}.mock-lobby__chip:hover{border-color:var(--color-primary,#1c497c);color:var(--color-primary,#1c497c)}.mock-lobby__chip--active{background:var(--color-primary-fill,var(--color-primary,#1c497c));border-color:var(--color-primary,#1c497c);color:var(--on-color-primary,#fff)}.mock-lobby__chip--active:hover{color:#fff}.mock-lobby__board{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-md,.5rem);flex-direction:column;gap:.875rem;padding:1rem 1.125rem;display:flex}html.dark .mock-lobby__board{box-shadow:0 0 0 1px var(--content-border,#555),var(--shadow-lg)}.mock-lobby__board-head{border-left:2px solid var(--color-primary,#1c497c);padding-left:.625rem}.mock-lobby__board-title{color:var(--color-gray-900,#111827);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;margin:0;font-weight:700}.mock-lobby__board-hint{color:var(--color-gray-400,#9ca3af);font-size:var(--font-size-xs);margin:.125rem 0 0;line-height:1.35}.mock-lobby__sub-label{color:var(--color-gray-500,#6b7280);font-size:var(--font-size-2xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.mock-lobby__select{background:var(--input-bg,#fff);border:1px solid var(--color-gray-200,#e5e7eb);border-radius:var(--radius-sm,.375rem);color:var(--color-gray-900,#111827);cursor:pointer;padding:.4375rem .625rem;font-size:.8125rem;font-weight:500}.mock-lobby__select:focus-visible{outline:2px solid var(--color-primary,#1c497c);outline-offset:1px}.mock-lobby__select--compact{font-size:var(--font-size-xs);padding:.3125rem .5rem}.mock-lobby__presets{flex-wrap:wrap;gap:.375rem;display:flex}.mock-lobby__disclosure{color:var(--color-primary,#1c497c);cursor:pointer;font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;transition:color var(--transition-fast);background:0 0;border:none;align-self:flex-start;align-items:center;gap:.375rem;padding:.375rem 0;font-weight:600;display:inline-flex}.mock-lobby__disclosure:hover{color:var(--btn-primary-bg-hover,#164066)}.mock-lobby__disclosure-caret{font-size:var(--font-size-2xs);transition:transform var(--transition-fast);line-height:1;display:inline-block}.mock-lobby__disclosure--open .mock-lobby__disclosure-caret{transform:rotate(90deg)}.mock-lobby__per-team{flex-direction:column;padding-top:.25rem;display:flex}.mock-lobby__per-team[hidden]{display:none}.mock-lobby__per-team-row{border-bottom:1px solid var(--color-gray-100,#f3f4f6);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.mock-lobby__per-team-row:last-child{border-bottom:none}.mock-lobby__per-team-row--yours{border-left:2px solid var(--color-primary,#1c497c);background:#1c497c0a;margin-left:-.625rem;padding-left:.625rem}.mock-lobby__per-team-name{color:var(--color-gray-700,#374151);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.8125rem;font-weight:500;overflow:hidden}.mock-lobby__per-team-row--yours .mock-lobby__per-team-name{color:var(--color-gray-900,#111827);font-weight:700}.mock-lobby__you-badge{letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:.25rem;padding:.125rem .375rem;font-size:.5625rem;font-weight:700;display:inline-block}.mock-lobby__start-btn,.mock-lobby__you-badge{background:var(--color-primary-fill,var(--color-primary,#1c497c));color:var(--on-color-primary,#fff)}.mock-lobby__start-btn{cursor:pointer;font-size:var(--font-size-sm);transition:opacity var(--transition-fast);border:none;border-radius:.375rem;margin-top:.5rem;padding:.625rem 1.5rem;font-weight:600}.mock-lobby__start-btn:hover{opacity:.9}.mock-lobby__start-btn:disabled{cursor:not-allowed;opacity:.5}.mock-lobby__error{color:var(--color-error,#ef4444);min-height:1.25rem;margin:0;font-size:.8125rem}.mock-lobby__sessions{margin-bottom:2rem}.mock-lobby__sessions-list{flex-direction:column;gap:.75rem;display:flex}.mock-lobby__empty{color:var(--color-gray-400,#9ca3af);font-size:var(--font-size-sm);text-align:center;padding:2rem 0}.mock-lobby__session-card{background:var(--card-bg,#fff);border-left:4px solid var(--session-accent,var(--color-gray-300,#d1d5db));box-shadow:var(--box-shadow-lg,0 1px 2px #0f172a0a,0 4px 12px #0f172a0f);color:inherit;min-height:64px;transition:box-shadow var(--transition-base),transform var(--transition-base);border-radius:.75rem;flex-direction:column;gap:.625rem;padding:1rem 1.125rem;text-decoration:none;display:flex;position:relative}.mock-lobby__session-card:focus-visible,.mock-lobby__session-card:hover{box-shadow:var(--shadow-lg,0 4px 12px #00000014);outline:none;transform:translateY(-2px)}html.dark .mock-lobby__session-card,html.dark .mock-lobby__session-card:focus-visible,html.dark .mock-lobby__session-card:hover{box-shadow:0 0 0 1px var(--content-border,#555),var(--shadow-lg)}.mock-lobby__session-card--lobby{--session-accent:var(--color-info,#3b82f6)}.mock-lobby__session-card--active{--session-accent:var(--color-success,#22c55e)}.mock-lobby__session-card--paused{--session-accent:var(--color-warning,#eab308)}.mock-lobby__session-card--completed{--session-accent:var(--color-gray-300,#d1d5db);opacity:.7}.mock-lobby__session-card--yours{--session-accent:var(--color-primary,#1c497c)}.mock-lobby__session-delete{color:var(--color-gray-400,#9ca3af);cursor:pointer;font-size:var(--font-size-sm);opacity:.35;height:28px;transition:opacity var(--transition-fast),background var(--transition-fast),color var(--transition-fast);background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;padding:0;line-height:1;display:inline-flex}.mock-lobby__session-card:focus-within .mock-lobby__session-delete,.mock-lobby__session-card:hover .mock-lobby__session-delete,.mock-lobby__session-delete:focus-visible{opacity:1}.mock-lobby__session-delete:hover{background:var(--color-error-light,#fee2e2);color:var(--color-error,#dc2626)}.mock-lobby__session-delete:disabled{cursor:not-allowed;opacity:.4}.mock-lobby__session-owner{align-items:center;gap:.75rem;min-width:0;display:flex}.mock-lobby__session-avatar{color:var(--color-gray-500,#6b7280);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:.8125rem;font-weight:700;display:flex;overflow:hidden}.mock-lobby__session-avatar--placeholder{background:var(--color-gray-100,#f3f4f6)}.mock-lobby__session-avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.mock-lobby__session-owner-info{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.mock-lobby__session-owner-name{color:var(--color-gray-900,#111827);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:700;line-height:1.2;overflow:hidden}.mock-lobby__session-owner-sub{color:var(--color-gray-500,#6b7280);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.mock-lobby__status{font-size:var(--font-size-3xs);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;flex-shrink:0;align-self:center;padding:.1875rem .5rem;font-weight:700}.mock-lobby__status--lobby{background:var(--badge-info-bg,#eff6ff);color:var(--badge-info-text,#2563eb)}.mock-lobby__status--active{background:var(--badge-success-bg,#f0fdf4);color:var(--badge-success-text,#16a34a)}.mock-lobby__status--paused{background:var(--badge-warning-bg,#fefce8);color:var(--badge-warning-text,#ca8a04)}.mock-lobby__status--completed{background:var(--color-gray-100,#f3f4f6);color:var(--color-gray-500,#6b7280)}.mock-lobby__session-details{color:var(--color-gray-500,#6b7280);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.375rem .75rem;padding-left:calc(44px + .75rem);display:flex}.mock-lobby__session-detail strong{color:var(--color-gray-700,#374151);font-weight:700}.mock-lobby__session-detail--time{color:var(--color-gray-400,#9ca3af);font-size:var(--font-size-2xs);margin-left:auto}@media (width<=480px){.mock-lobby__session-details{padding-left:0}}.mock-lobby__toast-container{pointer-events:none;z-index:80;flex-direction:column;gap:.5rem;display:flex;position:fixed;top:1rem;right:1rem}.mock-lobby__toast{color:#fff;opacity:0;pointer-events:auto;border-radius:.5rem;max-width:22rem;padding:.75rem 1rem;font-size:.8125rem;font-weight:500;transition:opacity .3s,transform .3s;transform:translate(1rem);box-shadow:0 4px 12px #0003}.mock-lobby__toast--visible{opacity:1;transform:translate(0)}.mock-lobby__toast--error{background:var(--color-error,#dc2626)}.mock-lobby__toast--success{background:var(--color-success,#16a34a)}.mock-lobby__toast--info{background:var(--color-info,#2563eb)}.mock-lobby__confirm-overlay{backdrop-filter:blur(2px);z-index:90;background:#0f172a73;justify-content:center;align-items:center;padding:1rem;animation:.12s ease-out mock-lobby-confirm-fade;display:flex;position:fixed;inset:0}.mock-lobby__confirm-dialog{background:var(--card-bg,#fff);border:1px solid var(--content-border,#e2e8f0);border-radius:.75rem;width:min(26rem,100vw - 2rem);padding:1.25rem 1.375rem 1.125rem;animation:.16s cubic-bezier(.4,0,.2,1) mock-lobby-confirm-slide;box-shadow:0 20px 40px #0000002e}.mock-lobby__confirm-title{color:var(--color-gray-900,#111827);margin:0 0 .375rem;font-size:1rem;font-weight:700}.mock-lobby__confirm-body{color:var(--color-gray-600,#4b5563);font-size:var(--font-size-sm);margin:0 0 1rem;line-height:1.5}.mock-lobby__confirm-actions{justify-content:flex-end;gap:.5rem;display:flex}.mock-lobby__confirm-cancel{background:var(--color-gray-50,#f9fafb);border:1px solid var(--color-gray-200,#e5e7eb);color:var(--color-gray-700,#374151);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);border-radius:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600}.mock-lobby__confirm-cancel:hover{background:var(--color-gray-100,#f3f4f6);border-color:var(--color-gray-300,#d1d5db)}.mock-lobby__confirm-confirm{background:var(--color-primary-fill,var(--color-primary,#1c497c));color:var(--on-color-primary,#fff);cursor:pointer;transition:background var(--transition-fast);border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600}.mock-lobby__confirm-confirm:hover{background:var(--btn-primary-bg-hover,#164066)}.mock-lobby__confirm-confirm--destructive{background:var(--color-error,#dc2626)}.mock-lobby__confirm-confirm--destructive:hover{background:var(--color-error-dark,#b91c1c)}@keyframes mock-lobby-confirm-fade{0%{opacity:0}to{opacity:1}}@keyframes mock-lobby-confirm-slide{0%{opacity:0;transform:translateY(4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.mock-lobby__conf{flex-wrap:wrap;align-items:center;gap:.625rem;margin:-1rem 0 1.75rem;display:flex}.mock-lobby__conf-label{color:var(--color-gray-500,#6b7280);font-size:var(--font-size-2xs);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.mock-lobby__conf-list{gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.mock-lobby__conf-chip{background:var(--card-bg,#fff);border:1px solid var(--color-gray-300,#d1d5db);color:var(--color-gray-700,#374151);border-radius:999px;padding:.3125rem .75rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-block}.mock-lobby__conf-chip--on{background:var(--color-primary,#1c497c);border-color:var(--color-primary,#1c497c);color:var(--btn-primary-text,#fff)}.mock-lobby__gate{background:var(--color-gray-50,#f9fafb);border-left:3px solid var(--color-warning,#eab308);border-radius:.5rem;margin-bottom:2.5rem;padding:1.25rem}html.dark .mock-lobby__gate{box-shadow:0 0 0 1px var(--content-border,#555),var(--shadow-lg)}.mock-lobby__gate-title{color:var(--color-gray-900,#111827);margin:0 0 .5rem;font-size:1rem;font-weight:700}.mock-lobby__gate-body,.mock-lobby__gate-note{color:var(--color-gray-600,#4b5563);font-size:var(--font-size-sm);margin:0;line-height:1.55}.mock-lobby__gate-note{color:var(--color-gray-500,#6b7280);margin-top:.75rem;font-size:.8125rem}.mock-lobby__gate-list{color:var(--color-gray-600,#4b5563);margin:.75rem 0 0;padding-left:1.125rem;font-size:.8125rem;line-height:1.7}.mock-lobby__gate-link{color:var(--color-primary,#1c497c);margin-top:.875rem;font-size:.8125rem;font-weight:600;display:inline-block}.mock-lobby__fixed-value{color:var(--color-gray-700,#374151);font-size:var(--font-size-sm);margin:0;font-weight:600}
