.roulette-page-shell{--roulette-surface: var(--surface);--roulette-quiet-bg: var(--kinari);--roulette-backdrop-top: #fffdf8;--roulette-backdrop-middle: #f8f3ea;--roulette-backdrop-bottom: #f4eede;display:grid;gap:24px}.prefecture-shape.state-posted+.prefecture-label{fill:#fff}.roulette-stage-grid{margin-top:0;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.9fr);gap:24px;align-items:stretch}.roulette-stage-shell{position:relative;min-height:300px;display:grid;align-content:start;gap:16px;padding:24px;border-radius:0;border:1px solid var(--border-light);background:var(--roulette-surface);box-shadow:none}.roulette-stage-canvas{width:100%;height:100%;min-height:484px;display:block;border-radius:0}.roulette-stage-placeholder{width:100%;min-height:264px;display:grid;align-content:center;justify-items:center;gap:12px;padding:24px;border-radius:0;background:var(--background-secondary);border:1px dashed var(--border);text-align:center}.roulette-stage-visual{position:relative;isolation:isolate;width:100%;min-height:264px;display:grid;place-items:center;overflow:hidden;padding:24px;border-radius:0;background:var(--roulette-quiet-bg);border:1px solid var(--border-light)}.roulette-stage-visual-image,.roulette-stage-visual-scrim{position:absolute;inset:0;border-radius:inherit}.roulette-stage-visual-image{z-index:-2;background-position:center;background-repeat:no-repeat;background-size:contain;opacity:.92}.roulette-stage-visual-scrim{z-index:-1;background:transparent}.roulette-stage-visual-name{max-width:min(100%,10em);margin:0;color:var(--text-primary);font-size:clamp(1.5rem,3.8vw,2.6rem);font-weight:700;line-height:1.15;letter-spacing:2.4px;text-align:center;text-wrap:balance;text-shadow:none}.roulette-stage-status-chip{position:absolute;top:16px;left:16px;z-index:1}.roulette-stage-cta{width:100%;min-height:264px;display:grid}.roulette-stage-cta-button{width:100%;min-height:264px;padding:32px 28px;border-radius:4px;font-size:clamp(1.5rem,3.2vw,2.2rem);letter-spacing:normal;box-shadow:none}.roulette-stage-placeholder-text{max-width:28rem;margin:0;color:var(--text-secondary)}.roulette-journey-summary-panel{padding:16px 18px;background:var(--roulette-surface)}.roulette-guest-login-panel{display:grid;gap:12px;height:100%;padding:16px 18px;align-content:center;background:var(--roulette-surface)}.roulette-guest-login-panel h2{margin:0;font-size:1.05rem;line-height:1.6}.roulette-guest-login-actions{display:flex;flex-direction:column;gap:12px}.roulette-guest-login-actions .button{width:100%;min-height:48px}.roulette-journey-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px}.roulette-journey-summary-avatar{width:60px;height:60px;display:grid;place-items:center;overflow:hidden;border-radius:999px;border:1px solid var(--border);background:var(--kinari);flex-shrink:0}.roulette-journey-summary-avatar img{width:100%;height:100%;display:block;object-fit:cover}.roulette-journey-summary-avatar-placeholder{color:var(--text-secondary);font-size:.78rem;font-weight:700;letter-spacing:normal}.roulette-journey-summary-name{min-width:0;margin:0;color:var(--text-primary);font-size:1.05rem;font-weight:700;line-height:1.6}.roulette-journey-summary-switch{justify-self:end}.roulette-stage-trip-panel{padding:16px 18px;background:var(--roulette-surface)}.roulette-stage-trip-panel .hint{margin:0}.roulette-stage-trip-status{display:flex;align-items:center;gap:10px}.roulette-stage-trip-actions{display:grid;gap:10px}.roulette-primary-actions{margin-top:0;display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}.roulette-primary-actions .button{flex:1 1 10rem}.roulette-skip-button-wrap{position:relative;flex:1 1 10rem;padding-bottom:1rem}.roulette-primary-actions>*{min-width:0}.roulette-skip-button-wrap .button{width:100%}.roulette-skip-button-status{position:absolute;right:0;bottom:0;color:var(--text-tertiary);font-size:.68rem;font-weight:700;line-height:1.2;white-space:nowrap;pointer-events:none}.roulette-stage-trip-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.roulette-stage-trip-meta div{padding:12px 14px;border-radius:0;background:var(--background-secondary);border:1px solid var(--border-light)}.roulette-stage-trip-meta dt{font-size:.76rem;color:var(--text-tertiary);letter-spacing:normal;text-transform:none;font-weight:700}.roulette-stage-trip-meta dd{margin:8px 0 0;color:var(--text-primary);font-size:1rem;font-weight:700}.roulette-fullscreen-stage{position:fixed;inset:0;z-index:1200;height:100dvh;max-height:100vh;display:grid;place-items:center;box-sizing:border-box;overflow:hidden;padding:24px}.roulette-fullscreen-backdrop{position:absolute;inset:0;background:var(--roulette-backdrop-bottom)}.roulette-fullscreen-stack{position:relative;z-index:1;width:min(100%,1120px);min-height:0;height:100%;max-height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:stretch;justify-items:center;gap:16px}.roulette-fullscreen-panel{position:relative;width:100%;min-height:0;max-height:100%;display:grid;grid-template-rows:minmax(0,1fr);gap:12px;box-sizing:border-box;overflow:hidden;padding:20px;border-radius:0;border:1px solid var(--border);background:var(--roulette-surface);box-shadow:none}.roulette-fullscreen-panel-spinning{gap:0}.roulette-fullscreen-controls{position:relative;z-index:2;display:flex;flex-shrink:0;align-items:center;justify-content:center;gap:12px;padding:14px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);box-shadow:none}.roulette-fullscreen-controls .button{min-width:8.5rem}.roulette-fullscreen-canvas-shell{min-height:0;height:100%;box-sizing:border-box;overflow:hidden;padding:10px;border-radius:0;background:var(--background-secondary);border:1px solid var(--border-light)}.roulette-stage-canvas-fullscreen{min-height:0;height:100%}.roulette-stage-label{color:var(--text-tertiary);font-size:.78rem;letter-spacing:2.4px;font-weight:700;text-transform:none}.roulette-stage-name{color:var(--text-primary);font-size:clamp(1.4rem,3vw,2.2rem);letter-spacing:2.4px}.trip-panel-stack{display:grid;gap:8px}@media(min-width:1025px){.roulette-stage-shell-active-trip{grid-column:1 / -1;grid-template-columns:minmax(0,1.5fr) minmax(260px,.9fr);align-items:stretch}.roulette-stage-shell-active-trip .roulette-stage-visual{min-height:320px}.roulette-stage-shell-active-trip .roulette-stage-trip-panel{align-self:stretch}.roulette-stage-shell-active-trip .trip-panel-stack{height:100%;align-content:start}}.trip-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.roulette-map-card{display:grid;gap:14px}.roulette-map-header{display:grid;gap:4px;justify-items:start}.roulette-map-header h2{margin:0}.roulette-map-posted{margin:0;color:var(--text-secondary);font-size:.95rem;font-weight:700}.roulette-map-posted strong{color:var(--text-primary);font-size:1.2rem}@media(max-width:840px){.roulette-stage-grid{grid-template-columns:1fr}.roulette-guest-login-panel{height:auto}.roulette-guest-login-actions{flex-direction:row}.roulette-guest-login-actions .button{flex:1 1 0}.roulette-stage-shell{min-height:260px}.roulette-fullscreen-panel{width:min(100%,960px)}}@media(max-width:560px){.roulette-stage-shell{padding:12px;min-height:220px}.roulette-stage-shell-active-trip{grid-template-columns:1fr}.roulette-stage-cta{min-height:196px}.roulette-stage-cta-button{min-height:196px;padding:24px 20px;font-size:1.35rem}.roulette-stage-placeholder,.roulette-stage-visual{min-height:196px;padding:18px}.roulette-stage-visual-name{font-size:clamp(1.3rem,6vw,1.8rem)}.roulette-stage-status-chip{top:12px;left:12px}.roulette-stage-trip-panel,.roulette-journey-summary-panel{padding:14px}.roulette-journey-summary{grid-template-columns:auto minmax(0,1fr)}.roulette-journey-summary-avatar{width:52px;height:52px}.roulette-journey-summary-switch{grid-column:1 / -1;width:100%;justify-self:stretch}.roulette-primary-actions{flex-wrap:nowrap;align-items:flex-start}.roulette-primary-actions>*{flex:1 1 10rem}.roulette-primary-actions>.button,.roulette-skip-button-wrap{width:auto}.roulette-primary-actions .button{flex:1 1 0}.roulette-primary-actions>.button,.roulette-skip-button-wrap .button{min-height:48px}.roulette-skip-button-status{font-size:.64rem}.roulette-stage-trip-meta div{padding:10px 12px}.roulette-fullscreen-stage{padding:12px}.roulette-fullscreen-panel{padding:14px}.roulette-fullscreen-stack{gap:12px}.roulette-fullscreen-controls{width:min(100%,22rem);padding:12px;gap:10px}.roulette-fullscreen-controls .button{min-width:0;flex:1 1 0}.roulette-fullscreen-canvas-shell{padding:8px}}
