:root{--navy:#12314a;--blue:#1877c9;--sky:#eaf4fc;--ink:#17212b;--muted:#65717c;--line:#dce3e8;--bg:#f2f5f7;--white:#fff;--red:#b42318}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,"Noto Sans KR",sans-serif;font-size:16px}a{color:inherit}.top{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.top-inner{max-width:1120px;margin:auto;height:68px;padding:0 22px;display:flex;align-items:center;justify-content:space-between}.logo{text-decoration:none;font-size:25px;font-weight:800;color:var(--navy);letter-spacing:-1px}.logo span{display:inline-grid;place-items:center;width:36px;height:36px;margin-right:3px;border-radius:9px;background:var(--navy);color:#fff}.logo b{font-size:12px;color:var(--blue);letter-spacing:1px}.top nav{display:flex;align-items:center;gap:8px}.top nav a{padding:10px 12px;text-decoration:none;font-weight:700;border-radius:8px}.top nav .join{background:var(--navy);color:#fff}.hello{color:var(--muted);margin-right:5px}.layout{max-width:1120px;margin:28px auto;display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;padding:0 22px}aside{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;height:max-content}aside h2{font-size:18px;margin:0 0 12px}aside>a{display:block;text-decoration:none;padding:11px 12px;border-radius:8px;font-weight:700}aside>a:hover,aside>a.active{background:var(--sky);color:var(--blue)}.side-note{border-top:1px solid var(--line);margin-top:14px;padding:18px 10px 4px;color:var(--muted);font-size:14px;line-height:1.6}.feed-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 17px}.feed-head h1{margin:0;font-size:30px}.feed-head p{margin:6px 0 0;color:var(--muted)}.button{border:0;border-radius:9px;background:var(--navy);color:#fff;padding:13px 20px;text-decoration:none;font-weight:800;font-size:16px;cursor:pointer;display:inline-block}.button:hover{background:#1d496a}.button.ghost{background:#e7edf1;color:var(--ink)}.button.full{width:100%;text-align:center}.search{display:flex;margin-bottom:15px}.search input{flex:1;border:1px solid var(--line);border-radius:10px 0 0 10px;padding:13px 15px;font-size:16px}.search button{border:0;background:var(--navy);color:#fff;border-radius:0 10px 10px 0;padding:0 19px;font-weight:bold}.mobile-cats{display:none}.post-card{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.post-card>a{display:block;padding:19px 21px;text-decoration:none}.post-card:hover{border-color:#93bddd;box-shadow:0 3px 12px rgba(30,70,100,.07)}.post-top{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.category{display:inline-block;background:var(--sky);color:var(--blue);padding:5px 8px;border-radius:6px;font-weight:800}.post-card h2{font-size:20px;margin:11px 0 7px}.post-card p{margin:0 0 13px;color:#46525e;line-height:1.55}.meta{font-size:14px;color:var(--muted)}.post-card .meta{display:flex;justify-content:space-between}.empty{background:#fff;border:1px dashed #b8c4cc;border-radius:12px;text-align:center;padding:55px 20px}.empty p{color:var(--muted)}.empty a{color:var(--blue);font-weight:bold}.page-card,.post-page{max-width:780px;margin:35px auto;padding:30px;background:#fff;border:1px solid var(--line);border-radius:14px}.auth-page{display:grid;min-height:100vh;place-items:center;padding:20px}.auth-card{width:min(100%,470px);background:#fff;padding:32px;border-radius:15px;box-shadow:0 8px 30px rgba(15,35,50,.12)}.auth-card.page-card{margin:45px auto}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--navy);color:#fff;font-weight:900;font-size:28px}.auth-card h1,.compose h1,.admin h1{margin:16px 0 20px}.muted,.switch{color:var(--muted)}label{display:block;font-weight:700;margin:16px 0 6px}input,select,textarea{width:100%;padding:12px;border:1px solid #b9c2c9;border-radius:8px;font:inherit;background:#fff}textarea{resize:vertical;line-height:1.6}input:focus,select:focus,textarea:focus{outline:3px solid #cce6fa;border-color:var(--blue)}hr{border:0;border-top:1px solid var(--line);margin:25px 0}.notice{padding:13px;border-radius:8px;margin:16px 0}.notice.error{background:#fee4e2;color:var(--red)}.notice.success{background:#dff4e7;color:#126b3a}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.post-page{background:transparent;border:0;padding:0}.post-full,.comments{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;margin-bottom:15px}.post-full h1{font-size:30px;margin:14px 0 8px}.post-body{min-height:180px;border-top:1px solid var(--line);margin-top:18px;padding-top:24px;line-height:1.8}.comments h2{font-size:20px}.comment{border-top:1px solid var(--line);padding:16px 0}.comment>b{margin-right:8px}.comment>span{font-size:13px;color:var(--muted)}.comment p{line-height:1.6;margin:8px 0}.comment-form{border-top:1px solid var(--line);padding-top:18px}.comment-form button{margin-top:9px}.login-call{background:var(--sky);padding:14px}.text-button{border:0;background:none;padding:5px 0;color:var(--red);cursor:pointer}.hidden-tag{background:#fee4e2;color:var(--red);padding:4px 7px;border-radius:5px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div{background:var(--sky);border-radius:10px;padding:20px;text-align:center}.stats b{display:block;font-size:28px}.stats span{color:var(--muted)}footer{text-align:center;color:var(--muted);padding:28px 15px 45px;font-size:13px}
@media(max-width:720px){.top-inner{height:60px;padding:0 14px}.logo{font-size:21px}.logo span{width:32px;height:32px}.hello{display:none}.top nav{gap:0}.top nav a{font-size:14px;padding:9px 7px}.layout{display:block;margin:18px auto;padding:0 12px}aside{display:none}.feed-head h1{font-size:25px}.feed-head p{font-size:14px}.feed-head .button{padding:11px 14px}.mobile-cats{display:flex;overflow-x:auto;gap:7px;margin:0 -12px 14px;padding:0 12px 6px}.mobile-cats a{white-space:nowrap;background:#fff;border:1px solid var(--line);border-radius:18px;padding:8px 12px;text-decoration:none;font-size:14px}.mobile-cats a.active{background:var(--navy);color:#fff}.post-card>a{padding:16px}.post-card h2{font-size:18px}.page-card,.post-page{margin:18px 12px;padding:20px}.post-page{padding:0;background:transparent}.post-full,.comments{padding:20px}.post-full h1{font-size:25px}.auth-card.page-card{margin:20px 12px;width:auto}.stats{gap:7px}.stats div{padding:15px 5px}}

.nearby{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;margin-bottom:15px}.nearby-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.nearby-head h2{margin:0;font-size:20px}.nearby-list{margin:18px 0;border-top:1px solid var(--line)}.nearby-list a{display:flex;justify-content:space-between;gap:15px;padding:13px 2px;border-bottom:1px solid var(--line);text-decoration:none}.nearby-list a:hover b{color:var(--blue)}.nearby-list span{color:var(--muted);font-size:13px;white-space:nowrap}.back-list{display:inline-block;margin-top:16px;color:var(--blue);font-weight:700;text-decoration:none}@media(max-width:720px){.nearby{padding:20px}.nearby-list a{display:block}.nearby-list span{display:block;margin-top:6px}}

aside .all-link{display:block;background:var(--navy);color:#fff;text-decoration:none;padding:11px 12px;border-radius:8px;font-weight:800;margin-bottom:18px}.menu-group{border-top:1px solid var(--line);padding-top:15px;margin-top:14px}.menu-group:first-of-type{border-top:0;padding-top:0}.menu-group h2{font-size:17px;color:var(--navy);margin:0 0 7px}.menu-group a{display:block;text-decoration:none;padding:8px 11px;border-radius:7px;font-weight:700;font-size:15px}.menu-group a:hover,.menu-group a.active{background:var(--sky);color:var(--blue)}.mobile-board-picker{display:none;margin-bottom:14px}.mobile-board-picker label{margin:0 0 6px;font-size:14px}@media(max-width:720px){.mobile-cats{display:none}.mobile-board-picker{display:block}}

.menu-toggle,.mobile-menu{display:none}@media(max-width:720px){.top-inner>nav{display:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--navy);color:#fff;padding:10px 13px;font:inherit;font-weight:800;cursor:pointer}.mobile-menu{background:#fff;border-top:1px solid var(--line);max-height:calc(100vh - 60px);overflow-y:auto;padding:12px 14px 20px}.mobile-menu.open{display:block}.mobile-menu a{text-decoration:none}.mobile-home{display:block;background:var(--navy);color:#fff;border-radius:8px;padding:12px 14px;font-weight:800}.mobile-menu section{padding:13px 0 4px;border-bottom:1px solid var(--line)}.mobile-menu section h2{margin:0 0 7px;color:var(--navy);font-size:16px}.mobile-menu section div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 8px}.mobile-menu section a{padding:8px 5px;font-size:15px}.mobile-account{display:flex;gap:8px;padding-top:15px}.mobile-account a{flex:1;text-align:center;background:var(--sky);color:var(--navy);border-radius:8px;padding:11px 6px;font-weight:800}}


/* Life Information Hub */
.detail-column{min-width:0}.detail-layout .post-full,.detail-layout .comments,.detail-layout .nearby{margin-top:0}.life-layout{align-items:start}.life-hub{min-width:0}.life-hero{background:linear-gradient(135deg,#12314a 0%,#1f557b 100%);color:#fff;border-radius:16px;padding:30px 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:14px}.life-hero h1{font-size:32px;line-height:1.25;margin:8px 0 10px}.life-hero p{margin:0;line-height:1.7;color:#e5eef5;max-width:680px}.life-hero .button{background:#fff;color:var(--navy);white-space:nowrap}.eyebrow{font-size:13px;font-weight:900;letter-spacing:.08em;color:#a9d9ff}.life-quick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.life-quick a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 13px;text-decoration:none;font-weight:800;font-size:14px}.life-section{margin:0 0 26px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.section-title h2{margin:0;font-size:23px}.section-title p{margin:5px 0 0;color:var(--muted)}.life-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.life-card{display:block;background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px;text-decoration:none;min-height:150px;transition:.15s ease}.life-card:hover{transform:translateY(-2px);border-color:#8bbad9;box-shadow:0 5px 16px rgba(20,60,90,.08)}.life-card-top{display:flex;align-items:start;justify-content:space-between;gap:10px}.life-card h3{margin:0;font-size:18px}.life-card-top span{background:var(--sky);color:var(--blue);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900;white-space:nowrap}.life-card p{color:#52606c;line-height:1.55;margin:11px 0 15px;font-size:14px}.life-card b{color:var(--blue);font-size:14px}.life-latest-list{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.life-latest-list a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line);text-decoration:none}.life-latest-list a:last-child{border-bottom:0}.life-latest-list a>div{display:flex;align-items:center;gap:9px;min-width:0}.life-latest-list a>div b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.life-latest-list a>span{font-size:13px;color:var(--muted);white-space:nowrap}.empty.compact{padding:30px 20px}.return-nav{display:flex;flex-wrap:wrap;gap:8px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-top:18px}.return-nav a{text-decoration:none;background:var(--sky);color:var(--navy);font-weight:800;border-radius:8px;padding:9px 12px;font-size:14px}.life-breadcrumb{display:flex;gap:8px;align-items:center;margin:-2px 0 14px;color:var(--muted);font-size:14px}.life-breadcrumb a{color:var(--blue);font-weight:800;text-decoration:none}
@media(max-width:720px){.life-hero{display:block;padding:23px 20px}.life-hero h1{font-size:26px}.life-hero .button{margin-top:18px}.life-grid{grid-template-columns:1fr}.life-card{min-height:0}.life-latest-list a{display:block}.life-latest-list a>div{display:block}.life-latest-list .category{margin-bottom:7px}.life-latest-list a>div b{display:block;white-space:normal}.life-latest-list a>span{display:block;margin-top:7px}.return-nav{padding:12px}.return-nav a{flex:1 1 calc(50% - 8px);text-align:center}.detail-column{width:100%}}

/* 2026-09-13: simplified main navigation + Korean traditional accents */
.main-sections{display:flex;flex-direction:column;gap:6px}.main-section-link{display:flex;align-items:center;gap:10px;min-height:46px;padding:8px 9px;border-radius:9px;text-decoration:none;font-size:16px;font-weight:850;color:var(--navy)}.main-section-link:hover,.main-section-link.active{background:var(--sky);color:var(--blue)}.main-section-link span{flex:1}.main-section-link em{font-style:normal;font-size:21px;opacity:.45}.trad-icon{position:relative;display:inline-block;flex:0 0 24px;width:24px;height:28px}.norigae i{position:absolute;left:8px;top:2px;width:9px;height:9px;border:2px solid currentColor;border-radius:50%;transform:rotate(45deg)}.norigae i:after{content:"";position:absolute;width:2px;height:9px;background:currentColor;left:2px;top:7px;box-shadow:4px 0 currentColor}.norigae b{position:absolute;left:6px;top:17px;width:12px;height:8px;border-left:3px solid currentColor;border-right:3px solid currentColor;border-radius:0 0 5px 5px}.norigae.blue{color:#176ca3}.norigae.gold{color:#c99524}.pouch{color:#b33a3a}.pouch:before{content:"";position:absolute;left:4px;top:9px;width:16px;height:15px;background:currentColor;border-radius:5px 5px 9px 9px}.pouch:after{content:"";position:absolute;left:7px;top:5px;width:10px;height:7px;border:2px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0}.pouch i{position:absolute;z-index:1;left:11px;top:12px;width:3px;height:8px;border-radius:3px;background:#fff;opacity:.8}.scroll{color:#8a6235}.scroll:before{content:"";position:absolute;left:5px;top:5px;width:14px;height:18px;background:#f2dfb6;border:2px solid currentColor;border-radius:2px}.scroll:after{content:"";position:absolute;left:3px;top:3px;width:18px;height:4px;border-radius:4px;background:currentColor;box-shadow:0 20px currentColor}.scroll i{position:absolute;z-index:1;left:8px;top:11px;width:8px;height:1px;background:currentColor;box-shadow:0 4px currentColor}.lantern{color:#c64d42}.lantern:before{content:"";position:absolute;left:5px;top:7px;width:14px;height:16px;border:2px solid currentColor;border-radius:5px;background:#fff3d2}.lantern:after{content:"";position:absolute;left:8px;top:2px;width:8px;height:5px;border-top:2px solid #1d5a78;border-left:2px solid #1d5a78;border-right:2px solid #1d5a78;border-radius:5px 5px 0 0;box-shadow:0 21px 0 -2px #1d5a78}.lantern i{position:absolute;z-index:1;left:11px;top:8px;width:2px;height:14px;background:#1d5a78;opacity:.75}.portal-hero{background:linear-gradient(135deg,#12314a,#1f557b);color:#fff;border-radius:16px;padding:27px 30px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.portal-hero h1{margin:7px 0 8px;font-size:31px}.portal-hero p{margin:0;color:#e5eef5;line-height:1.6}.portal-hero .button{background:#fff;color:var(--navy)}.mobile-main-links{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.mobile-main-links a{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:9px 10px;font-weight:800;background:#fff}.mobile-main-links .trad-icon{transform:scale(.8);transform-origin:left center;margin-right:-3px}
@media(max-width:720px){.portal-hero{display:block;padding:22px 20px}.portal-hero h1{font-size:27px}.portal-hero .button{margin-top:16px}.mobile-main-links{grid-template-columns:1fr 1fr}}

/* 2026-09-13: fluid desktop layout. Mobile rules below 720px remain unchanged. */
@media (min-width:721px){
  .top-inner{width:min(94vw,1480px);max-width:none;padding-left:clamp(18px,2vw,34px);padding-right:clamp(18px,2vw,34px)}
  .layout{width:min(94vw,1480px);max-width:none;grid-template-columns:clamp(190px,15vw,235px) minmax(0,1fr);gap:clamp(18px,2vw,32px);padding-left:clamp(10px,1.2vw,20px);padding-right:clamp(10px,1.2vw,20px)}
  .portal-hub,.life-hub,.detail-column,.feed{min-width:0;width:100%}
}
@media (min-width:1500px){
  .life-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* 2026-09-13: compact live header info + denser mobile hub cards */
.brand-area{display:flex;align-items:center;gap:18px;min-width:0}.header-info{display:flex;align-items:center;gap:9px;color:#53616c;font-size:13px;font-weight:750;white-space:nowrap}.weather-chip,.seoul-chip{display:flex;align-items:center;gap:6px}.weather-icon{font-size:17px;line-height:1}.seoul-flag{font-size:15px;line-height:1}.header-info-divider{width:1px;height:18px;background:var(--line)}
@media(max-width:900px) and (min-width:721px){.brand-area{gap:11px}.header-info{font-size:12px;gap:6px}.weather-icon{font-size:15px}.logo{font-size:23px}}
@media(max-width:720px){
  .top-inner{gap:10px}.brand-area{gap:8px;flex:1;min-width:0}.header-info{gap:5px;font-size:10.5px;font-weight:700;overflow:hidden}.weather-chip,.seoul-chip{gap:3px}.weather-icon{font-size:13px}.seoul-flag{display:none}.header-info-divider{height:14px}.logo{flex:0 0 auto}.weather-chip span:last-child,.seoul-chip span:last-child{overflow:hidden;text-overflow:ellipsis}.weather-chip{max-width:86px}.seoul-chip{max-width:72px}
  .life-quick{gap:6px;margin-bottom:14px}.life-quick a{padding:7px 10px;font-size:12.5px}
  .life-section{margin-bottom:18px}.section-title{margin-bottom:8px}.section-title h2{font-size:20px}.section-title p{font-size:13px;line-height:1.35;margin-top:3px}
  .life-grid{gap:7px}.life-card{padding:12px 13px;border-radius:11px}.life-card-top{gap:7px}.life-card h3{font-size:16px;line-height:1.25}.life-card-top span{padding:3px 6px;font-size:11px}.life-card p{font-size:13px;line-height:1.35;margin:6px 0 8px}.life-card b{font-size:12.5px}
  .portal-hero{padding:18px 17px;margin-bottom:14px}.portal-hero h1{font-size:24px;margin:5px 0 6px}.portal-hero p{font-size:13px;line-height:1.4}.portal-hero .button{margin-top:11px;padding:10px 14px;font-size:14px}.eyebrow{font-size:11px}
  .life-hero{padding:18px 17px;margin-bottom:11px}.life-hero h1{font-size:24px;margin:5px 0 6px}.life-hero p{font-size:13px;line-height:1.4}.life-hero .button{margin-top:11px;padding:10px 14px;font-size:14px}
  .life-latest-list a{padding:10px 12px}.life-latest-list .category{margin-bottom:5px}.life-latest-list a>span{margin-top:5px}
  .return-nav{margin-top:12px;gap:6px;padding:9px}.return-nav a{padding:8px 9px;font-size:12.5px}
}

/* 2026-09-13: mobile header weather/time fix — keep both fully visible */
@media(max-width:720px){
  .top-inner{height:auto;min-height:68px;padding:7px 12px;align-items:center;gap:8px}
  .brand-area{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:2px}
  .brand-area .logo{flex:0 0 auto}
  .header-info{flex:0 0 100%;width:100%;overflow:visible;white-space:nowrap;font-size:10.5px;gap:6px;padding-left:2px}
  .weather-chip,.seoul-chip{max-width:none;overflow:visible;gap:3px}
  .weather-chip span:last-child,.seoul-chip span:last-child{overflow:visible;text-overflow:clip}
  .header-info-divider{height:12px}
  .menu-toggle{flex:0 0 auto;align-self:center}
}

/* 2026-09-13: compact hub cards — remove the old action-link space completely */
.life-card{
  min-height:0;
  padding:14px 16px;
}
.life-card p{
  margin:7px 0 0;
  line-height:1.4;
}
@media (min-width:721px){
  .life-grid{gap:10px}
  .life-card{min-height:104px;padding:14px 16px}
  .life-card h3{line-height:1.25}
  .life-card p{margin:7px 0 0;line-height:1.4}
}
@media (max-width:720px){
  .life-grid{gap:6px}
  .life-card{min-height:0!important;padding:9px 11px!important}
  .life-card-top{gap:6px}
  .life-card h3{font-size:15.5px;line-height:1.2}
  .life-card-top span{padding:2px 6px;font-size:10.5px}
  .life-card p{margin:4px 0 0!important;font-size:12.5px;line-height:1.28}
}

/* 2026-09-13: compact Korean-style post list density */
.post-card{border-radius:8px;margin-bottom:6px}
.post-card>a{padding:10px 14px}
.post-top{font-size:12px;gap:7px}
.post-card .category{padding:3px 6px;border-radius:5px;font-size:11px}
.post-card h2{font-size:17px;line-height:1.28;margin:6px 0 4px}
.post-card p{font-size:13px;line-height:1.35;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.post-card .meta{font-size:12px;line-height:1.25}
@media(max-width:720px){
  .post-card{margin-bottom:5px;border-radius:8px}
  .post-card>a{padding:8px 10px}
  .post-top{font-size:10.5px;gap:5px}
  .post-card .category{padding:2px 5px;font-size:10px}
  .post-card h2{font-size:15px;line-height:1.22;margin:4px 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .post-card p{display:none}
  .post-card .meta{font-size:10.5px;line-height:1.2}
}

/* 2026-09-13: true dense list for posts; category hubs remain cards */
.post-list{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.post-list-head{display:grid;grid-template-columns:120px minmax(0,1fr) 130px 80px 120px;gap:10px;align-items:center;padding:8px 12px;background:#f4f7f9;border-bottom:1px solid var(--line);font-size:12px;font-weight:800;color:var(--muted)}
.post-list-row{border-bottom:1px solid #e7ecef}
.post-list-row:last-child{border-bottom:0}
.post-list-row>a{display:grid;grid-template-columns:120px minmax(0,1fr) 130px 80px 120px;gap:10px;align-items:center;min-height:44px;padding:7px 12px;text-decoration:none}
.post-list-row>a:hover{background:#f7fbfe}
.list-category{font-size:11px;font-weight:800;color:var(--blue);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list-title{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list-author,.list-time,.list-stats{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list-stats{text-align:right}
@media(max-width:720px){
  .post-list{border-radius:8px}
  .post-list-head{display:none}
  .post-list-row>a{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title title" "category meta";gap:3px 8px;min-height:0;padding:8px 9px}
  .list-title{grid-area:title;font-size:14.5px;line-height:1.25;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .list-category{grid-area:category;font-size:10px}
  .list-author,.list-time{display:none}
  .list-stats{grid-area:meta;font-size:10px;text-align:right}
}

/* 2026-09-13: category showcase homepage + global search */
.home-showcase{min-width:0}
.home-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px}
.home-intro h1{margin:0 0 5px;font-size:25px}.home-intro p{margin:0;color:#66727d}
.home-hero{height:170px;margin:0 0 14px;border:1px solid #c4d1d8;border-radius:14px;overflow:hidden;background:#e9eadc url('ksquare-pungmul-hero.webp') center 31%/cover no-repeat;display:flex;align-items:center;padding:20px 28px;position:relative}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,252,240,.94) 0%,rgba(255,252,240,.72) 27%,rgba(255,252,240,.08) 52%,transparent 70%)}.home-hero-copy{position:relative;z-index:1;color:#17364d;text-shadow:0 1px 0 rgba(255,255,255,.8)}.home-hero-copy h1{margin:0;font-size:28px;line-height:1.25;letter-spacing:-.035em}.home-hero-copy p{margin:9px 0 0;font-size:14px;font-weight:800;color:#52616b}
.global-search{display:flex;gap:7px;margin:0 0 18px}.global-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:11px 13px;font:inherit;background:#fff}.global-search button{border:0;border-radius:10px;padding:0 18px;background:var(--blue);color:#fff;font-weight:700;cursor:pointer}
.market-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.market-door{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 14px}.market-door strong{display:block;color:#1d3444;font-size:17px;margin-bottom:4px}.market-door span{font-size:12.5px;color:#73808a}.market-door:hover{border-color:#8bbad9;box-shadow:0 4px 14px rgba(20,60,90,.06)}
.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.showcase-box{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.showcase-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid var(--line)}.showcase-head h2{margin:0;font-size:16px}.showcase-head a{font-size:12.5px;text-decoration:none;color:var(--blue);font-weight:700}.showcase-posts a{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 13px;border-bottom:1px solid #edf0f2;text-decoration:none}.showcase-posts a:last-child{border-bottom:0}.showcase-posts .sc-cat{flex:0 0 auto;font-size:10.5px;color:#697781;background:#f2f5f7;border-radius:5px;padding:2px 5px}.showcase-posts b{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#273944;font-size:13.5px}.showcase-empty{padding:18px 13px;color:#8a959c;font-size:13px}.showcase-life{grid-column:1/-1}.showcase-life .showcase-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-life .showcase-posts a:nth-child(odd){border-right:1px solid #edf0f2}
.search-summary{margin:-5px 0 12px;color:#68757e;font-size:13px}.search-summary b{color:#223b4a}
@media(max-width:720px){.home-intro{display:block;margin-bottom:10px}.home-intro h1{font-size:20px}.home-intro p{font-size:12.5px}.global-search{margin-bottom:12px}.global-search input{padding:9px 10px;font-size:13px}.global-search button{padding:0 13px}.market-doors{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}.market-door{padding:10px 7px;text-align:center;border-radius:9px}.market-door strong{font-size:14px;margin:0}.market-door span{display:none}.showcase-grid{grid-template-columns:1fr;gap:9px}.showcase-life{grid-column:auto}.showcase-life .showcase-posts{display:block}.showcase-life .showcase-posts a:nth-child(odd){border-right:0}.showcase-head{padding:9px 10px}.showcase-head h2{font-size:15px}.showcase-posts a{padding:7px 10px;gap:6px}.showcase-posts b{font-size:13px}.showcase-posts .sc-cat{font-size:9.5px}.showcase-box{border-radius:9px}}
@media(max-width:720px){.home-hero{height:108px;margin-bottom:10px;padding:12px 14px;border-radius:10px;background-position:center center}.home-hero:after{background:linear-gradient(90deg,rgba(255,252,240,.93) 0%,rgba(255,252,240,.66) 38%,rgba(255,252,240,.05) 68%)}.home-hero-copy h1{font-size:18px;line-height:1.25}.home-hero-copy p{display:none}}

/* 2026-09-13: stronger homepage boundaries + search on major hubs */
.global-search,
.hub-search{
  display:flex;
  gap:7px;
  padding:5px;
  background:#fff;
  border:2px solid #b8c9d5;
  border-radius:12px;
  box-shadow:0 1px 3px rgba(20,60,90,.06);
}
.global-search{margin:0 0 18px}
.hub-search{margin:0 0 18px}
.global-search input,
.hub-search input{
  flex:1;
  min-width:0;
  border:0;
  outline:0;
  border-radius:8px;
  padding:9px 10px;
  font:inherit;
  background:#fff;
}
.global-search:focus-within,
.hub-search:focus-within{
  border-color:#2f7fb8;
  box-shadow:0 0 0 3px rgba(47,127,184,.12);
}
.global-search button,
.hub-search button{
  border:0;
  border-radius:8px;
  padding:0 18px;
  background:var(--blue);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.market-door{border-color:#c8d4dc;box-shadow:0 1px 2px rgba(20,60,90,.04)}
.showcase-box{border-color:#c4d1da;box-shadow:0 1px 3px rgba(20,60,90,.045)}
.showcase-head{background:#f8fafb;border-bottom-color:#cbd6de}
.showcase-posts a{border-bottom-color:#dfe6eb}
@media(max-width:720px){
  .global-search,.hub-search{padding:4px;border-width:2px;border-radius:10px;margin-bottom:12px}
  .global-search input,.hub-search input{padding:8px 8px;font-size:13px}
  .global-search button,.hub-search button{padding:0 13px}
  .showcase-box{border-color:#c4d1da}
}


/* 2026-09-13: compact news category strip — news first, categories second */
.news-category-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0 0 18px}
.news-category-strip a{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:10px 7px;background:#fff;border:1px solid #b8c9d5;border-radius:9px;text-decoration:none;color:var(--navy);font-size:14px;line-height:1.15;transition:.15s ease}
.news-category-strip a:hover{border-color:#78aecd;background:#f5fbff;box-shadow:0 2px 8px rgba(20,60,90,.06)}
.news-category-strip b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.news-category-strip span{flex:0 0 auto;background:var(--sky);color:var(--blue);font-size:10.5px;font-weight:900;border-radius:999px;padding:2px 5px}
.news-hub .hub-search{margin-bottom:10px}
.news-hub .life-section{margin-top:0}
.news-hub .section-title{margin-bottom:10px}
@media(max-width:720px){
  .news-category-strip{display:flex;overflow-x:auto;gap:6px;margin-bottom:13px;padding-bottom:2px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .news-category-strip a{flex:0 0 auto;padding:8px 10px;font-size:13px}
}

/* 2026-09-13: refine news strip counts + mobile spacing */
.news-category-strip{gap:9px}
.news-category-strip a{gap:7px;padding:9px 7px;font-size:13px}
.news-category-strip span{
  background:transparent;
  color:#2f7fbd;
  font-size:8.5px;
  line-height:1;
  font-weight:800;
  border-radius:0;
  padding:0;
  margin-left:1px;
}
@media(max-width:720px){
  .news-category-strip{
    gap:10px;
    margin-bottom:12px;
    padding:0 1px 4px;
  }
  .news-category-strip a{
    gap:5px;
    padding:7px 9px;
    font-size:12px;
    line-height:1.1;
  }
  .news-category-strip span{
    font-size:7.5px;
    margin-left:2px;
  }
}

/* 2026-09-13: news strip — labels only, larger type */
.news-category-strip a{font-size:15px;font-weight:800;padding:10px 8px}
.news-category-strip b{font-size:inherit;font-weight:800}
@media(max-width:720px){
  .news-category-strip{gap:9px}
  .news-category-strip a{font-size:14px;font-weight:800;padding:8px 12px}
}

/* 2026-09-13: mobile news categories — separate, readable 4+3 grid */
@media(max-width:720px){
  .news-category-strip{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    overflow:visible;
    gap:7px;
    margin-bottom:14px;
    padding:0;
  }
  .news-category-strip a{
    width:100%;
    min-width:0;
    padding:9px 5px;
    font-size:14px;
    line-height:1.15;
    white-space:nowrap;
  }
  .news-category-strip b{
    overflow:visible;
    text-overflow:clip;
    white-space:nowrap;
  }
}

/* 2026-09-13 FINAL: mobile news categories — hard override */
@media (max-width:720px){
  .news-category-strip{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:8px !important;
    overflow:visible !important;
    margin:0 0 14px !important;
    padding:0 !important;
  }
  .news-category-strip a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    padding:9px 5px !important;
    margin:0 !important;
    background:#fff !important;
    border:1px solid #b8c9d5 !important;
    border-radius:9px !important;
    color:var(--navy) !important;
    text-decoration:none !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
  }
  .news-category-strip b{
    display:block !important;
    overflow:visible !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
    font:inherit !important;
  }
}
/* Member tools, policy and private messages */
.policy-banner{display:flex;gap:12px;align-items:flex-start;background:#fff8df;border:1px solid #e7d28a;border-radius:11px;padding:13px 15px;margin:0 0 15px;color:#5b4a17;font-size:14px;line-height:1.55}.policy-banner b{white-space:nowrap}.post-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px}.post-tools a,.post-tools button{border:0;background:none;color:var(--blue);font:inherit;font-weight:800;text-decoration:none;padding:3px;cursor:pointer}.post-tools form{margin:0}.post-tools form button{color:var(--red)}.message-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--red);color:#fff;font-size:11px}.secondary-form{text-align:center;margin-top:10px}.message-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.message-head h1{margin:0}.message-head nav{display:flex;gap:6px}.message-head nav a{padding:9px 12px;border-radius:8px;text-decoration:none;font-weight:800;background:#edf2f5}.message-head nav a.active{background:var(--navy);color:#fff}.message-list{margin-top:20px;border:1px solid var(--line);border-radius:11px;overflow:hidden}.message-item{border-bottom:1px solid var(--line)}.message-item:last-child{border-bottom:0}.message-item>a{display:flex;justify-content:space-between;gap:15px;padding:14px 16px;text-decoration:none}.message-item>a span{font-size:13px;color:var(--muted);white-space:nowrap}.message-item.unread>a{background:#edf7ff}.message-item.unread>a b:before{content:'새 쪽지';display:inline-block;margin-right:7px;padding:3px 6px;border-radius:5px;background:var(--blue);color:#fff;font-size:10px}.message-body{padding:18px 16px;background:#fafcfd;border-top:1px solid var(--line);line-height:1.7}.message-body p{margin:18px 0 0}
@media(max-width:720px){.policy-banner{display:block;font-size:12.5px;padding:11px 12px}.policy-banner b{display:block;margin-bottom:4px}.post-tools{justify-content:flex-start;flex-wrap:wrap}.message-head{display:block}.message-head nav{margin-top:12px}.message-item>a{display:block}.message-item>a span{display:block;margin-top:5px;white-space:normal}.messages-page.page-card{margin:18px 12px}}
.check-label{display:flex;align-items:flex-start;gap:9px;font-weight:500;line-height:1.5}.check-label input{width:auto;margin-top:4px}.privacy-note{font-size:12px;color:var(--muted);line-height:1.5}.admin-member-list{border:1px solid var(--line);border-radius:10px;overflow:auto}.admin-member-row{display:grid;grid-template-columns:1fr 1.3fr .8fr .7fr;gap:10px;padding:11px 13px;border-bottom:1px solid var(--line);min-width:590px}.admin-member-row:last-child{border-bottom:0}.admin-member-row.head{background:#edf2f5}
.optional{font-weight:400;color:var(--muted);font-size:14px}.upload-help{margin:6px 0 16px;color:var(--muted);font-size:13px}.post-image-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0}.post-image-gallery a{display:block;border-radius:10px;overflow:hidden;background:#eef2f5}.post-image-gallery img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain}.edit-images{border:1px solid var(--line);border-radius:10px;margin:18px 0;padding:12px}.edit-images legend{font-weight:800;padding:0 6px}.edit-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.edit-image-grid label{margin:0;border:1px solid var(--line);border-radius:8px;padding:7px}.edit-image-grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:6px}.edit-image-grid span{display:flex;align-items:center;gap:6px;font-size:13px;margin-top:7px}.edit-image-grid input{width:auto}
@media(max-width:720px){.post-image-gallery{grid-template-columns:1fr;gap:8px}.edit-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* 2026-09-14: NEWS main - mixed latest feed + compact rows */
.news-hub .life-section{margin-bottom:16px}
.news-hub .section-title{margin-bottom:7px}
.news-hub .section-title h2{font-size:21px}
.news-hub .section-title p{margin-top:2px;font-size:13px}
.news-hub .life-latest-list{border-radius:9px}
.news-hub .life-latest-list a{min-height:36px;padding:6px 10px;gap:9px}
.news-hub .life-latest-list a>div{gap:6px}
.news-hub .life-latest-list .category{flex:0 0 auto;padding:2px 5px;border-radius:5px;font-size:10.5px;line-height:1.25}
.news-hub .life-latest-list a>div b{font-size:13.5px;line-height:1.2}
.news-hub .life-latest-list a>span{font-size:10.5px}

@media(max-width:720px){
  .news-hub .life-section{margin-bottom:12px}
  .news-hub .section-title{margin-bottom:5px}
  .news-hub .section-title h2{font-size:19px}
  .news-hub .section-title p{font-size:11.5px;margin-top:1px}
  .news-hub .life-latest-list a{display:block;min-height:0;padding:5px 7px}
  .news-hub .life-latest-list a>div{display:flex;align-items:flex-start;gap:5px;min-width:0}
  .news-hub .life-latest-list .category{margin:1px 0 0;padding:2px 4px;font-size:9.5px;line-height:1.15}
  .news-hub .life-latest-list a>div b{
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
    white-space:normal;overflow:hidden;text-overflow:ellipsis;
    font-size:12.5px;line-height:1.16;margin:0
  }
  .news-hub .life-latest-list a>span{display:none}
}


/* 2026-09-14: Today's Pick — clean editorial card */
.today-pick{display:block;position:relative;background:#fff;border:1px solid #d9e1e7;border-radius:12px;padding:14px 14px 13px;margin-bottom:15px;text-decoration:none;box-shadow:0 2px 8px rgba(18,49,74,.035);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.today-pick:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--navy)}
.today-pick:hover{border-color:#a9bdcc;box-shadow:0 5px 16px rgba(18,49,74,.08);transform:translateY(-1px)}
.today-pick .pick-label{display:block;color:var(--blue);font-size:10.5px;font-weight:900;letter-spacing:.11em;margin:0 0 8px;text-transform:uppercase}
.today-pick strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;color:var(--navy);font-size:15px;line-height:1.42;font-weight:850;letter-spacing:-.02em}
.today-pick small{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px;line-height:1.35;margin-top:9px;padding-top:8px;border-top:1px solid #edf1f4}
.today-pick small b{color:var(--blue);font-size:14px}
.mobile-pick{display:none}.featured-check{display:flex;align-items:center;gap:8px;background:#f6f9fb;border:1px solid #d9e1e7;border-radius:9px;padding:10px 12px}.featured-check input{width:auto;margin:0}
@media(max-width:720px){.mobile-pick{display:block;margin:0 0 12px;padding:12px 14px}.side-pick{display:none}.mobile-pick strong{-webkit-line-clamp:2;font-size:15px}.mobile-pick small{margin-top:7px;padding-top:7px}}

/* 2026-09-15: PC Today's Pick hard fix — keep mobile design unchanged */
@media (min-width:721px){
  .mobile-pick{display:none!important}
  .side-pick{display:block!important;padding:14px 13px 13px!important;margin:0 0 16px!important;white-space:normal!important}
  .side-pick .pick-label{display:block!important;margin:0 0 8px!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.08em!important}
  .side-pick strong{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:4!important;overflow:hidden!important;font-size:14px!important;line-height:1.38!important;word-break:keep-all!important;overflow-wrap:anywhere!important;white-space:normal!important}
  .side-pick small{display:flex!important;margin-top:9px!important;padding-top:8px!important;font-size:10.5px!important;line-height:1.3!important;white-space:normal!important}
}

/* 2026-09-15: PC TODAY compact card v2 — title is the hero, mobile untouched */
@media (min-width:721px){
  .side-pick{min-height:0!important;padding:13px 30px 13px 13px!important;border-radius:11px!important}
  .side-pick .pick-label{margin:0 0 7px!important;font-size:9.5px!important;line-height:1.15!important;letter-spacing:.09em!important}
  .side-pick strong{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important;font-size:13.5px!important;line-height:1.38!important;font-weight:850!important;word-break:keep-all!important;overflow-wrap:anywhere!important}
  .side-pick small{display:none!important}
  .side-pick:after{content:"→";position:absolute;right:10px;bottom:10px;color:var(--blue);font-size:16px;font-weight:900;line-height:1}
}

/* 2026-09-15: PC TODAY readable full-title v3 — mobile untouched */
@media (min-width:721px){
  .side-pick{padding:12px 12px 12px 13px!important;overflow:visible!important}
  .side-pick .pick-label{margin:0 0 6px!important;font-size:9px!important;line-height:1.15!important;font-weight:800!important;letter-spacing:.07em!important}
  .side-pick strong{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;font-size:11.5px!important;line-height:1.32!important;font-weight:700!important;letter-spacing:-.015em!important;word-break:keep-all!important;overflow-wrap:anywhere!important;white-space:normal!important}
  .side-pick small{display:none!important}
  .side-pick:after{content:"→";position:static!important;display:block!important;text-align:right!important;margin-top:5px!important;color:var(--blue);font-size:13px!important;font-weight:800!important;line-height:1!important}
}


/* 2026-09-15: first-party visitor analytics admin */
.admin-tabs{display:flex;gap:7px;margin-bottom:18px}.admin-tabs a{padding:9px 13px;border-radius:8px;background:#eaf0f4;color:var(--navy);text-decoration:none;font-weight:800}.admin-tabs a.active{background:var(--navy);color:#fff}.traffic-admin{max-width:980px}.traffic-admin h1{margin:8px 0 7px}.traffic-note{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 17px}.traffic-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.traffic-stats div{background:var(--sky);border-radius:10px;padding:17px 10px;text-align:center}.traffic-stats b{display:block;color:var(--navy);font-size:27px}.traffic-stats span{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}.traffic-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:20px}.traffic-grid section,.traffic-section{border:1px solid var(--line);border-radius:11px;padding:15px;background:#fff}.traffic-grid h2,.traffic-section h2{font-size:17px;margin:0 0 11px}.traffic-table{border:1px solid var(--line);border-radius:8px;overflow:hidden}.traffic-table .tr{display:grid;grid-template-columns:1.4fr repeat(3,.7fr);gap:8px;padding:9px 10px;border-bottom:1px solid var(--line);align-items:center;font-size:13px}.traffic-table .tr:last-child{border-bottom:0}.traffic-table .tr.head{background:#f1f5f7;color:var(--muted);font-size:11px;font-weight:800}.traffic-table.pages .tr{grid-template-columns:minmax(0,1fr) 80px 60px}.traffic-table.sessions .tr{grid-template-columns:1fr 1fr .8fr 1fr}.traffic-table .path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-list div{display:flex;justify-content:space-between;padding:9px 3px;border-bottom:1px solid var(--line)}.device-list div:last-child{border-bottom:0}.bot-note{margin:12px 0 0;color:var(--muted);font-size:12px}.traffic-section{margin-top:16px}
@media(max-width:720px){.traffic-admin.page-card{margin:18px 12px;padding:16px}.traffic-stats{grid-template-columns:repeat(2,1fr);gap:7px}.traffic-stats div{padding:14px 5px}.traffic-grid{grid-template-columns:1fr}.traffic-table{overflow-x:auto}.traffic-table .tr{min-width:520px}.traffic-table.pages .tr{min-width:480px}.traffic-table.sessions .tr{min-width:430px}.admin-tabs a{flex:1;text-align:center}}

/* 2026-09-16: single news image uses full article width */
.post-image-gallery.single{grid-template-columns:1fr}.post-image-gallery.single a{width:100%}.post-image-gallery.single img{width:100%;max-height:430px;object-fit:cover}
@media(max-width:720px){.post-image-gallery.single img{max-height:260px}}

/* Photo previews and safer member messaging */
.photo-preview,.message-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 16px}.photo-preview:empty{display:none}.photo-preview>div{position:relative;border-radius:9px;overflow:hidden;background:#edf2f5}.photo-preview img,.message-image{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:9px}.photo-preview button{position:absolute;right:5px;top:5px;width:30px;height:30px;border:0;border-radius:50%;background:rgba(0,0,0,.72);color:#fff;font-size:21px;line-height:28px;cursor:pointer}.message-image.reveal{filter:blur(18px);cursor:pointer}.message-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px;margin-top:15px}.message-actions form{margin:0}.report-box{flex-basis:100%;border:1px solid var(--line);border-radius:9px;padding:9px 11px}.report-box summary{font-weight:800;color:#9c2222;cursor:pointer}.report-box form{display:grid;gap:8px;margin-top:10px}.button.danger{background:#a82222;color:#fff;border-color:#a82222}.report-admin-list{display:grid;gap:13px}.report-admin-item{border:1px solid var(--line);border-radius:11px;padding:15px}.report-meta{display:flex;justify-content:space-between;gap:10px}.report-meta span{color:var(--muted);font-size:12px}.report-admin-item h3{margin:12px 0 6px}.report-admin-item form{margin-top:13px}
@media(max-width:720px){.photo-preview,.message-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-meta{display:block}.admin-tabs{flex-wrap:wrap}.admin-tabs a{flex:1 1 30%}}

/* YouTube links: lightweight thumbnail first, privacy-enhanced player after click */
.traffic-stats.six{grid-template-columns:repeat(3,1fr)}.traffic-stats .human{background:#e8f7ef}.traffic-stats .human b,.human-count,.human-label{color:#087443!important}.traffic-stats .uncertain{background:#fff6df}.traffic-stats .uncertain b,.uncertain-label{color:#9a6500!important}.traffic-table.week-human .tr{grid-template-columns:1.2fr repeat(4,.7fr)}.traffic-table.human-pages .tr{grid-template-columns:minmax(0,1fr) 90px 60px}.human-label,.uncertain-label{font-weight:850}.traffic-board-list b{font-size:12px;white-space:nowrap}@media(max-width:720px){.traffic-stats.six{grid-template-columns:repeat(2,1fr)}.traffic-table.week-human .tr{min-width:570px}.traffic-table.human-pages .tr{min-width:520px}}

/* YouTube links: lightweight thumbnail first, privacy-enhanced player after click */
.traffic-table .path{display:block;color:var(--navy);font-weight:750;text-decoration:none}.traffic-table a.path:hover{color:var(--blue);text-decoration:underline}.traffic-board-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.traffic-board-list div{display:flex;justify-content:space-between;gap:10px;padding:11px 13px;border-radius:8px;background:#f3f7f9}.traffic-board-list span{font-weight:750;color:var(--navy)}.traffic-board-list b{color:var(--blue)}@media(max-width:720px){.traffic-board-list{grid-template-columns:1fr}}

/* YouTube links: lightweight thumbnail first, privacy-enhanced player after click */
.youtube-player{width:min(100%,880px);margin:20px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0d1117;line-height:1}.youtube-player button{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#000;cursor:pointer;overflow:hidden}.youtube-player button img{display:block;width:100%;height:100%;object-fit:cover}.youtube-player button:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.16))}.youtube-player button span{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:50px;padding-left:4px;border-radius:13px;background:#f00;color:#fff;font-size:25px;box-shadow:0 4px 18px rgba(0,0,0,.35)}.youtube-player button:hover span{background:#d90000;transform:translate(-50%,-50%) scale(1.05)}.youtube-player iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.youtube-player>a{display:block;padding:10px 13px;background:#fff;color:var(--blue);font-size:12px;font-weight:800;text-decoration:none;line-height:1.35}.youtube-player iframe+a{display:none}@media(max-width:720px){.youtube-player{margin:15px 0;border-radius:9px}.youtube-player button span{width:60px;height:42px;font-size:21px;border-radius:11px}}
/* 2026-09-18: temporary home introduction and readable post formatting */
.home-introduction{display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#12314a,#1f557b);color:#fff;border-radius:13px;padding:16px 18px;margin:0 0 14px;text-decoration:none;box-shadow:0 4px 14px rgba(18,49,74,.12)}
.home-introduction>span{flex:0 0 auto;background:#fff;color:var(--navy);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}
.home-introduction>div{flex:1;min-width:0}.home-introduction strong{display:block;font-size:18px;line-height:1.3}
.home-introduction p{margin:5px 0 0;color:#e5eef5;font-size:13px;line-height:1.45}.home-introduction>b{white-space:nowrap;font-size:13px}
.home-introduction:hover{background:linear-gradient(135deg,#173d5a,#25638f)}
.post-section-title{font-size:21px!important;line-height:1.4!important;margin:27px 0 10px!important;color:var(--navy)}
.post-section-title:first-child{margin-top:0!important}.post-bullet-list{margin:8px 0 18px;padding-left:23px}
.post-bullet-list li{margin:5px 0;line-height:1.65}.post-line{min-height:1.8em}.post-spacer{height:1em}
@media(max-width:720px){
  .home-introduction{display:block;padding:13px 14px;margin-bottom:10px;border-radius:10px}
  .home-introduction>span{display:inline-block;padding:5px 8px;font-size:9.5px;margin-bottom:8px}
  .home-introduction strong{font-size:15.5px}.home-introduction p{font-size:12px;line-height:1.4;margin-top:4px}
  .home-introduction>b{display:block;text-align:right;margin-top:8px;font-size:12px}
  .post-section-title{font-size:18px!important;margin-top:22px!important}.post-bullet-list{padding-left:20px}.post-spacer{height:.7em}
}
/* 2026-09-18 home priority: News + Life side-by-side; marketplace stays as quick doors only */
.showcase-life-home{grid-column:auto}
.showcase-life-home .showcase-posts{display:block}
.showcase-life-home .showcase-posts a{border-right:0}
@media(max-width:720px){.showcase-life-home{grid-column:auto}}

/* KSquare Today archive */
.today-archive-link{display:block;margin:-8px 0 14px;padding:8px 10px;text-align:right;font-size:13px;font-weight:800;color:#315b73;text-decoration:none}
.today-archive-link:hover{text-decoration:underline}.today-archive .portal-hero{margin-bottom:14px}.today-list .post-row{align-items:center}.today-list .post-meta{white-space:nowrap}.mobile-today-archive{display:none}
@media(max-width:760px){.today-archive-link{margin:-6px 0 10px;padding:6px 4px}.mobile-today-archive{display:block}.today-list .post-row{display:block}.today-list .post-meta{margin-top:6px}}


/* 2026-09-18: mobile KSquare Today strip + tighter intro */
.mobile-today-strip{display:none}
@media(max-width:720px){
  .home-introduction{padding:10px 13px!important;margin-bottom:8px!important}
  .home-introduction>span{padding:4px 7px!important;font-size:9px!important;margin-bottom:5px!important}
  .home-introduction strong{font-size:15px!important;line-height:1.25!important}
  .home-introduction p{font-size:11.5px!important;line-height:1.3!important;margin-top:3px!important}
  .home-introduction>b{margin-top:4px!important;font-size:11.5px!important}
  .mobile-today-strip{display:flex;align-items:center;margin:0 0 8px;background:#fff;border:1px solid #c7d5df;border-radius:10px;overflow:hidden;box-shadow:0 1px 4px rgba(18,49,74,.04);min-height:42px}
  .mobile-today-main{display:flex;align-items:center;gap:7px;min-width:0;flex:1;padding:9px 10px;text-decoration:none!important;color:var(--navy)!important}
  .mobile-today-main span{flex:0 0 auto;font-size:9px;font-weight:900;letter-spacing:.04em;color:var(--blue);white-space:nowrap}
  .mobile-today-main strong{display:block;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.2;text-decoration:none!important}
  .mobile-today-main>b{flex:0 0 auto;font-size:13px;color:var(--blue)}
  .mobile-today-history{display:flex;align-items:center;align-self:stretch;flex:0 0 auto;padding:0 8px;border-left:1px solid #e0e7ec;color:#315b73!important;text-decoration:none!important;font-size:9.5px;font-weight:800;white-space:nowrap;background:#f8fbfd}
}


/* 2026-09-19 Android home-screen installer */
.pwa-install-button{width:100%;margin:12px 0 2px;border:0;border-radius:9px;background:#1877c9;color:#fff;padding:12px 14px;font:inherit;font-weight:850;cursor:pointer;text-align:center}.pwa-install-button:hover{filter:brightness(.96)}.pwa-install-button[hidden]{display:none!important}
@media(min-width:721px){.pwa-install-button{display:none!important}}


/* KSquare Game Land */
.game-shell{max-width:1180px;margin:24px auto;padding:0 16px}.game-hero{background:linear-gradient(135deg,#173f55,#285f72);color:#fff;border-radius:20px;padding:28px;box-shadow:0 12px 34px rgba(16,50,68,.16)}.game-hero h1{margin:0 0 8px;font-size:32px}.game-hero p{margin:0;opacity:.92}.game-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.game-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:12px 18px;background:#123955;color:#fff;font-weight:800;text-decoration:none;cursor:pointer}.game-btn.alt{background:#fff;color:#123955}.game-btn.soft{background:#e9f1f4;color:#123955}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.room-card{background:#fff;border:1px solid #dce6eb;border-radius:16px;padding:18px;box-shadow:0 5px 18px rgba(20,50,65,.06)}.room-card h3{margin:0 0 6px}.room-meta{font-size:13px;color:#71818b}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-top:18px}.game-stage,.love-room{background:#fff;border:1px solid #dce6eb;border-radius:18px;padding:18px}.room-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.room-top h1{font-size:24px;margin:0}.players{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.player-chip{padding:8px 11px;border-radius:999px;background:#eef4f6;font-size:14px}.player-chip.turn{background:#dff1df;font-weight:800}.go-board{width:min(100%,680px);aspect-ratio:1;margin:auto;display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);background:#d7aa5c;border:12px solid #8a5a2b;border-radius:8px;box-shadow:inset 0 0 0 1px #6d451f}.go-cell{position:relative;border:0;background:transparent;padding:0;cursor:pointer}.go-cell:before,.go-cell:after{content:"";position:absolute;background:#60441f}.go-cell:before{height:1px;left:0;right:0;top:50%}.go-cell:after{width:1px;top:0;bottom:0;left:50%}.go-cell.edge-l:before{left:50%}.go-cell.edge-r:before{right:50%}.go-cell.edge-t:after{top:50%}.go-cell.edge-b:after{bottom:50%}.stone{position:absolute;z-index:2;width:72%;height:72%;left:14%;top:14%;border-radius:50%;box-shadow:1px 2px 4px rgba(0,0,0,.4)}.stone.black{background:#171717}.stone.white{background:#f7f7f2;border:1px solid #aaa}.game-status{text-align:center;font-weight:800;margin:12px 0}.chat-log{height:310px;overflow:auto;border:1px solid #e0e7ea;border-radius:12px;padding:10px;background:#fbfcfd}.chat-line{margin:0 0 9px;line-height:1.35}.chat-line b{color:#123955}.chat-time{font-size:11px;color:#9aa5aa;margin-left:5px}.chat-form{display:flex;gap:7px;margin-top:8px}.chat-form input{min-width:0;flex:1}.quick-chat{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.quick-chat button{border:1px solid #d7e2e7;background:#fff;border-radius:999px;padding:6px 9px;cursor:pointer}.ad-wall{margin-top:16px;padding:12px;border-radius:14px;background:#f7f3e9;border:1px solid #e8dcc0}.ad-wall h3{margin:0 0 10px;font-size:14px;color:#6e5a34}.ad-frames{display:grid;grid-template-columns:1fr 1fr;gap:9px}.ad-frame{min-height:76px;border:5px solid #8b6b45;background:#fffdf8;display:flex;align-items:center;justify-content:center;text-align:center;padding:7px;font-size:12px;color:#776b5d;box-shadow:inset 0 0 0 1px #cdbb9d}.invite-box{display:flex;gap:7px;margin-top:10px}.invite-box input{flex:1;min-width:0}.empty-land{text-align:center;padding:36px 18px;background:#fff;border:1px dashed #cbd9df;border-radius:18px;margin-top:18px}.room-form{max-width:560px;margin:18px auto;background:#fff;border:1px solid #dce6eb;border-radius:18px;padding:22px}.room-form label{display:block;font-weight:700;margin:12px 0}.room-form input,.room-form select,.chat-form input,.invite-box input{width:100%;box-sizing:border-box;border:1px solid #cbd8de;border-radius:10px;padding:11px;font:inherit}.game-note{font-size:13px;color:#687982;line-height:1.5}.back-home{display:inline-block;margin:18px 0;color:#123955;font-weight:800;text-decoration:none}@media(max-width:820px){.game-layout{grid-template-columns:1fr}.room-grid{grid-template-columns:1fr}.love-room{order:2}.game-shell{padding:0 10px;margin-top:12px}.game-hero{padding:20px}.game-hero h1{font-size:26px}.go-board{border-width:8px}.chat-log{height:220px}.ad-frames{grid-template-columns:1fr 1fr}}
/* GAME LAND PUBLIC LOBBY v2 */
.lobby-summary{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}.lobby-summary span{background:#fff;border:1px solid #dce6eb;border-radius:999px;padding:9px 13px;font-size:13px;color:#526670}.lobby-summary b{color:#123955}.room-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.room-state{font-size:12px;font-weight:900;padding:5px 9px;border-radius:999px}.room-state.wait{background:#e7f6ea;color:#176b32}.room-state.live{background:#fff0ef;color:#a62b23}.watch-count{font-size:12px;color:#667983}.room-help{font-size:13px;color:#64757e;line-height:1.5;margin:10px 0 0}.room-card.waiting{border-color:#cfe5d4}.room-card.playing{border-color:#ead7d4}
@media(max-width:600px){.lobby-summary{display:grid;grid-template-columns:1fr 1fr}.lobby-summary span:last-child{grid-column:1/-1}.room-card-top{align-items:flex-start}}

/* 2026-09-21: focused news desk — Health, Economy, Immigration */
.news-hub .portal-hero.news{background:linear-gradient(135deg,#102f48,#205f75)}
.news-hub .portal-hero.news h1{letter-spacing:-.04em}
.news-hub .portal-hero.news p{max-width:620px}
.news-hub .news-category-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;max-width:none!important;gap:10px!important;margin:0 0 20px!important;padding:0!important;overflow:visible!important}
.news-hub .news-category-strip a{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:58px!important;padding:12px 16px!important;background:#fff!important;border:1px solid #b9ccd8!important;border-radius:11px!important;color:var(--navy)!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:0 2px 7px rgba(18,49,74,.035)!important}
.news-hub .news-category-strip a:hover{border-color:#5e9fc5!important;background:#f7fbfe!important;box-shadow:0 5px 14px rgba(18,49,74,.08)!important;transform:translateY(-1px)}
.news-hub .news-category-strip b{display:block!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;font-size:20px!important;line-height:1!important;font-weight:900!important;color:var(--navy)!important}
.news-board-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;width:100%;margin:-2px 0 14px}
.news-board-tabs a{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px;border:1px solid #c5d3dc;border-radius:9px;background:#fff;color:var(--navy);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
.news-board-tabs a:hover{border-color:#6e9fbc;background:#f4f9fc}
.news-board-tabs a.active{border-color:var(--blue);background:var(--blue);color:#fff}
@media(max-width:720px){
  .news-hub .news-category-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin-bottom:14px!important}
  .news-hub .news-category-strip a{min-height:45px!important;padding:9px 5px!important;border-radius:9px!important}
  .news-hub .news-category-strip b{font-size:16px!important}
  .news-board-tabs{gap:5px;margin:-1px 0 11px}
  .news-board-tabs a{min-height:38px;padding:7px 4px;font-size:12.5px;border-radius:8px}
}

.mobile-invite{display:none}.share-wide{width:100%;margin-top:8px}@media(max-width:820px){.mobile-invite{display:block;background:#fff;border:1px solid #dce6eb;border-radius:14px;padding:12px;margin:10px 0 14px}.love-room h2[style*=\"margin-top\"]{margin-top:16px!important}.love-room .invite-box,.love-room #shareInvite,.love-room h2[style*=\"margin-top\"]+.invite-box+.share-wide{display:none}.room-top{align-items:flex-start}.room-top h1{font-size:22px}}
/* Game Land v4 — 19x19 + AI + room owner controls */
.go-board.go19{grid-template-columns:repeat(19,1fr);grid-template-rows:repeat(19,1fr);width:min(100%,760px);touch-action:manipulation}.go-board.go19 .stone{width:88%;height:88%;left:6%;top:6%}.owner-tools,.game-controls{display:flex;gap:8px;flex-wrap:wrap}.game-controls{justify-content:center;margin-top:12px}.game-btn.danger{background:#8d2d2d}.lobby-summary{display:flex;gap:16px;flex-wrap:wrap;margin:10px 4px 0}.mobile-invite{display:none;background:#fff;border:1px solid #dce6eb;border-radius:14px;padding:12px;margin:12px 0}.share-wide{width:100%;margin-top:8px}
@media(max-width:820px){.mobile-invite{display:block}.go-board.go19{border-width:6px}.go-board.go19 .stone{width:96%;height:96%;left:2%;top:2%}.room-top{align-items:flex-start}.owner-tools{justify-content:flex-end}.love-room .invite-box,.love-room .share-wide{display:none}}

/* KSquare Game Land v4.2 - mobile-safe 19x19 board */
.go-board.go19{
  width:min(100%,760px);
  max-width:760px;
  aspect-ratio:1/1;
  display:grid;
  grid-template-columns:repeat(19,minmax(0,1fr));
  grid-template-rows:repeat(19,minmax(0,1fr));
  overflow:hidden;
  touch-action:manipulation;
}
.go-board.go19 .go-cell{
  min-width:0!important;
  min-height:0!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  background:transparent;
  line-height:0;
}
.go-board.go19 .go-cell:before{height:1px;left:0;right:0;top:50%;}
.go-board.go19 .go-cell:after{width:1px;top:0;bottom:0;left:50%;}
.go-board.go19 .go-cell.edge-l:before{left:50%;}
.go-board.go19 .go-cell.edge-r:before{right:50%;}
.go-board.go19 .go-cell.edge-t:after{top:50%;}
.go-board.go19 .go-cell.edge-b:after{bottom:50%;}
.go-board.go19 .stone{width:88%;height:88%;left:6%;top:6%;}
@media(max-width:820px){
  .game-stage{padding:12px 8px;}
  .go-board.go19{width:100%;max-width:100%;border-width:5px;border-radius:6px;}
  .go-board.go19 .stone{width:96%;height:96%;left:2%;top:2%;}
}

/* 2026-09-21 KSquare reading & TODAY refresh */
@media (min-width:721px){
  .post-full h1{font-size:32px;line-height:1.28;letter-spacing:-.035em}
  .post-body{font-size:18px;line-height:1.82;letter-spacing:-.012em}
  .post-body p{margin:0 0 1.05em}
  .post-body .post-section-title,.post-body h2,.post-body h3{font-size:23px!important;line-height:1.42!important;margin:1.65em 0 .65em!important}
  .today-pick.side-pick{padding:18px 17px 16px;margin-bottom:10px;border-radius:13px;box-shadow:0 5px 18px rgba(18,49,74,.08)}
  .today-pick.side-pick:before{width:4px}
  .today-pick.side-pick .pick-label{font-size:11px;margin-bottom:10px}
  .today-pick.side-pick strong{font-size:17px;line-height:1.42;-webkit-line-clamp:4}
  .today-pick.side-pick .pick-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;margin-top:10px;color:#53636e;font-size:13px;line-height:1.55;font-weight:500}
  .today-pick.side-pick small{font-size:12px;margin-top:12px;padding-top:10px}
  .today-archive-link{font-size:12.5px;margin:-2px 0 14px;padding:7px 5px}
}
.today-library-head{background:#fff;border:1px solid var(--line);border-top:5px solid var(--navy);border-radius:14px;padding:22px 24px 20px;margin-bottom:13px}
.today-library-head .eyebrow{display:block;color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.11em;margin-bottom:7px}
.today-library-head h1{margin:0 0 6px;color:var(--navy);font-size:29px;letter-spacing:-.04em}
.today-library-head p{margin:0;color:#5c6972;font-size:15px;line-height:1.55}
.today-list{display:grid;gap:8px}
.today-list .post-row{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px 17px;text-decoration:none;transition:.15s ease}
.today-list .post-row:hover{border-color:#a9bdcc;box-shadow:0 4px 14px rgba(18,49,74,.07);transform:translateY(-1px)}
.today-list .post-main{min-width:0;flex:1}
.today-row-top{display:flex;align-items:center;gap:9px;margin-bottom:6px}
.today-list .post-cat{font-size:11px;font-weight:850;color:var(--blue);background:var(--sky);border-radius:5px;padding:3px 6px}
.today-date{font-size:12px;color:var(--muted)}
.today-list .post-main>strong{display:block;color:var(--navy);font-size:18px;line-height:1.35;letter-spacing:-.025em}
.today-list .post-main>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:6px 0 0;color:#596872;font-size:13.5px;line-height:1.5}
.today-arrow{flex:0 0 auto;color:var(--blue);font-size:20px;font-weight:900}
@media(max-width:720px){
  .today-library-head{padding:17px 16px 15px;margin-bottom:10px;border-top-width:4px}
  .today-library-head h1{font-size:23px}
  .today-library-head p{font-size:13px;line-height:1.45}
  .today-list{gap:7px}
  .today-list .post-row{display:flex;padding:12px 13px;gap:8px}
  .today-list .post-main>strong{font-size:15.5px;line-height:1.35}
  .today-list .post-main>p{font-size:12px;-webkit-line-clamp:2;margin-top:5px}
  .today-row-top{margin-bottom:5px}
  .today-arrow{font-size:16px}
}


/* 2026-09-21: Home TODAY compact one-line strip; banner remains the visual hero. */
.home-today-hero,.home-today-line{display:none}
@media (min-width:721px){
  .home-layout .main-sidebar .today-pick.side-pick{display:none!important}
  .home-layout .main-sidebar .today-archive-link{margin:0 0 14px;padding:10px 8px 12px;border-bottom:1px solid #e2e8ec;text-align:left;font-size:13px;color:#315b73}
  .home-today-line{display:flex;align-items:center;gap:9px;min-height:44px;margin:8px 0 10px;padding:8px 14px;background:#f7fafc;border:1px solid #cbdbe6;border-left:4px solid #174b6b;border-radius:9px;white-space:nowrap;overflow:hidden}
  .home-today-label{flex:0 0 auto;color:#174b6b;font-size:12px;font-weight:950;letter-spacing:.055em}
  .home-today-rec{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#e4f1f8;color:#174b6b;font-size:11px;font-weight:900}
  .home-today-line-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#102f43!important;text-decoration:none!important;font-size:16px;font-weight:850}
  .home-today-line-title:hover{text-decoration:underline!important;text-underline-offset:3px}
  .home-today-line-read{flex:0 0 auto;margin-left:auto;color:#174b6b!important;text-decoration:none!important;font-size:13px;font-weight:900}
}
@media(max-width:720px){.home-today-line{display:none!important}}

/* 2026-09-21 PC LARGE TYPE — middle/older-reader readability. Mobile intentionally unchanged. */
@media (min-width:721px){
  /* Article pages */
  .post-full{padding:34px 36px}
  .post-full h1{font-size:35px!important;line-height:1.25!important;margin:14px 0 10px!important}
  .post-full>.meta,.post-full .meta{font-size:15px!important;line-height:1.5}
  .post-body{font-size:20px!important;line-height:1.9!important;letter-spacing:-.014em!important;padding-top:28px!important}
  .post-body p{margin:0 0 1.12em!important}
  .post-body li{margin:.28em 0;line-height:1.82}
  .post-body .post-section-title,.post-body h2,.post-body h3{font-size:26px!important;line-height:1.4!important;margin:1.65em 0 .68em!important}

  /* Board/list pages */
  .feed-head h1{font-size:34px!important;line-height:1.25}
  .feed-head p{font-size:17px!important;line-height:1.55}
  .notice{font-size:15.5px!important;line-height:1.65;padding:15px 16px}
  .search input,.global-search input{font-size:17px!important;padding-top:14px!important;padding-bottom:14px!important}
  .search button,.global-search button{font-size:16px!important}
  .post-list-head{grid-template-columns:120px minmax(0,1fr) 130px 90px 125px;font-size:14px!important;padding:11px 13px!important}
  .post-list-row>a{grid-template-columns:120px minmax(0,1fr) 130px 90px 125px;min-height:58px!important;padding:10px 13px!important}
  .list-category{font-size:13.5px!important}
  .list-title{font-size:18px!important;font-weight:800!important;line-height:1.35}
  .list-author,.list-time,.list-stats{font-size:14px!important;line-height:1.35}

  /* Card-style lists used elsewhere */
  .post-card>a{padding:21px 23px!important}
  .post-top{font-size:14px!important}
  .post-card h2{font-size:22px!important;line-height:1.4!important}
  .post-card p{font-size:17px!important;line-height:1.7!important}
  .post-card .meta{font-size:14.5px!important}
  .life-latest-list a{padding:17px 18px!important}
  .life-latest-list a>div b{font-size:17px!important}
  .life-latest-list a>span{font-size:14.5px!important}

  /* Sidebar / navigation: slightly larger, without bloating mobile */
  .main-section-link{font-size:17px!important;min-height:50px!important}
  .side-note{font-size:15px!important;line-height:1.65!important}
  aside>a{font-size:16px!important}

  /* Buttons and breadcrumbs */
  .button{font-size:17px!important}
  .life-breadcrumb{font-size:15px!important}
  .return-nav a{font-size:15px!important}
}

/* 2026-09-21 PC HOME READABILITY — match article-page readability; mobile unchanged */
@media (min-width:721px){
  .market-door{padding:18px 18px!important;min-height:78px!important}
  .market-door strong{font-size:20px!important;line-height:1.25!important;margin-bottom:6px!important}
  .market-door span{font-size:15px!important;line-height:1.35!important}

  .showcase-head{padding:15px 16px!important;min-height:54px!important}
  .showcase-head h2{font-size:20px!important;line-height:1.2!important}
  .showcase-head a{font-size:15px!important}
  .showcase-posts a{gap:10px!important;padding:13px 15px!important;min-height:48px!important}
  .showcase-posts .sc-cat{font-size:13px!important;line-height:1.2!important;padding:4px 7px!important;border-radius:6px!important}
  .showcase-posts b{font-size:17px!important;line-height:1.35!important;font-weight:750!important}
  .showcase-empty{font-size:16px!important;padding:20px 15px!important}

  .global-search input{font-size:18px!important}
  .global-search button{font-size:17px!important;min-width:72px!important}

  .home-today-label{font-size:14px!important}
  .home-today-rec{font-size:13px!important}
  .home-today-line-title{font-size:18px!important}
  .home-today-line-read{font-size:15px!important}
  .home-today-line{min-height:48px!important;padding:9px 14px!important}
}


/* 2026-09-21 PC SIDEBAR FINAL — larger navigation, remove stray archive shortcut. Mobile unchanged. */
@media (min-width:721px){
  .main-sidebar{padding:16px 15px!important}
  .main-sidebar .all-link{font-size:18px!important;font-weight:850!important;min-height:46px!important;padding:11px 12px!important}
  .main-sidebar .main-section-link{font-size:19px!important;font-weight:850!important;min-height:54px!important;padding:11px 10px!important}
  .main-sidebar .main-section-link .side-icon{font-size:22px!important}
  .main-sidebar .main-section-link .side-arrow{font-size:18px!important}
  .main-sidebar .side-note{font-size:16px!important;line-height:1.65!important;padding:14px 9px 4px!important}
  .main-sidebar .side-note b{font-size:16.5px!important}
}

/* 2026-09-21 HOME ONLY — lower sidebar so navigation does not compete with hero copy. */
@media (min-width:721px){
  .home-layout .main-sidebar{margin-top:82px!important;}
}

/* 2026-09-22: in-article editorial visuals for KSquare morning briefings */
.ksq-story-visual{margin:26px 0 30px;background:#f7fafc;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.ksq-story-visual img{display:block;width:100%;height:auto;background:#eef3f6}
.ksq-story-visual figcaption{padding:11px 15px 13px;color:#596773;font-size:14px;line-height:1.55}
@media(max-width:720px){.ksq-story-visual{margin:20px -4px 24px;border-radius:11px}.ksq-story-visual figcaption{font-size:13px;padding:9px 12px 11px}}

/* 2026-09-22: dedicated daily news lead */
.today-news-box{margin:16px 0 20px;background:#fff;border:2px solid #12314a;border-radius:14px;overflow:hidden;box-shadow:0 4px 14px rgba(18,49,74,.07)}
.today-news-kicker{background:#12314a;color:#fff;padding:8px 14px;font-size:13px;font-weight:900;letter-spacing:.03em}
.today-news-box>a{display:block;padding:17px 18px;text-decoration:none}
.today-news-box strong{display:block;font-size:21px;line-height:1.4;color:#12314a;margin-bottom:7px}
.today-news-box span{display:block;color:#52606c;line-height:1.6}
.today-news-box span b{color:#1877c9}
@media(max-width:720px){.today-news-box{margin:12px 0 16px}.today-news-box>a{padding:14px}.today-news-box strong{font-size:18px}.today-news-box span{font-size:14px}}
