@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500;1,600&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');
.mapcanvas{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;will-change:transform}.map.dragging,.map.dragging .mapcanvas,.map.dragging .marker{cursor:grabbing}.map.dragging .marker{pointer-events:none}
.mapcanvas .mapart{inset:auto;left:-30%;top:-30%;width:160%;height:160%;max-width:none;pointer-events:none}
:root{--paper:#faf8fd;--ink:#2d2537;--muted:#858985;--line:#eae2f1;--coral:#8151bb;--green:#7b54a4}*{box-sizing:border-box}body{margin:0;font-family:'Noto Sans KR',sans-serif;color:var(--ink);background:var(--paper);font-size:14px}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:3px solid #8151bb99;outline-offset:4px}button svg{pointer-events:none}svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}button:disabled{opacity:.4;cursor:default}.header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#ffffff;position:relative;z-index:5}.brand{display:flex;gap:10px;align-items:center;font-size:21px;font-weight:800;letter-spacing:-1px}.brandmark{width:33px;height:38px;background:var(--coral);border-radius:17px 17px 17px 2px;transform:rotate(-12deg);display:grid;place-items:center;color:white}.brandmark span{transform:rotate(12deg);font:700 24px Georgia}.brand small{font-size:10px;font-weight:500;letter-spacing:2.5px;display:block;margin-top:1px;color:var(--muted)}.desktopnav{display:flex;gap:40px;align-items:center;height:100%}.desktopnav button{height:100%;font-size:14px;position:relative}.desktopnav .active{color:var(--coral);font-weight:700}.desktopnav .active:after{content:'';position:absolute;height:3px;bottom:0;background:var(--coral);left:0;right:0}.pill{border:1px solid var(--line);border-radius:24px;padding:10px 19px;background:white}.account{display:flex;align-items:center;gap:18px}.account .city{color:var(--muted);font-size:12px}.layout{height:calc(100dvh - 88px);display:grid;grid-template-columns:420px 1fr}.sidebar{background:#ffffff;overflow:auto;position:relative;z-index:3;box-shadow:6px 0 30px #34483706}.intro{padding:30px 28px 21px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--coral)}h1{font-size:29px;line-height:1.45;letter-spacing:-1.5px;margin:10px 0 9px;font-weight:800}h1 em{font-style:normal;color:var(--coral)}.sub{color:var(--muted);font-size:12px;line-height:1.8}.search{display:flex;gap:9px;background:white;border:1px solid #dcded8;border-radius:13px;padding:13px 14px;margin-top:23px;align-items:center}.search svg{color:#7d8580}.search input{border:0;outline:0;min-width:0;width:100%;background:transparent;font-size:12px}.filters{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:white;border-radius:8px;font-size:11px;padding:8px 11px;white-space:nowrap}.chip.selected{border-color:#efb4a6;color:#d66049;background:#fff1eb}.results{padding:16px 28px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px}.results b{color:var(--coral)}.results select{border:0;background:none;color:var(--muted);font-size:10px}.list{padding:6px 22px 18px}.card{display:flex;gap:15px;padding:19px 6px;border-bottom:1px solid var(--line);position:relative;cursor:pointer}.card:hover{background:#f6f3ec}.poster{width:91px;height:116px;flex-shrink:0;position:relative;overflow:hidden;background:#ddd;border-radius:4px;padding:11px;color:white;isolation:isolate}.poster:after{content:'';position:absolute;inset:0;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h140v140H0z'/%3E%3C/svg%3E");pointer-events:none}.poster small{font-size:5px;letter-spacing:1.4px;position:relative;z-index:2}.poster strong{display:block;font:26px/1.05 Georgia;position:relative;z-index:2;margin-top:9px;letter-spacing:-1px}.poster .shape{position:absolute}.p0{background:#c7d4c2;color:#234c40}.p0 .shape{width:84px;height:110px;background:#648a70;border-radius:70% 20% 70% 20%;transform:rotate(35deg);left:38px;top:44px}.p1{background:#ed653e;color:#fff0d8}.p1 .shape{width:100px;height:100px;border-radius:50%;background:#eeae58;left:28px;top:55px;box-shadow:15px -24px 0 #9d362d}.p2{background:#273b74;color:#e8ecff}.p2 .shape{width:80px;height:80px;background:#bcd1ef;border-radius:50%;left:46px;top:68px;box-shadow:-35px 10px 0 #7e9ac5}.p3{background:#eadcbf;color:#5f4d3f}.p3 .shape{width:120px;height:60px;background:#a79573;left:3px;top:75px;transform:rotate(-25deg);box-shadow:0 15px 0 #faf5e6}.p4{background:#edbdd1;color:#783866}.p4 .shape{width:75px;height:75px;background:#995584;left:25px;top:50px;transform:rotate(35deg)}.p5{background:#292c2b;color:#f1e7ce}.p5 .shape{width:85px;height:85px;border:12px solid #d2ba8b;left:35px;top:49px;border-radius:50%}.cardbody{padding-top:2px;flex:1;min-width:0}.tags{display:flex;gap:5px;font-size:9px;color:#6b7d67}.tag{background:#edf2e9;border-radius:3px;padding:3px 6px}.tag.end{color:#d56e55;background:#fff0e9}.card h3{font-size:15px;letter-spacing:-.6px;margin:8px 23px 5px 0;line-height:1.4}.card .venue{color:#767c76;font-size:11px}.card .dates{font-size:10px;color:#999e97;margin-top:7px}.price{font-size:10px;font-weight:600;margin-top:8px}.save{position:absolute;right:1px;top:45px;color:#9b9c94}.save.saved{color:var(--coral)}.save.saved svg{fill:#8151bb20}.map{overflow:hidden;position:relative;background:#eef0e8;isolation:isolate}.mapart{position:absolute;inset:0;width:100%;height:100%}.map .neighborhood{position:absolute;color:#a0a698;font-weight:600;letter-spacing:3px;font-size:15px;pointer-events:none}.maptop{position:absolute;top:24px;left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;gap:10px}.mapbadge{padding:10px 15px;background:#ffffffed;border:1px solid #e5e5da;border-radius:25px;font-size:11px;box-shadow:0 3px 12px #4a594309}.mapbadge span{width:6px;height:6px;background:#78926e;display:inline-block;border-radius:50%;margin-right:7px}.maphint{font-size:10px;color:#829080}.marker{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;z-index:2}.marker .pin{display:grid;place-items:center;border:3px solid white;background:var(--coral);color:white;width:37px;height:37px;border-radius:50% 50% 50% 5px;transform:rotate(-45deg);box-shadow:0 4px 12px #805c4930}.marker .pin span{transform:rotate(45deg);font-size:15px;font-family:Georgia}.marker .pin.green{background:var(--green)}.marker .pin.blue{background:#64819c}.marker .label{font-size:10px;white-space:nowrap;background:#fffefa;border-radius:5px;padding:5px 8px;margin-top:6px;box-shadow:0 2px 9px #43513c12}.marker:hover{z-index:4}.marker:hover .pin{background:#2d2537;scale:1.1}.maptools{position:absolute;right:25px;bottom:100px;display:grid;gap:8px}.maptools button{width:42px;height:42px;background:#fffefa;border-radius:12px;box-shadow:0 3px 15px #34483715;font-size:20px}.maplegend{position:absolute;bottom:26px;left:26px;display:flex;gap:15px;background:#ffffffe8;padding:11px 16px;border-radius:10px;font-size:10px;color:#798276}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--coral);margin-right:5px}.mapcredit{position:absolute;bottom:9px;right:16px;font-size:9px;color:#8a9385}.floating{position:absolute;bottom:29px;left:50%;transform:translateX(-50%);background:#fffefa;border:1px solid #e0e2d9;padding:12px 21px;border-radius:25px;font-size:11px;box-shadow:0 5px 20px #34483712;white-space:nowrap}.mobile-nav,.mobile-handle{display:none}.content{max-width:1120px;margin:0 auto;padding:42px 32px 100px}.sectionhead{display:flex;justify-content:space-between;align-items:end;margin:15px 0 27px}.sectionhead h1{margin:0}.collection{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.tile{background:white;border-radius:15px;padding:16px;cursor:pointer;border:1px solid var(--line);position:relative}.tile .poster{width:100%;height:240px;padding:24px}.tile .poster strong{font-size:57px}.tile .poster small{font-size:10px}.tile .shape{scale:3;transform-origin:top left}.tile h3{margin:16px 0 6px}.tile p{font-size:12px;color:var(--muted)}.tile .save{right:17px;top:274px}.banner{padding:26px 30px;border-radius:15px;background:#ebeede;display:flex;justify-content:space-between;align-items:center;margin:25px 0 35px}.banner h2{margin:0 0 7px;font-size:23px}.banner p{color:#7d8776;margin:0;font-size:12px}.empty{text-align:center;padding:65px 20px;color:var(--muted);line-height:2}.primary{background:var(--coral);color:white;border-radius:12px;padding:14px 23px;font-weight:600}.secondary{border:1px solid var(--line);background:white;border-radius:12px;padding:13px 20px}.profile{display:flex;gap:20px;align-items:center;margin:30px 0}.avatar{width:66px;height:66px;background:#e4e9db;border-radius:50%;display:grid;place-items:center;font-size:27px}.stats{display:flex;gap:20px;margin:30px 0}.stat{padding:25px;background:white;border:1px solid var(--line);border-radius:15px;flex:1;text-align:center}.stat b{display:block;font-size:27px;color:var(--coral)}.stat span{font-size:12px;color:var(--muted)}.menurow{width:100%;padding:22px 0;border-bottom:1px solid var(--line);text-align:left;display:flex;justify-content:space-between}.modal-backdrop{position:fixed;inset:0;background:#20292266;backdrop-filter:blur(5px);z-index:20;display:flex;justify-content:center;align-items:center;padding:22px}.modal{background:#ffffff;border-radius:24px;width:480px;max-height:90dvh;overflow:auto;padding:30px;position:relative;box-shadow:0 30px 100px #18241940}.modal.wide{width:700px}.close{position:absolute;right:16px;top:15px;z-index:3;background:#ffffffdd;border-radius:50%;width:34px;height:34px;font-size:22px}.modal h2{font-size:23px;letter-spacing:-1px;margin:12px 0}.modal p{font-size:13px;line-height:1.9;color:#7b8279}.modal .poster{width:180px;height:230px;margin:0 auto 24px;padding:22px}.modal .poster strong{font-size:48px}.modal .poster small{font-size:9px}.modal .poster .shape{scale:2}.detail-layout{display:grid;grid-template-columns:210px 1fr;gap:20px}.detail-layout .poster{margin-top:12px}.facts{font-size:12px;display:grid;grid-template-columns:58px 1fr;gap:15px 9px;margin:24px 0}.facts dt{color:#969b91}.facts dd{margin:0;line-height:1.6}.notice{font-size:10px!important;background:#f0f0e8;padding:10px 12px;border-radius:8px;color:#8b9185!important}.actions{display:flex;gap:9px;margin-top:20px}.actions button{flex:1}.filtergroup{margin:23px 0}.filtergroup label{display:block;font-weight:600;font-size:12px;margin-bottom:10px}.filtergroup .chips{display:flex;flex-wrap:wrap;gap:7px}.filtergroup input{border:1px solid var(--line);background:white;border-radius:8px;padding:10px;width:100%}.login{text-align:center;padding:20px 10px}.login .brand{justify-content:center;margin:20px 0 35px}.login button{width:100%;margin:12px 0}.login .google{border:1px solid var(--line);border-radius:28px;padding:15px;background:white}.google b{font-size:20px;color:#4285f4;margin-right:12px}.login small{font-size:10px;color:#a1a598}.tabs{display:flex;gap:9px;margin:25px 0}.post{padding:24px 0;border-bottom:1px solid var(--line);cursor:pointer}.post h3{font-size:16px;margin:0 0 10px}.post small{color:var(--muted)}.post .badge{font-size:10px;background:#f0e4fa;color:#7b49b1;padding:4px 8px;margin-right:7px;border-radius:4px}textarea,.textinput{width:100%;border:1px solid var(--line);border-radius:10px;padding:14px;background:white;font:inherit;margin:7px 0}textarea{height:180px;resize:vertical}.about{background:#f0e9f8;border-radius:18px;padding:35px;margin-top:45px}.about h2{font-size:24px;letter-spacing:-1px}.about p{color:#7c8678;font-size:13px;line-height:1.9}#toast{position:fixed;left:50%;bottom:35px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#46305c;color:white;padding:13px 23px;border-radius:28px;z-index:100;font-size:12px;transition:.2s;white-space:nowrap}#toast.show{opacity:1;transform:translate(-50%,0)}.demo-tag{font-size:9px;background:#edece4;color:#8a8e81;padding:4px 7px;border-radius:4px;font-weight:400;letter-spacing:0}.mobile-collapse{display:none}
@media(min-width:1500px){.layout{grid-template-columns:460px 1fr}.intro{padding:35px}.list{padding-left:29px;padding-right:29px}.results{padding-left:35px;padding-right:35px}}
@media(max-width:900px){.header{padding:0 22px}.desktopnav{gap:20px}.account .city{display:none}.layout{grid-template-columns:355px 1fr}.intro{padding:23px 22px 18px}.list{padding-left:16px;padding-right:16px}.card{gap:11px}.poster{width:78px;height:106px}.maphint{display:none}.maplegend{gap:9px;padding:9px}.collection{gap:16px}.tile .poster{height:210px}.tile .save{top:243px}}
@media(max-width:650px){.header{height:68px;padding:0 19px}.brand{font-size:18px;gap:8px}.brandmark{width:28px;height:32px}.brand small{font-size:8px}.account{gap:10px}.account .pill{font-size:11px;padding:8px 13px}.desktopnav{display:none}.layout{height:calc(100dvh - 68px - 73px);display:block;position:relative}.map{position:absolute;inset:0}.sidebar{position:absolute;left:15px;right:15px;top:15px;background:transparent;box-shadow:none;overflow:visible;pointer-events:none}.intro{padding:0;pointer-events:auto}.intro .eyebrow,.intro h1,.intro>.sub{display:none}.search{margin:0;padding:14px 15px;box-shadow:0 3px 20px #40513710;border:1px solid #fff;border-radius:15px}.search input{font-size:12px}.filters{margin-top:10px;gap:6px}.chip{box-shadow:0 2px 8px #40513705;background:#fffefa;font-size:11px;padding:8px 12px;border-radius:20px}.results{margin-top:19px;border:0;background:#ffffff;border-radius:19px 19px 0 0;padding:16px 17px 10px;pointer-events:auto}.list{background:#ffffff;padding:0 13px 4px;max-height:230px;overflow:auto;box-shadow:0 15px 25px #40513710;border-radius:0 0 19px 19px;pointer-events:auto}.card{padding:13px 3px;gap:12px}.card .poster{width:63px;height:82px;padding:8px}.card .poster strong{font-size:21px}.card h3{font-size:13px;margin:5px 24px 4px 0}.card .dates{font-size:9px;margin-top:5px}.card .price{display:none}.card .save{top:34px}.card .tag{font-size:8px}.card .venue{font-size:10px}.mobile-collapse{display:block;color:#989f92;padding:2px 8px;font-size:17px}.resultleft{display:flex;gap:6px;align-items:center}.list.collapsed{display:none}.maptop{top:auto;bottom:18px;left:16px;right:auto}.mapbadge{font-size:9px;padding:8px 12px}.maplegend{display:none}.maptools{right:16px;bottom:68px;gap:8px}.maptools button{width:39px;height:39px;border-radius:50%}.floating{bottom:63px;padding:11px 15px;font-size:10px}.mapcredit{font-size:8px;bottom:4px}.map .neighborhood{font-size:12px}.marker .label{font-size:9px}.marker .pin{width:33px;height:33px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:73px;background:#ffffff;border-top:1px solid var(--line);z-index:10;display:flex;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom,6px)}.mobile-nav button{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-width:62px;font-size:10px;color:#93968e}.mobile-nav button.active{color:var(--coral);font-weight:700}.mobile-nav svg{width:23px;height:23px}.content{padding:27px 20px 100px}.content h1{font-size:26px}.collection{grid-template-columns:repeat(2,1fr);gap:13px}.tile{padding:10px;border-radius:12px}.tile .poster{height:185px;padding:16px}.tile .poster strong{font-size:37px}.tile .poster small{font-size:7px}.tile h3{font-size:13px;margin-top:12px;padding-right:13px}.tile p{font-size:10px;line-height:1.8}.tile .save{right:6px;top:209px}.tile .save svg{width:17px;height:17px}.banner{padding:23px;gap:12px;align-items:start}.banner h2{font-size:19px;line-height:1.5}.banner p{font-size:11px}.banner .primary{padding:10px 12px;font-size:11px;white-space:nowrap}.modal-backdrop{padding:13px;align-items:end}.modal{border-radius:23px;width:100%;max-height:90dvh;padding:27px 23px 25px}.detail-layout{grid-template-columns:1fr;gap:0}.detail-layout .poster{width:130px;height:163px;margin:8px auto 16px;padding:17px}.detail-layout .poster strong{font-size:35px}.detail-layout .poster small{font-size:7px}.detail-layout .poster .shape{scale:1.5}.modal h2{font-size:22px}.facts{margin:20px 0;gap:11px}.modal p{font-size:12px}.modal .notice{font-size:9px!important}.actions{position:sticky;bottom:-25px;background:#ffffff;padding:12px 0 0}.stats{gap:10px}.stat{padding:22px 10px}.about{padding:25px}.sectionhead{margin-top:0}.sectionhead .primary{padding:11px 15px;font-size:12px}#toast{bottom:90px;max-width:90vw;white-space:normal;text-align:center}}
/* Art Radar — a quiet gallery masthead */
.header{background:#fdfbff;box-shadow:0 3px 22px #57453704;border-bottom-color:#ece3f3}
.header>button{padding:0;text-align:left}.brand{gap:12px;letter-spacing:0}.brandmark{width:42px;height:42px;background:transparent;border-radius:50%;transform:none;color:#8151bb;display:block}.brandmark svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round}.brandmark .radar-signal{fill:#8151bb;stroke:#fdfbff;stroke-width:2}.brandwords{display:flex;flex-direction:column;align-items:flex-start}.brandenglish{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:600;line-height:1;letter-spacing:-1.2px}.brandperiod{color:#8151bb}.brand small{font-size:10px;letter-spacing:.5px;color:#6f746b;margin-top:6px;font-weight:500}.brand small span{font-weight:400;color:#a09c90;letter-spacing:0}.desktopnav{gap:12px}.desktopnav button{height:auto;padding:11px 19px;border-radius:25px;font-size:12px;color:#777a70;transition:background .2s,color .2s}.desktopnav button:hover{background:#f3edfa;color:#583774}.desktopnav .active{background:#eee5f8;color:#6e409d;font-weight:600}.desktopnav .active:after{display:none}.desktopnav button:last-child{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-style:italic}.account .city{font-size:8px;letter-spacing:1.7px;color:#a6a193}.account>.demo-tag{display:none}.account .pill{font-size:11px;border-color:#e3d6ef;background:transparent;color:#775195;padding:10px 18px}.login .brand{margin-bottom:30px}.login .brandenglish{font-size:42px}.login .brand small span{display:none}.content>.eyebrow{letter-spacing:2.5px}.content:has(.profile)>h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:49px;font-weight:500;font-style:italic;letter-spacing:-1px}.mobile-nav button:last-child{font-size:11px;letter-spacing:0}.mobile-nav{background:#fdfbff}.mobile-nav button.active{color:#7443ad}
@media(max-width:900px) and (min-width:651px){.desktopnav{gap:0}.desktopnav button{padding:10px 12px}.brand small span{display:none}.brandenglish{font-size:30px}}
@media(max-width:650px){.header{height:82px;padding:0 18px}.layout{height:calc(100dvh - 82px - 73px)}.brand{gap:9px}.brandmark{width:34px;height:34px}.brandenglish{font-size:29px;letter-spacing:-.8px}.brand small{font-size:9px;letter-spacing:.3px;margin-top:4px}.brand small span{font-size:8px}.account .pill{padding:8px 13px;font-size:10px}.account{gap:0}.content:has(.profile)>h1{font-size:43px}.login .brandenglish{font-size:36px}}
@media(max-width:370px){.brand small span{display:none}.header{padding:0 14px}}
/* Real geographic map: Leaflet owns projection, panning and pinch gestures. */
.real-map #geo-map{position:absolute;inset:0;z-index:0;background:#e9ede7;touch-action:none;font-family:'Noto Sans KR',sans-serif}
.real-map .maptop,.real-map .maptools,.real-map .floating{z-index:1100}.real-map .maptop{pointer-events:none;align-items:flex-start}.real-map .mapbadge{pointer-events:auto}.real-map .maphint{background:#ffffffed;padding:8px 11px;border-radius:8px;color:#536258;max-width:270px;font-size:10px}.real-map .maptools{bottom:100px}.real-map .floating{bottom:35px}.radar-marker{background:transparent;border:0}.radar-pin{display:grid;place-items:center;width:34px;height:34px;border:3px solid white;border-radius:50% 50% 50% 6px;background:#e66a51;color:white;font:700 17px Georgia;box-shadow:0 3px 12px #24382b55}.radar-marker:focus-visible{outline:3px solid #253e32;outline-offset:4px}.real-map .leaflet-tooltip{font-size:11px}.real-map .leaflet-control-attribution{font-size:10px;max-width:100%;background:#ffffffed}.map-error{padding:110px 20px;text-align:center;line-height:1.8}
@media(max-width:650px){.real-map .maptop{top:auto;bottom:36px;left:12px;right:70px;flex-direction:column;gap:6px}.real-map .maphint{font-size:9px}.real-map .floating{bottom:130px;left:15px;transform:none;font-size:10px;padding:10px 14px}.real-map .maptools{bottom:40px;right:12px}.real-map .maptools button{width:40px;height:40px}.real-map .leaflet-control-attribution{font-size:9px}.real-map .mapbadge{font-size:10px;padding:8px 11px}}
/* Gallery identity: bold museum typography and a photographic Artlog cover. */
.brand .gallery-logo{width:56px;height:56px;object-fit:cover;border-radius:10px;flex-shrink:0;background:#fff}.brandkorean{font-family:'Noto Sans KR',Arial,sans-serif;font-size:27px;font-weight:800;letter-spacing:-1.3px;line-height:1.15;color:#111}.brand .brandlatin{font-family:Arial,'Noto Sans KR',sans-serif;font-size:13px;font-weight:700;letter-spacing:.05px;line-height:1.2;color:#181818;margin-top:4px}.login .brand{gap:13px}.login .brandkorean{font-size:29px}.artlog-hero{position:relative;isolation:isolate;min-height:350px;display:flex;align-items:flex-end;overflow:hidden;border-radius:19px;background:#30271c url('assets/artlog-museum-interior.png') center 56%/cover no-repeat;color:#fff;padding:34px 36px;margin:0 0 23px}.artlog-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,16,11,.78),rgba(20,16,11,.23) 80%),linear-gradient(0deg,rgba(15,12,8,.5),transparent 70%);z-index:-1}.artlog-hero-copy{width:100%}.artlog-hero .eyebrow{color:#e4cfaa;letter-spacing:3px;font-size:10px}.artlog-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:56px;font-style:italic;font-weight:500;letter-spacing:-1px;line-height:1.1;margin:13px 0 25px}.artlog-hero .profile{margin:0;gap:13px}.artlog-hero .avatar{display:none}.artlog-hero .profile h2{font-size:16px;font-weight:500}.artlog-hero .sub{color:#eee3d2;font-size:12px;max-width:350px;line-height:1.8}.artlog-login{width:100%;background:#7545ad;color:#fff;border-radius:10px}.artlog-page>.stats{margin-top:25px}
@media(max-width:900px) and (min-width:651px){.brandkorean{font-size:23px}.brand .gallery-logo{width:45px;height:45px}.brand .brandlatin{font-size:11px}}
@media(max-width:650px){.brand .gallery-logo{width:44px;height:44px;border-radius:8px}.brandkorean{font-size:22px;letter-spacing:-1px}.brand .brandlatin{font-size:11px;margin-top:3px}.brand{gap:9px}.artlog-page{padding:19px 18px 100px}.artlog-hero{min-height:350px;padding:28px 23px;margin:0 0 19px;border-radius:15px;background-position:61% center}.artlog-hero:before{background:linear-gradient(0deg,rgba(17,14,9,.9),rgba(17,14,9,.1) 95%)}.artlog-hero h1{font-size:46px;margin:12px 0 23px}.artlog-hero .profile h2{font-size:15px}.artlog-hero .sub{font-size:11px}.login .brandkorean{font-size:26px}}
/* Official posters retain their entire original composition. */
.poster.official-poster{padding:0!important;background:#f1f0ec;display:flex;align-items:center;justify-content:center}.poster.official-poster:after{display:none}.official-poster img{width:100%;height:100%;object-fit:contain;display:block}.official-poster img[hidden]{display:none}.poster-unavailable{padding:8px;color:#858579;text-align:center;font-size:9px;line-height:1.7}.poster-unavailable[hidden]{display:none}.official-link{display:block;margin:14px 0;color:#7443ad;text-decoration:none;font-size:12px}.official-link:hover{text-decoration:underline}.tile .official-poster{height:300px}.detail-layout .official-poster{height:270px;width:190px}.detail-layout .notice{font-size:9px!important}@media(max-width:650px){.tile .official-poster{height:225px}.tile .save{top:249px}.detail-layout .official-poster{height:220px;width:156px}.tile .cardbody h3{font-size:12px;line-height:1.6}}
.artlog-hero{background-position:center 53%}.artlog-hero:before{background:linear-gradient(90deg,rgba(20,24,24,.64),rgba(20,24,24,.03) 85%),linear-gradient(0deg,rgba(20,24,24,.34),transparent 75%)}@media(max-width:650px){.artlog-hero{background-position:58% center}.artlog-hero:before{background:linear-gradient(0deg,rgba(20,24,24,.77),rgba(20,24,24,.02) 95%)}}

.account .account-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;min-width:42px;padding:3px;border:1px solid #e4d8ef;border-radius:50%;background:#ffffff;box-shadow:0 2px 8px #5745370a;overflow:hidden}.account-avatar .account-initial{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#efe7f8;color:#6c438f;font-size:15px;font-weight:600}.account-avatar .account-photo{position:absolute;inset:3px;width:34px;height:34px;object-fit:cover;border-radius:50%;background:#efe7f8}.account-avatar .account-photo[hidden]{display:none}.account-avatar:hover{border-color:#7443ad}@media(max-width:650px){.account .account-avatar{width:40px;height:40px;min-width:40px}.account-avatar .account-photo,.account-avatar .account-initial{width:32px;height:32px}}

.seo-intro{max-width:1100px;margin:0 auto;padding:28px 24px 38px;line-height:1.9;color:#787970}.seo-intro h2{font-size:17px;color:#454b43}.seo-intro p,.seo-intro nav{font-size:12px}.seo-intro a{color:#7443ad;text-underline-offset:4px}@media(max-width:650px){footer.seo-intro{padding-bottom:100px}}

.spaces-page{max-width:960px}.spaces-page .eyebrow{margin-top:28px}.space-card{padding:22px 0;border-bottom:1px solid var(--line)}.space-card-title{display:flex;align-items:center;justify-content:space-between;gap:14px}.space-card h2{font-size:18px;margin:0}.space-card .sub{margin-top:10px}.space-card .notice{margin:12px 0}.space-link{padding:8px 0;color:#7443ad}.space-detail-save{margin-top:14px}.filters{flex-wrap:wrap}.spaces-page .tabs{flex-wrap:wrap}@media(max-width:650px){.space-card-title{align-items:flex-start}.space-card-title .chip{flex-shrink:0;font-size:10px}.space-card h2{font-size:16px}}

.filter-summary{font-size:11px;color:#775195;line-height:1.6;margin:10px 0 0}.filter-field{display:flex;flex-direction:column;gap:8px;margin:16px 0}.filter-field select,.filter-field input{padding:11px;border:1px solid #deded2;border-radius:8px;background:#fff}.filter-check{display:flex;gap:10px;align-items:center;margin:17px 0}

/* My Art Pin — soft purple identity. Preserve artwork and map tile colors. */
:root{--paper:#faf8fd;--ink:#2d2537;--muted:#8a8094;--line:#eae2f1;--coral:#8151bb;--green:#7b54a4}.header{background:#fff;border-bottom:1px solid #eee6f5}.brand .gallery-logo{object-fit:contain;background:transparent;border-radius:0;width:46px;height:54px}.brandkorean{color:#33243f;letter-spacing:-1.2px}.brand .brandlatin{color:#8151bb;letter-spacing:1.1px;font-size:11px}.desktopnav .active{background:#efe7f9;color:#7443ad}.primary,.artlog-login{background:#8151bb;color:white}.primary:hover,.artlog-login:hover{background:#7040a8}.chip.selected{color:#7443ad;border-color:#c9afe4;background:#f0e7fa}.mobile-nav{background:#fff}.mobile-nav button.active{color:#8151bb}.eyebrow,.space-link,.official-link{color:#8151bb}.account .city{color:#a38ab7}.account .pill{border-color:#e3d6ef;color:#7443ad}.account-avatar .account-initial{background:#eee4f7;color:#7545a3}.radar-pin{background:#8151bb!important;box-shadow:0 3px 12px #63319833}.radar-pin:after{border-top-color:#8151bb!important}.radar-pin .pin-hole{width:9px;height:9px;background:#fff;border-radius:50%;display:block}.banner,.about{background:#f0e9f8}.artlog-hero:before{background:linear-gradient(90deg,rgba(45,24,68,.7),rgba(45,24,68,.08) 85%),linear-gradient(0deg,rgba(40,22,61,.34),transparent 75%)}.artlog-hero .eyebrow{color:#e7d8f8}.seo-intro a{color:#7443ad}.filter-summary{color:#775195}input[type=checkbox]{accent-color:#8151bb}@media(max-width:650px){.brand .gallery-logo{width:36px;height:43px}.brandkorean{font-size:21px}.brand .brandlatin{font-size:10px}.artlog-hero:before{background:linear-gradient(0deg,rgba(40,22,61,.8),rgba(40,22,61,.05) 95%)}}

/* Map-first mobile layout: compact top tools and a bottom exhibition sheet. */
.sheet-foot{display:none}
@media(max-width:650px){
 .header{height:70px;padding:0 16px}.brand .gallery-logo{width:32px;height:39px}.brandkorean{font-size:20px}
 .layout{height:calc(100dvh - 70px - 73px);min-height:360px}
 .sidebar{inset:0;left:0;right:0;top:0;pointer-events:none;overflow:visible;background:transparent}
 .sidebar .intro{position:absolute;left:12px;right:12px;top:12px;padding:0;pointer-events:auto}
 .sidebar .search{height:48px;padding:10px 14px;border-radius:16px;border:1px solid #ece5f4;box-shadow:0 4px 20px #38204914}
 .sidebar .search input{font-size:13px}.sidebar .search svg{width:19px;height:19px;flex-shrink:0}
 .sidebar .filters{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:7px;margin-top:8px;padding:0 1px 5px;overscroll-behavior-x:contain}
 .sidebar .filters::-webkit-scrollbar{display:none}.sidebar .filters .chip{flex:0 0 auto;min-height:40px;padding:9px 13px;font-size:11px;box-shadow:0 2px 10px #38204912}
 .sidebar .filter-summary{font-size:10px;background:#ffffffeb;border-radius:8px;padding:5px 10px;margin:2px 0 0;display:inline-block;max-width:100%;line-height:1.5}
 .exhibition-sheet{position:absolute;left:12px;right:12px;bottom:12px;border:1px solid #e9def2;border-radius:20px;background:#fff;pointer-events:auto;overflow:hidden;box-shadow:0 6px 30px #38204920}
 .sidebar .results{margin:0;border:0;border-radius:0;padding:10px 12px;min-height:66px;display:flex;flex-wrap:wrap;gap:8px;background:#fff}
 .sidebar .resultleft{font-size:11px;gap:5px;white-space:nowrap}.sidebar .resultleft b{font-size:14px}
 .mobile-collapse{display:flex;align-items:center;justify-content:center;gap:6px;margin-left:auto;min-height:44px;min-width:132px;padding:10px 13px;border:1px solid #e2d2ef;background:#f2eafa;border-radius:13px;color:#7443ad;font-size:11px;font-weight:700;white-space:nowrap}
 .mobile-collapse span{font-size:20px;line-height:1}.sidebar .results select{font-size:11px;padding:8px 3px;min-height:36px;flex-basis:100%;width:100%;text-align:right;border-top:1px solid #f1ebf6}
 .exhibition-sheet.is-collapsed .results select{display:none}.exhibition-sheet.is-collapsed .list,.exhibition-sheet.is-collapsed .sheet-foot{display:none}
 .sidebar .list{max-height:min(30dvh,260px);border-radius:0;padding:0 14px;box-shadow:none;overscroll-behavior-y:contain}
 .sheet-foot{display:flex;justify-content:flex-end;padding:0 12px;border-top:1px solid #f1ebf6}.sheet-foot button{min-height:40px;padding:9px 4px;font-size:10px;color:#8a7a98}
 .real-map .maptop{display:none}.real-map .floating{bottom:94px;left:13px;max-width:calc(100% - 78px);padding:11px 14px;min-height:40px}
 .real-map .maptools{bottom:94px;right:12px;gap:7px}.real-map .maptools button{height:42px;width:42px}
 .layout:has(.is-expanded) .real-map .floating{display:none}
 .real-map .leaflet-control-attribution{font-size:8px;max-width:100%}
}
@media(max-width:360px){.sidebar .resultleft{font-size:10px}.mobile-collapse{min-width:116px;font-size:10px;padding:10px}.sidebar .results{padding:9px}}

.layout,.exhibition-sheet{overflow-anchor:none}
