/* Mobile-only layout; the desktop portal keeps its existing geometry. */
.mobile-section-nav,.mobile-story-thumb{display:none}
@media(max-width:1023px){
 html{scrollbar-gutter:auto;scroll-padding-top:62px;scroll-padding-bottom:calc(82px + env(safe-area-inset-bottom))}
 body{display:block;height:auto;min-height:100dvh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}
 .wrap{width:calc(100% - 32px);max-width:680px}
 .utility,.primary-nav,.search-topics,.mobile-complex-switch,.notice-strip,.community-section{display:none}
 .header-actions>.notification-button,.header-actions>.profile-button{display:none}
 .masthead{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:10px;padding:10px 0 14px;min-height:0;height:auto}
 .brand{font-size:28px;line-height:1;gap:9px;min-width:0}.brand-symbol{font-size:37px;line-height:42px}.brand-symbol>span,.brand-period{font-size:32px}
 .header-actions{grid-column:2;grid-row:1;margin:0;gap:0}.header-actions .settings-link{width:44px;min-height:44px}
 .search-area{grid-column:1/-1;width:100%;max-width:none;min-width:0}.search-form{height:48px;border-radius:10px;padding:0 4px 0 14px}
 .search-form input{font-size:16px;min-width:0}.search-form button{width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
 .main-layout{display:block;min-height:0;height:auto;padding:0}.content-column{display:block;width:100%;min-width:0}
 .feature{height:108px;min-height:0;border-radius:12px}.feature-copy{padding:14px 16px;max-width:72%;height:100%;display:flex;justify-content:center;flex-direction:column}
 .feature .eyebrow,.feature-link,.feature p{display:none}.feature h1{font-size:22px;line-height:1.4;letter-spacing:-.7px;margin:0}
 .feature-image{width:54%;height:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent,#000 35%)}
 .discover-section,#discover.is-overview{display:block;height:auto;min-height:0;margin:14px 0 0;scroll-margin-top:12px}
 .mobile-section-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:sticky;top:0;z-index:8;background:var(--bg);border-bottom:1px solid var(--line);margin-bottom:0}
 .mobile-section-nav button{min-height:50px;position:relative;font-size:16px;font-weight:550;color:var(--muted);white-space:nowrap;padding:10px 4px}
 .mobile-section-nav button[aria-pressed=true]{color:var(--green);font-weight:750}.mobile-section-nav button[aria-pressed=true]:after{content:"";position:absolute;left:18px;right:18px;bottom:-1px;height:3px;background:var(--green);border-radius:2px}
 #discover.is-overview>:not(.apartment-overview):not(.mobile-section-nav){display:none}
 #discover.is-overview>.apartment-overview{display:block;height:auto}
 .apartment-overview>.overview-column{display:none}.apartment-overview>.overview-column.is-mobile-active{display:block;min-width:0;padding:0;border:0;background:none}
 .overview-heading{display:none}.overview-heading:has(small){display:flex;justify-content:flex-end;padding-top:12px}.overview-heading h2{display:none}.overview-heading small{font-size:12px;line-height:18px;color:var(--muted)}
 .overview-list{margin:0;padding:0;list-style:none}.overview-list li{min-width:0;border-bottom:1px solid var(--line)}
 .overview-list li>a,.overview-list li>button{display:flex;flex-direction:column;gap:7px;width:100%;min-height:112px;text-align:left;padding:18px 0;text-decoration:none;color:var(--ink)}
 .overview-topic{display:block;font-size:13px;line-height:19px;color:var(--green)}
 .overview-list strong{display:block;font-size:17px;line-height:26px;font-weight:650;overflow-wrap:anywhere;letter-spacing:-.2px}
 .overview-meta{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;line-height:20px;color:var(--muted)}.overview-source{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-meta time{flex-shrink:0;margin-left:auto}
 [data-overview-section="이야기"] .overview-list button{display:grid;grid-template-columns:minmax(0,1fr) 84px;grid-template-rows:auto auto auto;column-gap:14px;row-gap:4px;align-content:center}
 .mobile-story-thumb{display:block;grid-column:2;grid-row:1/4;align-self:center;width:84px;height:84px;object-fit:cover;border-radius:10px}
 [data-overview-section="이야기"] .overview-list button>span,[data-overview-section="이야기"] .overview-list button>strong{grid-column:1}
 .overview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;font-size:12px;line-height:20px;color:var(--muted)}
 .overview-footer button,.overview-footer a{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;font-size:14px;color:var(--green);text-decoration:none}.overview-footer .icon{width:15px;height:15px}
 .discover-section>.section-heading{margin:20px 0 12px}.section-heading h2{font-size:20px;line-height:28px}.saved-toggle{min-height:44px;font-size:14px}#saved-count{display:none}
 .filter-row{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:0 -16px 14px;padding:0 16px 4px;scrollbar-width:none}.filter{min-height:44px;padding:9px 15px;font-size:14px;line-height:22px;flex-shrink:0}
 .content-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.content-card{min-width:0;padding:16px 0;border-bottom:1px solid var(--line)}
 .card-link{display:grid;grid-template-columns:minmax(0,1fr) 92px;grid-template-rows:auto auto auto;column-gap:14px;row-gap:5px;min-height:96px;padding:0;width:100%;height:auto}
 .card-visual{grid-column:2;grid-row:1/4;height:92px;min-height:0;aspect-ratio:1;border-radius:10px;align-self:center}.card-visual img{width:100%;height:100%;object-fit:cover}
 .card-category{grid-column:1;font-size:13px;line-height:19px;margin:0}.card-link h3{grid-column:1;font-size:16px;line-height:25px;min-height:0;margin:0;display:block;overflow-wrap:anywhere}
 .card-meta{grid-column:1;white-space:normal;font-size:12px;line-height:19px;margin:0}.card-save,.creator-dot,.visual-tag,.video-play,.duration{display:none}
 .novel-art{padding:8px}.novel-art>small,.novel-art>span{display:none}.novel-art>strong{font-size:14px;line-height:1.5;margin:0;letter-spacing:0}
 .external-card{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0;min-height:100px;text-decoration:none;color:var(--ink);padding:0;background:none;border:0;border-radius:0;height:auto}
 .external-card h3{font-size:17px;line-height:26px;margin:0;overflow-wrap:anywhere}.external-card>small{font-size:13px;line-height:20px;color:var(--green)}.external-card>small:last-child{align-self:flex-end;min-height:28px}
 .search-summary{position:static;max-width:none;white-space:normal;font-size:14px;line-height:22px;padding:0 0 12px}.more-content{width:100%;height:48px;margin:16px 0 0;font-size:14px}
 .has-content-search .feature{display:none}.empty-state{padding:30px 12px}.empty-state p{font-size:15px;line-height:24px}
 .right-column{display:block;width:100%;margin-top:24px}.right-column>.complex-card,.right-column>.talk-card,.aside-footer{display:none}
 .right-column>.map-entry{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:20px;border-radius:12px;margin:0}.map-entry h2{font-size:19px;margin:0}.map-entry p{font-size:14px;margin:0 0 8px}.map-entry .primary-button{min-height:48px;margin:0;font-size:15px}.map-directory{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:14px}
 .site-footer{display:flex;flex-wrap:wrap;height:auto;margin-top:24px;padding:18px 0 8px;gap:10px;line-height:20px}.site-footer p,.site-footer>span{display:none}.site-footer .directory-footer-link{margin-left:auto;font-size:13px;min-height:44px;display:flex;align-items:center}
 .mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:20;padding:5px max(12px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line)}
 .mobile-bottom-nav button{min-width:0;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:12px;color:var(--muted)}.mobile-bottom-nav button>.icon{width:23px;height:23px}.mobile-bottom-nav button[aria-current=page]{color:var(--green);font-weight:700}
 body:has(#search:focus) .mobile-bottom-nav{display:none}
 .content-dialog{position:fixed;width:100%;max-width:680px;max-height:calc(var(--visual-height,100dvh) - 20px);margin:auto auto 0;padding:0 0 env(safe-area-inset-bottom);border-radius:20px 20px 0 0;overscroll-behavior:contain}
 .dialog-close{position:sticky;top:8px;float:right;margin:8px 8px 0 0;z-index:2;width:44px;height:44px;background:var(--surface);border-radius:50%}.dialog-body{padding:24px 20px 28px;clear:both}.dialog-body h2{font-size:23px;line-height:1.4;overflow-wrap:anywhere}.dialog-body p{font-size:16px;line-height:1.8}.dialog-cover{width:100%;max-height:230px;object-fit:cover}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.dialog-actions button{min-height:44px;font-size:14px}.dialog-notice{font-size:13px;line-height:21px}
 .mobile-account-login{width:100%;min-height:48px;border:0;border-radius:10px;background:var(--green);color:var(--on-brand);font-size:16px;font-weight:650;cursor:not-allowed}
 .toast{bottom:calc(82px + env(safe-area-inset-bottom));max-width:calc(100% - 32px);font-size:14px;line-height:22px}
}
@media(max-width:359px){.wrap{width:calc(100% - 24px)}.filter-row{margin-inline:-12px;padding-inline:12px}.feature h1{font-size:20px}.mobile-section-nav button{font-size:15px}.overview-list strong{font-size:16px;line-height:25px}.overview-meta{font-size:12px}.overview-list li>a,.overview-list li>button{padding:16px 0}.mobile-story-thumb{width:72px;height:72px}[data-overview-section="이야기"] .overview-list button{grid-template-columns:minmax(0,1fr) 72px;column-gap:10px}}
@media(min-width:761px) and (max-width:1023px){.feature{height:140px}.feature h1{font-size:28px}.feature-copy{padding:20px 24px}.overview-list li>a,.overview-list li>button{min-height:116px;padding:20px 0}.content-dialog{margin:auto;max-height:calc(var(--visual-height,100dvh) - 40px);border-radius:18px}}
