/* One set of rules for the whole Sangyoung app. */
:root{--bg:#111311;--panel:#242723;--yellow:#ecf226;--paper:#f5f4ee;--ink:#f1f3ec;--muted:#a6ada3;--line:#444940}
body{font-size:14px}button:disabled{cursor:default}h1,h2,h3{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}
.app-header{height:85px;padding:12px 21px 6px}.brand-name{line-height:1.05}.brand-name small{font-size:8px;letter-spacing:.6px}.header-actions{display:flex;align-items:center;gap:8px}.header-region{display:flex;align-items:center;gap:4px;font-size:11px;padding:0}.header-region svg{width:15px}.header-note{display:none}.alerts-button{min-width:40px}.reel-versions{font-size:11px;color:var(--muted);min-height:44px;min-width:32px;display:grid;place-items:center;order:-1}[data-tab=prices] .header-region{display:none}#app{padding:0 21px 112px}
.page-heading{padding:24px 0 22px}.page-heading h1{font-size:30px;line-height:1.22;letter-spacing:-1.3px;font-weight:650}.page-heading>p{font-size:13px;line-height:1.65;margin-top:12px}.page-heading>.eyebrow{font-size:10px;margin:0 0 12px;letter-spacing:1.6px;color:var(--muted)}
.bottom-nav{padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:#161915;border-top:1px solid var(--line);gap:0}.bottom-nav a{width:16.6667%;min-height:53px;gap:7px;font-size:10px;letter-spacing:-.3px;color:var(--muted)}.bottom-nav svg{width:21px;height:21px}.bottom-nav a[aria-current=page]{color:var(--yellow);font-weight:650}
.reel-location{display:flex;gap:10px;align-items:stretch;margin:9px 0 6px}.region-trigger{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:10px 12px 10px 8px;min-height:76px}.region-thumbnail{width:62px;flex-shrink:0}.region-trigger>.region-copy{flex:1;min-width:0}.region-copy>small{display:block;font-size:10px;color:var(--muted);margin-bottom:4px}.region-copy>strong{display:block;font-size:14px;line-height:1.4;font-weight:600;letter-spacing:-.3px}.region-copy>span{display:flex;align-items:center;gap:4px;font-size:9px;color:var(--muted);margin-top:3px}.region-copy>span svg{width:12px;height:12px}.region-trigger>svg{width:14px;height:14px;color:var(--muted)}.benefit-trigger{padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:10px;color:var(--yellow);min-width:48px}.benefit-trigger svg{width:19px;height:19px}.benefit-trigger b{font-size:9px;font-weight:500}
.date-rail{display:flex;gap:9px;align-items:center;margin:3px 0 20px}.date-rail button{width:62px;min-height:77px;border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;flex-shrink:0}.date-rail span,.date-rail small{font-size:10px}.date-rail b{font:650 29px/1 var(--sans);letter-spacing:-.7px}.date-rail [aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);color:var(--bg)}.date-rail p{font-size:11px;color:var(--muted);line-height:1.8;margin-left:4px}
.condition-row{gap:10px;max-width:none;padding:8px 0 16px;flex-wrap:wrap}.condition-row>button{color:var(--ink);min-width:0}.condition-row>div{display:flex;gap:17px}.condition-row button{font-size:12px;min-height:40px}.condition-row svg{width:15px}.condition-row>div>button:last-child{color:var(--yellow)}
.search-box{margin:0 0 22px;border-radius:6px;background:var(--panel);border-color:var(--line);min-height:53px}.search-box input::placeholder{font-size:14px}.search-box svg{width:20px}.search-box input{padding:16px 0}.list-label{font-size:12px;margin:18px 0 10px;gap:14px}.list-label button{font-size:12px;display:flex;align-items:center;gap:7px;min-height:40px}.list-label svg{width:15px}.explore-grid{gap:28px 16px;margin-top:8px}.explore-grid h2{font-size:16px;line-height:1.4;margin:12px 0 7px;font-weight:600}.explore-grid p{font-size:11px;line-height:1.5;margin-bottom:9px}.explore-grid b{font-size:19px;font-weight:600;letter-spacing:-.5px}.explore-grid b small{font-size:10px}.explore-grid a>small{font-size:11px;line-height:1.5}.grid-cover .save-button{width:36px;min-height:36px;right:7px;bottom:7px;background:#111d;border:1px solid #eee4;backdrop-filter:none}.save-button{color:var(--muted);min-height:40px;width:40px}.save-button svg{width:21px;height:21px}.follow-button{font-size:13px;min-height:44px;padding:9px 16px;border-radius:24px;border-color:#778067}.follow-button.following{color:var(--yellow);border-color:var(--yellow)}.collection-intro{align-items:center;gap:12px;padding:0 0 18px;max-width:none}.collection-intro .scribble{font-size:27px;line-height:1.1;margin:0}.collection-intro .follow-button{font-size:12px;min-height:42px;padding:9px 12px}
.more{min-height:49px;border-radius:26px;font-size:13px;margin-top:26px}.data-note{font-size:11px;line-height:1.75;margin-top:28px}.data-note a{text-underline-offset:3px}.distance-note{font-size:11px;color:var(--muted);line-height:1.6;text-align:center;margin-top:22px}.quiet-empty{font-size:13px;line-height:1.8}.blank{padding:42px 8px}.blank p{font-size:13px}.blank h2{font-size:23px}.text-button{font-size:13px;min-height:44px}
.movie-row{padding:22px 0;gap:16px}.row-info h2{font-size:17px;line-height:1.4}.row-info p{font-size:11px;margin:7px 0 10px}.row-price{font-size:23px}.row-price small{font-size:11px}.row-venues{font-size:11px;min-height:32px}.quick-sessions button{font-size:12px;min-height:40px;padding:7px 10px}.quick-sessions{gap:7px}.film-distance{font-size:11px;color:var(--muted);display:block;margin-top:4px}.rerun-banner{background:var(--panel);border-color:var(--line);border-radius:6px;padding:20px 16px}.rerun-banner strong{font-size:15px}.rerun-banner p{font-size:12px;line-height:1.7}.rerun-banner>.follow-button{border-color:#778067}
.subnav{padding-top:14px}.subnav button{font-size:13px}.movie-detail-top{gap:20px;margin:20px 0 26px}.movie-detail-top>.poster{width:116px}.movie-detail-top h1{font-size:27px;line-height:1.25;letter-spacing:-1px}.movie-detail-top p{font-size:12px;line-height:1.65}.movie-detail-top small{font-size:11px}.movie-kicker{font-size:9px;letter-spacing:1px}.detail-price>span{font-size:11px}.detail-price strong{font-size:28px}.film-actions>*{font-size:13px;min-height:46px;border-radius:25px}.film-actions>button:last-child{background:var(--yellow);border-color:var(--yellow);color:var(--bg)}.my-rating{border:1px solid var(--line);background:none;padding:10px 13px}.my-rating>span{font-size:12px}.my-rating button{min-width:31px;padding:6px}.film-information summary{font-size:14px;min-height:50px}.film-information p{font-size:14px;line-height:1.85}.film-information small{font-size:11px}.film-information a{font-size:12px;line-height:1.8}.detail-tabs{gap:23px}.detail-tabs button{font-size:16px}.time-filters button{font-size:12px;min-height:38px;padding:7px 13px}.offer{padding:23px 0}.offer-main h3{font-size:17px}.offer-main small{font-size:11px;line-height:1.5}.offer-main p{font-size:12px}.offer-main strong{font-size:19px}.offer-times button{min-height:38px;font-size:12px}.time-row>span{font-size:13px}.time-row small{font-size:11px;line-height:1.5}.time-row>b{font-size:22px}.time-row>strong{font-size:15px}.no-screenings{padding:35px 0}.no-screenings p{font-size:13px}.no-screenings h2{font-size:18px}
.my-stats{background:var(--panel);border:0;border-radius:6px;padding:22px 4px}.my-stats>span{font-size:12px}.my-stats b{font-family:var(--sans);font-weight:650;font-size:30px;color:var(--yellow)}.explore-tabs{gap:24px}.explore-tabs button{font-size:15px;min-height:47px}.saved-list h2{font-size:17px}.saved-list p{font-size:12px}.ticket-toolbar button{border-radius:25px;font-size:13px}.ticket-grid .memory-ticket{box-shadow:none}.memory-ticket{box-shadow:none}.section-title{font-size:18px}.alert-explainer{background:var(--panel);border:0;border-radius:6px;padding:20px 16px}.alert-explainer p{font-size:13px}.news-list h3,.subscription-list strong{font-size:16px}.news-list p,.subscription-list p{font-size:12px}.subscription-list button{font-size:12px;min-height:40px}.news-list small{font-size:11px}
dialog{background:var(--paper);color:#1b2117;border:0;padding:30px 22px calc(23px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;max-width:520px;max-height:93dvh}dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}dialog h2{font-size:27px;line-height:1.25;font-weight:650;letter-spacing:-1px}dialog .eyebrow{font-size:11px;color:#6f7766}dialog .close-dialog{border-radius:50%;background:#e3e5db;width:36px;min-height:36px;right:13px;top:12px;color:#303727}dialog .close-dialog svg{width:19px;height:19px}.dialog-meta{font-size:14px;color:#626c59;line-height:1.8}.dialog-note{font-size:12px;color:#66705d;line-height:1.7}.primary{background:var(--yellow);color:#171b10;border-radius:28px;min-height:52px;font-size:14px;padding:15px 20px;font-weight:650}.cancel{color:#68705e;font-size:13px}.form-fields label,.record-fields label{font-size:13px;color:#414c35;font-weight:500}.form-fields select,.record-fields input,.record-fields select,.record-fields textarea{background:#fff;color:#1b2117;border-color:#c8ccbc;border-radius:6px;font-size:16px}.form-fields select option,.record-fields select option{background:#fff;color:#1b2117}.bill>div{font-size:14px}.bill .bill-total{border-color:#9da78b}.bill-total dd{color:#171b10;font-size:31px}.receipt-actions>button{border-color:#c5cbb8;font-size:13px;border-radius:25px;min-height:47px}.source-link{color:#657255;font-size:11px}.editor-dialog{max-width:760px}.editor-dialog .style-picker button{border-color:#b4bea4}.editor-dialog .style-picker [aria-pressed=true]{border-color:#5b682c;color:#233015}.editor-dialog .ticket-preview{border:1px solid #c8ccb9}.editor-dialog .record-fields small{font-size:11px;color:#69725e}.save-record{box-shadow:0 -12px 20px var(--paper);bottom:-23px}.editor-dialog .ticket-preview:before{color:#66705d}.ticket-perf:before,.ticket-perf:after{background:var(--bg)}.editor-dialog .ticket-perf:before,.editor-dialog .ticket-perf:after{background:var(--paper)}.sort-options{display:grid;margin-top:22px}.sort-options button{font-size:15px;text-align:left;display:flex;align-items:center;justify-content:space-between;min-height:53px;border-bottom:1px solid #c9cdbd;padding:12px 0}.sort-options [aria-pressed=true]{font-weight:650;color:#334322}.sort-options svg{background:var(--yellow);border-radius:50%;padding:3px;width:25px;height:25px}dialog .alert-explainer{background:#e4e8d9}dialog .alert-explainer p{color:#5b6850}dialog .alert-explainer>svg{color:#58682e}
.reel-search-sheet #reel-query{background:#fff;color:#1b2117;border-color:#bac2ae}.reel-search-sheet .reel-search-label,.reel-search-sheet .reel-search-count,.reel-search-sheet .reel-search-result small{color:#68745b}.reel-search-sheet .reel-search-result{border-color:#ccd1c2}
/* A real geographic picker, with keyboard targets and zoom for central districts. */
.seoul-map{display:block;height:auto;max-width:none}.map-district path{fill:#282d27;stroke:#65715a;stroke-width:.8;stroke-linejoin:round;transition:fill .22s ease}.map-district.selected path{fill:#ecf226;stroke:#13180c}.map-district.selected.depth-1 path{fill:#c5d36e}.map-district.selected.depth-2 path{fill:#9aaf58}.map-district.selected.depth-3 path{fill:#839655}.map-district.home.selected path{fill:var(--yellow);stroke:var(--yellow);stroke-width:1.7}.map-district text{font-family:var(--sans);font-size:13px;font-weight:550;fill:#d3d8c7;pointer-events:none;letter-spacing:-.5px}.map-district.selected text{fill:#17220d;font-weight:650}.map-district .home-dot{fill:#d3d8c7;pointer-events:none}.map-district.selected .home-dot{fill:#17220d}.interactive-map .map-district{cursor:pointer;outline:none}.interactive-map .map-district:hover path,.interactive-map .map-district:focus-visible path{stroke:#fff;stroke-width:2.2;filter:brightness(1.15)}.interactive-map .map-district.selected path{animation:map-reveal .28s both;animation-delay:var(--reveal-delay)}@keyframes map-reveal{from{fill:#2e3920}to{}}
.region-dialog{background:var(--bg);color:var(--ink);max-width:610px;padding-top:30px}.region-dialog .eyebrow{color:var(--muted)}.region-dialog .close-dialog{background:var(--panel);color:var(--ink)}.map-mode{display:flex;gap:22px;margin:18px 0 0;border-bottom:1px solid var(--line)}.map-mode button{font-size:14px;min-height:44px;padding:10px 0;color:var(--muted);position:relative}.map-mode [aria-pressed=true]{color:var(--yellow);font-weight:600}.map-mode [aria-pressed=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--yellow)}.map-instruction{font-size:12px;color:var(--muted);line-height:1.5;margin:16px 0 4px}.map-instruction b{color:var(--ink);font-weight:600}.map-stage{position:relative;margin:0 -5px}.map-scroll{width:100%;max-height:37dvh;aspect-ratio:480/400;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#586047 transparent}.map-scroll .seoul-map{min-width:100%;max-width:none;touch-action:pan-x pan-y}.map-zoom{position:absolute;right:4px;bottom:4px;display:flex;gap:5px}.map-zoom button{border:1px solid #5a6350;background:#242b21;width:36px;min-height:36px;border-radius:50%;display:grid;place-items:center;padding:0;font-size:21px}.map-zoom svg{width:16px;height:16px}.map-legend{display:flex;align-items:center;gap:12px;margin:9px 0 17px;font-size:10px;color:var(--muted)}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend i{width:8px;height:8px;border:1px solid #65715a;background:#282d27;border-radius:2px}.map-legend .legend-home{background:var(--yellow);border-color:var(--yellow)}.map-legend .legend-range{background:#a8bc61;border-color:#a8bc61}.map-legend>small{margin-left:auto;letter-spacing:2px}.map-ranges{display:flex;gap:5px}.map-ranges button{flex:1;min-width:0;min-height:40px;border:1px solid var(--line);background:var(--panel);font-size:10px;padding:6px 3px;border-radius:5px;white-space:nowrap}.map-ranges [aria-pressed=true]{color:var(--yellow);border-color:var(--yellow)}.map-custom-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:4px}.map-custom-actions button{min-height:39px;font-size:12px;color:var(--muted);padding:0}.map-result{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:19px 0 18px}.map-result strong{font-size:16px;font-weight:600;letter-spacing:-.5px}.map-result p{font-size:11px;color:var(--muted);margin-top:7px;line-height:1.5}.map-result>svg{width:24px;height:24px;color:var(--yellow)}.map-apply{position:sticky;bottom:0;z-index:2}.map-footnote{font-size:10px;color:var(--muted);line-height:1.8;margin-top:14px;text-align:center}.map-footnote a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:768px){.app-header{height:108px;padding-inline:35px}.header-actions{gap:20px}.header-note{display:inline;font-size:22px}#app{padding-inline:35px;padding-bottom:135px}.reel-versions{order:0;font-size:12px}.header-region{font-size:13px}.bottom-nav{max-width:680px;bottom:16px;border:1px solid var(--line);border-radius:10px;padding:9px 12px;box-shadow:none}.bottom-nav a{font-size:11px;min-height:56px}.page-heading{padding-top:30px}.page-heading h1{font-size:38px}.region-trigger{max-width:470px;padding:12px 16px;gap:15px}.region-thumbnail{width:74px}.region-copy>strong{font-size:17px}.region-copy>small{font-size:11px}.region-copy>span{font-size:11px}.benefit-trigger{min-width:78px;font-size:12px}.date-rail button{width:72px;min-height:84px}.date-rail b{font-size:32px}.date-rail p{font-size:13px;margin-left:10px}.explore-grid{gap:34px 24px}.explore-grid h2{font-size:18px}.explore-grid p{font-size:12px}.explore-grid b{font-size:21px}.movie-detail-top{margin:30px auto;max-width:760px}.movie-detail-top>.poster{width:168px}.movie-detail-top h1{font-size:39px}.movie-detail-top p{font-size:14px}.detail-price strong{font-size:34px}.movie-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.collection-intro{max-width:760px}.collection-intro .scribble{font-size:34px}.collection-intro .follow-button{font-size:13px}.my-stats{max-width:680px}.my-stats b{font-size:36px}dialog{border-radius:14px;max-height:90dvh;padding:33px 28px 27px}.region-dialog{padding:32px}.map-scroll{max-height:380px}.map-instruction{font-size:13px}.map-ranges button{font-size:12px;min-height:44px}.map-legend{font-size:11px}.map-result strong{font-size:18px}.map-mode button{font-size:16px}.map-footnote{font-size:11px}}
@media(max-width:359px){#app{padding-inline:16px}.app-header{padding-inline:16px}.mascot{width:48px}.brand-name{font-size:26px}.page-heading h1{font-size:27px}.region-trigger{padding-inline:7px;gap:7px}.region-thumbnail{width:51px}.region-copy>strong{font-size:12px}.region-copy>span{font-size:8px}.region-copy>small{font-size:9px}.benefit-trigger{min-width:41px;font-size:9px}.date-rail{gap:7px}.date-rail button{width:54px;min-height:72px}.date-rail p{font-size:9px;margin-left:1px}.bottom-nav a{font-size:9px;min-height:51px}.bottom-nav svg{width:20px;height:20px}.explore-grid{gap:23px 12px}.explore-grid h2{font-size:15px}.explore-grid b{font-size:17px}.movie-detail-top>.poster{width:94px}.movie-detail-top h1{font-size:24px}.movie-detail-top{gap:16px}.film-actions>*{font-size:11px;gap:5px;padding:8px}.my-rating{padding:8px;gap:4px}.my-rating>span{font-size:10px}.my-rating button{min-width:28px;padding:4px}.my-rating svg{width:18px}.offer-main h3{font-size:15px}.offer-main strong{font-size:17px}.row-info h2{font-size:15px}.row-price{font-size:21px}.row-poster{width:73px}.quick-sessions{gap:5px}.quick-sessions button{font-size:11px;padding:6px 8px}.condition-row button{font-size:11px}.region-dialog{padding-inline:17px}.map-ranges button{font-size:9px}.map-result strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.map-district path{animation:none!important;transition:none!important}}
