.ti{font-family:"tabler-icons-subset"!important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
@font-face{font-family:"tabler-icons-subset";src:url(../assets/fonts/46a87ee08d.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}
.ti-ad:before{content:"\ea02"}
.ti-ad-circle:before{content:"\f79e"}
.ti-adjustments:before{content:"\ea03"}
.ti-alert-circle:before{content:"\ea05"}
.ti-armchair:before{content:"\ef9e"}
.ti-arrows-sort:before{content:"\eb5a"}
.ti-barbell:before{content:"\eff0"}
.ti-basket:before{content:"\ebe1"}
.ti-beach:before{content:"\ef3d"}
.ti-beer:before{content:"\efa1"}
.ti-bell:before{content:"\ea35"}
.ti-bell-ringing:before{content:"\ed07"}
.ti-bolt:before{content:"\ea38"}
.ti-bread:before{content:"\efa3"}
.ti-briefcase:before{content:"\ea46"}
.ti-briefcase-2:before{content:"\fb03"}
.ti-brush:before{content:"\ebb8"}
.ti-building-arch:before{content:"\ea49"}
.ti-building-church:before{content:"\ea4c"}
.ti-building-factory:before{content:"\ee1c"}
.ti-building-monument:before{content:"\ed26"}
.ti-building-pavilion:before{content:"\ebf7"}
.ti-building-store:before{content:"\ea4e"}
.ti-building-warehouse:before{content:"\ebe3"}
.ti-bulb:before{content:"\ea51"}
.ti-calculator:before{content:"\eb80"}
.ti-calendar:before{content:"\ea53"}
.ti-calendar-time:before{content:"\ee21"}
.ti-campfire:before{content:"\f5a7"}
.ti-carrot:before{content:"\f21c"}
.ti-cash:before{content:"\ea55"}
.ti-cat:before{content:"\f65b"}
.ti-category:before{content:"\f1f6"}
.ti-category-2:before{content:"\f1f5"}
.ti-chart-dots-3:before{content:"\f098"}
.ti-chart-line:before{content:"\ea5c"}
.ti-click:before{content:"\ebbc"}
.ti-coffee:before{content:"\ef0e"}
.ti-compass:before{content:"\ea79"}
.ti-confetti:before{content:"\ee46"}
.ti-credit-card:before{content:"\ea84"}
.ti-crown:before{content:"\ed12"}
.ti-database:before{content:"\ea88"}
.ti-device-cctv:before{content:"\ee74"}
.ti-device-desktop:before{content:"\ea89"}
.ti-device-floppy:before{content:"\eb62"}
.ti-device-gamepad-2:before{content:"\f1d2"}
.ti-device-laptop:before{content:"\eb64"}
.ti-discount-2:before{content:"\ee7c"}
.ti-dog:before{content:"\f660"}
.ti-dots:before{content:"\ea95"}
.ti-download:before{content:"\ea96"}
.ti-edit:before{content:"\ea98"}
.ti-external-link:before{content:"\ea99"}
.ti-eye:before{content:"\ea9a"}
.ti-eye-off:before{content:"\ecf0"}
.ti-file-description:before{content:"\f028"}
.ti-file-dollar:before{content:"\efe0"}
.ti-file-export:before{content:"\ede9"}
.ti-file-text:before{content:"\eaa2"}
.ti-files:before{content:"\edef"}
.ti-filter:before{content:"\eaa5"}
.ti-fish:before{content:"\ef2b"}
.ti-flask:before{content:"\ebd2"}
.ti-fridge:before{content:"\f1fa"}
.ti-gas-station:before{content:"\ec7d"}
.ti-headset:before{content:"\eb90"}
.ti-heart-handshake:before{content:"\f0f3"}
.ti-history:before{content:"\ebea"}
.ti-home:before{content:"\eac1"}
.ti-info-circle:before{content:"\eac5"}
.ti-layout-dashboard:before{content:"\f02c"}
.ti-lock:before{content:"\eae2"}
.ti-lock-check:before{content:"\f926"}
.ti-map-pin:before{content:"\eae8"}
.ti-message-circle:before{content:"\eaed"}
.ti-message-circle-share:before{content:"\f97f"}
.ti-mood-happy:before{content:"\eaf4"}
.ti-mood-smile:before{content:"\eaf7"}
.ti-moped:before{content:"\ecbc"}
.ti-mountain:before{content:"\ef97"}
.ti-movie:before{content:"\eafa"}
.ti-news:before{content:"\eafd"}
.ti-package:before{content:"\eaff"}
.ti-palette:before{content:"\eb01"}
.ti-pencil-plus:before{content:"\f1ec"}
.ti-percentage:before{content:"\ecf4"}
.ti-photo:before{content:"\eb0a"}
.ti-pig-money:before{content:"\f38c"}
.ti-plus:before{content:"\eb0b"}
.ti-recycle:before{content:"\eb9b"}
.ti-restore:before{content:"\fafd"}
.ti-rosette-discount-check:before{content:"\f1f8"}
.ti-rotate:before{content:"\eb16"}
.ti-route:before{content:"\eb17"}
.ti-search:before{content:"\eb1c"}
.ti-search-off:before{content:"\f19c"}
.ti-settings:before{content:"\eb20"}
.ti-shield-check:before{content:"\eb22"}
.ti-shield-exclamation:before{content:"\f9c6"}
.ti-shield-lock:before{content:"\ed58"}
.ti-shirt:before{content:"\ec0a"}
.ti-shopping-bag:before{content:"\f5f8"}
.ti-shopping-bag-check:before{content:"\fc16"}
.ti-shopping-cart:before{content:"\eb25"}
.ti-shopping-cart-cog:before{content:"\fb5b"}
.ti-sofa:before{content:"\efaf"}
.ti-sparkles:before{content:"\f6d7"}
.ti-speakerphone:before{content:"\ed61"}
.ti-sun:before{content:"\eb30"}
.ti-tag:before{content:"\eb34"}
.ti-tent:before{content:"\eefb"}
.ti-tool:before{content:"\eb40"}
.ti-tools-kitchen-2:before{content:"\eeff"}
.ti-train:before{content:"\ed96"}
.ti-trending-up:before{content:"\eb43"}
.ti-truck:before{content:"\ebc4"}
.ti-user:before{content:"\eb4d"}
.ti-user-check:before{content:"\eb49"}
.ti-user-cog:before{content:"\f9d4"}
.ti-user-plus:before{content:"\eb4b"}
.ti-user-search:before{content:"\ef89"}
.ti-users:before{content:"\ebf2"}
.ti-users-group:before{content:"\fa21"}
.ti-world:before{content:"\eb54"}

/* 베스트글 게시글 배지 */
.best-post-badges{margin-left:6px;vertical-align:middle;display:inline-flex;align-items:center;gap:4px}.best-post-badges .community-post-badge{filter:drop-shadow(0 1px 1px rgba(31,95,112,.08));transition:transform .18s ease,filter .18s ease;transform-origin:center}.best-post-badges .community-post-badge:hover{transform:translateY(-3px) scale(1.12);filter:drop-shadow(0 5px 8px rgba(31,95,112,.22))}.post-title-copy .post-title:hover .community-post-badge{transform:translateY(-2px) scale(1.08);filter:drop-shadow(0 4px 7px rgba(31,95,112,.18))}

/* 관리자 승인 배지 자동 전환 시스템 */
.badge-responsive-wrap{display:inline-flex;align-items:center;gap:4px;max-width:100%;flex-wrap:wrap}
.community-post-badge{max-width:160px;height:auto;flex-shrink:1}
.post-date-auto{display:inline-block}
.post-date-auto.hidden-by-badge{display:none}
.badge-approval-chip{font-size:12px;padding:3px 8px;border-radius:999px;background:#eef7ff;color:#1670b8}

:root{
  --sky:#3cb7d7; --sky-deep:#2a96bd; --teal:#36aaa8; --teal-deep:#1b657b;
  --blue-dark:#165c72; --cream:#f8f2e9; --paper:#fbfbfa; --surface:#fff;
  --surface-2:#f5f7f7; --surface-3:#eef5f5; --ink:#43565f; --ink-2:#73848b;
  --ink-3:#9aa8ad; --line:#dce7e9; --danger:#e85d52; --orange:#e69b4b;
  --success:#319d83; --shadow:0 4px 18px rgba(27,101,123,.055);
  --radius:15px; --radius-sm:10px; --content:1040px; --left:700px; --right:300px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'S-Core Dream','Pretendard',"Noto Sans KR",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}.wrap{width:min(var(--content),calc(100% - 32px));margin:0 auto}.top-welcome{height:58px;background:var(--cream);display:flex;align-items:center;justify-content:center;color:#80939a;font-size:16px;letter-spacing:.02em;position:relative}.top-welcome .close{position:absolute;right:28px;top:13px;width:32px;height:32px;color:#fff;font-size:31px;font-weight:200;line-height:28px;border:0;background:transparent}.site-head{padding:23px 0 7px;background:#fff}.head-row{display:grid;grid-template-columns:310px 1fr 240px;gap:20px;align-items:center}.brand{display:flex;align-items:center;gap:6px;min-width:0}.brand img{width:108px;height:58px;object-fit:contain;object-position:left center}.brand-copy{font-size:14px;color:#5591a5;white-space:nowrap}.global-search{height:38px;border:1px solid #dfe7e8;border-radius:20px;display:flex;align-items:center;gap:9px;padding:0 14px;color:var(--ink-3);background:#fff;width:70%;margin-left:auto}.global-search input{border:0;outline:0;background:transparent;width:100%;color:var(--ink);font-size:13px}.account{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:13px;color:#546b74}.account .dot{width:10px;height:10px;border-radius:50%;background:var(--danger);animation:accountDotBlink 2.4s ease-in-out infinite}@keyframes accountDotBlink{0%,100%{opacity:1}50%{opacity:.25}}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--danger);margin-left:6px;animation:accountDotBlink 2.4s ease-in-out infinite}.join-btn,.primary-btn{border:0;border-radius:20px;background:var(--sky-deep);color:#fff;padding:8px 16px;font-weight:500}.nav-row{display:flex;align-items:center;gap:2px;overflow-x:auto;scrollbar-width:none;padding-top:11px}.nav-row::-webkit-scrollbar{display:none}.nav-link{border:0;background:transparent;padding:10px 14px;color:#7c929a;white-space:nowrap;border-bottom:2px solid transparent}.nav-link:hover,.nav-link.active{color:var(--sky-deep);font-weight:500;border-bottom-color:var(--sky)}.account-btn{display:flex;flex-direction:column;align-items:flex-end;gap:3px;padding:6px 10px;line-height:1.15}.account-nick-row{font-weight:500;color:#3a4a50;font-size:13px}.account-level-pill{font-size:10px;font-weight:500;color:#fff;padding:2px 9px;border-radius:999px;white-space:nowrap}.write-top{border:0;border-radius:7px;background:#d35400;color:#fff;padding:7px 17px;font-size:12px;font-weight:500}.write-row{display:flex;justify-content:flex-end;padding:7px 0 2px}.bottom-cat-nav{border-top:1px solid var(--line);padding-top:14px;margin-top:6px}.head-cat-nav{border-top:1px solid var(--line);margin-top:4px}.head-cat-nav .nav-row{gap:7px}.head-cat-nav .nav-link{font-size:19px !important;color:#4d6870 !important;padding:10px 16px !important}.bottom-cat-label{font-size:12px;color:#8fa0a5;margin-bottom:6px;font-weight:500}.ad-slot{position:relative;background:#f7f6f0;border-radius:13px;color:#a8aaa6;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.ad-label{position:absolute;right:8px;top:7px;border:1px solid #c9d0d0;border-radius:4px;background:#fff;padding:1px 5px;font-size:9px;color:#8e9a9d}.ad-top{height:90px;margin:18px 0 16px}.ad-bottom{height:160px;margin:34px 0 0}.app-main{min-height:1050px}.home-grid{display:grid;grid-template-columns:minmax(0,var(--left)) var(--right);gap:18px}.left-stack,.right-stack{display:flex;flex-direction:column;gap:15px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.debate{height:136px;background:var(--sky-deep);color:#fff;padding:22px 31px;border-radius:14px}.eyebrow{font-size:12px;opacity:.82;margin-bottom:6px}.debate-title{font-size:19px;font-weight:500;letter-spacing:-.02em}.debate-actions{display:flex;align-items:center;gap:12px;margin-top:17px}.debate-actions button{border:0;border-radius:18px;background:#fff;color:#6f858d;padding:8px 17px;font-size:12px;font-weight:500}.debate-meta{font-size:11px;opacity:.9}.panel-head{display:flex;align-items:center;padding:13px 17px 6px;gap:7px;font-size:13px;font-weight:500;color:#71858c}.panel-head i{color:var(--orange)}.panel-head .more{margin-left:auto;font-size:10px;color:#a7b2b6;font-weight:400;border:0;background:transparent}.compact-list{padding:3px 18px 11px}.compact-row{display:grid;grid-template-columns:70px minmax(0,1fr) 50px;gap:8px;align-items:center;height:24px;font-size:11px;color:#7e8e94}.compact-row.home-feed-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"cat title" "cat stat";column-gap:11px;row-gap:1px;height:auto;padding:1.5px 0;align-items:center}
.compact-row.home-feed-row+.compact-row.home-feed-row{border-top:1px solid #eef2f3}
.compact-row.home-feed-row .home-category-path{grid-area:cat;display:flex;align-items:center;min-width:0;gap:3px;color:#466570;overflow:hidden}
.compact-row.home-feed-row .title{grid-area:title}
.compact-row.home-feed-row .title .new,
.compact-row.home-feed-row .title .preview-reaction{
  vertical-align:middle;
}
.compact-row.home-feed-row .stat{grid-area:stat;justify-self:end;text-align:right;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 8px;overflow:visible;text-overflow:clip;white-space:normal}
.stat-item{display:inline-flex;align-items:center;gap:2px;white-space:nowrap;color:#9ba7ab;font-size:12px}
.stat-item i{font-size:10px}
.home-subcategory-icon{width:19px;height:19px;flex:0 0 19px;display:grid;place-items:center;border:1.4px solid #45b6cf;border-radius:50%;background:#f8fdfe;color:#279ab5;font-size:11px;line-height:1}
.home-subcategory-icon i{line-height:1}
.home-subcategory-name{min-width:0;color:#3d5c67;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-row.home-feed-row .title{color:#405a63;font-size:13.5px;font-weight:500}
.compact-row.home-feed-row:hover .home-subcategory-icon{border-color:var(--sky-deep);background:#eaf8fb;color:var(--sky-deep)}
.compact-row.home-feed-row:hover .home-subcategory-name{color:var(--sky-deep)}.compact-row:hover .title{color:var(--sky-deep)}.compact-row .category{color:#a1abad}.compact-row .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-row .stat{text-align:right;color:#9ba7ab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.new{display:inline-flex;align-items:center;justify-content:center;width:10.4px;height:10.4px;border-radius:4px;background:var(--danger);color:#fff;font-size:6.4px;font-weight:500;margin-left:3px;animation:accountDotBlink 2.4s ease-in-out infinite}.native-ad{height:70px;display:flex;align-items:center;gap:14px;padding:9px 16px}.native-thumb{width:53px;height:53px;border-radius:10px;background:#faeddc;display:grid;place-items:center;color:#e4a15d;font-size:24px}.native-body{min-width:0;flex:1}.native-title{font-size:12px;color:#6d7f86}.native-desc{font-size:10px;color:#a3adaf}.native-cta{font-size:10px;color:#559d8e}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.preview-card{height:160px;padding:13px 17px}.preview-head{display:flex;align-items:center;gap:8px;color:#6f838a;font-size:13px;font-weight:500}.preview-head i{color:var(--orange)}.preview-head button{margin-left:auto;border:0;background:transparent;color:#a3aeb1;font-size:10px}.preview-list{padding-top:10px}.preview-row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:6px;font-size:10.5px;color:#8b989d;height:22px}.preview-row span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-widget{height:auto;min-height:136px;background:#f1f8f8;padding:14px;border-radius:14px;border:1px solid #e3eeee}.attendance{display:flex;align-items:center;gap:6px;color:#6f868e;font-size:11px;font-weight:500}.attendance b{color:#d88946}.login-stats{display:flex;justify-content:center;gap:28px;margin:17px 0 9px;color:#85989e;font-size:10px}.widget-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 4px}.widget-stat{background:#fff;border:1px solid #e3eeee;border-radius:9px;padding:9px 6px;text-align:center}.widget-stat b{display:block;font-size:14px;color:#3e6877}.widget-stat span{font-size:9.5px;color:#8fa0a5}.login-btn{width:100%;height:42px;border:0;border-radius:6px;background:var(--sky-deep);color:#fff;font-size:12px;font-weight:500;margin-top:8px}.login-links{text-align:center;font-size:9px;color:#a5afb2;margin-top:4px}.keywords{height:auto;min-height:100px}.rank-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;padding:3px 18px 13px}.rank-grid.rank-grid-vertical{grid-template-columns:1fr 1fr;grid-template-rows:repeat(5,auto);grid-auto-flow:column}.rank-item{display:grid;grid-template-columns:17px 1fr auto;gap:6px;height:23px;font-size:10.5px;color:#7f9096;align-items:center}.rank-item .n{color:#d19a5e}.rank-item .arrow{font-size:9px}.weekly{height:171px}.weekly-list{padding:2px 18px 12px}.weekly-row{display:grid;grid-template-columns:22px 1fr 58px;gap:7px;height:25px;align-items:center;font-size:10.5px;color:#7d9097}.weekly-row .n{color:#d39b61}.weekly-row .p{text-align:right;color:#9aa8ac}.ad-side{height:220px}.ad-side.tall{height:405px}.section-view{padding:22px 0 20px}.breadcrumb{font-size:11px;color:#9aa8ad;margin-bottom:13px}.page-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.page-title{font-size:24px;font-weight:500;color:#47626d}.page-sub{font-size:12px;color:#8fa0a5;margin-top:3px}.category-hero{min-height:310px;padding:16px 26px 28px;background:#fff}.hub-title{text-align:center;margin:0 0 11px}.hub-mark{width:72px;height:72px;border-radius:8px;margin:0 auto 3px;background:var(--sky);color:#fff;display:grid;place-items:center;font-size:37px}.hub-name{font-size:31px;color:var(--sky);font-weight:300}.hub-line{height:1px;background:#d7d7d7;margin:4px 0 17px}.icon-grid{display:grid;grid-template-columns:repeat(var(--cols,8),1fr);gap:20px 14px;align-items:start}.category-button{border:0;background:transparent;color:var(--sky);text-align:center;padding:0;min-width:0}.circle-icon{width:66px;height:66px;border:2px solid var(--sky);border-radius:50%;margin:0 auto 7px;display:grid;place-items:center;font-size:34px;transition:.18s}.category-button:hover .circle-icon,.category-button:focus-visible .circle-icon{background:var(--sky);color:#fff;transform:translateY(-2px)}.category-button .label{font-size:15px;white-space:nowrap}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}.filter{border:1px solid var(--line);border-radius:17px;background:#fff;color:#778a91;padding:7px 13px;font-size:11px}.filter.active{background:var(--sky-deep);color:#fff;border-color:var(--sky-deep)}.list-card{overflow:hidden}.list-head,.post-line{display:grid;grid-template-columns:90px minmax(0,1fr) 120px 80px 55px 62px;gap:8px;align-items:center}.list-head{background:#f4f7f7;color:#95a2a6;font-size:10px;padding:10px 14px}.post-line{min-height:47px;padding:9px 14px;border-top:1px solid #eef2f3;font-size:11.5px;color:#788a91}.post-line:hover{background:#fafcfc}.post-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#576f78}.post-meta{text-align:right;color:#9ba8ac}.badge{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;border-radius:999px;background:#edf5f5;color:#528d93;font-size:9px}.board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;flex-wrap:wrap}.board-head-title h1{display:flex;align-items:center;gap:8px;font-size:23px;font-weight:500;color:var(--ink);margin:0}.board-fav-star{border:0;background:none;font-size:19px;color:#c7d2d4;cursor:pointer;line-height:1;padding:0}.board-fav-star.active{color:#f0ad2e}.board-head-sub{font-size:12px;color:var(--ink-3);margin-top:5px}.board-head-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.board-tab-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.board-tabs{display:flex;align-items:center;gap:18px}.board-tab{border:0;background:none;padding:2px 0;font-size:13.5px;color:var(--ink-3);font-weight:500;cursor:pointer}.board-tab b{font-weight:500;margin-left:2px}.board-tab.active{color:var(--ink)}.board-tools{display:flex;align-items:center;gap:8px}.board-sort-select{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink-2);font-size:11.5px;padding:6px 10px}.board-view-toggle{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink-2);width:30px;height:30px;display:grid;place-items:center;padding:0}.board-table{overflow:hidden}.board-row{display:grid;grid-template-columns:54px minmax(0,1fr) 120px 64px 44px 56px;gap:6px;align-items:center}.board-row-head{background:var(--surface-2);color:var(--ink-3);font-size:11px;font-weight:500;padding:11px 12px}.board-row-head span{text-align:center}.board-row-head span:nth-child(2),.board-row-head span:nth-child(3){text-align:left}.board-row:not(.board-row-head){padding:12px 12px;border-top:1px solid #eef2f3;font-size:13px;color:var(--ink-2);cursor:pointer}.board-row:not(.board-row-head):hover{background:#fafcfc}.board-num{text-align:center;color:var(--ink-3);font-size:12px}.board-num-new{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 3px;border-radius:4px;background:var(--danger);color:#fff;font-size:10px;font-weight:500}.board-title-cell{overflow:hidden;min-width:0}.board-title-cell .post-title{overflow:hidden;color:var(--ink);font-weight:500;display:flex;align-items:center;gap:4px;max-width:100%;min-width:0;white-space:nowrap}.board-title-cell .post-title .post-title-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-title-cell .post-title .post-title-trailing,.board-title-cell .post-title .post-attachment-indicators,.board-title-cell .post-title .preview-reaction,.board-title-cell .post-title .post-title-badges-v2{flex:0 0 auto}.board-title-cell .post-title .post-title-trailing{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:58%}.board-title-cell .post-title .post-title-trailing .post-title-badges-v2,.board-title-cell .post-title .post-title-trailing .preview-reaction,.board-title-cell .post-title .post-title-trailing .post-attachment-indicators{display:inline-flex;align-items:center;gap:4px}.board-title-cell .post-title .post-title-trailing .ys-post-badge{max-width:88px}.board-title-cell .post-title .post-title-trailing .comment-badge-item{max-width:76px}.board-row:not(.board-row-head):hover .post-title-text{color:var(--sky-deep)}.board-author{display:flex;align-items:center;justify-content:flex-start;gap:4px;font-size:12.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;min-width:0;text-align:left}.board-author-name{display:inline-block;min-width:0;max-width:5.4em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.board-date,.board-comments,.board-views{text-align:center;color:var(--ink-3);font-size:12px}.board-pagination{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:20px;flex-wrap:wrap}.board-page-btn{border:1px solid var(--line);background:#fff;color:var(--ink-2);border-radius:8px;min-width:30px;height:30px;padding:0 6px;font-size:12px}.board-page-btn.active{background:var(--sky-deep);border-color:var(--sky-deep);color:#fff;font-weight:500}.board-page-btn:disabled{opacity:.4}.board-page-dots{color:var(--ink-3);font-size:12px;padding:0 2px}.grade-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:500;padding:3px 10px;border-radius:999px;vertical-align:middle;white-space:nowrap}.grade-badge.mini{padding:1px 6px;font-size:9px;gap:2px}.grade-badge.activity{background:#fff;border:1px solid currentColor}.grade-progress{height:7px;border-radius:4px;background:#edf2f2;overflow:hidden;margin-top:6px}.grade-progress span{display:block;height:100%}.grade-micro{margin-left:3px;font-size:11px;vertical-align:middle}.mini-bar{display:inline-block;width:38px;height:5px;border-radius:3px;background:#e6edee;overflow:hidden;vertical-align:middle;margin-right:5px}.mini-bar span{display:block;height:100%;background:var(--sky-deep)}.weekly-row{grid-template-columns:22px 1fr 78px}.weekly-row.active{background:#eefaf9;border-radius:6px}.weekly-pct{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:9.5px;color:#9aa8ac}.rank-me-line{margin-top:8px;padding:8px 18px 12px;font-size:11px;color:#71858c;border-top:1px dashed var(--line)}.ranking-row{display:grid;grid-template-columns:50px minmax(0,1fr) 130px;gap:8px;align-items:center;min-height:44px;padding:8px 14px;border-top:1px solid #eef2f3;font-size:12px;color:#657b84}.ranking-row:first-child{border-top:0}.ranking-row.me{background:#eefaf9}.ranking-rank{font-size:13px;color:#8a969b;text-align:center}.ranking-pct{display:flex;align-items:center;gap:6px;justify-content:flex-end;font-size:11px;color:#8a969b}.ranking-pct .mini-bar{width:60px;height:6px}.side-info{padding:15px}.side-info h3{font-size:13px;margin:0 0 9px;color:#627a83}.side-info p{font-size:10.5px;color:#8d9ca1;margin:5px 0}.detail-card{padding:24px}.detail-title{font-size:23px;color:#465f69;margin:0 0 9px}.detail-meta{display:flex;gap:14px;font-size:10.5px;color:#97a4a8;padding-bottom:15px;border-bottom:1px solid var(--line)}.detail-body{font-size:14px;color:#62747b;line-height:1.8;padding:24px 0;min-height:260px}.detail-actions{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:15px}.secondary-btn{border:1px solid var(--line);background:#fff;color:#657b84;border-radius:8px;padding:8px 13px;font-size:11px}.comments{margin-top:15px}.comment{padding:14px 16px;border-top:1px solid #eef2f3}.comment:first-child{border-top:0}.comment-head{font-size:10px;color:#8d9da2}.comment-text{font-size:12px;color:#62757d;margin-top:5px}.form-card{padding:22px}
.social-signup{display:flex;flex-direction:column;gap:8px;margin-bottom:6px}
.social-btn{width:100%;height:42px;border:0;border-radius:8px;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.social-btn.naver{background:#03c75a;color:#fff}
.social-btn.kakao{background:#fee500;color:#3a2929}
.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:#a5afb2;font-size:11px}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--line)}
.otp-row{display:flex;gap:8px}
.otp-row .input{flex:1}
.otp-row button{white-space:nowrap}
.otp-code-row{margin-top:8px}
.marketing-fields{background:#f7fafa;border:1px solid #e6eef0;border-radius:10px;padding:12px 14px;margin:6px 0 14px}
.marketing-fields h4{margin:0 0 3px;font-size:12px;color:#4a636c}
.marketing-fields p{margin:0 0 10px;font-size:10.5px;color:#8fa0a5}
.auth-foot{text-align:center;font-size:12px;color:#7c929a;margin-top:14px}
.auth-links{display:flex;justify-content:center;gap:10px;font-size:11px;color:#9aa8ac;margin-top:10px}
.auth-links button{border:0;background:transparent;color:#9aa8ac;font-size:11px;text-decoration:underline;cursor:pointer}
.link-btn{border:0;background:transparent;color:var(--sky-deep);font-weight:500;font-size:12px;text-decoration:underline;cursor:pointer}.field{margin-bottom:15px}.field label{display:block;font-size:11px;font-weight:500;color:#647a83;margin-bottom:6px}.input,textarea,select{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;outline:0;color:#526b75;background:#fff}.input:focus,textarea:focus,select:focus{border-color:var(--sky)}textarea{min-height:190px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-actions{display:flex;justify-content:flex-end;gap:8px}.market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.product-card{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;cursor:pointer}.product-img{height:145px;background:#f4f7f7;display:grid;place-items:center;color:#8eb8c2;font-size:45px;position:relative}.state{position:absolute;left:9px;top:9px;border-radius:5px;padding:3px 7px;color:#fff;background:var(--sky-deep);font-size:9px}.state.reserved{background:var(--orange)}.state.done{background:#87979d}.product-body{padding:12px}.product-title{font-size:12px;color:#5a717a}.product-price{font-size:16px;font-weight:500;color:#355b6a;margin:6px 0}.product-foot{display:flex;justify-content:space-between;font-size:9.5px;color:#9ba7ab}.progress{height:9px;border-radius:5px;background:#edf2f2;overflow:hidden}.progress span{display:block;height:100%;background:var(--sky-deep)}.groupbuy-card{padding:17px;margin-bottom:12px}.gb-top{display:flex;justify-content:space-between;gap:10px}.gb-title{font-size:14px;font-weight:500;color:#52707b}.gb-sub{font-size:10px;color:#94a2a6;margin:3px 0 11px}.gb-foot{display:flex;justify-content:space-between;font-size:10px;color:#82949a;margin-top:7px}.chat-wrap{height:430px;display:flex;flex-direction:column}.chat-log{flex:1;overflow:auto;padding:18px;background:#fbfcfc}.bubble{max-width:73%;padding:10px 12px;border-radius:12px;font-size:11px;margin-bottom:10px}.bubble.me{margin-left:auto;background:#dff2f6}.bubble.other{background:#f0f2f2}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.chat-input input{flex:1}.warning{padding:10px 12px;border-radius:8px;background:#fff4e5;color:#9a6f34;font-size:10.5px;margin-bottom:10px}.profile-grid{display:grid;grid-template-columns:220px 1fr;gap:18px}.profile-card{padding:20px;text-align:center}.avatar{width:82px;height:82px;margin:0 auto 10px;border-radius:50%;background:#dff1f4;display:grid;place-items:center;font-size:34px;color:var(--sky-deep)}.stats3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.stat-box{padding:10px 5px;border-radius:8px;background:#f4f7f7;font-size:9px;color:#8b9a9f}.stat-box b{display:block;font-size:15px;color:#4f6d78}.admin-shell{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:620px}.admin-nav{background:#1b6178;color:#dceff2;padding:17px}.admin-nav h3{margin:0 0 15px;font-size:16px;color:#fff}.admin-link{display:block;width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:9px 8px;border-radius:6px;font-size:11px}.admin-link:hover,.admin-link.active{background:rgba(255,255,255,.14)}.admin-content{padding:20px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.metric{padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff}.metric .k{font-size:10px;color:#91a0a5}.metric .v{font-size:23px;font-weight:500;color:#3e6877;margin-top:4px}.data-table{width:100%;border-collapse:collapse;font-size:10.5px}.data-table th,.data-table td{padding:10px;border-bottom:1px solid #edf1f2;text-align:left}.data-table th{color:#8c9a9f;background:#f7f9f9}.status-pill{font-size:9px;padding:3px 7px;border-radius:10px;background:#e8f4f2;color:#3c8c79}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#274e5e;color:#fff;padding:11px 17px;border-radius:22px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:1000}.toast.show{opacity:1;transform:translate(-50%,0)}.modal-backdrop{position:fixed;inset:0;background:rgba(30,55,64,.38);display:none;align-items:center;justify-content:center;z-index:900;padding:20px}.modal-backdrop.open{display:flex}.modal{width:min(480px,100%);background:#fff;border-radius:15px;padding:22px;box-shadow:0 20px 60px rgba(0,0,0,.18)}.modal h2{margin:0 0 13px;color:#48636d;font-size:20px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.test-dock{position:fixed;right:13px;bottom:13px;z-index:700}.test-toggle{width:41px;height:41px;border-radius:50%;border:0;background:#1b6178;color:#fff}.test-panel{position:absolute;right:0;bottom:49px;width:210px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:0 12px 35px rgba(0,0,0,.13)}.test-panel h4{margin:0 0 8px;font-size:12px}.test-panel select{font-size:10px;padding:8px}.test-panel button{margin-top:7px;width:100%}.mobile-bottom{display:none}.footer{background:var(--blue-dark);color:#a9c2ca;padding:24px 0 55px;margin-top:6px}.footer-links{display:flex;gap:18px;font-size:10px}.copyright{font-size:9px;margin-top:14px;color:#7fa5b2}.empty{padding:42px;text-align:center;color:#93a1a6;font-size:12px}.skeleton{background:linear-gradient(90deg,#f0f3f3,#fafbfb,#f0f3f3);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}
@media(max-width:900px){.head-row{grid-template-columns:1fr auto}.brand{grid-column:1}.global-search{grid-column:1/-1;grid-row:2}.account{grid-column:2;grid-row:1}.brand-copy{display:none}.home-grid,.content-layout{grid-template-columns:1fr}.right-stack{order:2}.preview-grid{grid-template-columns:1fr 1fr}.ad-side.tall{height:220px}.icon-grid{--cols:5!important}.market-grid{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:repeat(2,1fr)}.admin-shell{grid-template-columns:1fr}.admin-nav{display:flex;overflow-x:auto;gap:4px}.admin-nav h3{display:none}.admin-link{width:auto;white-space:nowrap}.profile-grid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:min(100% - 22px,var(--content))}.top-welcome{height:44px;font-size:12px}.top-welcome .close{right:7px;top:4px}.site-head{padding-top:13px}.brand img{width:88px;height:46px}.account span:not(.join-btn){display:none}.join-btn{padding:7px 11px}.nav-row{padding-bottom:4px}.nav-link{padding:8px 10px;font-size:12px}.write-top{display:none}.write-row{display:none}.bottom-cat-nav{display:none}.head-cat-nav{display:none}.ad-top{height:72px}.home-grid{gap:12px}.debate{height:auto;min-height:125px;padding:19px}.debate-title{font-size:16px}.preview-grid{grid-template-columns:1fr}.preview-card{height:150px}.right-stack{gap:12px}.category-hero{padding:14px 8px 25px}.hub-mark{width:62px;height:62px;font-size:32px}.hub-name{font-size:25px}.icon-grid{--cols:4!important;gap:18px 5px}.circle-icon{width:58px;height:58px;font-size:28px}.category-button .label{font-size:12px}.list-head{display:none}.post-line{grid-template-columns:58px minmax(0,1fr);gap:6px}.post-line>*:nth-child(n+3){display:none}.board-head{flex-direction:column;align-items:flex-start}.board-row-head{display:none}.board-row{grid-template-columns:32px minmax(0,1fr);gap:6px}.board-row>*:nth-child(n+3){display:none}.board-tab-bar{gap:8px}.board-tabs{gap:12px}.page-title{font-size:21px}.page-top{align-items:center}.form-grid{grid-template-columns:1fr}.market-grid{grid-template-columns:1fr 1fr;gap:9px}.product-img{height:115px}.product-price{font-size:14px}.admin-content{padding:13px}.metric-grid{grid-template-columns:1fr 1fr}.mobile-bottom{display:grid;position:fixed;left:0;right:0;bottom:0;height:58px;background:#fff;border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);z-index:650;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom button{border:0;background:#fff;color:#7d9097;font-size:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.mobile-bottom i{font-size:19px}.footer{padding-bottom:85px}.test-dock{bottom:70px}.footer-links{flex-wrap:wrap}.detail-card{padding:16px}.detail-title{font-size:19px}.chat-wrap{height:500px}}
@media(max-width:380px){.icon-grid{--cols:3!important}.market-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr}.compact-row{grid-template-columns:54px minmax(0,1fr) 38px}.preview-card{padding:11px}.footer-links{gap:10px}}

/* ===== ADMIN V2 ===== */
.admin-shell-v2{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:820px;background:#f5f8f9;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.admin-sidebar-v2{background:linear-gradient(180deg,#165f77 0%,#124f65 100%);color:#d8edf2;padding:20px 14px;position:relative}
.admin-brand-v2{display:flex;align-items:center;gap:10px;padding:3px 8px 19px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:12px}
.admin-brand-mark{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-size:21px;color:#fff}
.admin-brand-copy strong{display:block;color:#fff;font-size:14px}.admin-brand-copy span{font-size:9px;color:#9ec8d2}
.admin-group-label{padding:13px 10px 6px;font-size:9px;letter-spacing:.12em;color:#87b7c3;font-weight:500}
.admin-link-v2{width:100%;display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#cae3e8;text-align:left;padding:10px 10px;border-radius:8px;font-size:11px;margin:2px 0;transition:.15s}
.admin-link-v2 i{font-size:17px;width:20px}.admin-link-v2 .count{margin-left:auto;min-width:20px;height:18px;border-radius:10px;background:rgba(255,255,255,.13);display:grid;place-items:center;font-size:9px}
.admin-link-v2:hover,.admin-link-v2.active{background:rgba(255,255,255,.15);color:#fff}.admin-link-v2.active{box-shadow:inset 3px 0 #50cae5}
.admin-sidebar-foot{margin-top:22px;padding:13px 10px;border-top:1px solid rgba(255,255,255,.13);font-size:9px;color:#91bec8;line-height:1.8}
.admin-main-v2{min-width:0;background:#f6f9fa}
.admin-topbar-v2{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 22px;gap:12px;position:sticky;top:0;z-index:20}
.admin-topbar-v2 .crumb{font-size:10px;color:#9aa8ad}.admin-topbar-v2 h1{font-size:18px;margin:2px 0 0;color:#456873}
.admin-top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.admin-env{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid #dce9eb;background:#f6fbfb;border-radius:14px;font-size:9px;color:#4d8c91}.admin-env:before{content:"";width:7px;height:7px;border-radius:50%;background:#36aa82}
.admin-icon-btn{width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:9px;color:#67818a;display:grid;place-items:center;position:relative}.admin-icon-btn .dot{position:absolute;right:7px;top:6px;width:6px;height:6px;border-radius:50%;background:var(--danger)}
.admin-user-chip{display:flex;align-items:center;gap:8px;padding:5px 8px 5px 5px;border:1px solid var(--line);border-radius:18px;background:#fff;font-size:10px;color:#58727c}.admin-user-chip .avatar-sm{width:25px;height:25px;border-radius:50%;background:#dff2f6;display:grid;place-items:center;color:var(--sky-deep)}
.admin-page-v2{padding:20px 22px 30px}.admin-page-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:17px}.admin-page-head h2{font-size:20px;margin:0;color:#3e6270}.admin-page-head p{font-size:10.5px;color:#8b9ba0;margin:4px 0 0}.admin-page-head .actions{margin-left:auto;display:flex;gap:7px;flex-wrap:wrap}
.admin-btn{border:1px solid var(--line);background:#fff;color:#5e7882;border-radius:8px;padding:8px 11px;font-size:10px;font-weight:500;display:inline-flex;align-items:center;gap:6px}.admin-btn.primary{border-color:var(--sky-deep);background:var(--sky-deep);color:#fff}.admin-btn.danger{border-color:#f2d3d0;color:#c85850;background:#fff8f7}.admin-btn.success{border-color:#cde8df;color:#2f8b72;background:#f6fcfa}.admin-btn:disabled{opacity:.45;cursor:not-allowed}
.admin-metrics-v2{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.admin-metric-v2{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}.admin-metric-top{display:flex;align-items:center;justify-content:space-between}.admin-metric-icon{width:32px;height:32px;border-radius:9px;background:#e8f5f7;color:var(--sky-deep);display:grid;place-items:center;font-size:17px}.admin-metric-icon.warn{background:#fff3e6;color:#d88b3d}.admin-metric-icon.danger{background:#fff0ef;color:#d35f56}.admin-metric-icon.success{background:#eaf7f2;color:#318f75}.admin-metric-v2 .label{font-size:9.5px;color:#8e9da2;margin-top:11px}.admin-metric-v2 .value{font-size:23px;font-weight:500;color:#3d6270;margin-top:2px;letter-spacing:-.03em}.admin-metric-v2 .delta{font-size:9px;color:#31a07c;margin-top:4px}.admin-metric-v2 .delta.down{color:#dd665e}
.admin-grid-2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:14px;margin-bottom:14px}.admin-grid-equal{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.admin-panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.admin-panel-head{display:flex;align-items:center;padding:14px 15px;border-bottom:1px solid #edf2f3}.admin-panel-head h3{font-size:12px;margin:0;color:#526f79}.admin-panel-head p{font-size:9px;color:#98a5a9;margin:2px 0 0}.admin-panel-head .right{margin-left:auto;display:flex;gap:6px;align-items:center}.admin-panel-body{padding:14px 15px}.admin-legend{display:flex;gap:13px;flex-wrap:wrap;font-size:8.5px;color:#87989e}.admin-legend span{display:flex;align-items:center;gap:5px}.admin-legend i{width:7px;height:7px;border-radius:2px;background:var(--sky)}
.admin-chart-wrap{height:210px;padding:6px 0 0}.admin-chart-svg{width:100%;height:100%;overflow:visible}.admin-chart-grid{stroke:#eaf0f1;stroke-width:1}.admin-chart-line{fill:none;stroke:var(--sky-deep);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.admin-chart-area{fill:url(#adminArea)}.admin-chart-dot{fill:#fff;stroke:var(--sky-deep);stroke-width:2}.admin-chart-text{fill:#9aa8ad;font-size:8px}
.admin-bars{display:flex;flex-direction:column;gap:11px}.admin-bar-row{display:grid;grid-template-columns:70px minmax(0,1fr) 42px;gap:9px;align-items:center;font-size:9px;color:#73878e}.admin-bar{height:8px;border-radius:4px;background:#edf2f3;overflow:hidden}.admin-bar span{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#3bb8d6,#37aaa9)}.admin-bar-row b{text-align:right;color:#55717b}
.admin-queue-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.admin-queue{border:1px solid var(--line);border-radius:10px;padding:11px;display:flex;align-items:center;gap:9px;background:#fbfdfd}.admin-queue .ico{width:30px;height:30px;border-radius:8px;background:#edf7f8;color:#3296ad;display:grid;place-items:center}.admin-queue strong{display:block;font-size:15px;color:#466b78}.admin-queue span{font-size:8.5px;color:#8c9da2}.admin-queue button{margin-left:auto;border:0;background:transparent;color:#8ea0a6}
.admin-system-list{display:flex;flex-direction:column;gap:9px}.admin-system-item{display:flex;align-items:center;gap:8px;font-size:9px;color:#70858c}.admin-system-item .light{width:8px;height:8px;border-radius:50%;background:#37a87f}.admin-system-item .light.warn{background:#e6a24e}.admin-system-item b{margin-left:auto;color:#4f6f79}
.admin-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:11px}.admin-search{height:34px;min-width:240px;flex:1;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 10px;color:#99a7ab}.admin-search input{border:0;outline:0;flex:1;min-width:0;font-size:10px;color:#58717b}.admin-select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#647d86;padding:0 10px;font-size:10px;min-width:110px}.admin-result-count{font-size:9px;color:#95a3a7;margin-left:auto}
.admin-table-wrap{overflow:auto}.admin-table-v2{width:100%;border-collapse:collapse;min-width:760px;font-size:9.5px}.admin-table-v2 th{padding:10px 12px;text-align:left;background:#f6f9f9;color:#8b9a9f;font-weight:500;border-bottom:1px solid var(--line);white-space:nowrap}.admin-table-v2 td{padding:11px 12px;border-bottom:1px solid #edf2f3;color:#627880;vertical-align:middle}.admin-table-v2 tr:hover td{background:#fbfdfd}.admin-table-v2 .title-cell{max-width:270px}.admin-table-v2 .title-cell strong{display:block;color:#496a76;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-table-v2 .title-cell span{font-size:8.5px;color:#9aa8ad}.admin-table-actions{display:flex;gap:5px;white-space:nowrap}.admin-mini-btn{border:1px solid var(--line);background:#fff;color:#607a84;border-radius:6px;padding:5px 7px;font-size:8.5px}.admin-mini-btn:hover{border-color:#b8dce3;color:#278fab}.admin-mini-btn.danger{color:#c75d56;border-color:#efd4d1}.admin-mini-btn.success{color:#318c74;border-color:#cfe6df}
.admin-status{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:10px;font-size:8.5px;font-weight:500;background:#edf4f5;color:#668188;white-space:nowrap}.admin-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.admin-status.success{background:#e9f6f1;color:#338b73}.admin-status.warn{background:#fff4e7;color:#bf7a35}.admin-status.danger{background:#fff0ef;color:#c55c54}.admin-status.info{background:#e9f5f8;color:#318ba3}.admin-status.muted{background:#eef1f2;color:#7c8b90}
.admin-member-cell{display:flex;align-items:center;gap:8px}.admin-member-avatar{width:29px;height:29px;border-radius:50%;background:#e0f2f5;color:#3598ae;display:grid;place-items:center;font-weight:500;font-size:9px}.admin-member-cell strong{display:block;color:#4d6b76;font-size:10px}.admin-member-cell span{display:block;color:#9aa7ab;font-size:8.5px}
.admin-tabs-inline{display:flex;gap:4px;padding:4px;background:#eef3f4;border-radius:9px}.admin-tab-inline{border:0;background:transparent;padding:6px 9px;border-radius:6px;color:#73878e;font-size:9px}.admin-tab-inline.active{background:#fff;color:#318ba2;box-shadow:0 1px 4px rgba(30,80,90,.08)}
.admin-summary-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.admin-summary-box{background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px}.admin-summary-box span{display:block;font-size:8.5px;color:#92a0a4}.admin-summary-box b{display:block;font-size:18px;color:#466a77;margin-top:3px}
.admin-ad-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.admin-ad-slot-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fbfdfd}.admin-ad-slot-card .preview{height:55px;border-radius:7px;background:#f3f0e9;border:1px dashed #d4d4ce;display:grid;place-items:center;color:#a5a7a3;font-size:8px;margin-bottom:9px}.admin-ad-slot-card strong{display:block;font-size:10px;color:#526f79}.admin-ad-slot-card span{font-size:8.5px;color:#96a3a7}.admin-ad-slot-card .fill{height:5px;background:#edf2f3;border-radius:3px;margin-top:8px;overflow:hidden}.admin-ad-slot-card .fill i{display:block;height:100%;background:var(--sky);border-radius:3px}
.admin-funnel{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 0}.admin-funnel-step{height:34px;display:flex;align-items:center;justify-content:center;color:#fff;border-radius:6px;font-size:9px;background:#3bb5d3}.admin-funnel-step:nth-child(2){background:#35a9ba}.admin-funnel-step:nth-child(3){background:#349e9f}.admin-funnel-step:nth-child(4){background:#328d82}
.admin-retention{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;align-items:end;height:170px}.admin-retention-col{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}.admin-retention-bar{width:26px;background:linear-gradient(180deg,#44bed9,#319baf);border-radius:5px 5px 2px 2px}.admin-retention-col b{font-size:8px;color:#4f6e79}.admin-retention-col span{font-size:8px;color:#9aa8ad}
.admin-switch{position:relative;width:34px;height:19px;border-radius:10px;background:#cfdadd;display:inline-block;vertical-align:middle}.admin-switch.on{background:#3caeaa}.admin-switch:after{content:"";position:absolute;top:3px;left:3px;width:13px;height:13px;background:#fff;border-radius:50%;transition:.15s}.admin-switch.on:after{left:18px}.admin-setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-setting-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px}.admin-setting-card h3{font-size:12px;margin:0 0 12px;color:#526e79}.admin-setting-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #edf2f3;font-size:9.5px;color:#627880}.admin-setting-row:first-of-type{border-top:0}.admin-setting-row .desc{font-size:8.5px;color:#9ba8ac}.admin-setting-row .control{margin-left:auto}.admin-setting-row input,.admin-setting-row select{height:31px;border:1px solid var(--line);border-radius:7px;padding:0 8px;font-size:9px;color:#5e7780;max-width:150px}
.admin-empty{padding:45px 20px;text-align:center;color:#93a3a7;font-size:10px}.admin-section-gap{margin-top:14px}.admin-kbd{padding:2px 5px;border:1px solid #d9e2e4;border-bottom-width:2px;border-radius:4px;background:#fff;font-size:8px;color:#809198}
.admin-detail-grid{display:grid;grid-template-columns:110px 1fr;gap:8px;font-size:10px}.admin-detail-grid dt{color:#93a1a5}.admin-detail-grid dd{margin:0;color:#526e79;font-weight:500}.admin-modal-note{padding:10px;border-radius:8px;background:#f3f8f9;color:#668089;font-size:9px;margin-top:10px}
@media(max-width:1100px){.admin-metrics-v2{grid-template-columns:repeat(2,1fr)}.admin-ad-slots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-shell-v2{grid-template-columns:1fr}.admin-sidebar-v2{padding:8px;display:flex;gap:4px;overflow:auto;align-items:center}.admin-brand-v2,.admin-group-label,.admin-sidebar-foot{display:none}.admin-link-v2{width:auto;white-space:nowrap;margin:0}.admin-link-v2 .count{display:none}.admin-topbar-v2{position:static}.admin-grid-2,.admin-grid-equal,.admin-setting-grid{grid-template-columns:1fr}.admin-ad-slots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.admin-page-v2{padding:14px 11px 25px}.admin-topbar-v2{padding:0 11px;height:58px}.admin-top-actions .admin-env,.admin-user-chip span{display:none}.admin-metrics-v2,.admin-summary-strip{grid-template-columns:1fr 1fr}.admin-page-head{flex-direction:column}.admin-page-head .actions{margin-left:0}.admin-toolbar{align-items:stretch}.admin-search{min-width:100%;flex-basis:100%}.admin-select{flex:1}.admin-queue-grid{grid-template-columns:1fr}.admin-ad-slots{grid-template-columns:1fr}.admin-setting-grid{grid-template-columns:1fr}}
@media(max-width:380px){.admin-metrics-v2,.admin-summary-strip{grid-template-columns:1fr}.admin-user-chip{display:none}}




/* ===== DETAILED & PLAYFUL CATEGORY HUB V3 ===== */
.hub-page{--hub-primary:#3cb7d7;--hub-secondary:#36aaa8;--hub-soft:#edf9fc;--hub-cream:#fff9f1;background:linear-gradient(180deg,#fff 0,#fbfefe 100%)}
.cute-hub{position:relative;overflow:hidden;min-height:0;padding:28px 30px 34px;border:1px solid #e4eef0;border-radius:24px;background:linear-gradient(145deg,#fff 0%,var(--hub-soft) 160%);box-shadow:0 12px 42px rgba(27,101,123,.07)}
.hub-bubble{position:absolute;border-radius:50%;pointer-events:none;opacity:.55}.hub-bubble.one{width:110px;height:110px;right:-38px;top:-38px;background:var(--hub-soft);border:18px solid rgba(255,255,255,.65)}.hub-bubble.two{width:58px;height:58px;left:18px;top:105px;background:#fff5df}.hub-bubble.three{width:18px;height:18px;right:20%;top:34px;background:#dff5ef}
.hub-intro{display:grid;grid-template-columns:118px minmax(0,1fr) auto;align-items:center;gap:20px;position:relative;z-index:2;margin-bottom:24px}
.hub-intro .hub-title{margin:0;text-align:center}.cute-hub .hub-mark{width:78px;height:78px;border-radius:24px;background:linear-gradient(145deg,var(--hub-primary),var(--hub-secondary));box-shadow:0 12px 24px color-mix(in srgb,var(--hub-primary) 25%,transparent);transform:rotate(-2deg);font-size:36px}.cute-hub .hub-mark i{transform:rotate(2deg)}
.cute-hub .hub-name{font-size:27px;font-weight:500;color:var(--hub-primary);letter-spacing:-.04em;margin-top:5px}.hub-copy h1{margin:0 0 6px;font-size:24px;color:#395f6c}.hub-copy p{margin:0;color:#789098;font-size:12.5px;line-height:1.7;max-width:620px}.hub-pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.hub-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid color-mix(in srgb,var(--hub-primary) 22%,#e8eff0);background:rgba(255,255,255,.83);border-radius:16px;padding:6px 10px;color:#62808a;font-size:9.5px}.hub-pill i{color:var(--hub-primary)}
.hub-summary{display:grid;grid-template-columns:repeat(2,76px);gap:8px}.hub-summary-box{padding:11px 8px;border:1px solid rgba(255,255,255,.9);border-radius:16px;background:rgba(255,255,255,.75);text-align:center;backdrop-filter:blur(8px)}.hub-summary-box b{display:block;font-size:18px;color:var(--hub-primary)}.hub-summary-box span{display:block;font-size:8.5px;color:#8a9ca2;margin-top:2px}
.cute-hub .hub-line{height:1px;background:linear-gradient(90deg,transparent,#d8e8eb 12%,#d8e8eb 88%,transparent);margin:0 0 20px}
.category-card-grid{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:12px;position:relative;z-index:2}.category-group-divider{grid-column:1/-1;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#7c929a;padding-top:10px;margin-top:2px;border-top:1px dashed #d7e2e4}
.category-card{--tone:#3cb7d7;--tone-soft:#eef9fc;position:relative;min-height:148px;border:1px solid color-mix(in srgb,var(--tone) 18%,#e5ecee);border-radius:20px;background:linear-gradient(150deg,#fff 15%,var(--tone-soft));padding:15px 14px 13px;text-align:left;color:#55737d;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 6px 18px rgba(32,92,105,.045)}
.category-card:before{content:"";position:absolute;width:62px;height:62px;border-radius:50%;right:-23px;top:-23px;background:color-mix(in srgb,var(--tone) 12%,transparent)}.category-card:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;right:17px;bottom:15px;background:color-mix(in srgb,var(--tone) 40%,transparent);box-shadow:-12px 5px 0 color-mix(in srgb,var(--tone) 18%,transparent)}
.category-card:hover,.category-card:focus-visible{transform:translateY(-4px);box-shadow:0 15px 28px rgba(32,92,105,.11);border-color:color-mix(in srgb,var(--tone) 48%,#d7e5e8);outline:0}.category-card:hover .circle-icon{transform:rotate(-5deg) scale(1.06);background:var(--tone);color:#fff}.category-card:hover .category-arrow{transform:translateX(3px)}
.category-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.category-card .circle-icon{width:54px;height:54px;margin:0 0 11px;border:1.8px solid var(--tone);color:var(--tone);font-size:27px;background:#fff;box-shadow:0 5px 14px color-mix(in srgb,var(--tone) 13%,transparent)}.category-mini-badge{display:inline-flex;align-items:center;border-radius:10px;padding:4px 7px;background:#fff;color:var(--tone);font-size:8px;font-style:normal;border:1px solid color-mix(in srgb,var(--tone) 18%,#edf1f2)}
.category-card strong{display:block;color:#456a76;font-size:14px;margin-bottom:4px}.category-card small{display:block;color:#879ba1;font-size:9.5px;line-height:1.5;min-height:29px}.category-card-foot{display:flex;align-items:center;margin-top:10px;padding-top:9px;border-top:1px dashed color-mix(in srgb,var(--tone) 20%,#dfe9eb);font-size:8.5px;color:#84989e}.category-card-foot b{color:var(--tone);margin-right:3px}.category-arrow{margin-left:auto;color:var(--tone);font-size:15px;transition:.2s}
.hub-lower-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:15px;margin-top:16px}.hub-mini-panel{border:1px solid var(--line);border-radius:18px;background:#fff;padding:17px 18px;box-shadow:var(--shadow)}.hub-mini-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}.hub-mini-head .mini-icon{width:31px;height:31px;border-radius:10px;background:var(--hub-soft);display:grid;place-items:center;color:var(--hub-primary)}.hub-mini-head strong{font-size:12px;color:#55727d}.hub-mini-head span{margin-left:auto;font-size:8.5px;color:#9aa7ab}.hub-topic-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hub-topic{display:flex;align-items:center;gap:9px;border:1px solid #edf2f3;border-radius:12px;padding:10px;background:#fcfefe;cursor:pointer}.hub-topic:hover{background:var(--hub-soft)}.hub-topic .num{width:24px;height:24px;border-radius:8px;background:var(--hub-soft);color:var(--hub-primary);display:grid;place-items:center;font-size:9px;font-weight:500}.hub-topic div{min-width:0}.hub-topic strong{display:block;font-size:10px;color:#58727c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-topic small{font-size:8px;color:#9aa7ab}.hub-guide-list{display:flex;flex-direction:column;gap:9px}.hub-guide-item{display:flex;gap:9px;align-items:flex-start;font-size:9.5px;color:#71878e}.hub-guide-item i{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#fff7e8;color:#d9964e;flex:0 0 auto}.hub-guide-item b{display:block;color:#58717b;font-size:10px;margin-bottom:1px}
.font-credit{font-size:8.5px;color:#7fa5b2;margin-top:8px}
@media(max-width:1000px){.hub-intro{grid-template-columns:100px 1fr}.hub-summary{display:none}.category-card-grid{--cols:4!important}}
@media(max-width:720px){.cute-hub{padding:22px 14px 25px;border-radius:19px}.hub-intro{grid-template-columns:74px 1fr;gap:13px}.cute-hub .hub-mark{width:62px;height:62px;border-radius:19px;font-size:29px}.cute-hub .hub-name{font-size:20px}.hub-copy h1{font-size:18px}.hub-copy p{font-size:10.5px}.hub-pills{margin-top:9px}.hub-pill{font-size:8.5px;padding:5px 8px}.category-card-grid{--cols:2!important;gap:9px}.category-card{min-height:142px;padding:13px 12px}.hub-lower-grid{grid-template-columns:1fr}.hub-topic-list{grid-template-columns:1fr}}
@media(max-width:380px){.hub-intro{grid-template-columns:1fr;text-align:center}.hub-copy p{margin:0 auto}.hub-pills{justify-content:center}.category-card-grid{--cols:1!important}.category-card{min-height:128px}.category-card .circle-icon{width:49px;height:49px}.hub-topic-list{grid-template-columns:1fr}}


/* ===== READABILITY & VERTICAL RHYTHM V4 =====
   Original Illustrator composition is preserved while text leading,
   row height, controls and card spacing are adjusted for prolonged reading. */
:root{
  --text-leading:1.68;
  --compact-leading:1.48;
  --content-leading:1.82;
  --touch-min:44px;
}
html{font-size:16px}
body{line-height:var(--text-leading);word-break:keep-all;overflow-wrap:break-word}
p,li,dd,.page-sub,.hub-copy p,.side-info p,.comment-text,.category-card small,.hub-guide-item{line-height:var(--text-leading)}
h1,h2,h3,h4,.page-title,.detail-title,.debate-title,.category-card strong{line-height:1.35}
button,a,input,select,textarea{line-height:1.4}

/* Header and global controls */
.site-head{padding:22px 0 10px;position:sticky;top:0;z-index:80;background:#fff}
.head-row{row-gap:16px}
.global-search{height:44px}
.global-search input{font-size:15px;line-height:1.4}
.account{font-size:14px}
.join-btn,.primary-btn{min-height:42px;padding:9px 17px;font-size:14px}
.nav-row{padding-top:12px}
.nav-link{min-height:44px;padding:11px 14px;font-size:15px;line-height:1.35}
.write-top{min-height:40px;font-size:13.5px;padding:8px 18px}

/* Home: lists, cards and information density */
.left-stack,.right-stack{gap:18px}
.preview-grid{gap:18px}
.debate{height:auto;min-height:148px;padding:24px 31px}
.eyebrow{font-size:13px;line-height:1.45;margin-bottom:7px}
.debate-title{font-size:20px}
.debate-actions{margin-top:19px;gap:13px;flex-wrap:wrap}
.debate-actions button{min-height:40px;font-size:13px;padding:9px 18px}
.debate-meta{font-size:12.5px;line-height:1.5}
.panel-head{padding:16px 18px 9px;font-size:14.5px;line-height:1.4}
.panel-head .more,.preview-head button{font-size:12px;min-height:32px;padding:4px 5px}
.compact-list{padding:5px 18px 14px}
.compact-row{grid-template-columns:78px minmax(0,1fr) 54px;min-height:31px;height:auto;padding:3px 0;gap:9px;font-size:13px;line-height:var(--compact-leading)}
.new{width:12px;height:12px;font-size:7.2px}
.native-ad{height:auto;min-height:84px;padding:12px 17px}
.native-title{font-size:13.5px;line-height:1.45}
.native-desc,.native-cta{font-size:12px;line-height:1.55}
.preview-card{height:auto;min-height:190px;padding:16px 18px}
.preview-head{font-size:14.5px;line-height:1.4}
.preview-list{padding-top:12px}
.preview-row{grid-template-columns:62px minmax(0,1fr);min-height:29px;height:auto;padding:3px 0;gap:8px;font-size:12.5px;line-height:var(--compact-leading)}
.login-widget{height:auto;min-height:158px;padding:16px}
.attendance{font-size:12.5px;line-height:1.45}
.login-stats{font-size:12px;margin:18px 0 11px}
.login-btn{height:44px;font-size:14px}
.login-links{font-size:11.5px;line-height:1.5;margin-top:7px}
.keywords,.weekly{height:auto;min-height:178px}
.rank-grid{padding:5px 18px 15px;gap:1px 14px}
.rank-item{min-height:30px;height:auto;font-size:12.5px;line-height:1.4}
.rank-item .arrow{font-size:10.5px}
.weekly-list{padding:4px 18px 14px}
.weekly-row{min-height:31px;height:auto;font-size:12.5px;line-height:1.4}
.ad-label{font-size:11px;line-height:1.3;padding:2px 6px}

/* General content pages */
.section-view{padding:28px 0 28px}
.breadcrumb{font-size:12.5px;line-height:1.5;margin-bottom:16px}
.page-top{margin-bottom:22px}
.page-title{font-size:26px}
.page-sub{font-size:14px;margin-top:6px;max-width:70ch}
.filters{gap:9px;margin-bottom:16px}
.filter{min-height:38px;padding:8px 14px;font-size:13px;line-height:1.35}
.list-head{font-size:12.5px;padding:12px 15px;line-height:1.4}
.post-line{min-height:56px;padding:11px 15px;font-size:14px;line-height:1.5}
.badge,.status-pill{font-size:11.5px;line-height:1.3;padding:4px 9px}
.side-info{padding:18px}
.side-info h3{font-size:15px;line-height:1.4;margin-bottom:11px}
.side-info p{font-size:13px;margin:7px 0}
.detail-card{padding:28px}
.detail-title{font-size:26px;margin-bottom:12px}
.detail-meta{font-size:12.5px;line-height:1.55;padding-bottom:17px;flex-wrap:wrap}
.detail-body{font-size:16px;line-height:var(--content-leading);padding:28px 0;max-width:74ch}
.detail-actions{gap:10px;padding-top:18px;flex-wrap:wrap}
.secondary-btn{min-height:40px;font-size:13px;padding:9px 14px}
.comment{padding:17px 18px}
.comment-head{font-size:12px;line-height:1.45}
.comment-text{font-size:14.5px;margin-top:7px}
.field{margin-bottom:18px}
.field label{font-size:13.5px;line-height:1.45;margin-bottom:7px}
.input,textarea,select{min-height:44px;padding:12px 13px;font-size:15px;line-height:1.55}
textarea{min-height:200px}
.form-grid{gap:16px}

/* Marketplace / group-buy cards */
.product-title,.gb-title{font-size:14px;line-height:1.45}
.product-foot,.gb-foot,.gb-sub{font-size:12px;line-height:1.55}
.warning{font-size:12.5px;line-height:1.65}
.data-table{font-size:12.5px;line-height:1.5}

/* Category hub: descriptions and lower panels */
.hub-intro{margin-bottom:27px;gap:22px}
.hub-copy h1{font-size:25px;line-height:1.35;margin-bottom:8px}
.hub-copy p{font-size:14px;line-height:1.75}
.hub-pills{gap:8px;margin-top:15px}
.hub-pill{min-height:34px;font-size:11.5px;line-height:1.35;padding:7px 11px}
.hub-summary-box{padding:13px 9px}
.hub-summary-box span{font-size:11px;line-height:1.4}
.category-card-grid{gap:15px}
.category-card{min-height:178px;padding:17px 16px 15px}
.category-card strong{font-size:15.5px;margin-bottom:6px}
.category-card small{font-size:12.5px;line-height:1.65;min-height:42px}
.category-mini-badge{font-size:10.5px;line-height:1.25;padding:5px 8px}
.category-card-foot{font-size:11.5px;line-height:1.4;margin-top:12px;padding-top:10px}
.hub-lower-grid{gap:18px;margin-top:19px}
.hub-mini-panel{padding:19px 20px}
.hub-mini-head{margin-bottom:14px}
.hub-mini-head strong{font-size:14px;line-height:1.4}
.hub-mini-head span{font-size:11px}
.hub-topic-list{gap:10px}
.hub-topic{min-height:56px;padding:11px 12px}
.hub-topic .num{width:28px;height:28px;font-size:11px}
.hub-topic strong{font-size:12.5px;line-height:1.45}
.hub-topic small{font-size:11px;line-height:1.45}
.hub-guide-list{gap:12px}
.hub-guide-item{font-size:12.5px;line-height:1.65}
.hub-guide-item b{font-size:13px;line-height:1.45;margin-bottom:3px}
.font-credit{font-size:11px;line-height:1.5;margin-top:11px}

/* Administrator: remove 8–10px microcopy and increase row rhythm */
.admin-brand-copy strong{font-size:15px;line-height:1.35}
.admin-brand-copy span{font-size:11.5px;line-height:1.45}
.admin-group-label{font-size:11px;padding:15px 10px 7px}
.admin-link-v2{min-height:42px;font-size:13px;line-height:1.35;padding:11px 10px}
.admin-link-v2 .count{font-size:11px;min-width:23px;height:21px}
.admin-sidebar-foot{font-size:11.5px;line-height:1.75}
.admin-topbar-v2{height:72px}
.admin-topbar-v2 .crumb{font-size:12px;line-height:1.4}
.admin-topbar-v2 h1{font-size:19px;line-height:1.35}
.admin-env,.admin-user-chip{font-size:11.5px;line-height:1.35}
.admin-page-v2{padding:24px 24px 34px}
.admin-page-head{margin-bottom:21px}
.admin-page-head h2{font-size:22px;line-height:1.35}
.admin-page-head p{font-size:13px;line-height:1.65;margin-top:6px}
.admin-btn{min-height:38px;font-size:12.5px;line-height:1.35;padding:9px 12px}
.admin-metrics-v2{gap:14px;margin-bottom:17px}
.admin-metric-v2{padding:16px}
.admin-metric-v2 .label{font-size:12px;line-height:1.45;margin-top:12px}
.admin-metric-v2 .delta{font-size:11.5px;line-height:1.4;margin-top:5px}
.admin-panel-head{padding:16px 17px}
.admin-panel-head h3{font-size:14px;line-height:1.4}
.admin-panel-head p{font-size:11.5px;line-height:1.55;margin-top:4px}
.admin-panel-body{padding:16px 17px}
.admin-legend{font-size:11px;line-height:1.45;gap:15px}
.admin-chart-text{font-size:10px}
.admin-bars{gap:13px}
.admin-bar-row{grid-template-columns:82px minmax(0,1fr) 48px;font-size:11.5px;line-height:1.4}
.admin-queue-grid{gap:11px}
.admin-queue{min-height:66px;padding:13px}
.admin-queue span{font-size:11px;line-height:1.45}
.admin-system-list{gap:11px}
.admin-system-item{font-size:11.5px;line-height:1.45}
.admin-toolbar{gap:10px;margin-bottom:14px}
.admin-search,.admin-select{height:40px}
.admin-search input,.admin-select{font-size:12.5px}
.admin-result-count{font-size:11.5px}
.admin-table-v2{font-size:12px;line-height:1.5}
.admin-table-v2 th{padding:12px 13px}
.admin-table-v2 td{padding:13px}
.admin-table-v2 .title-cell strong{font-size:12.5px;line-height:1.45}
.admin-table-v2 .title-cell span{font-size:11px;line-height:1.45}
.admin-mini-btn{min-height:32px;font-size:11px;padding:6px 8px}
.admin-status{font-size:11px;line-height:1.3;padding:5px 8px}
.admin-member-avatar{font-size:11px}
.admin-member-cell strong{font-size:12.5px;line-height:1.4}
.admin-member-cell span{font-size:11px;line-height:1.4}
.admin-tab-inline{min-height:34px;font-size:11.5px;padding:7px 10px}
.admin-summary-box{padding:13px}
.admin-summary-box span{font-size:11px;line-height:1.4}
.admin-ad-slot-card .preview{font-size:10.5px}
.admin-ad-slot-card strong{font-size:12.5px;line-height:1.4}
.admin-ad-slot-card span{font-size:11px;line-height:1.45}
.admin-funnel-step{font-size:11.5px}
.admin-retention-col b,.admin-retention-col span{font-size:10.5px}
.admin-setting-card{padding:17px}
.admin-setting-card h3{font-size:14px;line-height:1.4}
.admin-setting-row{min-height:54px;padding:11px 0;font-size:12px;line-height:1.5}
.admin-setting-row .desc{font-size:11px;line-height:1.55}
.admin-setting-row input,.admin-setting-row select{height:38px;font-size:12px}
.admin-empty{font-size:12.5px;line-height:1.6}
.admin-kbd{font-size:10.5px}
.admin-detail-grid{font-size:12.5px;line-height:1.55;gap:10px}
.admin-modal-note{font-size:12px;line-height:1.6}

/* Mobile: avoid cramped lines and guarantee usable controls */
@media(max-width:620px){
  body{line-height:1.7}
  .wrap{width:min(100% - 24px,var(--content))}
  .top-welcome{font-size:13px;line-height:1.4;padding:0 42px 0 12px;text-align:center}
  .nav-link{font-size:14px;min-height:43px;padding:10px 12px}
  .compact-row{grid-template-columns:62px minmax(0,1fr) 44px;font-size:12.5px;min-height:32px}
  .preview-card{min-height:184px;padding:15px}
  .preview-row{font-size:12.5px;min-height:30px}
  .page-title{font-size:23px}
  .page-sub{font-size:13.5px}
  .post-line{font-size:13.5px;min-height:54px}
  .detail-card{padding:20px}
  .detail-title{font-size:22px}
  .detail-body{font-size:15.5px;line-height:1.85}
  .category-hero{padding:18px 12px 28px}
  .category-button .label{font-size:13px;line-height:1.4}
  .cute-hub{padding:24px 15px 27px}
  .hub-copy h1{font-size:20px}
  .hub-copy p{font-size:13px;line-height:1.72}
  .hub-pill{font-size:11px}
  .category-card-grid{gap:11px}
  .category-card{min-height:176px;padding:15px 13px}
  .category-card strong{font-size:14.5px}
  .category-card small{font-size:12px;line-height:1.62}
  .category-card-foot{font-size:11px}
  .admin-page-v2{padding:17px 13px 28px}
  .admin-page-head h2{font-size:20px}
  .admin-page-head p{font-size:12.5px}
  .admin-table-v2{font-size:11.5px}
  .admin-table-v2 th,.admin-table-v2 td{padding:12px}
  .admin-metrics-v2,.admin-summary-strip{gap:10px}
}
@media(max-width:380px){
  .category-card{min-height:156px}
  .compact-row{grid-template-columns:54px minmax(0,1fr) 38px}
}


/* ===== 지역템 구인·구직 ===== */
.local-jobs-teaser{margin:0 0 18px;border:1px solid #cfe8ee;background:linear-gradient(135deg,#f4fcfe 0%,#f7fbfa 60%,#fff8ef 100%);border-radius:18px;padding:20px;position:relative;overflow:hidden}
.local-jobs-teaser:after{content:"";position:absolute;right:-38px;top:-48px;width:80px;height:150px;border-radius:50%;background:rgba(55,183,214,.10)}
.local-jobs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;position:relative;z-index:1}
.local-jobs-title{display:flex;gap:12px;align-items:flex-start}.local-jobs-icon{width:46px;height:46px;border-radius:14px;background:#37b7d6;color:#fff;display:grid;place-items:center;font-size:23px;box-shadow:0 8px 20px rgba(55,183,214,.18)}
.local-jobs-title h2{font-size:18px;line-height:1.35;margin:0 0 4px}.local-jobs-title p{font-size:13.5px;color:var(--muted,#68767c);line-height:1.65;margin:0}
.local-jobs-actions{display:flex;gap:8px;flex-wrap:wrap;position:relative;z-index:1}.local-jobs-actions button{min-height:42px}
.local-jobs-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;position:relative;z-index:1}
.local-job-mini{border:1px solid rgba(55,183,214,.18);background:rgba(255,255,255,.86);border-radius:14px;padding:14px;cursor:pointer;text-align:left;transition:.18s;min-height:132px}
.local-job-mini:hover{transform:translateY(-2px);border-color:#37b7d6;box-shadow:0 8px 24px rgba(44,122,145,.10)}
.local-job-mini .mini-top{display:flex;justify-content:space-between;gap:8px;margin-bottom:9px}.job-type-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;background:#e8f8fc;color:#218eaa;font-size:11.5px;font-weight:500}.job-type-badge.seek{background:#fff2df;color:#b36d20}
.local-job-mini strong{display:block;font-size:14.5px;line-height:1.45;margin-bottom:7px}.local-job-mini small{display:block;font-size:12.5px;line-height:1.55;color:#718087}.distance-chip{font-size:11.5px;color:#2c9ab4;font-weight:500;white-space:nowrap}
.job-page{--job-blue:#2fa7c6;--job-soft:#edf9fc;--job-orange:#e89a45}.job-hero{background:linear-gradient(130deg,#eefafd,#f7fbfa 58%,#fff7eb);border:1px solid #d6ebef;border-radius:20px;padding:22px;margin-bottom:18px;display:flex;justify-content:space-between;gap:18px;align-items:center}.job-hero h1{font-size:25px;line-height:1.3;margin-bottom:7px}.job-hero p{font-size:14px;color:#64747b;line-height:1.7}.job-hero-stats{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}.job-hero-stats span{background:#fff;border:1px solid #dcebef;border-radius:999px;padding:7px 11px;font-size:12.5px;color:#53666e}.job-hero-art{width:92px;height:92px;border-radius:26px;background:#37b7d6;color:#fff;display:grid;place-items:center;font-size:42px;box-shadow:0 13px 30px rgba(55,183,214,.20);flex:none}
.job-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.job-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 16px;font:inherit;font-size:14px;cursor:pointer;min-height:42px;color:#526168}.job-tab.active{background:#2fa7c6;color:#fff;border-color:#2fa7c6;font-weight:500}
.job-filter-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:16px}.job-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.job-filter-row+.job-filter-row{margin-top:11px;padding-top:11px;border-top:1px dashed #e1e8ea}.job-filter-label{min-width:74px;font-size:12.5px;font-weight:500;color:#566870}.job-filter-chip{border:1px solid #dce6e9;background:#fff;border-radius:999px;padding:8px 12px;font:inherit;font-size:12.5px;cursor:pointer;color:#63747b}.job-filter-chip.active{background:#eaf8fb;border-color:#51b8cf;color:#218da8;font-weight:500}.job-filter-select{border:1px solid #dce6e9;background:#fff;border-radius:10px;padding:9px 11px;font:inherit;font-size:13px;color:#50636b;min-width:140px}
.jobs-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.job-list{display:flex;flex-direction:column;gap:12px}.job-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;cursor:pointer;transition:.18s}.job-card:hover{border-color:#54b6cc;box-shadow:0 10px 26px rgba(32,102,120,.08);transform:translateY(-1px)}.job-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.job-card h3{font-size:17px;line-height:1.45;margin:7px 0 4px}.job-company{font-size:13px;color:#64747a}.job-verified{display:inline-flex;gap:4px;align-items:center;color:#258a67;font-size:11.5px;font-weight:500;margin-left:7px}.job-pay{font-size:17px;font-weight:500;color:#243940;white-space:nowrap}.job-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.job-meta{background:#f6f9fa;border-radius:10px;padding:9px 10px}.job-meta b{display:block;font-size:11px;color:#839198;margin-bottom:3px}.job-meta span{display:block;font-size:12.5px;color:#40545c;line-height:1.45}.job-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid #edf0f1;font-size:12px;color:#78868b}.job-tags{display:flex;gap:6px;flex-wrap:wrap}.job-tag{background:#eff7f9;color:#407482;border-radius:999px;padding:4px 8px;font-size:11.5px}.job-tag.orange{background:#fff2df;color:#ad6a20}
.job-side{display:flex;flex-direction:column;gap:13px}.job-side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.job-side-card h3{font-size:15px;margin-bottom:10px}.job-side-card p,.job-side-card li{font-size:12.8px;line-height:1.72;color:#66757b}.job-side-card ul{padding-left:18px}.job-safety{background:#fff8ee;border-color:#f1d8b6}
.job-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.job-detail-main{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.job-detail-title{font-size:25px;line-height:1.38;margin:10px 0 7px}.job-detail-sub{color:#66777e;font-size:13.5px;line-height:1.65}.job-condition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.job-condition{border:1px solid #e4ebed;border-radius:12px;padding:12px}.job-condition b{display:block;font-size:11.5px;color:#869399;margin-bottom:5px}.job-condition span{font-size:14px;line-height:1.5;color:#31464e;font-weight:500}.job-section{padding:19px 0;border-top:1px solid #edf0f1}.job-section h3{font-size:16px;margin-bottom:10px}.job-section p{font-size:14px;line-height:1.82;color:#4f6067;white-space:pre-line}.job-location-box{border:1px solid #d9ebef;background:#f4fbfc;border-radius:14px;padding:16px;display:flex;gap:13px;align-items:flex-start}.job-location-box .loc-icon{width:40px;height:40px;border-radius:12px;background:#dff5fa;color:#258faa;display:grid;place-items:center;font-size:20px;flex:none}.job-location-box strong{display:block;font-size:14px;margin-bottom:4px}.job-location-box p{font-size:12.5px;line-height:1.6;margin:0;color:#63757c}.job-sticky-cta{position:sticky;top:128px}.job-cta-price{font-size:22px;font-weight:500;margin-bottom:5px}.job-cta-note{font-size:12.5px;color:#718086;line-height:1.6;margin-bottom:13px}.job-cta-stack{display:grid;gap:8px}.job-cta-stack button{width:100%;justify-content:center;min-height:44px}
.job-form-section{border-top:1px solid #e8edef;padding-top:18px;margin-top:18px}.job-form-section:first-of-type{border-top:0;padding-top:0;margin-top:0}.job-form-section h3{font-size:16px;margin-bottom:12px}.job-checks{display:flex;gap:8px;flex-wrap:wrap}.job-checks label{border:1px solid #dde6e8;border-radius:999px;padding:8px 11px;font-size:12.5px;cursor:pointer;background:#fff}.job-checks input{margin-right:5px}.job-privacy-note{background:#f4f9fa;border:1px solid #dcebee;border-radius:12px;padding:13px;font-size:12.5px;line-height:1.68;color:#617279}
@media(max-width:900px){.local-jobs-preview{grid-template-columns:1fr 1fr}.jobs-layout,.job-detail-shell{grid-template-columns:1fr}.job-side{display:grid;grid-template-columns:1fr 1fr}.job-sticky-cta{position:static}.job-meta-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.local-jobs-head,.job-hero{align-items:flex-start;flex-direction:column}.local-jobs-preview{grid-template-columns:1fr}.local-jobs-actions{width:100%}.local-jobs-actions button{flex:1;justify-content:center}.job-hero-art{width:64px;height:64px;border-radius:18px;font-size:30px}.job-hero h1{font-size:22px}.job-card-top{flex-direction:column}.job-pay{font-size:16px}.job-meta-grid,.job-condition-grid{grid-template-columns:1fr 1fr}.job-side{grid-template-columns:1fr}.job-detail-main{padding:18px}.job-detail-title{font-size:22px}.job-filter-label{width:100%;min-width:0}}
@media(max-width:390px){.job-meta-grid,.job-condition-grid{grid-template-columns:1fr}}


/* ===== OPERATING CONTENT, PHOTOS & COMMENTS V6 ===== */
.post-title-cell{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:11px;min-width:0}
.post-list-thumb{width:58px;height:42px;border-radius:9px;background-color:#eaf4f6;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(40,120,140,.08)}
.post-title-copy{min-width:0}.post-title-copy .post-title{display:block;font-size:14px;font-weight:500;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4c6873}.post-title-copy small{display:flex;gap:7px;margin-top:3px;color:#98a5aa;font-size:11.5px;line-height:1.35}.post-title-copy small span{white-space:nowrap}
.post-photo-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(150px,.75fr);grid-template-rows:138px 138px;gap:10px;margin:20px 0 6px}
.post-photo-main,.post-photo-side{position:relative;border-radius:14px;overflow:hidden;background-color:#e9f2f3;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(37,92,107,.08)}
.post-photo-main{grid-row:1/3}.post-photo-main:after,.post-photo-side:after{content:"사진";position:absolute;right:9px;bottom:8px;border-radius:999px;background:rgba(26,64,76,.68);color:#fff;padding:4px 8px;font-size:10px;letter-spacing:.02em}
.post-detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 2px}.post-detail-tag{border:1px solid #d9e8eb;background:#f5fbfc;color:#4f8290;border-radius:999px;padding:5px 9px;font-size:11.5px}
.post-body-paragraph{margin:0 0 18px}.post-body-paragraph:last-child{margin-bottom:0}
.photo-caption{font-size:12px;line-height:1.55;color:#8c9da3;margin:8px 0 0;text-align:right}
.comment{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px}.comment-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#dff4f7,#eef9f6);color:#2d91a9;font-weight:500;font-size:12px}.comment-main{min-width:0}.comment-head{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.comment-author{font-weight:500;color:#526d77}.comment-role{border-radius:999px;background:#eef7f8;color:#4b8997;padding:3px 7px;font-size:10px}.comment-time{margin-left:auto;color:#9ba8ac}.comment-tools{display:flex;gap:12px;margin-top:7px;color:#8b9ba0;font-size:11px}.comment-tools button{border:0;background:transparent;color:inherit;padding:0}.comment-tools button:hover{color:var(--sky-deep)}
.operating-count{font-size:12px;color:#7a8e95;margin:0 0 10px}.operating-count b{color:var(--sky-deep)}
@media(max-width:620px){.post-title-cell{grid-template-columns:48px minmax(0,1fr);gap:9px}.post-list-thumb{width:48px;height:39px}.post-title-copy .post-title{font-size:13.5px}.post-title-copy small{font-size:10.8px}.post-photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:190px 92px}.post-photo-main{grid-column:1/3;grid-row:1}.post-photo-side{grid-row:2}.comment{grid-template-columns:34px minmax(0,1fr)}.comment-avatar{width:34px;height:34px}}



/* ===== OWNER FINALIZATION V7 ===== */
:root{--focus:#087da5;--owner-soft:#f6fbfc;--owner-warn:#fff7e8}
.skip-link{position:fixed;left:12px;top:-60px;z-index:9999;background:#163f50;color:#fff;padding:10px 14px;border-radius:8px;font-size:14px;transition:.18s}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 58%,transparent);outline-offset:3px}
[data-post],[data-product],[data-groupbuy],[data-job]{cursor:pointer}
[data-post]:focus-visible,[data-product]:focus-visible,[data-groupbuy]:focus-visible,[data-job]:focus-visible{outline:3px solid rgba(42,150,189,.34);outline-offset:-3px}
.global-search input::placeholder{color:#a5b1b5}
.owner-disclosure{display:flex;align-items:flex-start;gap:9px;border:1px solid #d8e9ec;background:#f7fcfd;border-radius:12px;padding:11px 13px;color:#60777f;font-size:12px;line-height:1.6;margin-bottom:14px}.owner-disclosure i{color:var(--sky-deep);font-size:17px;margin-top:1px}.owner-disclosure b{color:#456b78}
.demo-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid #e1e7e8;background:#f8fafb;color:#7f9096;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:500;white-space:nowrap}
.list-control-panel{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 13px}.list-search{height:42px;display:flex;align-items:center;gap:7px;flex:1;min-width:240px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:#8a9ba1}.list-search input{border:0;outline:0;width:100%;min-width:0;background:transparent;color:var(--ink);font-size:13.5px}.list-category-select{width:auto;min-width:145px;max-width:210px;height:42px;padding:0 11px;font-size:13px}.list-sort-group{display:flex;gap:6px;flex-wrap:wrap}.list-sort{min-height:38px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#72868e;padding:8px 13px;font-size:12.5px}.list-sort.active{background:var(--sky-deep);border-color:var(--sky-deep);color:#fff;font-weight:500}.list-zero{padding:48px 20px;text-align:center;color:#82939a}.list-zero strong{display:block;color:#4c6d79;font-size:17px;margin-bottom:6px}
.post-list-thumb,.post-photo-main,.post-photo-side{position:relative;overflow:hidden}.post-list-thumb img,.post-photo-main img,.post-photo-side img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.media-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:linear-gradient(145deg,#edf7f9,#dcecef);color:#4d91a3;font-size:12px}.media-fallback i{font-size:24px}.post-list-thumb .media-fallback{font-size:0}.post-list-thumb .media-fallback i{font-size:20px}.media-loaded .media-fallback{display:none}.post-photo-main:after,.post-photo-side:after{z-index:3}
.post-summary-box{margin:18px 0 4px;border:1px solid #d8e8eb;background:linear-gradient(145deg,#f8fcfd,#f4faf8);border-radius:15px;padding:16px 18px}.post-summary-box h3{margin:0 0 10px;font-size:15px;color:#4d6e79}.post-summary-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.post-summary-list li{display:flex;gap:8px;font-size:13.5px;color:#5d7077;line-height:1.65}.post-summary-list li:before{content:'✓';color:var(--success);font-weight:500;flex:none}
.comment-replies{margin:11px 0 0 4px;border-left:3px solid #e3eef0;padding-left:12px}.comment-reply-item{padding:9px 0;border-top:1px solid #edf2f3}.comment-reply-item:first-child{border-top:0}.comment-reply-item b{font-size:12px;color:#536e78}.comment-reply-item p{font-size:13px;margin:3px 0 0;color:#687a81}.comment-tools button.active{color:var(--sky-deep);font-weight:500}.saved-active,.liked-active{background:#edf8fa!important;border-color:#a9dce6!important;color:#238aa4!important}
.trust-panel{border-top:4px solid #8bd0df}.safety-panel{background:#fffaf0;border-color:#efdcbf}.safety-panel h3{color:#8e672f}
.legal-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px}.legal-nav{position:sticky;top:18px;align-self:start;padding:13px}.legal-nav a{display:block;padding:9px 10px;border-radius:8px;font-size:12.5px;color:#71858d}.legal-nav a:hover,.legal-nav a.active{background:#edf8fa;color:#238ca7;font-weight:500}.legal-document{padding:28px 30px}.legal-document h1{font-size:26px;color:#3f6471;margin:0 0 8px}.legal-document .effective{font-size:12px;color:#8a9ba0;margin-bottom:25px}.legal-document h2{font-size:17px;color:#4d6b76;margin:28px 0 10px;padding-top:4px}.legal-document h3{font-size:14px;color:#59737d;margin:18px 0 7px}.legal-document p,.legal-document li{font-size:14px;line-height:1.82;color:#607178}.legal-document ul,.legal-document ol{padding-left:22px}.legal-note{border:1px solid #efdcbf;background:#fff9ee;border-radius:12px;padding:12px 14px;font-size:12.5px;line-height:1.65;color:#7c633e;margin:15px 0}.company-strip{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:10.5px;line-height:1.7;color:#91b7c2}.footer-policy-note{font-size:10.5px;line-height:1.7;color:#8db2bd;margin-top:11px;max-width:760px}
.admin-demo-banner{border:1px solid #f0d5a9;background:#fff8e9;border-radius:10px;padding:10px 12px;font-size:11.5px;line-height:1.55;color:#7b6034;margin-bottom:14px}.admin-demo-banner b{color:#685026}
.status-good{color:#278b72}.status-needed{color:#b97832}
@media(max-width:720px){.list-control-panel{align-items:stretch}.list-search{min-width:100%;flex-basis:100%}.list-category-select{max-width:none;flex:1}.list-sort-group{width:100%}.list-sort{flex:1}.legal-shell{grid-template-columns:1fr}.legal-nav{position:static;display:flex;overflow-x:auto;gap:4px}.legal-nav a{white-space:nowrap}.legal-document{padding:22px 18px}}
@media(max-width:620px){.post-title-copy small{flex-wrap:wrap}.post-summary-box{padding:14px}.owner-disclosure{font-size:11.5px}.legal-document h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* 이번 주 활동왕 위젯을 실시간 인기검색어 박스처럼 2열로 압축 */
.weekly-list{display:grid;grid-template-columns:1fr;gap:0;padding:3px 18px 11px}
.weekly-row{grid-template-columns:20px 1fr auto;min-height:23px;height:23px;font-size:10.5px;line-height:1.3;gap:5px}
.weekly{height:auto;min-height:110px}

/* 실시간 인기검색어 박스와 활동왕 박스의 줄간격·글자크기 통일 */
.rank-item{min-height:23px;height:23px;font-size:10.5px;line-height:1.3}
.rank-item .arrow{font-size:9px}

/* 퍼센트는 도형 대신, 이름보다 연한 색의 숫자로 표기 */
.weekly-pct{font-size:9px;color:#b7c3c6;font-weight:400;flex:0 0 auto}

/* 글쓰기 페이지 우측 카테고리 전환 패널 */
.write-cat-switch .icon-grid{margin-top:12px}
.write-cat-switch .category-button.active-cat .circle-icon{background:var(--sky);color:#fff;border-color:var(--sky)}
.write-cat-switch .category-button.active-cat .label{color:var(--sky-deep);font-weight:500}

/* 홈 화면 카테고리 미리보기: 서브카테고리명은 작고 연하게, 게시글 제목과 차별화 (전 카테고리 공통) */
.preview-row span:first-child{font-size:10.5px;color:#8b989d;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preview-row span:last-child{font-size:11px;color:#5c747c}

/* 카테고리 목록 우측 사이드바를 스크롤 시 고정해 광고 영역이 항상 채워지도록 함 */
.content-layout>aside{position:sticky;top:calc(var(--header-h,90px) + 10px);align-self:start;max-height:calc(100vh - var(--header-h,90px) - 26px);overflow:auto;scrollbar-width:none}
.content-layout>aside::-webkit-scrollbar{display:none}
@media(max-width:1024px){.content-layout>aside{position:static;max-height:none}}

/* 헤더가 고정되므로, 상단 배너도 헤더 바로 아래에서 함께 고정되어 스크롤해도 사라지지 않도록 함 */
.ad-top{position:sticky;top:var(--header-h,96px);z-index:60}

/* 허브의 긴 제목/배지가 CSS Grid의 min-content 폭을 밀어내지 않도록 0-min track 사용 */
.hub-lower-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr) !important;min-width:0}
.hub-topic-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;min-width:0}
.hub-mini-panel,.hub-topic,.hub-topic>div{min-width:0 !important;max-width:100% !important}
.hub-topic{overflow:hidden !important}
.hub-topic>div{overflow:hidden !important}
.hub-topic strong,.hub-topic small{min-width:0 !important;max-width:100% !important;overflow:hidden !important}
@media(max-width:620px){.ad-top{position:static}}

/* 관리자 모드: 배너 하단 인라인 제어 바 (숨김·수정·등록) */
.admin-banner-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#eef6f6;border:1px dashed #9fc3c3;border-radius:9px;padding:8px 12px;margin:6px 0 14px;font-size:11px;color:#3d6b6b}
.admin-banner-bar-actions{display:flex;gap:6px;flex-wrap:wrap}
.admin-banner-bar-actions .admin-btn{padding:5px 10px;font-size:11px}
.ad-hidden-placeholder{background:#f3f3f0!important;color:#b3b3ac!important;border:1px dashed #d8d8d0}


.profile-shop-card .profile-avatar svg{display:block;width:100%;height:100%}
.nickname-level-tabs{display:flex;gap:6px;flex-wrap:wrap}
.nickname-level-tabs .filter{font-size:12px;padding:6px 10px}
.nickname-option-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:10px}
.nickname-option{border:1.5px solid var(--line);background:var(--surface);border-radius:10px;padding:9px 10px;font-size:13px;color:var(--ink);cursor:pointer;transition:.15s;text-align:center}
.nickname-option:hover{border-color:var(--sky);color:var(--sky-deep)}
.nickname-option.selected{border-color:var(--sky-deep);background:var(--surface-3);color:var(--sky-deep);font-weight:500}
.character-picker-group{margin-bottom:16px}
.character-picker-label{font-size:12.5px;font-weight:500;margin-bottom:8px}
.character-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}
.character-picker-item{border:2px solid transparent;background:var(--surface-2);border-radius:14px;padding:4px;cursor:pointer;transition:.15s;aspect-ratio:1/1;display:block}
.character-picker-item svg{width:100%;height:100%;display:block}
.character-picker-item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.character-picker-item.selected{border-color:var(--sky-deep)}
.avatar-fallback{display:inline-flex}

.profile-card-frame{position:relative;flex:none;border-radius:34%;overflow:visible;display:block}
.profile-card-bust{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:14%}
.profile-card-bust svg{width:100%;height:100%;display:block}
.profile-card-levelbadge{position:absolute;top:8%;left:8%;background:#3a3530;color:#fff;font-size:10.5px;font-weight:500;padding:4px 9px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.18);z-index:2}
.profile-card-nickpill{position:absolute;left:8%;right:8%;bottom:7%;background:rgba(255,255,255,.55);border-radius:999px;padding:6px 4px;text-align:center;overflow:hidden;z-index:2}
.profile-card-nickpill .nick-text{display:block;font-weight:500;color:#3a3530;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}

.brand img{
  display:block;
  position:relative;
  top:-8px;
  transform:scale(1.2);
  transform-origin:center center;
}
@media(max-width:620px){
  .brand img{top:-6px;}
}

:root{
  --ink:#354b54;
  --ink-2:#5f737b;
  --ink-3:#7f8f95;
  --line:#d7e2e4;
  --readable-body:16px;
  --readable-small:13px;
  --readable-caption:12px;
}

/* 기본 글꼴: 획이 지나치게 두껍지 않고 화면에서 선명한 Pretendard 우선 */
html,body,button,input,select,textarea,option{
  font-family:'Pretendard','S-Core Dream','Noto Sans KR',Arial,sans-serif!important;
}
html{
  font-size:16px;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body{
  color:var(--ink);
  font-size:var(--readable-body);
  font-weight:400;
  line-height:1.66;
  letter-spacing:-.006em;
}
p,li,dd{
  line-height:1.72;
}
button,a,input,select,textarea{
  letter-spacing:-.004em;
}

/* 굵기로만 강조하지 않고 크기와 색상으로 정보 위계를 구분 */
strong,b{
  font-weight:500;
}
h1,h2,h3,h4,
.page-title,.detail-title,.job-detail-title,
.admin-page-head h2,.admin-topbar-v2 h1{
  font-weight:500!important;
  letter-spacing:-.018em;
}
h1,.page-title,.detail-title,.job-detail-title{
  line-height:1.38;
}
h2,h3,h4{
  line-height:1.42;
}

/* 헤더 및 전역 탐색 */
.top-welcome{
  color:#637981;
  font-size:15px;
  font-weight:400;
}
.brand-copy{
  color:var(--sky-deep);
  font-size: 17px;
  font-weight:400;
}
.global-search input{
  color:#344a53;
  font-size:15px;
  font-weight:400;
}
.global-search input::placeholder{
  color:#819197;
  opacity:1;
}
.account{
  color:#465f68;
  font-size:14px;
  font-weight:400;
}
.account-nick-row{
  font-size:13.5px;
  font-weight:500;
}
.account-level-pill{
  font-size:10.5px;
  font-weight:500;
}
.nav-link{
  color:#637a83;
  font-size:15px;
  font-weight:400;
}
.nav-link:hover,.nav-link.active{
  color:#237f9f;
  font-weight:500;
}
.join-btn,.primary-btn,.write-top,.login-btn,
.secondary-btn,.admin-btn,.job-tab{
  font-weight:500!important;
}

/* 홈 화면: 제목과 목록의 대비를 명확히 하되 과도한 볼드는 제거 */
.eyebrow{
  font-size:13px;
  font-weight:400;
}
.debate-title{
  font-size:20px;
  font-weight:500;
  line-height:1.45;
}
.debate-actions button{
  font-size:13.5px;
  font-weight:500;
}
.debate-meta{
  font-size:12.5px;
  font-weight:400;
}
.panel-head,.preview-head{
  color:#536d76;
  font-size:14.5px;
  font-weight:500;
}
.panel-head .more,.preview-head button{
  color:#73868d;
  font-size:12px;
  font-weight:400;
}
.compact-row{
  color:#5e737b;
  font-size:13.5px;
  font-weight:400;
  line-height:1.5;
}
.compact-row .category{
  color:#75868c;
  font-weight:400;
}
.compact-row .title{
  color:#425c65;
  font-weight:500;
}
.compact-row .stat{
  color:#74858b;
  font-size:12.5px;
}
.native-title{
  color:#4d656e;
  font-size:13.5px;
  font-weight:500;
}
.native-desc,.native-cta{
  font-size:12px;
  font-weight:400;
}
.preview-row{
  color:#64777e;
  font-size:13px;
  font-weight:400;
}
.preview-row span:last-child{
  color:#465f68;
  font-weight:500;
}
.attendance{
  color:#536e77;
  font-size:13px;
  font-weight:500;
}
.login-stats,.widget-stat span,.login-links{
  color:#6f8289;
}
.login-stats{
  font-size:12.5px;
}
.widget-stat b{
  font-size:15px;
  font-weight:500;
}
.widget-stat span{
  font-size:11.5px;
}
.login-links{
  font-size:11.5px;
}
.rank-item,.weekly-row{
  color:#5e737b;
  font-size:13px;
  font-weight:400;
}
.rank-item .n,.weekly-row .n{
  font-weight:500;
}
.weekly-pct,.rank-me-line{
  color:#6e8188;
  font-size:11.5px;
}

/* 일반 목록·본문 */
.breadcrumb{
  color:#71838a;
  font-size:12.5px;
}
.page-title{
  color:#344f59;
  font-size:25px;
}
.page-sub{
  color:#657980;
  font-size:14px;
  font-weight:400;
}
.filter{
  color:#586f78;
  font-size:13px;
  font-weight:400;
}
.filter.active{
  font-weight:500;
}
.list-head{
  color:#687b82;
  font-size:12.5px;
  font-weight:500;
}
.post-line{
  color:#566c75;
  font-size:14px;
  font-weight:400;
}
.post-title{
  color:#354f59;
  font-weight:500;
}
.post-meta{
  color:#6f8187;
  font-size:12.5px;
}
.badge,.status-pill,.grade-badge{
  font-weight:500;
}
.badge,.status-pill{
  font-size:11.5px;
}
.grade-badge{
  font-size:10.5px;
}
.grade-badge.mini{
  font-size:10px;
}
.side-info h3{
  color:#435f69;
  font-size:15px;
  font-weight:500;
}
.side-info p{
  color:#5f737b;
  font-size:13px;
}
.detail-title{
  color:#344e58;
  font-size:25px;
}
.detail-meta{
  color:#687c83;
  font-size:12.5px;
}
.detail-body{
  color:#40565f;
  font-size:16.5px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:-.003em;
}
.comment-head{
  color:#667a81;
  font-size:12px;
}
.comment-text{
  color:#425a63;
  font-size:14.5px;
  font-weight:400;
}
.secondary-btn{
  color:#506a73;
  font-size:13px;
}

/* 입력·인증·상태 정보 */
.field label,.marketing-fields h4{
  color:#455f68;
  font-size:13px;
  font-weight:500;
}
.input,textarea,select{
  color:#354e58;
  font-size:15px;
  font-weight:400;
}
.input::placeholder,textarea::placeholder{
  color:#849399;
  opacity:1;
}
.marketing-fields p,.auth-foot,.auth-links,
.auth-links button,.warning{
  color:#657980;
}
.marketing-fields p{
  font-size:12px;
}
.auth-foot{
  font-size:12.5px;
}
.auth-links,.auth-links button{
  font-size:11.5px;
}
.social-btn,.link-btn{
  font-weight:500;
}

/* 상품·채팅·프로필 */
.product-title,.gb-title,.job-card h3,
.local-job-mini strong{
  color:#405a64;
  font-weight:500;
}
.product-price,.job-pay,.job-cta-price{
  font-weight:500!important;
}
.product-foot,.gb-foot,.gb-sub{
  color:#687b82;
  font-size:12px;
}
.bubble{
  color:#3f555e;
  font-size:13px;
  line-height:1.62;
}
.stat-box{
  color:#667a81;
  font-size:11.5px;
}
.stat-box b{
  font-weight:500;
}
.profile-card-levelbadge,.profile-card-nickpill .nick-text{
  font-weight:500;
}

/* 카테고리 허브 */
.cute-hub .hub-name{
  font-weight:500;
}
.hub-copy h1{
  color:#34535e;
  font-size:24px;
  font-weight:500;
}
.hub-copy p{
  color:#5f747c;
  font-size:14px;
}
.hub-pill{
  color:#506e78;
  font-size:11.5px;
  font-weight:400;
}
.category-card strong{
  color:#395963;
  font-size:15px;
  font-weight:500;
}
.category-card small{
  color:#61777f;
  font-size:12.5px;
  font-weight:400;
}
.category-mini-badge,.category-card-foot{
  font-weight:500;
}
.category-mini-badge{
  font-size:10.5px;
}
.category-card-foot{
  color:#60777f;
  font-size:11.5px;
}
.hub-mini-head strong,.hub-topic strong,.hub-guide-item b{
  color:#425f69;
  font-weight:500;
}
.hub-mini-head strong{
  font-size:14px;
}
.hub-topic strong{
  font-size:12.5px;
}
.hub-topic small,.hub-guide-item,.font-credit{
  color:#60747c;
}
.hub-topic small{
  font-size:11px;
}
.hub-guide-item{
  font-size:12.5px;
}
.font-credit{
  font-size:11px;
}

/* 구인·구직 */
.local-jobs-title h2,.job-hero h1,.job-detail-title,
.job-section h3,.job-side-card h3,.job-form-section h3{
  font-weight:500!important;
}
.local-jobs-title p,.local-job-mini small,
.job-hero p,.job-company,.job-card-foot,
.job-side-card p,.job-side-card li,
.job-detail-sub,.job-section p,.job-location-box p,
.job-cta-note{
  color:#566b73;
}
.job-type-badge,.distance-chip,.job-verified,
.job-filter-label,.job-condition span{
  font-weight:500!important;
}
.job-card h3{
  font-size:17px;
}
.job-meta b,.job-condition b{
  color:#687b82;
  font-weight:500;
}
.job-meta span,.job-condition span{
  color:#344c55;
}

/* 관리자 화면: 작은 글자는 키우고 수치는 과도하게 굵지 않게 */
.admin-link-v2,.admin-btn,.admin-mini-btn,
.admin-status,.admin-tab-inline{
  font-weight:500;
}
.admin-link-v2.active,.admin-status,
.admin-btn.primary{
  font-weight:500;
}
.admin-metric-v2 .value,
.admin-summary-box b,.admin-queue strong{
  font-weight:500!important;
}
.admin-brand-copy strong,
.admin-panel-head h3,.admin-setting-card h3,
.admin-member-cell strong{
  font-weight:500;
}
.admin-brand-copy span,.admin-sidebar-foot,
.admin-page-head p,.admin-panel-head p,
.admin-legend,.admin-bar-row,.admin-queue span,
.admin-system-item,.admin-result-count,
.admin-table-v2,.admin-table-v2 .title-cell span,
.admin-member-cell span,.admin-summary-box span,
.admin-ad-slot-card span,.admin-setting-row,
.admin-setting-row .desc,.admin-empty,
.admin-detail-grid,.admin-modal-note{
  color:#5f747c;
}
.admin-table-v2 .title-cell strong{
  color:#405e68;
  font-weight:500;
}
.admin-table-v2 th{
  color:#5f737b;
  font-weight:500;
}
.admin-table-v2 td{
  color:#506770;
}
.admin-group-label{
  font-weight:500;
}

/* 하단·보조 문구도 읽을 수 있는 최소 크기 확보 */
.ad-label,.footer-links,.copyright,.empty,
.account-level-pill,.grade-micro{
  font-size:11.5px;
}
.footer-links,.copyright{
  color:#bed2d8;
}
.new{
  font-weight:500;
}

/* 포커스 가시성: 키보드 및 저시력 사용자를 위한 명확한 윤곽 */
button:focus-visible,a:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(42,150,189,.28);
  outline-offset:2px;
}

/* 모바일에서도 지나치게 굵지 않으면서 작은 글자가 되지 않도록 조정 */
@media(max-width:620px){
  body{
    font-size:16px;
    line-height:1.68;
  }
  .top-welcome{
    font-size:13px;
  }
  .nav-link{
    font-size:14px;
  }
  .compact-row,.preview-row,.rank-item,.weekly-row{
    font-size:13px;
  }
  .panel-head,.preview-head{
    font-size:14px;
  }
  .page-title{
    font-size:23px;
  }
  .page-sub{
    font-size:13.5px;
  }
  .post-line{
    font-size:13.5px;
  }
  .detail-title{
    font-size:22px;
  }
  .detail-body{
    font-size:16px;
    line-height:1.82;
  }
  .mobile-bottom button{
    color:#61757d;
    font-size:11px;
    font-weight:500;
  }
  .category-card strong{
    font-size:14.5px;
  }
  .category-card small{
    font-size:12px;
  }
}

/* 상단 로그인 점을 로그인 글자에 더 가깝게 */
.account{
  gap:7px !important;
}
.account .dot{
  width:8px;
  height:8px;
  margin-right:0 !important;
  flex:0 0 8px;
  box-shadow:0 0 0 1px rgba(231,160,159,.12);
  animation:softPulseDot 2.3s ease-in-out infinite;
}

/* 오늘의 방문 통계 라벨 앞 작은 점 */
.widget-stat span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.widget-stat span::before{
  content:'';
  width:7px;
  height:7px;
  border-radius:50%;
  background:#e7a09f;
  box-shadow:0 0 0 1px rgba(231,160,159,.12);
  animation:softPulseDot 2.3s ease-in-out infinite;
  flex:0 0 7px;
}

/* 이번 주 활동왕 및 랭킹 리스트 */
.weekly-row .n,
.ranking-rank{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#d39b61;
  font-weight:500;
}
.weekly-row .n{
  width:22px;
}
.ranking-rank{
  font-size:13px;
}
.weekly-name-wrap,
.ranking-name-wrap{
  display:inline-flex;
  align-items:center;
  min-width:0;
  gap:5px;
}
.weekly-name-text,
.ranking-name-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.weekly-medal-after,
.ranking-medal-after{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff6e8;
  color:#d79a47;
  font-size:10px;
  line-height:1;
  flex:0 0 18px;
}

@keyframes softPulseDot{
  0%,100%{opacity:.95;transform:scale(1)}
  50%{opacity:.28;transform:scale(.82)}
}

@media(max-width:620px){
  .widget-stat span{gap:4px}
  .widget-stat span::before{width:6px;height:6px;flex-basis:6px}
  .weekly-medal-after,.ranking-medal-after{width:17px;height:17px;font-size:9px}
  .account{gap:6px !important}
}

/* 게시글 제목 뒤 관리자 지정 배지 */
.post-admin-badges{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
  margin-left:7px;
  vertical-align:middle;
  line-height:1;
}
.community-post-badge{
  display:inline-block;
  flex:0 0 auto;
  overflow:visible;
  vertical-align:middle;
  filter:drop-shadow(0 1px 1px rgba(37,73,83,.05));
}
.community-post-badge.badge-home{height:20px}
.community-post-badge.badge-list{height:21px}
.community-post-badge.badge-detail{height:28px}
.community-post-badge.badge-admin{height:23px}
.detail-title .post-admin-badges{margin-left:9px;transform:translateY(-1px)}
.preview-row .post-admin-badges,.hub-topic .post-admin-badges{gap:3px;margin-left:5px}
.post-title-copy .post-admin-badges{margin-left:6px}
.admin-table-v2 .title-cell strong .post-admin-badges{margin-left:6px}


.post-title-text{min-width:0}
.home-feed-row .title,.preview-row>span:last-child,.hub-topic strong,.post-title-copy .post-title,.admin-table-v2 .title-cell strong{display:flex!important;align-items:center;min-width:0}
.home-feed-row .title .post-title-text,.preview-row>span:last-child .post-title-text,.hub-topic strong .post-title-text,.post-title-copy .post-title .post-title-text,.admin-table-v2 .title-cell strong .post-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.detail-title{display:flex;align-items:center;flex-wrap:wrap;gap:2px}
.detail-title .post-title-text{white-space:normal;overflow:visible}
.side-info [data-post] .post-title-text{display:inline}
.post-admin-badges{flex:0 0 auto}

/* 관리자 게시글 배지 관리 */
.admin-badge-summary-chip{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 10px;
  border:1px solid #d8e7ea;
  border-radius:999px;
  background:#f7fbfc;
  color:#4f7884;
  font-size:11.5px;
  font-weight:500;
}
.admin-badge-preview-cell{min-width:150px}
.admin-badge-preview-empty{color:#98a7ac;font-size:11.5px}
.admin-badge-picker{display:flex;flex-direction:column;gap:13px}
.modal:has(.admin-badge-picker){width:min(960px,100%);max-height:92vh;overflow:auto}
.admin-badge-picker-note{
  padding:11px 13px;
  border:1px solid #dcebee;
  border-radius:10px;
  background:#f5fbfc;
  color:#5b747d;
  font-size:12.5px;
  line-height:1.6;
}
.admin-badge-picker-current{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  min-height:38px;
  padding:9px 11px;
  border:1px dashed #d5e3e6;
  border-radius:10px;
  background:#fff;
}
.admin-badge-picker-current-label{font-size:12px;color:#71858c;margin-right:3px}
.admin-badge-picker-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px auto;
  gap:9px;
  align-items:center;
}
.admin-badge-picker-toolbar .admin-search{min-width:0}
.admin-badge-picker-count{font-size:11.5px;color:#7b8e95;white-space:nowrap}
.admin-badge-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  max-height:460px;
  overflow:auto;
  padding:3px 4px 3px 1px;
}
.admin-badge-option{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:58px;
  padding:9px 10px;
  border:1px solid #e0e9eb;
  border-radius:11px;
  background:#fff;
  cursor:pointer;
  transition:.15s ease;
}
.admin-badge-option:hover{border-color:#9fd6e1;background:#fbfeff}
.admin-badge-option:has(input:checked){border-color:#45abc2;background:#eef9fb;box-shadow:inset 0 0 0 1px rgba(69,171,194,.12)}
.admin-badge-option input{width:16px;height:16px;accent-color:#2a96bd;flex:0 0 auto}
.admin-badge-option-preview{display:flex;align-items:center;justify-content:flex-start;min-width:82px;overflow:hidden}
.admin-badge-option-copy{min-width:0}
.admin-badge-option-copy b{display:block;color:#405c66;font-size:12.5px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-badge-option-copy small{display:block;color:#8a9ba1;font-size:10.5px;line-height:1.35;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-badge-picker-empty{grid-column:1/-1;padding:34px;text-align:center;color:#8b9ba0;font-size:13px}

@media(max-width:760px){
  .admin-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-badge-picker-toolbar{grid-template-columns:1fr 1fr}
  .admin-badge-picker-toolbar .admin-search{grid-column:1/-1}
}
@media(max-width:620px){
  .post-admin-badges{gap:3px;margin-left:5px}
  .community-post-badge.badge-home,.community-post-badge.badge-list{height:19px}
  .community-post-badge.badge-detail{height:24px}
  .admin-badge-grid{grid-template-columns:1fr;max-height:420px}
  .admin-badge-picker-toolbar{grid-template-columns:1fr}
  .admin-badge-picker-toolbar .admin-search{grid-column:auto}
}

.ti{display:inline-flex;align-items:center;justify-content:center}
.panel-head>.ti,.preview-head>.ti,.attendance>.ti,.admin-search>.ti,.admin-btn>.ti,.admin-mini-btn>.ti,.admin-badge-summary-chip>.ti{margin-right:6px;flex:0 0 auto}
.circle-icon>.ti,.hub-mark>.ti,.native-thumb>.ti,.home-subcategory-icon>.ti{font-size:inherit;line-height:1}
.admin-btn,.admin-mini-btn,.admin-search,.admin-badge-summary-chip{display:inline-flex;align-items:center}

.admin-login-page{min-height:calc(100vh - 240px);display:grid;place-items:center;padding:42px 0 64px;background:linear-gradient(145deg,#f4fbfc 0%,#fff 52%,#fff8ef 100%)}
.admin-login-shell{width:min(460px,calc(100% - 28px))}
.admin-login-card{position:relative;overflow:hidden;border:1px solid #dbe9ec;border-radius:22px;background:#fff;box-shadow:0 22px 60px rgba(27,101,123,.12);padding:30px}
.admin-login-card:before{content:"";position:absolute;right:-55px;top:-65px;width:180px;height:180px;border-radius:50%;background:rgba(60,183,215,.11)}
.admin-login-brand{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:24px}
.admin-login-mark{width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,#2a96bd,#36aaa8);color:#fff;display:grid;place-items:center;font-size:25px;box-shadow:0 10px 24px rgba(42,150,189,.22)}
.admin-login-brand strong{display:block;font-size:18px;color:#3d6170}.admin-login-brand span{display:block;font-size:12px;color:#8b9ca2;margin-top:2px}
.admin-login-title{position:relative;margin-bottom:20px}.admin-login-title h1{font-size:25px;margin:0 0 6px;color:#365c6a}.admin-login-title p{font-size:13px;line-height:1.7;color:#7c8f96;margin:0}
.admin-login-card .field{position:relative}.admin-login-input{position:relative}.admin-login-input>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:18px;color:#8aa2aa;z-index:2}.admin-login-input .input{padding-left:42px}
.admin-login-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 16px;font-size:12px;color:#73878e}.admin-login-options label{display:flex;align-items:center;gap:6px}.admin-login-back{border:0;background:transparent;color:#6f8992;font-size:12px;text-decoration:underline}
.admin-login-submit{width:100%;min-height:46px;border-radius:10px;font-size:14px}
.admin-login-demo{margin-top:16px;padding:12px 13px;border:1px solid #f0dfc6;border-radius:11px;background:#fff8ed;color:#8a6c45;font-size:11.5px;line-height:1.65}.admin-login-demo b{color:#76582f}.admin-login-security{display:flex;align-items:flex-start;gap:8px;margin-top:14px;color:#8b9ba0;font-size:11px;line-height:1.6}.admin-login-security i{color:#3b9c91;font-size:16px;margin-top:1px}
@media(max-width:620px){.admin-login-page{padding:24px 0 45px;align-items:start}.admin-login-card{padding:23px 18px;border-radius:18px}.admin-login-title h1{font-size:22px}}

.comment-badge-strip{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0 2px}
.comment-badge-item{display:inline-flex;align-items:center;max-width:190px;min-height:30px}
.comment-badge-item img{display:block;height:30px;width:auto;max-width:190px;object-fit:contain;opacity:.5}
.comment-badge-item.compact img{height:25px;max-width:160px}
.comment-compose{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:8px!important}
.comment-compose>.input{min-width:0}
.comment-badge-compose{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:2px}
.comment-badge-trigger{border:1px solid #cfe3e8;background:#f5fbfc;color:#317f92;border-radius:9px;min-height:36px;padding:7px 11px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px}
.comment-badge-trigger:disabled{opacity:.55;cursor:not-allowed}
.comment-badge-policy{font-size:11px;color:#8a9aa0}
.comment-badge-compose-preview{display:flex;align-items:center;gap:5px;flex-wrap:wrap;min-height:30px}
.comment-badge-picker{min-width:0}
.comment-badge-picker-note{padding:11px 13px;border:1px solid #dce9ec;background:#f6fbfc;border-radius:10px;font-size:12px;color:#60777f;line-height:1.65;margin-bottom:11px}
.comment-badge-picker-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.comment-badge-picker-toolbar .admin-search{min-width:220px}
.comment-badge-picker-count{font-size:11px;color:#82949a;margin-left:auto}
.comment-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:460px;overflow:auto;padding:2px}
.comment-badge-option{display:flex;align-items:center;gap:8px;border:1px solid #e0e9eb;background:#fff;border-radius:10px;padding:8px;cursor:pointer;min-width:0;transition:.15s}
.comment-badge-option:hover{border-color:#83c6d4;background:#fbfefe}.comment-badge-option:has(input:checked){border-color:#2a96bd;background:#eef9fc;box-shadow:inset 0 0 0 1px #2a96bd}
.comment-badge-option input{flex:0 0 auto}.comment-badge-option-preview{width:80px;height:34px;display:flex;align-items:center;overflow:hidden;flex:0 0 auto}.comment-badge-option-preview img{height:31px;width:auto;max-width:148px;object-fit:contain}
.comment-badge-option-copy{min-width:0}.comment-badge-option-copy b{display:block;font-size:11px;color:#506d77;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comment-badge-option-copy small{display:block;font-size:9.5px;color:#95a3a7;margin-top:2px}
.comment-badge-current{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:38px;padding:8px 0}.comment-badge-current-label{font-size:11px;color:#8b9ba0;margin-right:3px}
.comment-badge-admin-preview{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:10px;padding:10px;border-radius:9px;background:#f8fbfb;border:1px dashed #d9e6e8}
.modal:has(.comment-badge-picker){width:min(960px,100%)}
@media(max-width:760px){.comment-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.comment-badge-option-preview{width:125px}.comment-badge-option-preview img{max-width:123px}}
@media(max-width:520px){.comment-compose{grid-template-columns:1fr}.comment-compose>button{width:100%}.comment-badge-grid{grid-template-columns:1fr}.comment-badge-option-preview{width:145px}.comment-badge-option-preview img{max-width:143px}.comment-badge-picker-count{margin-left:0;width:100%}}

/* ===== HEADER COLLISION FIX + HOME COMMENT BADGE EXAMPLES ===== */
@media (min-width:901px){
  .head-row{grid-template-columns:minmax(230px,270px) minmax(300px,1fr) minmax(300px,max-content);gap:18px}
  .global-search{width:100%;max-width:none;margin-left:0;min-width:0}
  .global-search input{min-width:0}
  .account{min-width:0;white-space:nowrap;gap:10px}
  .account>*{flex:0 0 auto}
}
@media (min-width:901px) and (max-width:1120px){
  .head-row{grid-template-columns:minmax(190px,230px) minmax(260px,1fr) minmax(280px,max-content);gap:14px}
  .brand-copy{display:none}
  .account{font-size:13px;gap:8px}
}
.preview-row{grid-template-columns:62px minmax(0,1fr) auto;align-items:center}
.preview-row .preview-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.preview-reaction{display:inline-flex;align-items:center;justify-content:flex-end;min-width:0;margin-left:5px}
.preview-reaction .comment-badge-item{min-height:22px;max-width:82px}
.preview-reaction .comment-badge-item img{height:21px;max-width:82px}
@media(max-width:620px){
  .preview-row{grid-template-columns:56px minmax(0,1fr) auto;gap:6px}
  .preview-reaction .comment-badge-item{max-width:68px}
  .preview-reaction .comment-badge-item img{height:19px;max-width:68px}
}

.ad-slot{flex-direction:column;padding:12px;gap:6px}.ad-slot.has-creative{background:#f7f8f8;padding:0;justify-content:stretch}.ad-creative-image{width:100%;height:100%;object-fit:cover;display:block}.ad-creative-layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:inherit}.ad-creative-layer img{width:100%;height:100%;object-fit:cover}.ad-owner-meta{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:7px 10px;background:linear-gradient(180deg,transparent,rgba(20,44,53,.86));color:#fff;text-align:left;font-size:10px;line-height:1.45;display:flex;flex-wrap:wrap;gap:3px 9px}.ad-owner-meta b{font-size:10.5px}.ad-owner-meta .period{margin-left:auto}.ad-owner-meta.no-image{position:absolute;background:rgba(255,255,255,.94);color:#61767e;border-top:1px solid #e4ebed}.ad-slot.has-owner{padding-bottom:43px}.ad-slot.has-owner.has-creative{padding-bottom:0}.native-ad{position:relative;padding-bottom:42px!important}.native-ad .ad-owner-meta{border-radius:0 0 13px 13px}.ad-upload-preview{min-height:110px;border:1px dashed #cfdde0;border-radius:10px;background:#f6f9f9;display:grid;place-items:center;overflow:hidden;color:#8a9a9f;font-size:12px}.ad-upload-preview img{max-width:100%;max-height:220px;display:block}.ad-file-help{font-size:11px;color:#8a9ba1;line-height:1.55;margin-top:5px}.ad-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ad-campaign-thumb{width:92px;height:54px;border-radius:7px;object-fit:cover;background:#f3f5f5;border:1px solid #e1e8ea}.ad-meta-line{font-size:11px;color:#7a8c92;line-height:1.55}.admin-ad-slot-card .preview{height:92px;overflow:hidden;position:relative}.admin-ad-slot-card .preview img{width:100%;height:100%;object-fit:cover}.admin-ad-slot-card .slot-owner{display:block;margin-top:6px;font-size:10.5px;color:#627880;line-height:1.5}.admin-ad-slot-card .slot-period{display:block;font-size:10px;color:#93a1a6}.admin-banner-bar{margin-bottom:12px}
@media(max-width:620px){.ad-admin-fields{grid-template-columns:1fr}.ad-owner-meta{font-size:8.5px;padding:5px 7px}.ad-owner-meta b{font-size:9px}.ad-owner-meta .period{margin-left:0;width:100%}}

.debate{position:relative;overflow:hidden}.debate:after{content:"";position:absolute;right:-55px;top:-70px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}.debate-topline{display:flex;align-items:center;gap:8px}.debate-status{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.14);font-size:11px}.debate-status.done{background:#fff;color:var(--sky-deep);font-weight:500}.debate-result-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:16px}.debate-result-item{min-width:0}.debate-result-label{display:flex;justify-content:space-between;gap:5px;font-size:10.5px;margin-bottom:4px;opacity:.95}.debate-result-bar{height:6px;border-radius:999px;background:rgba(255,255,255,.2);overflow:hidden}.debate-result-bar span{display:block;height:100%;border-radius:999px;background:#fff}.debate-extra-btn{border:1px solid rgba(255,255,255,.52)!important;background:transparent!important;color:#fff!important}.debate-modal-question{padding:12px 14px;border-radius:10px;background:#f2f8fa;color:#466873;font-size:14px;font-weight:500;line-height:1.6;margin-bottom:14px}.debate-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:13px}.debate-choice{position:relative}.debate-choice input{position:absolute;opacity:0;pointer-events:none}.debate-choice span{min-height:70px;border:1px solid var(--line);border-radius:11px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#617780;font-size:12px;font-weight:500;cursor:pointer;transition:.15s}.debate-choice small{font-size:9.5px;color:#93a2a7;font-weight:400}.debate-choice input:checked+span{border-color:var(--sky-deep);background:#eaf7fa;color:var(--sky-deep);box-shadow:0 0 0 2px rgba(42,150,189,.09)}.debate-char-count{text-align:right;color:#97a4a8;font-size:10px;margin-top:4px}.debate-opinion-list{display:flex;flex-direction:column;gap:9px;max-height:330px;overflow:auto;margin-top:12px}.debate-opinion{border:1px solid var(--line);border-radius:11px;padding:11px 12px;background:#fff}.debate-opinion-head{display:flex;align-items:center;gap:7px;font-size:10px;color:#8b9ba0}.debate-vote-pill{padding:3px 7px;border-radius:999px;background:#eaf7fa;color:#278fa9;font-weight:500}.debate-vote-pill.no{background:#fff0ef;color:#c45d55}.debate-vote-pill.conditional{background:#fff5e7;color:#b97731}.debate-opinion-text{font-size:12.5px;color:#536c75;line-height:1.65;margin-top:7px}.debate-opinion-actions{display:flex;justify-content:flex-end;margin-top:6px}.debate-like-btn{border:0;background:transparent;color:#8fa0a5;font-size:10.5px;padding:3px 4px}.debate-like-btn.active{color:var(--danger);font-weight:500}.debate-summary-box{border:1px solid #dcebed;background:#f7fbfc;border-radius:11px;padding:12px 13px;margin-top:12px}.debate-summary-box b{display:block;font-size:12px;color:#4d6e79;margin-bottom:5px}.debate-summary-box p{margin:0;font-size:11px;color:#768b92;line-height:1.65}@media(max-width:620px){.debate-result-mini{grid-template-columns:1fr}.debate-choice-grid{grid-template-columns:1fr}.debate-choice span{min-height:54px;flex-direction:row}.debate-actions{align-items:flex-start}.debate-actions .debate-meta{width:100%}}

/* 베스트글·방금 올라온 글: 한 줄 정렬 및 고밀도 간격 */
.compact-list{
  padding-top:3px;
  padding-bottom:7px;
}
.compact-row.home-feed-row{
  display:grid;
  grid-template-columns:112px minmax(0,1fr) auto;
  grid-template-areas:"cat title stat";
  column-gap:9px;
  row-gap:0;
  align-items:center;
  min-height:27px;
  height:27px;
  padding:0;
  line-height:1.22;
}
.compact-row.home-feed-row + .compact-row.home-feed-row{
  border-top:1px solid #eef2f3;
}
.compact-row.home-feed-row .home-category-path{
  grid-area:cat;
  min-width:0;
  opacity:.7;
  white-space:nowrap;
}
.compact-row.home-feed-row .home-subcategory-icon{
  width:17px;
  height:17px;
  flex-basis:17px;
  font-size:9px;
}
.compact-row.home-feed-row .home-subcategory-name{
  font-size:12px;
  line-height:1.15;
}
.compact-row.home-feed-row .title{
  grid-area:title;
  min-width:0;
  display:flex;
  align-items:center;
  line-height:1.2;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
}
.compact-row.home-feed-row .title .post-title-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.compact-row.home-feed-row .stat{
  grid-area:stat;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  line-height:1;
  white-space:nowrap;
}
.compact-row.home-feed-row .stat-item{
  gap:2px;
  font-size:10.5px;
  line-height:1;
}
.compact-row.home-feed-row .stat-item i{
  font-size:9px;
}
@media(max-width:620px){
  .compact-row.home-feed-row{
    grid-template-columns:86px minmax(0,1fr) auto;
    column-gap:6px;
    min-height:27px;
    height:27px;
  }
  .compact-row.home-feed-row .home-subcategory-name{font-size:11px}
  .compact-row.home-feed-row .title{font-size:12.5px}
  .compact-row.home-feed-row .stat{gap:5px}
  .compact-row.home-feed-row .stat-item{font-size:9.5px}
  .compact-row.home-feed-row .stat-item:first-child{display:none}
}

/* 게시글 제목 뒤, 날짜·메타정보 앞 첨부 유형 표시 */
.post-attachment-indicators{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;margin-left:5px;vertical-align:middle;color:#7f969e}
.post-attachment-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border:1px solid #d8e5e8;border-radius:5px;background:#f8fbfc;font-size:11px;line-height:1;color:#62828d}
.post-attachment-icon.photo{color:#2d9eb8;background:#eef9fb;border-color:#d1ebf0}
.post-attachment-icon.video{color:#b66d32;background:#fff7ed;border-color:#f0dfcb}
.post-attachment-icon.file{color:#687d9d;background:#f4f6fb;border-color:#dfe4ef}
.post-attachment-icon .ti{font-size:11px;line-height:1}
.post-title,.preview-title,.home-feed-row .title,.hub-topic strong{gap:0}
@media(max-width:620px){.post-attachment-indicators{margin-left:4px;gap:2px}.post-attachment-icon{width:15px;height:15px;font-size:10px}.post-attachment-icon .ti{font-size:10px}}

/* 2번 사진 영역: 업종별 미리보기 카드 간격 축소 */
.preview-grid{
  gap:12px !important;
}

.preview-card{
  min-height:0 !important;
  height:auto !important;
  padding:12px 16px 13px !important;
}

.preview-head{
  margin-bottom:4px !important;
  line-height:1.25 !important;
}

.preview-list{
  padding-top:4px !important;
}

.preview-row{
  grid-template-columns:60px minmax(0,1fr) auto !important;
  column-gap:8px !important;
  align-items:center !important;
  min-height:24px !important;
  height:24px !important;
  padding:0 !important;
  line-height:1.25 !important;
  font-size:12px !important;
}

.preview-row > span:first-child{
  opacity:.72;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.preview-row > span:nth-child(2){
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.preview-row .preview-reaction,
.preview-row .community-post-badge{
  transform:scale(.92);
  transform-origin:right center;
  margin-left:2px;
}

@media(max-width:620px){
  .preview-grid{
    gap:10px !important;
  }
  .preview-card{
    min-height:0 !important;
    padding:11px 14px 12px !important;
  }
  .preview-row{
    grid-template-columns:56px minmax(0,1fr) auto !important;
    min-height:23px !important;
    height:23px !important;
    font-size:11.5px !important;
    column-gap:7px !important;
  }
}

/* ===== 60대 이상 사용자 중심 가독성 전체 조정 ===== */
:root{
  --senior-body:17px;
  --senior-small:13px;
  --senior-list:15px;
  --senior-title:18px;
  --senior-line:1.68;
  --senior-compact-line:1.4;
}

/* 기본 본문과 대비 */
html{font-size:17px !important}
body{
  font-size:var(--senior-body) !important;
  line-height:var(--senior-line) !important;
  color:#344a53 !important;
}
body, p, li, dd, td, th, input, textarea, select, button{
  text-rendering:optimizeLegibility;
}
:root{
  --ink:#344a53;
  --ink-2:#5f747d;
  --ink-3:#7f9097;
}

/* 헤더, 검색, 메뉴 */
.top-welcome{font-size:15px !important}
.brand-copy{font-size:17px !important;color:var(--sky-deep) !important}
.global-search input{font-size:16px !important}
.account,.account-nick-row{font-size:15px !important}
.account-level-pill{font-size:12px !important}
.nav-link{font-size:16px !important;min-height:46px !important}
.join-btn,.primary-btn,.write-top{
  font-size:15px !important;
  min-height:44px !important;
}
.bottom-cat-label{font-size:14px !important}

/* 오늘의 토론 */
.eyebrow{font-size:14px !important}
.debate-title{font-size:22px !important}
.debate-actions button{font-size:15px !important;min-height:44px !important}
.debate-meta{font-size:14px !important}

/* 카드 제목과 더보기 */
.panel-head,.preview-head{
  font-size:16px !important;
}
.panel-head .more,.preview-head button{
  font-size:13px !important;
  min-height:36px !important;
}

/* 베스트글, 최신글 */
.compact-row,
.compact-row.home-feed-row{
  font-size:15px !important;
  line-height:var(--senior-compact-line) !important;
}
.compact-row.home-feed-row{
  min-height:34px !important;
  padding:4px 0 !important;
}
.home-subcategory-name{font-size:14px !important}
.compact-row.home-feed-row .title{font-size:15.5px !important}
.compact-row .stat,.stat-item{font-size:13px !important}
.new{width:12.8px !important;height:12.8px !important;font-size:8px !important}

/* 업종별 미리보기 카드 */
.preview-card{
  min-height:0 !important;
  padding:14px 17px 15px !important;
}
.preview-list{padding-top:6px !important}
.preview-row{
  min-height:30px !important;
  height:30px !important;
  font-size:14px !important;
  line-height:1.35 !important;
  grid-template-columns:64px minmax(0,1fr) auto !important;
}
.preview-row > span:first-child{
  opacity:.78 !important;
  color:#667a82 !important;
}
.preview-row > span:nth-child(2){
  color:#3f555e !important;
  font-weight:500 !important;
}
.preview-row .preview-reaction,
.preview-row .community-post-badge{
  transform:none !important;
}

/* 사이드 위젯 */
.attendance{font-size:14px !important}
.login-stats,.login-links{font-size:13px !important}
.widget-stat span{font-size:12.5px !important}
.login-btn{font-size:15px !important}
.rank-item,.weekly-row{font-size:14px !important;min-height:31px !important}
.rank-item .arrow,.weekly-pct,.rank-me-line{font-size:12px !important}
.ad-label{font-size:12px !important}

/* 페이지 제목과 목록 */
.breadcrumb{font-size:14px !important}
.page-title{font-size:28px !important}
.page-sub{font-size:16px !important}
.filter{font-size:15px !important;min-height:42px !important}
.list-head{font-size:14px !important}
.post-line{
  font-size:16px !important;
  min-height:58px !important;
  line-height:1.45 !important;
}
.post-title{color:#3f555e !important;font-weight:500 !important}
.post-meta{font-size:13.5px !important}
.badge,.status-pill,.grade-badge,.grade-badge.mini{
  font-size:12.5px !important;
}

/* 게시글 상세 */
.detail-title{font-size:28px !important}
.detail-meta{font-size:14px !important}
.detail-body{
  font-size:18px !important;
  line-height:1.78 !important;
  color:#435860 !important;
}
.secondary-btn{font-size:15px !important;min-height:44px !important}
.comment-head{font-size:13.5px !important}
.comment-text{font-size:16px !important;line-height:1.65 !important}

/* 입력 폼 */
.field label{font-size:15px !important}
.input,textarea,select{
  font-size:16px !important;
  min-height:46px !important;
}
textarea{font-size:17px !important}
.social-btn,.link-btn,.auth-foot,.auth-links,.auth-links button{
  font-size:14px !important;
}
.marketing-fields h4{font-size:14px !important}
.marketing-fields p{font-size:13px !important}

/* 상품, 공동구매, 구인구직 */
.product-title,.gb-title{font-size:16px !important}
.product-foot,.gb-foot,.gb-sub{font-size:13.5px !important}
.product-price{font-size:18px !important}
.warning{font-size:14px !important}
.local-jobs-title p,.job-hero p{font-size:15px !important}
.local-job-mini strong{font-size:16px !important}
.local-job-mini small{font-size:14px !important}
.job-tab{font-size:15px !important}
.job-filter-label,.job-filter-chip,.job-filter-select{font-size:14px !important}
.job-card h3{font-size:18px !important}
.job-company,.job-meta span,.job-card-foot{font-size:14px !important}
.job-meta b,.job-tag,.job-verified{font-size:13px !important}

/* 카테고리 허브 */
.hub-copy p{font-size:15px !important}
.hub-pill{font-size:13px !important}
.category-card strong{font-size:17px !important}
.category-card small{font-size:14px !important;line-height:1.6 !important}
.category-mini-badge,.category-card-foot{font-size:12.5px !important}
.hub-mini-head strong{font-size:15px !important}
.hub-mini-head span,.hub-topic small{font-size:12.5px !important}
.hub-topic strong{font-size:14px !important}
.hub-guide-item,.hub-guide-item b{font-size:14px !important}

/* 푸터 */
.footer-links{font-size:13px !important}
.copyright,.font-credit{font-size:12px !important}

/* 클릭 영역 */
button,.nav-link,.filter,.job-tab,.job-filter-chip,.secondary-btn{
  min-height:44px;
}

/* 모바일 */
@media(max-width:620px){
  html{font-size:16px !important}
  body{font-size:16.5px !important}
  .top-welcome{font-size:14px !important}
  .nav-link{font-size:15px !important}
  .compact-row,
  .compact-row.home-feed-row{font-size:14.5px !important}
  .compact-row.home-feed-row .title{font-size:15px !important}
  .home-subcategory-name{font-size:13.5px !important}
  .preview-row{
    min-height:29px !important;
    height:29px !important;
    font-size:13.5px !important;
    grid-template-columns:60px minmax(0,1fr) auto !important;
  }
  .page-title{font-size:25px !important}
  .page-sub{font-size:15px !important}
  .post-line{font-size:15px !important;min-height:56px !important}
  .detail-title{font-size:24px !important}
  .detail-body{font-size:17px !important;line-height:1.8 !important}
  .input,textarea,select{font-size:16px !important}
  .mobile-bottom button{font-size:12px !important}
}

/* 매우 작은 화면 */
@media(max-width:380px){
  .preview-row{
    grid-template-columns:56px minmax(0,1fr) auto !important;
    font-size:13px !important;
  }
}

/* 댓글 배지 선택창: 원본 대비 150% 확대 */
.modal:has(.comment-badge-picker){width:min(1100px,100%) !important}

.comment-badge-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
}

.comment-badge-option{
  min-height:66px !important;
  padding:8px 10px !important;
  gap:10px !important;
}

.comment-badge-option-preview{
  width:225px !important;
  height:51px !important;
  flex:0 0 225px !important;
}

.comment-badge-option-preview .comment-badge-item.compact img,
.comment-badge-option-preview img{
  height:46.5px !important;
  max-width:222px !important;
  opacity:.82 !important;
}

.comment-badge-option-copy b{
  font-size:14px !important;
  color:#3f5963 !important;
}

.comment-badge-option-copy small{
  font-size:12px !important;
  color:#71868e !important;
}

.comment-badge-popular{
  display:inline-flex;
  align-items:center;
  margin-top:3px;
  padding:2px 6px;
  border-radius:999px;
  background:#fff4df;
  color:#a66b20;
  font-size:10.5px;
  font-weight:500;
}

.comment-badge-current .comment-badge-item.compact img{
  height:37.5px !important;
  max-width:240px !important;
  opacity:.82 !important;
}

@media(max-width:820px){
  .comment-badge-grid{grid-template-columns:1fr !important}
  .comment-badge-option-preview{
    width:210px !important;
    flex-basis:210px !important;
  }
  .comment-badge-option-preview .comment-badge-item.compact img,
  .comment-badge-option-preview img{max-width:207px !important}
}

@media(max-width:520px){
  .comment-badge-option{
    align-items:center !important;
    min-height:62px !important;
  }
  .comment-badge-option-preview{
    width:180px !important;
    height:48px !important;
    flex-basis:180px !important;
  }
  .comment-badge-option-preview .comment-badge-item.compact img,
  .comment-badge-option-preview img{
    height:43px !important;
    max-width:177px !important;
  }
  .comment-badge-option-copy b{font-size:13px !important}
}

/* 카드형 게시글 목록: 60대 이상 가독성 강화 */
.preview-grid{
  gap:14px !important;
}

.preview-card{
  min-height:214px !important;
  height:auto !important;
  padding:16px 18px 17px !important;
}

.preview-head{
  font-size:17px !important;
  line-height:1.3 !important;
  margin-bottom:6px !important;
}

.preview-head i{
  font-size:17px !important;
}

.preview-head button{
  font-size:13.5px !important;
  min-height:36px !important;
  padding:5px 7px !important;
}

.preview-list{
  padding-top:6px !important;
}

.preview-row{
  grid-template-columns:68px minmax(0,1fr) auto !important;
  column-gap:9px !important;
  align-items:center !important;
  min-height:33px !important;
  height:33px !important;
  padding:0 !important;
  font-size:15px !important;
  line-height:1.35 !important;
}

.preview-row > span:first-child{
  font-size:14px !important;
  color:#61747c !important;
  opacity:.82 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.preview-row > span:nth-child(2){
  min-width:0 !important;
  font-size:15.5px !important;
  font-weight:500 !important;
  color:#354c55 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.preview-row .preview-reaction,
.preview-row .community-post-badge{
  margin-left:3px !important;
  transform:scale(1.12) !important;
  transform-origin:right center !important;
}

@media(max-width:900px){
  .preview-card{
    min-height:208px !important;
  }
}

@media(max-width:620px){
  .preview-grid{
    gap:12px !important;
  }

  .preview-card{
    min-height:204px !important;
    padding:15px 16px 16px !important;
  }

  .preview-head{
    font-size:16.5px !important;
  }

  .preview-head button{
    font-size:13px !important;
  }

  .preview-row{
    grid-template-columns:64px minmax(0,1fr) auto !important;
    min-height:32px !important;
    height:32px !important;
    font-size:14.5px !important;
  }

  .preview-row > span:first-child{
    font-size:13.5px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:15px !important;
  }

  .preview-row .preview-reaction,
  .preview-row .community-post-badge{
    transform:scale(1.08) !important;
  }
}

@media(max-width:380px){
  .preview-row{
    grid-template-columns:58px minmax(0,1fr) auto !important;
    column-gap:7px !important;
  }

  .preview-row > span:first-child{
    font-size:13px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:14.5px !important;
  }
}

/* 카드형 게시글 목록: 댓글 배지 제거 + 제목 가독성 확대 */
.preview-row .preview-reaction,
.preview-row .community-post-badge,
.preview-row .best-post-badges{
  display:none !important;
}

.preview-row{
  grid-template-columns:76px minmax(0,1fr) !important;
  column-gap:12px !important;
  min-height:36px !important;
  height:36px !important;
}

.preview-row > span:first-child{
  font-size:15px !important;
  color:#596d75 !important;
  opacity:.88 !important;
}

.preview-row > span:nth-child(2){
  font-size:16.5px !important;
  font-weight:500 !important;
  color:#2f4852 !important;
  letter-spacing:-.015em !important;
}

.preview-card{
  min-height:224px !important;
}

@media(max-width:620px){
  .preview-row{
    grid-template-columns:70px minmax(0,1fr) !important;
    min-height:35px !important;
    height:35px !important;
    column-gap:10px !important;
  }

  .preview-row > span:first-child{
    font-size:14px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:16px !important;
  }

  .preview-card{
    min-height:218px !important;
  }
}

@media(max-width:380px){
  .preview-row{
    grid-template-columns:62px minmax(0,1fr) !important;
  }

  .preview-row > span:first-child{
    font-size:13.5px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:15.5px !important;
  }
}

/* 카드형 게시글 미리보기: 댓글 배지 완전 제거 */
.preview-card .preview-reaction,
.preview-card .community-post-badge,
.preview-card .best-post-badges,
.preview-card [class*="comment-badge"],
.preview-card [data-comment-badge],
.preview-card img[src*="badge"],
.preview-card img[alt*="배지"]{
  display:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
  visibility:hidden !important;
}

/* 배지 공간까지 제거하고 2열 구조로 단순화 */
.preview-row{
  grid-template-columns:92px minmax(0,1fr) !important;
  column-gap:14px !important;
  min-height:42px !important;
  height:42px !important;
  align-items:center !important;
  padding:0 !important;
}

/* 기존 15px → 약 19px: 3pt 확대 */
.preview-row > span:first-child{
  font-size:19px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  color:#4b626b !important;
  opacity:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 기존 16.5px → 약 20.5px: 3pt 확대 */
.preview-row > span:nth-child(2){
  min-width:0 !important;
  font-size:20.5px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  color:#273f49 !important;
  letter-spacing:-.018em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 혹시 제목 뒤에 남는 배지 래퍼/세 번째 칸이 있으면 제거 */
.preview-row > :nth-child(n+3){
  display:none !important;
}

/* 카드 제목과 더보기 소폭 확대 */
.preview-head{
  font-size:19px !important;
}
.preview-head button{
  font-size:15px !important;
}

/* 5개 행이 잘리지 않도록 카드 높이 확대 */
.preview-card{
  min-height:252px !important;
  height:auto !important;
  padding:17px 19px 19px !important;
}

.preview-list{
  padding-top:7px !important;
}

@media(max-width:620px){
  .preview-row{
    grid-template-columns:82px minmax(0,1fr) !important;
    column-gap:11px !important;
    min-height:40px !important;
    height:40px !important;
  }

  .preview-row > span:first-child{
    font-size:17.5px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:19px !important;
  }

  .preview-head{
    font-size:18px !important;
  }

  .preview-card{
    min-height:242px !important;
    padding:16px 17px 18px !important;
  }
}

@media(max-width:380px){
  .preview-row{
    grid-template-columns:74px minmax(0,1fr) !important;
  }

  .preview-row > span:first-child{
    font-size:16.5px !important;
  }

  .preview-row > span:nth-child(2){
    font-size:18px !important;
  }
}

/* 카드형 목록의 배지는 완전히 제거 */
.preview-card .preview-reaction,
.preview-card .community-post-badge,
.preview-card .best-post-badges,
.preview-card .post-admin-badges,
.preview-card [class*="comment-badge"]{
  display:none !important;
}

/* 하위 카테고리: 베스트글 카테고리와 동일 */
.preview-card .preview-row > span:first-child{
  font-size:13px !important;
  color:#3d5c67 !important;
  font-weight:500 !important;
  opacity:1 !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 게시글 제목: 베스트글 제목보다 3pt(약 4px) 크게 */
.preview-card .preview-row > span:nth-child(2),
.preview-card .preview-title,
.preview-card .preview-title .post-title-text{
  font-size:17.5px !important;
  color:#405a63 !important;
  font-weight:500 !important;
  line-height:1.35 !important;
  letter-spacing:-.015em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 하위 카테고리 + 제목 2열 정렬 */
.preview-card .preview-row{
  grid-template-columns:78px minmax(0,1fr) !important;
  column-gap:12px !important;
  min-height:37px !important;
  height:37px !important;
  align-items:center !important;
  padding:0 !important;
}

/* 제목 뒤 첨부 아이콘은 유지 */
.preview-card .post-attachment-indicators{
  display:inline-flex !important;
  margin-left:6px !important;
  vertical-align:middle !important;
}

/* 카드 높이 보정 */
.preview-card{
  min-height:230px !important;
  height:auto !important;
  padding:16px 18px 18px !important;
}

@media(max-width:620px){
  .preview-card .preview-row{
    grid-template-columns:70px minmax(0,1fr) !important;
    min-height:36px !important;
    height:36px !important;
    column-gap:10px !important;
  }

  .preview-card .preview-row > span:first-child{
    font-size:13px !important;
  }

  .preview-card .preview-row > span:nth-child(2),
  .preview-card .preview-title,
  .preview-card .preview-title .post-title-text{
    font-size:17px !important;
  }
}

/* 게시글 제목: 기존보다 2pt 축소 */
.preview-card .preview-row > span:nth-child(2),
.preview-card .preview-title,
.preview-card .preview-title .post-title-text{
  font-size:15px !important;
  line-height:1.28 !important;
  color:#405a63 !important;
  font-weight:500 !important;
}

/* 줄간격을 답답하지 않게 축소 */
.preview-card .preview-row{
  min-height:32px !important;
  height:32px !important;
  column-gap:11px !important;
  align-items:center !important;
}

/* 카테고리명도 같은 기준선에 정렬 */
.preview-card .preview-row > span:first-child{
  line-height:1.28 !important;
}

/* 카드 내부 여백과 전체 높이 축소 */
.preview-card{
  min-height:205px !important;
  padding:14px 18px 15px !important;
}

.preview-list{
  padding-top:5px !important;
}

@media(max-width:620px){
  .preview-card .preview-row{
    min-height:31px !important;
    height:31px !important;
  }

  .preview-card .preview-row > span:nth-child(2),
  .preview-card .preview-title,
  .preview-card .preview-title .post-title-text{
    font-size:14.5px !important;
  }

  .preview-card{
    min-height:198px !important;
    padding:14px 16px 15px !important;
  }
}

/* 2번 사진 영역: 각 카드의 첫 번째·두 번째 게시글에 새 글 N 표시 */
.preview-card .preview-title{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  min-width:0 !important;
  overflow:visible !important;
}
.preview-card .preview-title > .post-title-text{
  display:block !important;
  min-width:0 !important;
  flex:1 1 auto !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.preview-card .preview-new{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:13.6px !important;
  height:13.6px !important;
  margin-left:2px !important;
  border-radius:5px !important;
  background:#e85d52 !important;
  color:#fff !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  box-shadow:0 1px 4px rgba(232,93,82,.24) !important;
  animation:previewNewSlowBlink 2.6s ease-in-out infinite !important;
}
.preview-card .preview-row:nth-child(2) .preview-new{
  animation-delay:.28s !important;
}
@keyframes previewNewSlowBlink{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.22;transform:scale(.94)}
}
@media (prefers-reduced-motion:reduce){
  .preview-card .preview-new{animation:none !important;opacity:1 !important;transform:none !important}
}

/* 모든 하위카테고리 목록의 2번째 하위카테고리명 숨김 */
.category-list .subcategory-name:nth-child(2),
.subcategory-list .subcategory-name:nth-child(2),
.subcategory-name.second,
.category-item .subcategory-name:nth-child(2){
  display:none !important;
}

.top-welcome .close{color:#73848b!important}
.top-welcome .close:hover,.top-welcome .close:focus-visible{color:#43565f!important;outline:2px solid rgba(42,150,189,.22);outline-offset:2px}
:focus-visible{outline:2px solid rgba(42,150,189,.55);outline-offset:2px}

.public-preview-lock{position:relative;z-index:85;background:#fff7e8;border-bottom:1px solid #f1dfbd;color:#82612f;text-align:center;font-size:12px;font-weight:500;padding:8px 14px;line-height:1.5}
@media(max-width:620px){.public-preview-lock{font-size:11px;padding:7px 10px}}

/* ===== COMPACT HORIZONTAL CATEGORY HUB =====
   78개 하위 카테고리가 페이지 높이를 늘리지 않도록 한 줄 가로 탐색형으로 전환 */
.compact-category-hero{
  display:grid;
  grid-template-columns:minmax(360px, 1.02fr) minmax(0, 1.48fr);
  gap:26px;
  align-items:center;
  min-height:178px;
  padding:24px 26px;
  border:1px solid #e5eef0;
  border-radius:22px;
  background:linear-gradient(115deg,#fff 0%,var(--hub-soft) 125%);
  box-shadow:0 10px 34px rgba(27,101,123,.055);
  overflow:hidden;
}
.compact-category-intro{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px;align-items:center;min-width:0}
.compact-category-brand{text-align:center}
.compact-category-brand .hub-mark{width:68px;height:68px;border-radius:20px;margin:0 auto 5px;background:linear-gradient(145deg,var(--hub-primary),var(--hub-secondary));color:#fff;display:grid;place-items:center;font-size:31px;box-shadow:0 8px 20px color-mix(in srgb,var(--hub-primary) 20%,transparent)}
.compact-category-brand .hub-name{font-size:20px;line-height:1.2;font-weight:500;color:var(--hub-primary);letter-spacing:-.04em}
.compact-category-copy{min-width:0}
.compact-category-copy h1{margin:0 0 9px;font-size:19px;line-height:1.4;color:#405f6a;letter-spacing:-.035em}
.compact-category-meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.compact-category-stat{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.compact-category-stat b{font-size:24px;line-height:1;color:var(--hub-primary);font-weight:500}
.compact-category-stat span{font-size:11.5px;color:#8a9ba1}
.compact-category-rail-wrap{position:relative;min-width:0;padding:2px 0}
.compact-category-rail{
  display:flex;
  gap:20px;
  align-items:flex-start;
  overflow-x:auto;
  overflow-y:hidden;
  padding:7px 10px 12px 6px;
  scroll-snap-type:x proximity;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--hub-primary) 45%,#dce7e9) transparent;
}
.compact-category-rail::-webkit-scrollbar{height:5px}
.compact-category-rail::-webkit-scrollbar-track{background:transparent}
.compact-category-rail::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--hub-primary) 38%,#dce7e9);border-radius:99px}
.compact-category-item{flex:0 0 74px;min-width:74px;border:0;background:transparent;padding:0 2px;text-align:center;color:#496773;scroll-snap-align:start}
.compact-category-item .compact-category-icon{width:56px;height:56px;margin:0 auto 7px;border:1.6px solid var(--hub-primary);border-radius:50%;background:#fff;color:var(--hub-primary);display:grid;place-items:center;font-size:25px;transition:.18s ease;box-shadow:0 3px 10px rgba(27,101,123,.035)}
.compact-category-item .compact-category-label{display:block;max-width:74px;margin:0 auto;font-size:12px;line-height:1.35;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#4b6670}
.compact-category-item:hover .compact-category-icon,.compact-category-item:focus-visible .compact-category-icon{background:var(--hub-primary);color:#fff;transform:translateY(-2px)}
.compact-category-item:hover .compact-category-label,.compact-category-item:focus-visible .compact-category-label{color:var(--hub-primary)}
.compact-category-item:focus-visible{outline:0}
.compact-category-rail-wrap:before,.compact-category-rail-wrap:after{content:"";position:absolute;top:0;bottom:8px;width:22px;z-index:2;pointer-events:none}
.compact-category-rail-wrap:before{left:0;background:linear-gradient(90deg,var(--hub-soft),transparent)}
.compact-category-rail-wrap:after{right:0;background:linear-gradient(270deg,var(--hub-soft),transparent)}
.compact-category-hint{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin:2px 10px 0 0;font-size:10px;color:#91a1a6}
.compact-category-hint i{font-size:12px;color:var(--hub-primary)}
@media(max-width:900px){
  .compact-category-hero{grid-template-columns:1fr;gap:17px;padding:20px 18px}
  .compact-category-intro{grid-template-columns:70px minmax(0,1fr)}
  .compact-category-brand .hub-mark{width:60px;height:60px;border-radius:17px;font-size:28px}
  .compact-category-brand .hub-name{font-size:18px}
  .compact-category-copy h1{font-size:18px}
  .compact-category-hint{justify-content:flex-start;margin-left:6px}
}
@media(max-width:620px){
  .compact-category-hero{padding:17px 13px;border-radius:18px;gap:14px}
  .compact-category-intro{grid-template-columns:58px minmax(0,1fr);gap:12px}
  .compact-category-brand .hub-mark{width:52px;height:52px;border-radius:15px;font-size:24px}
  .compact-category-brand .hub-name{font-size:15px}
  .compact-category-copy h1{font-size:15px;margin-bottom:7px}
  .compact-category-meta{gap:14px}
  .compact-category-stat b{font-size:19px}
  .compact-category-stat span{font-size:10.5px}
  .compact-category-rail{gap:12px;padding-left:2px;padding-right:8px}
  .compact-category-item{flex-basis:66px;min-width:66px}
  .compact-category-item .compact-category-icon{width:50px;height:50px;font-size:22px}
  .compact-category-item .compact-category-label{max-width:66px;font-size:11px}
}

/* 자리템은 기존 가로형을 그대로 두고, 나머지 메뉴에서만 카드형 하위카테고리를 아래에 배치 */
.compact-category-card-hero{grid-template-columns:1fr;align-items:start;gap:20px;padding-bottom:26px}
.compact-category-card-hero>.compact-category-intro{width:100%;max-width:620px}
.compact-category-card-hero>.category-card-grid{width:100%;margin-top:0}
@media(max-width:900px){.compact-category-card-hero{gap:17px}}
@media(max-width:620px){.compact-category-card-hero{gap:14px;padding-bottom:18px}}

/* ===== SITE FONT SYSTEM — S-Core Dream 3 WEIGHTS ONLY =====
   Light 300   : secondary / meta / helper text
   Regular 400 : body / navigation / inputs / general UI
   Medium 500  : headings / buttons / emphasis / active states
*/
@font-face{
  font-family:'S-Core Dream';
  src:url(../assets/fonts/4edd65de48.woff2) format('woff2');
  font-weight:300;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'S-Core Dream';
  src:url(../assets/fonts/3651a304ea.woff2) format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'S-Core Dream';
  src:url('../assets/fonts/3651a304ea.woff2') format('woff2');
  font-weight:500;
  font-style:normal;
  font-display:swap;
}

/* Base */
html,body,button,input,select,textarea,option{
  font-family:'S-Core Dream',sans-serif!important;
}
body{font-weight:400!important}

/* Light — descriptions, metadata, helper copy */
.page-sub,.breadcrumb,.brand-copy,.eyebrow,.debate-meta,
.native-desc,.native-cta,.login-links,.post-meta,
.board-date,.board-comments,.board-views,.board-head-sub,
.detail-meta,.comment-head,.product-foot,.gb-sub,.gb-foot,
.copyright,.font-credit,.hub-copy p,.hub-summary-box span,
.category-card small,.category-card-foot,.hub-mini-head span,
.hub-topic small,.admin-brand-copy span,.admin-sidebar-foot,
.admin-topbar-v2 .crumb,.admin-page-head p,.admin-panel-head p,
.admin-legend,.admin-result-count,.admin-table-v2 .title-cell span,
.admin-member-cell span,.admin-summary-box span,.admin-ad-slot-card span,
.admin-setting-row .desc,.admin-modal-note,.job-company,.job-card-foot,
.local-jobs-title p,.local-job-mini small{
  font-weight:300!important;
}

/* Regular — standard reading and controls */
p,li,dd,dt,span,a,label,td,th,
input,select,textarea,option,
.nav-link,.filter,.board-tab,.board-sort-select,
.category-button,.job-tab,.job-filter-chip,.job-filter-select,
.secondary-btn,.admin-select,.admin-search input{
  font-weight:400!important;
}

/* Medium — all visual emphasis; no 600/700/800/900 weights */
h1,h2,h3,h4,h5,h6,strong,b,
.page-title,.detail-title,.debate-title,.panel-head,.preview-head,
.account-nick-row,.join-btn,.primary-btn,.write-top,.login-btn,
.home-subcategory-name,.category-card strong,.category-group-divider,
.hub-name,.hub-copy h1,.hub-mini-head strong,.hub-topic strong,
.board-head-title h1,.board-tab.active,.board-page-btn.active,
.badge,.grade-badge,.job-type-badge,.job-pay,.job-card h3,
.job-filter-label,.job-tab.active,.job-verified,.distance-chip,
.admin-brand-copy strong,.admin-group-label,.admin-link-v2.active,
.admin-page-head h2,.admin-btn,.admin-metric-v2 .value,
.admin-panel-head h3,.admin-queue strong,.admin-bar-row b,
.admin-table-v2 th,.admin-table-v2 .title-cell strong,
.admin-status,.admin-member-cell strong,.admin-summary-box b,
.admin-ad-slot-card strong,.admin-setting-card h3,.admin-detail-grid dd{
  font-weight:500!important;
}

/* Prevent synthetic bold weights from legacy declarations */
*[style*="font-weight:500"],
*[style*="font-weight:500"],
*[style*="font-weight:500"],
*[style*="font-weight:500"]{
  font-weight:500!important;
}

/* 58개 하위 카테고리명 폰트 크기 +3px */
.category-button .label{
  font-size:18px !important;
}
@media(max-width:620px){
  .category-button .label{
    font-size:16px !important;
  }
}

/* 게시판 고정 컬럼을 최대한 압축하고 제목 뒤 배지를 우선 보존 */
@media (min-width:621px){
  .board-row{
    grid-template-columns:42px minmax(0,1fr) 88px 54px 36px 44px !important;
    gap:3px !important;
  }
  .board-row-head{padding:9px 8px !important}
  .board-row:not(.board-row-head){padding:10px 8px !important}
  .board-row-head span:nth-child(2),
  .board-row-head span:nth-child(3){text-align:left !important}

  /* 작성자: 좌측 정렬 + 약 5글자 폭까지만 노출 */
  .board-author{
    justify-content:flex-start !important;
    gap:2px !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-align:left !important;
    font-size:12px !important;
  }
  .board-author-name{
    display:inline-block !important;
    max-width:4.9em !important;
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    flex:0 1 auto !important;
  }
  .board-author .grade-micro{
    flex:0 0 auto !important;
    margin-left:1px !important;
    font-size:9px !important;
  }

  /* 날짜/댓글/조회는 숫자 판독 가능한 최소 폭으로 축소 */
  .board-date,.board-comments,.board-views{font-size:11.5px !important}

  /* 제목 텍스트가 먼저 줄고, 뒤 배지 영역은 최대한 유지 */
  .board-title-cell{min-width:0 !important;overflow:hidden !important}
  .board-title-cell .post-title{
    display:flex !important;
    align-items:center !important;
    min-width:0 !important;
    max-width:100% !important;
    gap:3px !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }
  .board-title-cell .post-title .post-title-text{
    flex:1 1 0 !important;
    min-width:48px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  .board-title-cell .post-title .post-title-trailing{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:3px !important;
    flex:0 0 auto !important;
    width:max-content !important;
    max-width:245px !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }
  .board-title-cell .post-title .post-title-badges-v2,
  .board-title-cell .post-title .preview-reaction,
  .board-title-cell .post-title .post-attachment-indicators{
    display:inline-flex !important;
    align-items:center !important;
    gap:3px !important;
    flex:0 0 auto !important;
  }

  /* 배지 크기는 원래 크기로 복원하고, 압축한 컬럼/배지 공간 구조는 유지 */
  .board-title-cell .post-title .ys-post-badge.size-list{
    height:22px !important;
    width:auto !important;
    max-width:88px !important;
    flex:0 0 auto !important;
  }
  .board-title-cell .post-title .ys-comment-badge.compact{
    height:22px !important;
    width:auto !important;
    max-width:76px !important;
    flex:0 0 auto !important;
  }
  .board-title-cell .post-title .comment-badge-item,
  .board-title-cell .post-title .preview-reaction{
    max-width:76px !important;
    overflow:hidden !important;
    flex:0 0 auto !important;
  }
  .board-title-cell .post-title .post-attachment-indicators{
    max-width:26px !important;
    overflow:hidden !important;
  }
}

/* 배지: 글자는 기존 대비 2pt 축소, 박스는 글자 높이에 맞춰 상·하 여백을 타이트하게 */
.ys-post-badge,.ys-comment-badge{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  overflow:visible!important;
  vertical-align:middle!important;
  align-self:center!important;
}
.ys-post-badge{height:25.8px!important}
.ys-post-badge.size-home{height:23.6px!important}
.ys-post-badge.size-detail{height:29.6px!important}
.ys-post-badge.size-admin{height:27.3px!important}
.ys-post-badge.size-picker{height:31.8px!important}

.ys-comment-badge{height:28.1px!important}
.ys-comment-badge.compact{height:25.8px!important}
.ys-comment-badge.admin{height:30.3px!important}

/* 제목 뒤 배지 묶음: 짧은 문구는 짧게, 긴 문구만 필요한 만큼 확장 */
.post-title-badges-v2{
  max-width:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
  gap:4px!important;
  margin-right:0!important;
}
.post-title-badges-v2 .ys-post-badge{max-width:none!important}

@media (min-width:621px){
  .board-title-cell .post-title .post-title-trailing{
    max-width:330px!important;
    gap:4px!important;
    overflow:hidden!important;
  }
  .board-title-cell .post-title .post-title-badges-v2{
    max-width:none!important;
    overflow:visible!important;
    gap:4px!important;
  }
  .board-title-cell .post-title .ys-post-badge.size-list{
    height:25.8px!important;
    width:auto!important;
    max-width:none!important;
  }
  .board-title-cell .post-title .ys-comment-badge.compact{
    height:25.8px!important;
    width:auto!important;
    max-width:none!important;
  }
  .board-title-cell .post-title .comment-badge-item,
  .board-title-cell .post-title .preview-reaction{
    max-width:none!important;
    overflow:visible!important;
  }
  .board-title-cell .post-title{
    min-height:27px;
  }
}

/* 작성자 앞 마이크로 배지는 기존 크기 유지: 작성자 컬럼 공간 보존 */
.ys-author-badge{height:20px!important;width:auto!important}

/* 게시판 글제목: 기존 약 13px에서 3pt(약 4px) 확대 */
@media (min-width:621px){
  .board-title-cell .post-title .post-title-text{
    font-size:17px !important;
    line-height:1.28 !important;
    letter-spacing:-.015em !important;
  }

  /* 배지 표시 순서 고정
     1. 게시글 배지
     2. 댓글 배지
     3. 첨부 표시
     게시글 배지가 없으면 댓글 배지가 자연스럽게 첫 번째로 표시됨 */
  .board-title-cell .post-title .post-title-trailing{
    display:inline-flex !important;
    align-items:center !important;
  }
  .board-title-cell .post-title .post-title-post-badges,
  .board-title-cell .post-title .post-title-badges-v2{
    order:1 !important;
  }
  .board-title-cell .post-title .post-title-comment-badge{
    order:2 !important;
    display:inline-flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
  }
  .board-title-cell .post-title .post-title-comment-badge .preview-reaction{
    display:inline-flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
  }
  .board-title-cell .post-title .post-attachment-indicators{
    order:3 !important;
  }
}

.ys-anonymous-write-field{
  padding:13px 14px;
  border:1px solid #dce8ea;
  border-radius:10px;
  background:#f8fbfb;
}
.ys-anonymous-write-label{
  display:flex!important;
  align-items:center;
  gap:7px;
  margin:0!important;
  font-size:13px!important;
  color:#536b75!important;
  cursor:pointer;
}
.ys-anonymous-write-label input{
  width:16px;
  height:16px;
  margin:0;
}
.ys-anonymous-write-field p{
  margin:7px 0 0 23px;
  color:#8a999e;
  font-size:10.5px;
  line-height:1.55;
}
.ys-anonymous-admin-note{
  padding:10px 12px;
  border-radius:8px;
  background:#f3f7f8;
  border:1px solid #e0e9eb;
  color:#74878e;
  font-size:11px;
  line-height:1.6;
}

/* 메인 화면 로고: PWM이 올라오면서 눈에 띄게 확대되고 다시 정상 크기로 복귀
   기본 상태는 기존 20% 확대(scale 1.20), 최대 scale 1.34까지 확대 */
.brand-home-pwm img{
  animation:ysLogoPwmGrowReturn 4.8s cubic-bezier(.45,0,.28,1) infinite !important;
  transform-origin:center center !important;
  will-change:transform,filter,opacity;
}
@keyframes ysLogoPwmGrowReturn{
  /* 정상 상태 */
  0%,16%{
    transform:scale(1.20);
    filter:brightness(.96) saturate(.98) drop-shadow(0 0 0 rgba(60,183,215,0));
    opacity:.94;
  }

  /* PWM이 서서히 올라오며 확대 시작 */
  30%{
    transform:scale(1.255);
    filter:brightness(1.04) saturate(1.04) drop-shadow(0 0 3px rgba(60,183,215,.12));
    opacity:.98;
  }

  /* 최대 PWM + 최대 확대 */
  46%{
    transform:scale(1.34);
    filter:brightness(1.14) saturate(1.10) drop-shadow(0 0 7px rgba(60,183,215,.22));
    opacity:1;
  }

  /* 부드럽게 정상으로 돌아옴 */
  64%{
    transform:scale(1.255);
    filter:brightness(1.04) saturate(1.04) drop-shadow(0 0 3px rgba(60,183,215,.12));
    opacity:.98;
  }

  /* 정상 크기에서 잠시 유지 */
  78%,100%{
    transform:scale(1.20);
    filter:brightness(.96) saturate(.98) drop-shadow(0 0 0 rgba(60,183,215,0));
    opacity:.94;
  }
}

/* 베스트글 + 방금 올라온 글에서 보이는 배지만 현재 대비 20% 축소 */
.compact-row.home-feed-row .preview-reaction{
  margin-left:4px !important;
  line-height:0 !important;
  flex:0 0 auto !important;
  overflow:visible !important;
}
.compact-row.home-feed-row .preview-reaction .comment-badge-item{
  min-height:0 !important;
  max-width:none !important;
  display:inline-flex !important;
  align-items:center !important;
  line-height:0 !important;
}
.compact-row.home-feed-row .preview-reaction .ys-comment-badge.compact{
  height:28.16px !important; /* 기존 35.2px × 0.8 */
  width:auto !important;
  max-width:none !important;
}

/* 향후 홈 피드에 게시글 배지가 함께 표시돼도 동일하게 20% 축소 */
.compact-row.home-feed-row .ys-post-badge.size-home{
  height:24.32px !important; /* 기존 30.4px × 0.8 */
  width:auto !important;
  max-width:none !important;
}
.compact-row.home-feed-row .community-post-badge{
  max-height:80% !important;
  width:auto !important;
}

/* 움직임 최소화 설정 사용자에게는 애니메이션 비활성화 */
@media (prefers-reduced-motion:reduce){
  .brand-home-pwm img{
    animation:none !important;
    transform:scale(1.20) !important;
    filter:none !important;
    opacity:1 !important;
  }
}

/* 로고 사각 잔상 제거 후 부드러운 PWM 확대/복귀
   - 회색 사각 잔상을 만들던 drop-shadow/opacity 변화 제거
   - 메인 기본 크기 scale 1.20 유지
   - 6.8초 동안 서서히 scale 1.20 → 1.31 → 1.20 */
.brand-home-pwm{
  overflow:visible !important;
}

.brand-home-pwm img{
  animation:ysLogoCleanSoftPwm 6.8s ease-in-out infinite !important;
  transform-origin:center center !important;
  will-change:transform,filter !important;
  opacity:1 !important;
  box-shadow:none !important;
  background:transparent !important;
}

@keyframes ysLogoCleanSoftPwm{
  0%,100%{
    transform:scale(1.20);
    filter:brightness(1) saturate(1);
  }
  50%{
    transform:scale(1.31);
    filter:brightness(1.045) saturate(1.025);
  }
}

@media (prefers-reduced-motion:reduce){
  .brand-home-pwm img{
    animation:none !important;
    transform:scale(1.20) !important;
    filter:none !important;
    opacity:1 !important;
  }
}

:root{--ys-provided-new-icon:url("../assets/img/bfd0fd8cf4.png")}

/* 메인 베스트글·방금 올라온 글·인기검색어 N */
.new{
  display:inline-block !important;
  width:13px !important;
  height:13px !important;
  min-width:13px !important;
  padding:0 !important;
  margin-left:4px !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--ys-provided-new-icon) center/contain no-repeat !important;
  color:transparent !important;
  font-size:0 !important;
  line-height:0 !important;
  vertical-align:middle !important;
  overflow:hidden !important;
}

/* 카테고리 미리보기의 N */
.preview-new{
  display:inline-block !important;
  width:13px !important;
  height:13px !important;
  min-width:13px !important;
  padding:0 !important;
  margin-left:4px !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--ys-provided-new-icon) center/contain no-repeat !important;
  color:transparent !important;
  font-size:0 !important;
  line-height:0 !important;
  vertical-align:middle !important;
  overflow:hidden !important;
}

/* 게시판 번호 영역의 최신글 N */
.board-num-new{
  display:inline-block !important;
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:var(--ys-provided-new-icon) center/contain no-repeat !important;
  color:transparent !important;
  font-size:0 !important;
  line-height:0 !important;
  vertical-align:middle !important;
  overflow:hidden !important;
}

/* 제공된 8종 3D 카테고리 아이콘 적용 */
.top-category-3d-icon{
  display:block;
  object-fit:contain;
  object-position:center;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}

/* 카테고리 페이지 상단: 기존 청록색 네모 아이콘을 3D 일러스트로 교체 */
.compact-category-brand .hub-mark.hub-mark-3d{
  width:82px !important;
  height:76px !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit !important;
  box-shadow:none !important;
  transform:none !important;
  overflow:visible !important;
}
.compact-category-brand .hub-mark.hub-mark-3d .top-category-3d-icon-hub{
  width:82px;
  height:76px;
}

/* 메인 카테고리 미리보기 제목에도 같은 메뉴별 3D 아이콘 사용 */
.preview-head .top-category-3d-icon-mini{
  width:25px;
  height:25px;
  flex:0 0 25px;
  margin-right:1px;
}

/* 자동 아이콘 복구 로직이 3D img를 건드리지 않도록 시각 규격 고정 */
.hub-mark-3d > i.ti{display:none!important}

@media(max-width:900px){
  .compact-category-brand .hub-mark.hub-mark-3d{
    width:72px !important;
    height:68px !important;
  }
  .compact-category-brand .hub-mark.hub-mark-3d .top-category-3d-icon-hub{
    width:72px;
    height:68px;
  }
}
@media(max-width:620px){
  .compact-category-brand .hub-mark.hub-mark-3d{
    width:58px !important;
    height:56px !important;
  }
  .compact-category-brand .hub-mark.hub-mark-3d .top-category-3d-icon-hub{
    width:58px;
    height:56px;
  }
  .preview-head .top-category-3d-icon-mini{
    width:22px;
    height:22px;
    flex-basis:22px;
  }
}

/* 사용자가 제공한 SCDream7.otf를 배포 시 HTML과 같은 폴더에 두면 적용됩니다. */
@font-face{
  font-family:"SCDream7-Local";
  src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');
  font-weight:700;
  font-style:normal;
  font-display:swap;
}

/* 카테고리 아이콘 아래 '업종템/아이템/정보템/도매템/자리템/중고템/재미템/지역템'
   기존 PC 18px → +5pt(약 6.667px) = 24.667px */
.compact-category-brand .hub-name{
  font-family:"SCDream7-Local","S-Core Dream","Pretendard","Noto Sans KR",Arial,sans-serif !important;
  font-size:24.667px !important;
  font-weight:500 !important;
  line-height:1.18 !important;
  letter-spacing:-0.035em !important;
}

/* 모바일: 기존 16px → +5pt = 약 22.667px */
@media(max-width:620px){
  .compact-category-brand .hub-name{
    font-size:22.667px !important;
  }
}

/* 상단 헤더 디자인 정리(2026-08-10): 회원가입 버튼 줄바꿈 방지 + 헤더 요소 간격 보정 */
.account{flex-wrap:nowrap !important}
.account .join-btn{white-space:nowrap !important;flex-shrink:0 !important}
.account .nav-link{white-space:nowrap !important;flex-shrink:0 !important}
@media(min-width:901px){
  .head-row{grid-template-columns:300px 1fr 250px !important}
}

/* Illustrator/Adobe 자간 100 = 100/1000em = 0.1em */
.compact-category-brand .hub-name{
  letter-spacing:0.1em !important;
  text-align:center !important;
}

/* 카테고리 아이콘을 글자 기준 정중앙으로 고정 */
.compact-category-brand{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
}

.compact-category-brand .hub-mark.hub-mark-3d{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
  overflow:visible !important;
}

.compact-category-brand .hub-mark.hub-mark-3d .top-category-3d-icon-hub{
  display:block !important;
  margin:0 auto !important;
  object-fit:contain !important;
  object-position:50% 50% !important;
  transform:none !important;
}

.ops-public-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:19px;
  padding:2px 7px;
  margin-left:4px;
  border:1px solid #d59a4c;
  border-radius:999px;
  background:#fff8e8;
  color:#a96818;
  font-size:10px;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  vertical-align:middle;
}
.ops-public-badge.micro{
  min-height:16px;
  padding:1px 5px;
  font-size:8px;
}
.board-author .ops-public-badge.micro{
  max-width:29px;
  overflow:hidden;
  font-size:0;
}
.board-author .ops-public-badge.micro::after{
  content:"운영";
  font-size:8px;
}

.ops-community-dock{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:760;
  width:330px;
  padding:12px;
  border:1px solid #b9dce4;
  border-radius:14px;
  background:rgba(255,255,255,.97);
  box-shadow:0 14px 40px rgba(25,78,94,.18);
  backdrop-filter:blur(10px);
}
.ops-community-dock-head{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:8px;
  color:#476a76;
  font-size:11px;
}
.ops-community-dock-head b{
  margin-left:auto;
  max-width:132px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#248fa9;
}
.ops-community-dock-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:6px;
}
.ops-community-dock select{
  min-width:0;
  height:35px;
  border:1px solid #d7e6e9;
  border-radius:8px;
  background:#fff;
  color:#536d77;
  padding:0 8px;
  font-size:10px;
}
.ops-community-dock button{
  height:35px;
  border:1px solid #d7e6e9;
  border-radius:8px;
  background:#f8fbfc;
  color:#4e7682;
  padding:0 8px;
  font-size:9px;
  font-weight:500;
}
.ops-community-dock p{
  margin:7px 0 0;
  color:#8a999e;
  font-size:8.5px;
  line-height:1.45;
}

.ops-admin-notice{
  margin-bottom:12px;
  padding:11px 13px;
  border:1px solid #f0d7ad;
  border-radius:10px;
  background:#fffaf0;
  color:#8b662b;
  font-size:11.5px;
  line-height:1.55;
}
.ops-admin-table{min-width:980px!important}
.ops-admin-input,.ops-admin-select{
  width:100%;
  min-width:120px;
  height:34px;
  border:1px solid #dfe8ea;
  border-radius:7px;
  background:#fff;
  color:#536d76;
  padding:0 8px;
  font-size:11px;
}
.ops-admin-input.memo{min-width:150px}
.ops-admin-table small{color:#98a6aa;font-size:9px}

@media(max-width:720px){
  .ops-community-dock{
    left:10px;
    right:10px;
    bottom:68px;
    width:auto;
  }
  .ops-community-dock-controls{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .ops-community-dock-controls button:last-child{display:none}
}

.home-ops-disclosure{display:flex;align-items:center;gap:7px;margin:-3px 0 12px;padding:9px 12px;border:1px solid #e8dcc3;border-radius:10px;background:#fffaf0;color:#7e6b48;font-size:10.5px;line-height:1.45}.home-ops-disclosure i{color:#c98d34}.home-ops-disclosure b{color:#9b681d}.demo-inline-label{display:inline-flex;align-items:center;margin-left:4px;padding:1px 5px;border:1px solid #e3d1aa;border-radius:999px;background:#fff9eb;color:#9a6f2e;font-size:8px;font-weight:500}.owner-disclosure{border-color:#eadbbd!important;background:#fffaf1!important;color:#7f6d4b!important}.ops-public-badge{font-weight:500!important}@media(max-width:620px){.home-ops-disclosure{font-size:9.5px;margin-top:0}}

/* 카테고리 카드 설명문 삭제 후 높이 축소 */
.category-card{
  min-height:132px !important;
  padding:14px 14px 12px !important;
}

/* 아이콘과 제목 사이를 조금 압축 */
.category-card .circle-icon{
  margin-bottom:8px !important;
}

.category-card strong{
  margin-bottom:0 !important;
}

/* 하단 게시글 수 영역은 유지하되 더 компакт하게 */
.category-card-foot{
  margin-top:8px !important;
  padding-top:7px !important;
}

/* 혹시 기존/캐시된 설명 노드가 남더라도 표시하지 않음 */
.category-card > small{
  display:none !important;
}

@media(max-width:720px){
  .category-card{
    min-height:126px !important;
    padding:13px 12px 11px !important;
  }
  .category-card .circle-icon{
    margin-bottom:7px !important;
  }
  .category-card-foot{
    margin-top:7px !important;
    padding-top:6px !important;
  }
}

@media(max-width:380px){
  .category-card{
    min-height:118px !important;
  }
}

/* PC: 카테고리 카드 한 줄에 6개 */
.category-card-grid{
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:10px !important;
}

/* 중간 화면에서는 4개 */
@media(max-width:1000px){
  .category-card-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

/* 태블릿/작은 화면에서는 2개 */
@media(max-width:720px){
  .category-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* 아주 작은 화면에서는 1개 */
@media(max-width:380px){
  .category-card-grid{
    grid-template-columns:1fr !important;
  }
}

/* 2번 화면 · 베스트글 아이콘 파란색 호버 효과 */
.best-post-section .panel-head > i,
.best-post-section .title .post-attachment-icon,
.best-post-section .title .ys-post-badge,
.best-post-section .title .ys-comment-badge{
  transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease,filter .18s ease !important;
  transform-origin:center;
}

/* '베스트글' 제목 왼쪽 트렌딩 아이콘 */
.best-post-section .panel-head > i:hover{
  color:var(--sky-deep) !important;
  transform:translateY(-1px) scale(1.08);
}

/* 게시글 제목 뒤 사진/파일/동영상 아이콘 */
.best-post-section .title .post-attachment-icon:hover{
  color:var(--sky-deep) !important;
  border-color:var(--sky-deep) !important;
  background:#eaf8fb !important;
  transform:translateY(-1px) scale(1.08);
  box-shadow:0 3px 8px rgba(42,150,189,.16);
}
.best-post-section .title .post-attachment-icon:hover i{
  color:var(--sky-deep) !important;
}

/* 게시글/댓글 SVG 배지 아이콘도 마우스를 올리면 파란 계열로 전환 */
.best-post-section .title .ys-post-badge:hover,
.best-post-section .title .ys-comment-badge:hover{
  transform:translateY(-1px) scale(1.05) !important;
  filter:drop-shadow(0 3px 7px rgba(42,150,189,.18)) !important;
}
.best-post-section .title .ys-post-badge:hover rect,
.best-post-section .title .ys-comment-badge:hover rect{
  fill:#eaf8fb !important;
  stroke:var(--sky-deep) !important;
}
.best-post-section .title .ys-post-badge:hover text,
.best-post-section .title .ys-comment-badge:hover text{
  fill:var(--sky-deep) !important;
}

@media (prefers-reduced-motion:reduce){
  .best-post-section .panel-head > i,
  .best-post-section .title .post-attachment-icon,
  .best-post-section .title .ys-post-badge,
  .best-post-section .title .ys-comment-badge{transition:none !important}
  .best-post-section .panel-head > i:hover,
  .best-post-section .title .post-attachment-icon:hover,
  .best-post-section .title .ys-post-badge:hover,
  .best-post-section .title .ys-comment-badge:hover{transform:none !important}
}

/* 2번 화면 · 업종템/아이템/정보템/도매템/자리템/중고템 등
   게시글 제목 뒤 첨부 아이콘에 베스트글과 동일한 파란색 호버 효과 적용 */
.preview-card .preview-title .post-attachment-icon{
  transition:
    color .18s ease,
    background-color .18s ease,
    border-color .18s ease,
    transform .18s ease,
    box-shadow .18s ease !important;
  transform-origin:center;
  cursor:pointer;
}

.preview-card .preview-title .post-attachment-icon:hover{
  color:var(--sky-deep) !important;
  border-color:var(--sky-deep) !important;
  background:#eaf8fb !important;
  transform:translateY(-1px) scale(1.08);
  box-shadow:0 3px 8px rgba(42,150,189,.16);
}

.preview-card .preview-title .post-attachment-icon:hover i,
.preview-card .preview-title .post-attachment-icon:hover .ti{
  color:var(--sky-deep) !important;
}

/* 키보드 접근 시에도 동일한 강조 효과 */
.preview-card .preview-title .post-attachment-icon:focus-visible{
  color:var(--sky-deep) !important;
  border-color:var(--sky-deep) !important;
  background:#eaf8fb !important;
  outline:2px solid rgba(42,150,189,.22);
  outline-offset:1px;
}

@media (prefers-reduced-motion:reduce){
  .preview-card .preview-title .post-attachment-icon{
    transition:none !important;
  }
  .preview-card .preview-title .post-attachment-icon:hover{
    transform:none !important;
  }
}

/* 제공화면의 업종템·아이템·정보템·도매템·자리템·중고템 게시글 전체:
   베스트글처럼 제목에 마우스를 올리면 제목과 첨부 아이콘이 함께 파란색으로 강조 */
.preview-card .preview-row .preview-title,
.preview-card .preview-row .preview-title .post-title-text{
  transition:color .18s ease !important;
  cursor:pointer;
}

/* 제목에 직접 올렸을 때 */
.preview-card .preview-row .preview-title:hover,
.preview-card .preview-row .preview-title:hover .post-title-text{
  color:var(--sky-deep) !important;
}

/* 게시글 행에 올렸을 때도 베스트글과 같은 느낌으로 제목 강조 */
.preview-card .preview-row:hover .preview-title,
.preview-card .preview-row:hover .preview-title .post-title-text{
  color:var(--sky-deep) !important;
}

/* 제목/행 호버 시 우측 사진·파일·영상 아이콘도 함께 파란색 */
.preview-card .preview-row:hover .post-attachment-icon,
.preview-card .preview-row .preview-title:hover .post-attachment-icon{
  color:var(--sky-deep) !important;
  border-color:var(--sky-deep) !important;
  background:#eaf8fb !important;
  transform:translateY(-1px) scale(1.08);
  box-shadow:0 3px 8px rgba(42,150,189,.16);
}

.preview-card .preview-row:hover .post-attachment-icon i,
.preview-card .preview-row:hover .post-attachment-icon .ti,
.preview-card .preview-row .preview-title:hover .post-attachment-icon i,
.preview-card .preview-row .preview-title:hover .post-attachment-icon .ti{
  color:var(--sky-deep) !important;
}

@media (prefers-reduced-motion:reduce){
  .preview-card .preview-row .preview-title,
  .preview-card .preview-row .preview-title .post-title-text,
  .preview-card .preview-row .post-attachment-icon{
    transition:none !important;
  }
  .preview-card .preview-row:hover .post-attachment-icon,
  .preview-card .preview-row .preview-title:hover .post-attachment-icon{
    transform:none !important;
  }
}

/* ===== 쇼핑템 · 자영업자 B2B 쇼핑몰 ===== */
.shop-page{--shop:#228ca8;--shop-deep:#176c84;--shop-soft:#eef9fb;--shop-warm:#fff7eb;background:linear-gradient(180deg,#fff 0,#fbfefe 100%)}
.shop-hero{position:relative;overflow:hidden;border:1px solid #d8eaee;border-radius:22px;padding:28px 30px;background:linear-gradient(128deg,#edfafd 0%,#f7fbfa 58%,#fff7eb 100%);margin-bottom:18px}
.shop-hero:after{content:"";position:absolute;width:230px;height:230px;right:-70px;top:-90px;border-radius:50%;background:rgba(55,183,214,.11)}
.shop-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;align-items:center;position:relative;z-index:1}
.shop-kicker{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #cde6ec;border-radius:999px;background:rgba(255,255,255,.78);font-size:12px;font-weight:500;color:#258ba4}
.shop-hero h1{margin:12px 0 7px;font-size:29px;line-height:1.3;letter-spacing:-.04em;color:#345c68}.shop-hero h1 b{color:var(--shop)}
.shop-hero p{margin:0;color:#6e8188;font-size:14px;line-height:1.72;max-width:660px}
.shop-search{display:flex;align-items:center;gap:9px;max-width:610px;height:48px;margin-top:17px;border:1px solid #cfe1e5;border-radius:13px;background:#fff;padding:0 12px;box-shadow:0 7px 24px rgba(27,101,123,.06)}
.shop-search i{font-size:18px;color:#56a7ba}.shop-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:14px;color:#43565f}.shop-search button{border:0;border-radius:9px;background:var(--shop);color:#fff;font-size:12.5px;font-weight:500;padding:9px 13px}
.shop-benefits{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.shop-benefit{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:9px;background:rgba(255,255,255,.74);color:#657b83;font-size:11.5px}.shop-benefit i{color:#2b9bad}
.shop-hero-art{height:180px;border:1px solid rgba(255,255,255,.9);border-radius:24px;background:rgba(255,255,255,.62);display:grid;place-items:center;position:relative;box-shadow:0 12px 32px rgba(33,110,128,.08)}
.shop-hero-art>i{font-size:72px;color:#36a9c4}.shop-float{position:absolute;border-radius:12px;background:#fff;border:1px solid #dcebee;box-shadow:0 7px 18px rgba(30,91,106,.08);padding:7px 9px;font-size:10.5px;color:#58737c;font-weight:500}.shop-float.one{left:13px;top:18px}.shop-float.two{right:12px;bottom:18px}.shop-float.three{left:18px;bottom:21px;color:#b6762f;background:#fff9ef}
.shop-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0 12px;flex-wrap:wrap}.shop-section-title{font-size:19px;font-weight:500;color:#405f69}.shop-section-title small{display:block;margin-top:3px;color:#8b9aa0;font-size:12px;font-weight:500}.shop-cart-btn{border:1px solid #cce3e8;border-radius:11px;background:#fff;color:#397280;min-height:42px;padding:8px 12px;font-weight:500;font-size:12.5px;display:inline-flex;gap:7px;align-items:center}.shop-cart-count{min-width:20px;height:20px;border-radius:999px;background:#e95f56;color:#fff;display:grid;place-items:center;font-size:10px}
.shop-categories{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;margin-bottom:20px}.shop-cat{border:1px solid #e0eaec;border-radius:14px;background:#fff;min-height:103px;padding:13px 7px 10px;text-align:center;color:#5d737b;transition:.18s}.shop-cat:hover,.shop-cat.active{transform:translateY(-2px);border-color:#61b9cc;background:#f2fbfd;color:#218ba5;box-shadow:0 8px 19px rgba(28,111,130,.07)}.shop-cat i{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 7px;border-radius:13px;background:#edf8fa;color:#2799b3;font-size:22px}.shop-cat span{display:block;font-size:11.8px;font-weight:500;line-height:1.35}
.shop-promo-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:12px;margin-bottom:20px}.shop-promo{border-radius:17px;min-height:104px;padding:17px 19px;position:relative;overflow:hidden}.shop-promo.main{background:linear-gradient(125deg,#226f84,#2f9fb6);color:#fff}.shop-promo.sub{background:#fff7e9;border:1px solid #f1ddbd;color:#755d43}.shop-promo strong{display:block;font-size:16px;margin-bottom:4px}.shop-promo p{margin:0;font-size:12.5px;line-height:1.65;opacity:.9}.shop-promo .promo-chip{display:inline-flex;margin-top:9px;background:rgba(255,255,255,.16);border-radius:999px;padding:5px 9px;font-size:10.5px;font-weight:500}.shop-promo.sub .promo-chip{background:#fff;color:#b47735;border:1px solid #efd8b9}
.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:18px}.shop-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.shop-product{border:1px solid #e0e8ea;border-radius:16px;background:#fff;overflow:hidden;transition:.18s;min-width:0}.shop-product:hover{transform:translateY(-2px);border-color:#b8dce4;box-shadow:0 10px 28px rgba(37,101,117,.08)}
.shop-product-img{height:154px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#f3fafb,#f7f8f8);color:#45a8bd}.shop-product-img>i{font-size:53px}.shop-product-badge{position:absolute;left:10px;top:10px;border-radius:7px;padding:4px 7px;background:#218da8;color:#fff;font-size:9.5px;font-weight:500}.shop-product-badge.warm{background:#e69444}.shop-product-badge.green{background:#369a80}
.shop-product-body{padding:13px}.shop-brand{font-size:10.5px;color:#9aa6aa}.shop-product-title{font-size:13px;font-weight:500;color:#536971;line-height:1.48;min-height:39px;margin:4px 0 9px}.shop-price-row{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap}.shop-price{font-size:18px;font-weight:500;color:#284f5d}.shop-unit{font-size:10px;color:#9ba7ab;margin-bottom:3px}.shop-origin-price{font-size:10.5px;color:#adb7ba;text-decoration:line-through;margin-bottom:3px}.shop-product-meta{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0 11px}.shop-meta-chip{font-size:9.5px;color:#617a83;background:#f1f6f7;border-radius:6px;padding:4px 6px}.shop-meta-chip.hot{color:#b66e23;background:#fff4e4}.shop-add{width:100%;height:38px;border:1px solid #cae2e7;border-radius:9px;background:#f8fcfd;color:#258ca6;font-size:11.5px;font-weight:500}.shop-add:hover{background:#258ca6;color:#fff;border-color:#258ca6}
.shop-side{display:flex;flex-direction:column;gap:12px}.shop-side-card{border:1px solid #e0e8ea;border-radius:15px;background:#fff;padding:15px}.shop-side-card h3{margin:0 0 10px;font-size:14px;color:#4b6771}.shop-side-card p,.shop-side-card li{font-size:11.8px;line-height:1.72;color:#718187}.shop-side-card ul{margin:0;padding-left:17px}.shop-side-card.emphasis{background:#f0fafb;border-color:#cfe8ed}.shop-side-stat{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.shop-side-stat div{border-radius:10px;background:#fff;padding:9px;text-align:center}.shop-side-stat b{display:block;font-size:15px;color:#2d7789}.shop-side-stat span{font-size:9.5px;color:#8e9ca1}.shop-empty{grid-column:1/-1;border:1px dashed #d7e4e7;border-radius:14px;padding:34px;text-align:center;color:#829399;background:#fbfdfd}.shop-demo-note{font-size:10.5px;color:#94a2a6;margin:10px 0 0}
.shop-cart-list{display:flex;flex-direction:column;gap:9px;margin-top:10px}.shop-cart-item{display:flex;align-items:center;gap:10px;border:1px solid #e4ebed;border-radius:10px;padding:10px}.shop-cart-item i{font-size:21px;color:#3b9db3}.shop-cart-item div{min-width:0;flex:1}.shop-cart-item strong{display:block;font-size:12px;color:#536a73}.shop-cart-item small{display:block;font-size:10.5px;color:#96a3a7;margin-top:2px}.shop-cart-total{display:flex;justify-content:space-between;border-top:1px solid #e5ecee;margin-top:13px;padding-top:13px;font-weight:500;color:#3b606c}
@media(max-width:960px){.shop-categories{grid-template-columns:repeat(4,1fr)}.shop-layout{grid-template-columns:1fr}.shop-side{display:grid;grid-template-columns:1fr 1fr}.shop-products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.shop-hero{padding:21px 17px}.shop-hero-grid{grid-template-columns:1fr}.shop-hero-art{display:none}.shop-hero h1{font-size:23px}.shop-products{grid-template-columns:repeat(2,1fr)}.shop-promo-grid{grid-template-columns:1fr}.shop-side{grid-template-columns:1fr}}
@media(max-width:430px){.shop-categories{grid-template-columns:repeat(2,1fr)}.shop-products{grid-template-columns:1fr}.shop-product-img{height:140px}.shop-search{height:auto;padding:8px;flex-wrap:wrap}.shop-search input{min-height:36px}.shop-search button{width:100%}}

.admin-ad-expiry-bell{position:relative}
.admin-ad-expiry-bell .admin-expiry-count{
  position:absolute;right:-6px;top:-7px;min-width:18px;height:18px;padding:0 4px;
  border-radius:999px;background:#e85d52;color:#fff;border:2px solid #fff;
  display:grid;place-items:center;font-size:9px;font-weight:500;line-height:1
}
.ad-expiry-panel{border:1px solid #f0d4ac;background:linear-gradient(135deg,#fff8ec,#fffdf9);border-radius:12px;padding:14px 15px;margin-bottom:14px}
.ad-expiry-panel.safe{border-color:#d5e9e2;background:#f6fcfa}
.ad-expiry-head{display:flex;align-items:flex-start;gap:10px}
.ad-expiry-head .ico{width:34px;height:34px;border-radius:10px;background:#fff0d8;color:#c77a25;display:grid;place-items:center;flex:none;font-size:17px}
.ad-expiry-panel.safe .ad-expiry-head .ico{background:#e7f6f0;color:#348a72}
.ad-expiry-head strong{display:block;color:#5d6e74;font-size:13px}
.ad-expiry-head p{margin:3px 0 0;color:#829197;font-size:11px;line-height:1.6}
.ad-expiry-list{display:flex;flex-direction:column;gap:7px;margin-top:11px}
.ad-expiry-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(150px,.8fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid #f0dfc7;border-radius:9px;background:rgba(255,255,255,.86)}
.ad-expiry-row strong{display:block;color:#536d77;font-size:12px}
.ad-expiry-row small{display:block;color:#8c9a9f;font-size:10.5px;margin-top:2px}
.ad-dday{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;background:#fff0df;color:#b66b1d;font-size:10.5px;font-weight:500;white-space:nowrap}
.ad-dday.today{background:#fff0ef;color:#c55750}
.ad-dday.expired{background:#eef1f2;color:#7e8d92}
.ad-dday.safe{background:#eaf7f2;color:#318c74}
.ad-period-cell{line-height:1.55}
.ad-period-cell small{display:block;margin-top:4px;color:#8c9ca1}
.ad-approval-box{padding:12px 13px;border:1px solid #dfeaec;border-radius:10px;background:#f8fbfc;margin:0 0 13px}
.ad-approval-box strong{display:block;color:#496b76;font-size:13px}
.ad-approval-box span{display:block;margin-top:3px;color:#85969c;font-size:11px}
.ad-period-presets{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.ad-period-presets button{border:1px solid #dbe8ea;background:#fff;color:#5f7b84;border-radius:999px;padding:6px 9px;font-size:10.5px}
.ad-period-presets button:hover{border-color:#69bdd0;color:#278da6;background:#f2fbfd}
.ad-notify-rule{display:flex;gap:8px;align-items:flex-start;padding:10px 11px;border-radius:9px;background:#fff7e9;color:#7c684e;font-size:11px;line-height:1.6;margin-top:5px}
.ad-notify-rule i{color:#d88937;margin-top:2px}
@media(max-width:720px){
 .ad-expiry-row{grid-template-columns:1fr auto}
 .ad-expiry-row .period{grid-column:1/-1}
}

/* 광고 배너 세로크기·연출 효과 */
.ad-effect-editor{
  margin-top:14px;padding:14px;border:1px solid #dfeaec;border-radius:12px;
  background:linear-gradient(145deg,#f9fcfd,#fff)
}
.ad-effect-editor h3{margin:0 0 4px;font-size:14px;color:#506f7a}
.ad-effect-editor>p{margin:0 0 13px;font-size:11.5px;color:#8b9ba0;line-height:1.6}
.ad-effect-editor .effect-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.ad-effect-editor .effect-help{font-size:10.5px;color:#91a0a5;line-height:1.55;margin-top:4px}
.ad-effect-editor .effect-check{
  display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid #e3ecee;
  border-radius:9px;background:#fff;font-size:11.5px;color:#617b84
}
.ad-effect-preview-note{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:10.5px;color:#81949b}
.modal:has(.ad-effect-editor){width:min(720px,100%)}
.ad-upload-preview.ad-effect-preview{position:relative;min-height:90px;overflow:hidden;transition:.25s ease}
.ad-upload-preview.ad-effect-preview img{width:100%;height:100%;max-width:none;max-height:none;display:block;transition:.35s ease}

/* 속도 */
.ad-presentation{--ad-motion-duration:4.8s;--ad-fit:cover}
.ad-speed-fast{--ad-motion-duration:2.8s}
.ad-speed-normal{--ad-motion-duration:4.8s}
.ad-speed-slow{--ad-motion-duration:7s}

/* 배너 본체 / 이미지 */
.ad-presentation .ad-creative-layer img{object-fit:var(--ad-fit,cover)}
.ad-effect-preview img{object-fit:var(--ad-fit,cover)}

/* 기본 애니메이션 */
@keyframes ysAdFade{0%,100%{opacity:1}50%{opacity:.82}}
@keyframes ysAdZoom{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@keyframes ysAdSlideUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-3.5%)}}
@keyframes ysAdSlideLeft{0%,100%{transform:translateX(0)}50%{transform:translateX(-2.5%)}}
@keyframes ysAdFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes ysAdPulse{0%,100%{transform:scale(1);filter:saturate(1)}50%{transform:scale(1.018);filter:saturate(1.13)}}
@keyframes ysAdShimmer{0%{transform:translateX(-150%) skewX(-18deg)}100%{transform:translateX(260%) skewX(-18deg)}}

.ad-effect-fade .ad-creative-layer img,
.ad-effect-preview.ad-effect-fade img{animation:ysAdFade var(--ad-motion-duration) ease-in-out infinite}
.ad-effect-zoom .ad-creative-layer img,
.ad-effect-preview.ad-effect-zoom img{animation:ysAdZoom var(--ad-motion-duration) ease-in-out infinite}
.ad-effect-slide-up .ad-creative-layer img,
.ad-effect-preview.ad-effect-slide-up img{animation:ysAdSlideUp var(--ad-motion-duration) ease-in-out infinite}
.ad-effect-slide-left .ad-creative-layer img,
.ad-effect-preview.ad-effect-slide-left img{animation:ysAdSlideLeft var(--ad-motion-duration) ease-in-out infinite}
.ad-effect-float .ad-creative-layer img,
.ad-effect-preview.ad-effect-float img{animation:ysAdFloat var(--ad-motion-duration) ease-in-out infinite}
.ad-effect-pulse .ad-creative-layer img,
.ad-effect-preview.ad-effect-pulse img{animation:ysAdPulse var(--ad-motion-duration) ease-in-out infinite}

.ad-effect-shimmer .ad-creative-layer:after,
.ad-effect-preview.ad-effect-shimmer:after{
  content:"";position:absolute;inset:-20% auto -20% -42%;width:30%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),rgba(255,255,255,.62),rgba(255,255,255,.16),transparent);
  transform:translateX(-150%) skewX(-18deg);pointer-events:none;
  animation:ysAdShimmer var(--ad-motion-duration) ease-in-out infinite
}
.ad-effect-once.ad-effect-fade .ad-creative-layer img,
.ad-effect-once.ad-effect-zoom .ad-creative-layer img,
.ad-effect-once.ad-effect-slide-up .ad-creative-layer img,
.ad-effect-once.ad-effect-slide-left .ad-creative-layer img,
.ad-effect-once.ad-effect-float .ad-creative-layer img,
.ad-effect-once.ad-effect-pulse .ad-creative-layer img,
.ad-effect-preview.ad-effect-once img{animation-iteration-count:1!important}
.ad-effect-once.ad-effect-shimmer .ad-creative-layer:after,
.ad-effect-preview.ad-effect-once.ad-effect-shimmer:after{animation-iteration-count:1!important}

/* 마우스 오버 효과 */
.ad-hover-zoom{transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}
.ad-hover-zoom:hover{transform:scale(1.012)}
.ad-hover-lift{transition:transform .25s ease,box-shadow .25s ease}
.ad-hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(27,101,123,.14)}
.ad-hover-bright{transition:filter .25s ease}
.ad-hover-bright:hover{filter:brightness(1.07) saturate(1.05)}
.ad-hover-soft{transition:filter .25s ease}
.ad-hover-soft:hover{filter:contrast(1.04) saturate(1.08)}

/* 관리자 바에 현재 설정 표시 */
.admin-banner-presentation-chip{
  display:inline-flex;align-items:center;gap:4px;margin-left:7px;padding:3px 7px;
  border:1px solid #cde5ea;border-radius:999px;background:#f5fbfc;
  color:#4c8b9a;font-size:10px;font-weight:500;vertical-align:middle
}
.admin-ad-slot-card .slot-style{display:block;font-size:10px;color:#5f8792;margin-top:3px}

@media(prefers-reduced-motion:reduce){
  .ad-presentation .ad-creative-layer img,
  .ad-effect-preview img,
  .ad-effect-shimmer .ad-creative-layer:after,
  .ad-effect-preview.ad-effect-shimmer:after{animation:none!important}
  .ad-hover-zoom:hover,.ad-hover-lift:hover{transform:none!important}
}
@media(max-width:620px){
  .ad-effect-editor .effect-grid{grid-template-columns:1fr}
}

.inline-moderation-btn{
  flex:0 0 auto;border:1px solid #efc8c4;background:#fff8f7;color:#bd5c54;
  border-radius:6px;min-height:24px;padding:3px 6px;margin-left:5px;
  display:inline-flex;align-items:center;justify-content:center;gap:3px;
  font-size:9.5px;font-weight:500;line-height:1;vertical-align:middle;
  cursor:pointer;white-space:nowrap;position:relative;z-index:3
}
.inline-moderation-btn:hover{
  background:#fff0ee;border-color:#de8c84;color:#a9453e
}
.inline-moderation-btn i{font-size:12px}
.detail-title .inline-moderation-btn{
  min-height:28px;padding:4px 8px;font-size:10.5px;transform:translateY(-2px)
}
.comment-head .inline-moderation-btn{
  margin-left:2px;min-height:22px;padding:2px 5px;font-size:9px
}
.moderation-scope-chip{
  display:inline-flex;align-items:center;gap:4px;border:1px solid #cde7df;
  background:#f4fbf8;color:#33866f;border-radius:999px;padding:6px 9px;
  font-size:10px;font-weight:500;white-space:nowrap
}
.moderation-scope-chip.admin{border-color:#cbdfe7;background:#f3f9fb;color:#3c7c91}
.moderation-status-chip{
  display:inline-flex;align-items:center;gap:4px;border-radius:999px;
  padding:4px 8px;font-size:9.5px;font-weight:500;margin-left:4px
}
.moderation-status-chip.hidden{background:#fff1e4;color:#b56c25}
.moderation-status-chip.deleted{background:#fff0ef;color:#b95750}
.moderation-status-chip.visible{background:#eaf7f2;color:#348871}
.board-row.moderated-hidden{background:#fffaf2}
.board-row.moderated-deleted{background:#fff5f4;opacity:.78}
.comment.moderated-hidden{background:#fffaf1;border-left:3px solid #efb56c}
.comment.moderated-deleted{background:#fff4f3;border-left:3px solid #df8179;opacity:.78}
.moderated-comment-note{
  display:inline-flex;align-items:center;gap:5px;padding:5px 8px;margin-bottom:6px;
  border-radius:7px;background:#fff1df;color:#aa6b2e;font-size:10px;font-weight:500
}
.moderated-comment-note.deleted{background:#ffedeb;color:#ad554e}
.moderation-modal-summary{
  border:1px solid #dfe9eb;border-radius:10px;background:#f8fbfc;
  padding:11px 12px;margin-bottom:13px
}
.moderation-modal-summary strong{display:block;color:#4d6d78;font-size:13px}
.moderation-modal-summary span{display:block;color:#87989e;font-size:11px;margin-top:3px;line-height:1.55}
.moderation-current{
  display:flex;align-items:center;gap:7px;margin:7px 0 13px;font-size:11px;color:#70848b
}
.moderation-action-guide{
  padding:9px 10px;border-radius:8px;background:#fff8ec;color:#806b4f;
  font-size:10.5px;line-height:1.6;margin-top:7px
}
.moderation-modal-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.moderation-modal-actions .admin-btn{min-height:36px}
.moderation-reason-preview{
  margin-top:4px;padding:7px 9px;border-left:3px solid #e7c08d;
  background:#fffbf5;color:#8a765c;font-size:10px;line-height:1.55
}
@media(max-width:620px){
  .board-title-cell .inline-moderation-btn{padding:3px 5px}
  .inline-moderation-btn .moderation-btn-label{display:none}
  .moderation-scope-chip{font-size:9.5px;padding:5px 7px}
}

/* 헤더 로고와 카피 간격: 기존보다 50% 더 붙여 보이도록 조정 */
.site-head .brand{gap:0!important}
.site-head .brand img{margin-right:-18px!important}
.site-head .brand-copy{margin-left:0!important}
@media(max-width:900px){
  .site-head .brand img{margin-right:0!important}
}

/* 쇼핑템 카드: 운영 배포용 컴팩트 레이아웃 */
.shop-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px!important}
.shop-product{border:1px solid #dbe6e9!important;border-radius:14px!important;overflow:hidden!important}
.shop-product:hover{transform:translateY(-2px);border-color:#b7d6de;box-shadow:0 8px 22px rgba(37,101,117,.07)}
.shop-product-hit{display:block;color:inherit;text-decoration:none}
.shop-product-img{height:128px!important}
.shop-product-img>i{font-size:46px!important}
.shop-product-badge{left:9px!important;top:9px!important;padding:4px 7px!important;font-size:9px!important}
.shop-product-body{padding:11px!important}
.shop-brand{font-size:10px!important;color:#97a5a9!important}
.shop-product-title{font-size:12.5px!important;line-height:1.42!important;min-height:35px!important;margin:3px 0 8px!important}
.shop-price{font-size:17px!important}
.shop-unit{font-size:9.5px!important}
.shop-origin-price{font-size:10px!important}
.shop-product-meta{gap:5px!important;margin:8px 0 0!important}
.shop-meta-chip{font-size:9px!important;padding:4px 6px!important}
.shop-card-actions{display:grid;grid-template-columns:92px 1fr;gap:7px;padding:0 11px 11px}
.shop-detail-btn,.shop-add{
  height:36px;border-radius:9px;font-size:11.5px;font-weight:500
}
.shop-detail-btn{
  border:1px solid #d7e4e8;background:#fff;color:#627c86
}
.shop-detail-btn:hover{border-color:#9fc6d0;color:#238ca7}
.shop-add{width:100%!important}
.shop-demo-note{display:none!important}

/* 쇼핑 상세페이지 */
.shop-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}
.shop-detail-main,.shop-detail-side-card{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}
.shop-detail-main{padding:18px}
.shop-detail-hero{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}
.shop-detail-visual{min-height:260px;border-radius:16px;background:linear-gradient(145deg,#f3fafb,#f7f8f8);display:grid;place-items:center;color:#45a8bd;position:relative}
.shop-detail-visual i{font-size:108px}
.shop-detail-badge{position:absolute;left:14px;top:14px;border-radius:8px;padding:6px 9px;background:#218da8;color:#fff;font-size:11px;font-weight:500}
.shop-detail-badge.warm{background:#e69444}.shop-detail-badge.green{background:#369a80}
.shop-detail-brand{font-size:12px;color:#8fa0a5}
.shop-detail-title{font-size:28px;line-height:1.35;color:#2e4953;margin:6px 0 10px}
.shop-detail-price-row{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;margin:10px 0 12px}
.shop-detail-price{font-size:31px;font-weight:500;color:#284f5d}
.shop-detail-unit{font-size:12px;color:#93a2a8;margin-bottom:5px}
.shop-detail-origin{font-size:13px;color:#acb6ba;text-decoration:line-through;margin-bottom:5px}
.shop-detail-desc{font-size:14px;color:#60767f;line-height:1.75;margin:12px 0 0}
.shop-detail-chip-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.shop-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.shop-detail-info{padding:13px 14px;border:1px solid #e7eef0;border-radius:12px;background:#fbfcfc}
.shop-detail-info b{display:block;font-size:12px;color:#5c7480;margin-bottom:5px}
.shop-detail-info span{font-size:13px;color:#3f5862;line-height:1.6}
.shop-detail-section{margin-top:18px;padding-top:18px;border-top:1px solid #edf2f3}
.shop-detail-section h3{margin:0 0 10px;font-size:15px;color:#36525c}
.shop-detail-section p,.shop-detail-section li{font-size:13px;color:#627983;line-height:1.75}
.shop-detail-section ul{margin:0;padding-left:18px}
.shop-detail-side-card{padding:16px}
.shop-detail-side-card.sticky{position:sticky;top:calc(var(--header-h,120px) + 18px)}
.shop-detail-buy-row{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
.shop-detail-buy-row b{font-size:25px;color:#284f5d}
.shop-detail-note{font-size:12px;color:#87979c;line-height:1.65;margin-top:8px}
.shop-detail-cta{display:grid;gap:8px;margin-top:14px}
.shop-detail-cta .primary-btn,.shop-detail-cta .secondary-btn{width:100%}
.shop-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.shop-related-card{display:block;padding:12px;border:1px solid #e5edf0;border-radius:12px;background:#fff;color:inherit;text-decoration:none}
.shop-related-card:hover{border-color:#b8dce4;box-shadow:0 8px 20px rgba(37,101,117,.06)}
.shop-related-card strong{display:block;font-size:12.5px;line-height:1.5;color:#48616b}
.shop-related-card span{display:block;margin-top:6px;font-size:11px;color:#8fa0a5}
.shop-related-card b{display:block;margin-top:8px;font-size:15px;color:#284f5d}

@media(max-width:960px){
  .shop-detail-shell{grid-template-columns:1fr}
  .shop-detail-side-card.sticky{position:static}
}
@media(max-width:720px){
  .shop-products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .shop-detail-hero{grid-template-columns:1fr}
  .shop-detail-visual{min-height:220px}
  .shop-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .shop-card-actions{grid-template-columns:1fr}
  .shop-products{grid-template-columns:1fr!important}
  .shop-related-grid{grid-template-columns:1fr}
}

/* 쇼핑템 이미지 영역의 글자(배지) 제거 */
.shop-product-badge,
.shop-detail-badge{
  display:none !important;
}

.shop-hero-art{overflow:hidden}
.shop-hero-art>i{display:none!important}
.shop-hero-art-image{
  width:88%;
  height:82%;
  object-fit:contain;
  display:block;
  position:relative;
  z-index:1;
  image-rendering:auto;
}
.shop-hero-art .shop-float{z-index:2}

/* 쇼핑템 우측 일러스트를 재미템 카테고리 우측 캐릭터처럼 배치 */
.shop-hero-grid{grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:center}
.shop-hero-art{
  width:300px;
  height:190px;
  justify-self:end;
  overflow:visible;
  display:grid;
  place-items:center end;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.shop-hero-art>i,.shop-hero-art .shop-float{display:none!important}
.shop-hero-art-image-only{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:right center;
  display:block;
  position:relative;
  z-index:1;
  image-rendering:auto;
  filter:none;
}
@media(max-width:960px){.shop-hero-grid{grid-template-columns:minmax(0,1fr) 260px}.shop-hero-art{width:260px;height:175px}}
@media(max-width:720px){.shop-hero-grid{grid-template-columns:1fr}.shop-hero-art{display:none}}

.ys-notify-bell i{
  display:none !important;
}
.ys-notify-bell .ys-bell-svg{
  width:36px;
  height:36px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
  /* 기존 느낌 대비 선두께 약 30% 축소 */
  stroke-width:1.4;
}

#modalBox.admin-ad-editor-modal{
  width:min(780px,calc(100vw - 32px))!important;
  max-height:calc(100vh - 30px)!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
#modalBox.admin-ad-editor-modal>h2{
  flex:0 0 auto;
  margin:0!important;
  padding:20px 22px 14px;
  border-bottom:1px solid #e7eef0;
  background:#fff;
}
#modalBox.admin-ad-editor-modal .modal-scroll-body{
  min-height:0;
  overflow-y:scroll;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:18px 14px 22px 22px;
}
#modalBox.admin-ad-editor-modal .modal-scroll-body::-webkit-scrollbar{width:11px}
#modalBox.admin-ad-editor-modal .modal-scroll-body::-webkit-scrollbar-track{background:#f1f5f6;border-radius:10px}
#modalBox.admin-ad-editor-modal .modal-scroll-body::-webkit-scrollbar-thumb{background:#b4c6cb;border:3px solid #f1f5f6;border-radius:10px}
#modalBox.admin-ad-editor-modal .modal-scroll-body::-webkit-scrollbar-thumb:hover{background:#8faab2}
#modalBox.admin-ad-editor-modal .modal-actions{
  flex:0 0 auto;
  margin:0!important;
  padding:13px 22px 16px;
  border-top:1px solid #dfe8ea;
  background:#fff;
  box-shadow:0 -8px 22px rgba(41,73,83,.07);
  position:relative;
  z-index:2;
}
#modalBox.admin-ad-editor-modal .modal-actions .primary-btn{
  min-width:126px;
  min-height:40px;
  font-weight:500;
}
.ad-approved-owner-panel{
  margin:0 0 16px;
  padding:13px 14px;
  border:1px solid #d7e6e9;
  border-radius:11px;
  background:#f7fbfc;
}
.ad-approved-owner-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.ad-approved-owner-head strong{font-size:12px;color:#456873}
.ad-approved-owner-head span{font-size:9.5px;color:#8b9da3}
.ad-approved-owner-panel select{margin-bottom:9px}
.ad-approved-owner-info{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
.ad-approved-owner-info>span{
  padding:8px 9px;
  border:1px solid #e1ebed;
  border-radius:8px;
  background:#fff;
  min-width:0;
}
.ad-approved-owner-info small{display:block;font-size:8.5px;color:#97a6ab;margin-bottom:2px}
.ad-approved-owner-info b{display:block;font-size:10.5px;color:#4e6872;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ad-approved-owner-empty{font-size:10.5px;color:#82969d;padding:6px 1px}
.ad-approved-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#edf8f2;color:#3c8669;font-size:9px;font-weight:500}
@media(max-width:680px){
  #modalBox.admin-ad-editor-modal{width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important}
  #modalBox.admin-ad-editor-modal .modal-scroll-body{padding:14px 8px 18px 14px}
  #modalBox.admin-ad-editor-modal .modal-actions{padding:11px 14px 13px}
  .ad-approved-owner-info{grid-template-columns:1fr 1fr}
}

/* 메인 로고 PWM 효과 - 부드럽게 서서히 확대 후 자연스럽게 원래 크기로 복귀 */
.brand-home-pwm{
  overflow:visible !important;
}
.brand-home-pwm img{
  animation:ysLogoPwmSmoothV4 5.6s cubic-bezier(.42,0,.58,1) infinite !important;
  transform-origin:center center !important;
  will-change:transform,filter !important;
  opacity:1 !important;
  background:transparent !important;
  box-shadow:none !important;
}
@keyframes ysLogoPwmSmoothV4{
  0%{
    transform:scale(1.20);
    filter:brightness(1) saturate(1);
  }
  50%{
    transform:scale(1.34);
    filter:brightness(1.04) saturate(1.03);
  }
  100%{
    transform:scale(1.20);
    filter:brightness(1) saturate(1);
  }
}
@media (prefers-reduced-motion:reduce){
  .brand-home-pwm img{
    animation:ysLogoPwmSmoothV4 5.6s cubic-bezier(.42,0,.58,1) infinite !important;
  }
}

/* 게시글·댓글 작성자: 부여 캐릭터 + 클릭 가능한 닉네임 */
.community-author-inline{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-width:0;
  vertical-align:middle;
}
.community-author-avatar{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:50%;
  overflow:hidden;
  background:#eef8fa;
}
.community-author-avatar .profile-avatar,
.community-author-avatar .avatar-fallback{
  display:block!important;
}
.community-author-avatar svg,
.profile-avatar svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.community-author-name{
  border:0;
  background:transparent;
  color:#48656f;
  font:inherit;
  font-weight:500;
  padding:0;
  margin:0;
  cursor:pointer;
  text-align:left;
  line-height:1.35;
}
.community-author-name:hover,
.community-author-name:focus-visible{
  color:var(--sky-deep);
  text-decoration:underline;
  text-underline-offset:3px;
  outline:none;
}
.detail-author-line{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.comment-avatar.community-avatar-shell{
  padding:0!important;
  overflow:hidden;
  background:#eef8fa!important;
}
.comment-avatar.community-avatar-shell svg{
  width:100%;
  height:100%;
  display:block;
}
.comment-head .community-author-name{
  font-size:inherit;
}
.comment-reply-author{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-bottom:2px;
}
.comment-reply-author .community-author-name{
  font-size:11px;
}
.comment-reply-author .community-author-avatar{
  width:20px!important;
  height:20px!important;
}

/* 공개 유저 프로필 */
.community-profile-page{
  --profile-accent:#2a96bd;
}
.community-profile-hero{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:22px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#f6fbfc);
  box-shadow:var(--shadow);
}
.community-profile-character{
  display:flex;
  justify-content:center;
  align-items:center;
}
.community-profile-main{
  min-width:0;
}
.community-profile-name-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.community-profile-name{
  margin:0;
  color:#365863;
  font-size:25px;
  line-height:1.3;
}
.community-profile-role{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:#eaf6f8;
  color:#32869c;
  font-size:10.5px;
  font-weight:500;
}
.community-profile-summary{
  margin-top:7px;
  color:#71858d;
  font-size:12.5px;
  line-height:1.7;
}
.community-profile-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:15px;
}
.community-profile-stat{
  padding:10px 8px;
  border:1px solid #e3edef;
  border-radius:10px;
  background:#fff;
  text-align:center;
}
.community-profile-stat b{
  display:block;
  color:#426875;
  font-size:17px;
}
.community-profile-stat span{
  display:block;
  margin-top:2px;
  color:#91a0a5;
  font-size:9.5px;
}
.community-profile-info-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:14px;
}
.community-profile-info{
  padding:10px 11px;
  border:1px solid #e6edef;
  border-radius:10px;
  background:#fbfdfd;
}
.community-profile-info small{
  display:block;
  color:#98a6aa;
  font-size:9px;
  margin-bottom:2px;
}
.community-profile-info b{
  display:block;
  color:#526d77;
  font-size:11.5px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.community-profile-layout{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:15px;
  margin-top:15px;
}
.community-history-card{
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.community-history-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:14px 16px;
  border-bottom:1px solid #edf2f3;
}
.community-history-head h3{
  margin:0;
  font-size:13px;
  color:#526f79;
}
.community-history-head span{
  font-size:10px;
  color:#97a5a9;
}
.community-history-list{
  max-height:560px;
  overflow:auto;
}
.community-history-row{
  display:block;
  width:100%;
  padding:12px 15px;
  border:0;
  border-bottom:1px solid #f0f3f4;
  background:#fff;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.community-history-row:last-child{
  border-bottom:0;
}
.community-history-row:hover{
  background:#f9fcfc;
}
.community-history-row strong{
  display:block;
  color:#47636e;
  font-size:12.5px;
  line-height:1.45;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.community-history-row p{
  margin:4px 0 0;
  color:#71858d;
  font-size:11.5px;
  line-height:1.55;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.community-history-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:6px;
  color:#9aa7ab;
  font-size:9.5px;
}
.community-profile-empty{
  padding:28px 16px;
  text-align:center;
  color:#91a0a5;
  font-size:11.5px;
}
@media(max-width:760px){
  .community-profile-hero{grid-template-columns:1fr;text-align:center}
  .community-profile-name-row{justify-content:center}
  .community-profile-stats{grid-template-columns:1fr 1fr}
  .community-profile-info-grid{grid-template-columns:1fr 1fr;text-align:left}
  .community-profile-layout{grid-template-columns:1fr}
}

.ys-character-art{position:relative;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex:none}.ys-character-art svg{display:block;width:100%;height:100%;overflow:visible}.profile-avatar{border-radius:50%}.signup-profile-box{margin:0 0 16px;padding:14px;border:1px solid #e5ecef;border-radius:14px;background:#fbfdfe}.signup-level-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.signup-level-btn{border:1px solid #dce5e8;background:#fff;border-radius:10px;padding:8px 5px;cursor:pointer;color:#526d77}.signup-level-btn b{display:block;font-size:12px}.signup-level-btn span{display:block;font-size:10px;margin-top:2px}.signup-level-btn.selected{border-color:#2a96bd;background:#f2fafc;box-shadow:0 0 0 2px #2a96bd1f}.signup-level-note{font-size:10.5px;color:#86979d;margin-top:7px}.signup-character-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;font-size:10.5px;color:#87979d}.signup-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.character-picker-item{min-height:94px}.character-picker-item .ys-character-art{margin:auto}@media(max-width:520px){.signup-level-grid,.signup-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.signup-character-toolbar{align-items:flex-start;flex-direction:column}}

.detail-meta{align-items:center!important;column-gap:14px!important;row-gap:10px!important}
.detail-author-line,.detail-author-line .community-author-inline{align-items:center!important}
.detail-author-line{gap:8px!important;line-height:1.2!important}
.detail-author-line .community-author-avatar{box-shadow:0 0 0 1px rgba(110,170,183,.18)}
.comment{grid-template-columns:57px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}
.comment-avatar.community-avatar-shell{width:57px!important;height:57px!important;border-radius:50%!important}
.comment-main{min-width:0}
.comment-head{align-items:center!important;row-gap:6px!important;min-height:57px}
.comment-head .community-author-name{line-height:1.2!important}
.comment-reply-author{align-items:center!important;gap:6px!important}
.comment-reply-author .community-author-avatar{width:30px!important;height:30px!important}
.comment-reply-author .community-author-avatar svg{display:block;width:100%;height:100%}
@media(max-width:768px){.detail-meta{row-gap:8px!important}.comment{grid-template-columns:52px minmax(0,1fr)!important}.comment-avatar.community-avatar-shell{width:52px!important;height:52px!important}.comment-head{min-height:52px}.comment-reply-author .community-author-avatar{width:28px!important;height:28px!important}}

/* 로그인/회원가입 화면 전용: 더 부드럽고 차분한 톤, 작은 글자 보정, 텍스트 명도 분리 */
.auth-section{
  background:linear-gradient(180deg,#f8fbfc 0%,#fdfaf8 42%,#ffffff 100%);
}
.auth-wrap-login,
.auth-wrap-signup{
  position:relative;
}
.auth-page-title{
  font-size:28px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  letter-spacing:-0.01em !important;
  color:rgba(54,73,82,.96) !important;
  margin-bottom:14px !important;
}
.auth-wrap .form-card{
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(205,220,224,.82) !important;
  border-radius:20px !important;
  box-shadow:0 16px 40px rgba(54,88,98,.06) !important;
  backdrop-filter:blur(6px);
}
.auth-wrap-login .form-card{
  padding:26px 24px !important;
}
.auth-wrap-signup .form-card{
  padding:26px 24px !important;
}

/* 기본 텍스트 톤: 비슷한 색 겹침 방지 */
.auth-wrap .field>label,
.auth-wrap .marketing-fields h4,
.auth-wrap .signup-profile-box::before,
.auth-wrap .signup-realname-field::before,
.auth-wrap .signup-character-toolbar,
.auth-wrap .auth-divider{
  color:rgba(59,79,88,.88) !important;
}
.auth-wrap .field>label{
  font-size:14.5px !important;
  font-weight:500 !important;
  margin-bottom:8px !important;
}
.auth-wrap .signup-field-help,
.auth-wrap .signup-field-note,
.auth-wrap .marketing-fields p,
.auth-wrap .auth-foot,
.auth-wrap .auth-links,
.auth-wrap .auth-links button,
.auth-wrap .auth-divider,
.auth-wrap .warning,
.auth-wrap .signup-level-note,
.auth-wrap .signup-random-profile-note,
.auth-wrap .signup-optional-hint,
.auth-wrap .page-sub{
  color:rgba(93,109,116,.78) !important;
}
.auth-wrap .signup-field-note,
.auth-wrap .marketing-fields p,
.auth-wrap .auth-foot,
.auth-wrap .auth-links,
.auth-wrap .auth-links button{
  font-size:13.5px !important;
  line-height:1.7 !important;
}
.auth-wrap .auth-foot{
  margin-top:18px !important;
}
.auth-wrap .auth-links{
  gap:14px !important;
  margin-top:12px !important;
}
.auth-wrap .auth-links button,
.auth-wrap .link-btn{
  color:rgba(65,113,131,.88) !important;
  text-underline-offset:2px;
}
.auth-wrap .auth-divider{
  font-size:12.5px !important;
  letter-spacing:.01em !important;
}

/* 입력 요소 가독성 */
.auth-wrap .input,
.auth-wrap textarea,
.auth-wrap select{
  min-height:50px !important;
  padding:13px 14px !important;
  border-radius:12px !important;
  border:1px solid rgba(201,214,219,.95) !important;
  background:rgba(252,253,253,.98) !important;
  color:rgba(45,61,69,.94) !important;
  font-size:16px !important;
  line-height:1.45 !important;
}
.auth-wrap textarea{min-height:160px !important;}
.auth-wrap .input::placeholder,
.auth-wrap textarea::placeholder{
  color:rgba(114,128,135,.52) !important;
  opacity:1 !important;
}
.auth-wrap .input:focus,
.auth-wrap textarea:focus,
.auth-wrap select:focus{
  border-color:rgba(111,181,201,.96) !important;
  box-shadow:0 0 0 4px rgba(111,181,201,.13) !important;
  background:#fff !important;
}

/* 버튼 크기 및 대비 개선 */
.auth-wrap .primary-btn,
.auth-wrap .login-btn{
  min-height:54px !important;
  height:auto !important;
  border-radius:12px !important;
  font-size:15.5px !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
}
.auth-wrap .secondary-btn{
  min-height:46px !important;
  border-radius:11px !important;
  font-size:14px !important;
  color:rgba(69,87,96,.92) !important;
}
.auth-wrap .social-btn{
  min-height:52px !important;
  height:auto !important;
  border-radius:12px !important;
  font-size:15px !important;
  font-weight:500 !important;
}

/* 회원가입 부가영역 정돈 */
.auth-wrap .marketing-fields,
.auth-wrap .signup-profile-box{
  border-radius:16px !important;
  border:1px solid rgba(227,236,238,.95) !important;
}
.auth-wrap .marketing-fields{
  background:linear-gradient(180deg,rgba(248,251,251,.96),rgba(244,248,248,.96)) !important;
  padding:16px !important;
}
.auth-wrap .signup-profile-box{
  background:linear-gradient(180deg,rgba(252,254,254,.97),rgba(248,251,252,.97)) !important;
}
.auth-wrap .signup-random-profile-note{
  background:rgba(255,248,239,.92) !important;
  border-color:rgba(241,207,170,.92) !important;
  font-size:13px !important;
  line-height:1.7 !important;
}
.auth-wrap .signup-required-hint{
  font-size:11px !important;
}
.auth-wrap .signup-optional-hint{
  font-size:11px !important;
}

/* 로그인 보조 안내도 크기 보정 */
.auth-wrap-login .auth-links,
.auth-wrap-login .auth-links button,
.auth-wrap-login .auth-foot{
  font-size:14px !important;
}

@media (max-width: 620px){
  .auth-page-title{font-size:25px !important;}
  .auth-wrap-login .form-card,
  .auth-wrap-signup .form-card{padding:20px 16px !important;}
  .auth-wrap .field>label{font-size:14px !important;}
  .auth-wrap .signup-field-note,
  .auth-wrap .marketing-fields p,
  .auth-wrap .auth-foot,
  .auth-wrap .auth-links,
  .auth-wrap .auth-links button{font-size:13px !important;}
  .auth-wrap .input,
  .auth-wrap textarea,
  .auth-wrap select{font-size:15.5px !important; min-height:48px !important;}
  .auth-wrap .primary-btn,
  .auth-wrap .social-btn{font-size:15px !important;}
}

/* =========================================================
   1. 프로필 설정 안내
   - 제목/항목 제목은 선명하게
   - 설명 본문은 rgba 불투명도로 계층화하여 시각적 혼잡 완화
   ========================================================= */
.modal.ys-profile-guide-modal .modal-head h3,
.modal.ys-profile-guide-modal .modal-title{
  color:rgba(52,73,82,.96)!important;
  font-weight:500!important;
}

.modal.ys-profile-guide-modal .profile-guide-intro{
  color:rgba(69,92,101,.76)!important;
}
.modal.ys-profile-guide-modal .profile-guide-intro b{
  color:rgba(49,75,85,.94)!important;
  font-weight:500!important;
}

.modal.ys-profile-guide-modal .profile-guide-step b{
  color:rgba(45,73,84,.94)!important;
  font-weight:500!important;
}
.modal.ys-profile-guide-modal .profile-guide-step span{
  color:rgba(84,104,112,.72)!important;
  font-weight:500!important;
}

.modal.ys-profile-guide-modal .profile-guide-level b{
  color:rgba(50,78,88,.92)!important;
}
.modal.ys-profile-guide-modal .profile-guide-level small{
  color:rgba(91,109,116,.70)!important;
}

.modal.ys-profile-guide-modal .profile-guide-note{
  color:rgba(108,87,59,.76)!important;
}
.modal.ys-profile-guide-modal .profile-guide-note b{
  color:rgba(132,91,39,.94)!important;
}

/* 카드 구분은 유지하되 선은 조금 더 부드럽게 */
.modal.ys-profile-guide-modal .profile-guide-step,
.modal.ys-profile-guide-modal .profile-guide-level{
  border-color:rgba(214,225,228,.78)!important;
}
.modal.ys-profile-guide-modal .profile-guide-intro{
  border-color:rgba(205,224,229,.82)!important;
}


/* =========================================================
   2. 회원 레벨 승급 기준
   - 팝업 폭 확대
   - 헤더/숫자/레벨명/상태배지/안내문 모두 확대
   ========================================================= */
.modal-backdrop.open .modal:has(.level-guide-wrap){
  width:min(1040px,calc(100vw - 28px))!important;
  max-width:1040px!important;
}

.modal:has(.level-guide-wrap) .modal-head h3,
.modal:has(.level-guide-wrap) .modal-title{
  font-size:24px!important;
  line-height:1.3!important;
  color:rgba(51,73,82,.96)!important;
}

.level-guide-wrap{
  max-height:74vh!important;
}

.level-guide-summary{
  padding:14px 15px!important;
  margin-bottom:14px!important;
  font-size:14px!important;
  line-height:1.7!important;
  color:rgba(66,89,98,.82)!important;
  border-radius:12px!important;
}
.level-guide-summary i{
  font-size:19px!important;
}
.level-guide-summary b,
.level-guide-summary strong{
  color:rgba(48,74,84,.96)!important;
}

.level-guide-table{
  min-width:920px!important;
  font-size:14px!important;
  line-height:1.45!important;
}

.level-guide-table th{
  padding:13px 10px!important;
  font-size:13.5px!important;
  font-weight:500!important;
  color:rgba(67,89,98,.86)!important;
  letter-spacing:-.01em!important;
}

.level-guide-table td{
  padding:13px 10px!important;
  font-size:14.5px!important;
  font-weight:500!important;
  color:rgba(52,75,84,.88)!important;
  line-height:1.45!important;
}

/* 기간·점수·게시글·댓글·배지·좋아요 핵심 숫자는 가장 크게 */
.level-guide-table td:nth-child(2),
.level-guide-table td:nth-child(3),
.level-guide-table td:nth-child(4),
.level-guide-table td:nth-child(5),
.level-guide-table td:nth-child(6),
.level-guide-table td:nth-child(7){
  font-size:15.5px!important;
  font-weight:500!important;
  color:rgba(45,67,76,.94)!important;
  font-variant-numeric:tabular-nums;
}

.level-guide-level{
  font-size:15px!important;
  font-weight:500!important;
  color:rgba(45,70,80,.96)!important;
  gap:7px!important;
}

.level-guide-dot{
  width:9px!important;
  height:9px!important;
}

.level-guide-auto,
.level-guide-review{
  font-size:12.5px!important;
  line-height:1.25!important;
  padding:5px 9px!important;
  font-weight:500!important;
}

.level-guide-note{
  margin-top:13px!important;
  padding:14px 15px!important;
  font-size:13.5px!important;
  line-height:1.72!important;
  color:rgba(105,82,52,.82)!important;
  border-radius:12px!important;
}
.level-guide-note b{
  font-size:14px!important;
  color:rgba(151,91,27,.95)!important;
}

/* 행간/행 구분 개선 */
.level-guide-table tbody tr:nth-child(even){
  background:rgba(247,250,250,.72)!important;
}
.level-guide-table tbody tr:hover{
  background:rgba(236,248,250,.82)!important;
}

/* 작은 화면에서도 지나치게 작아지지 않게 유지 */
@media(max-width:700px){
  .modal:has(.level-guide-wrap) .modal-head h3,
  .modal:has(.level-guide-wrap) .modal-title{
    font-size:21px!important;
  }
  .level-guide-summary{
    font-size:13.5px!important;
  }
  .level-guide-table{
    font-size:13.5px!important;
  }
  .level-guide-table th{
    font-size:12.8px!important;
    padding:11px 8px!important;
  }
  .level-guide-table td{
    font-size:13.8px!important;
    padding:11px 8px!important;
  }
  .level-guide-table td:nth-child(2),
  .level-guide-table td:nth-child(3),
  .level-guide-table td:nth-child(4),
  .level-guide-table td:nth-child(5),
  .level-guide-table td:nth-child(6),
  .level-guide-table td:nth-child(7){
    font-size:14.5px!important;
  }
  .level-guide-level{
    font-size:14px!important;
  }
  .level-guide-auto,
  .level-guide-review{
    font-size:12px!important;
  }
}

.auth-wrap-signup .signup-required-hint{
  display:none!important;
}
.auth-wrap-signup .marketing-fields{
  order:0;
  margin-top:0!important;
  margin-bottom:18px!important;
  padding:16px 15px!important;
}
.auth-wrap-signup .marketing-fields h4,
.auth-wrap-signup .marketing-fields>p{
  display:none!important;
}
.auth-wrap-signup .signup-marketing-mini-guide{
  margin:6px 0 8px;
  color:rgba(110,126,133,.82);
  font-size:11px;
  line-height:1.5;
  letter-spacing:-0.01em;
}
.auth-wrap-signup .signup-profile-box{
  margin-top:0!important;
}
@media(max-width:620px){
  .auth-wrap-signup .signup-marketing-mini-guide{
    font-size:10.5px;
  }
}

/* 회원가입 선택 항목 블록 전체 가독성 정리 */
.auth-wrap-signup .marketing-fields{
  background:linear-gradient(180deg,rgba(248,251,251,.98),rgba(244,248,249,.98))!important;
  border:1px solid rgba(215,227,231,.95)!important;
  border-radius:16px!important;
  padding:18px 16px 16px!important;
  margin:0 0 20px!important;
  box-shadow:0 8px 20px rgba(64,96,108,.04)!important;
}

.auth-wrap-signup .marketing-fields .field{
  margin-bottom:16px!important;
}
.auth-wrap-signup .marketing-fields .field:last-of-type{
  margin-bottom:12px!important;
}

.auth-wrap-signup .marketing-fields .field > label{
  font-size:14.5px!important;
  font-weight:500!important;
  color:rgba(59,79,88,.92)!important;
  margin-bottom:8px!important;
  letter-spacing:-0.01em;
}

.auth-wrap-signup .marketing-fields .input,
.auth-wrap-signup .marketing-fields select{
  min-height:50px!important;
  font-size:16px!important;
  line-height:1.45!important;
  color:rgba(49,67,75,.94)!important;
  border:1px solid rgba(201,214,219,.95)!important;
  background:rgba(255,255,255,.98)!important;
  border-radius:12px!important;
  padding:13px 14px!important;
}

.auth-wrap-signup .marketing-fields .input::placeholder{
  color:rgba(124,138,145,.62)!important;
  opacity:1!important;
}

.auth-wrap-signup .marketing-fields .input:focus,
.auth-wrap-signup .marketing-fields select:focus{
  border-color:rgba(107,185,202,.96)!important;
  box-shadow:0 0 0 4px rgba(107,185,202,.12)!important;
  background:#fff!important;
}

.auth-wrap-signup .marketing-fields .secondary-btn{
  min-height:50px!important;
  padding:0 16px!important;
  font-size:14.5px!important;
  font-weight:500!important;
  border-radius:12px!important;
  white-space:nowrap;
}

.auth-wrap-signup .signup-marketing-mini-guide{
  margin:8px 0 10px!important;
  font-size:12px!important;
  line-height:1.62!important;
  color:rgba(108,123,130,.82)!important;
  letter-spacing:-0.01em;
}

/* 핵심 요청: 동의 문구 30% 확대 + 체크박스 70% 확대 */
.auth-wrap-signup .signup-marketing-consent{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 2px 0!important;
  font-size:15.6px!important; /* 12px 대비 약 30% 확대 */
  line-height:1.5!important;
  font-weight:500!important;
  color:rgba(72,92,101,.92)!important;
  letter-spacing:-0.01em;
}

.auth-wrap-signup .signup-marketing-consent input[type="checkbox"]{
  width:22px!important;
  height:22px!important; /* 기본 대비 약 70% 확대 체감 */
  min-width:22px!important;
  min-height:22px!important;
  accent-color:#3a97b8;
  border-radius:5px;
  flex:none;
}

.auth-wrap-signup .marketing-fields .otp-row{
  gap:10px!important;
  align-items:stretch!important;
}

.auth-wrap-signup .marketing-fields .otp-row .input{
  min-width:120px;
}

@media(max-width:620px){
  .auth-wrap-signup .marketing-fields{
    padding:15px 13px 14px!important;
    border-radius:14px!important;
  }
  .auth-wrap-signup .marketing-fields .field > label{
    font-size:14px!important;
  }
  .auth-wrap-signup .marketing-fields .input,
  .auth-wrap-signup .marketing-fields select{
    min-height:48px!important;
    font-size:15.5px!important;
  }
  .auth-wrap-signup .marketing-fields .secondary-btn{
    min-height:48px!important;
    font-size:14px!important;
  }
  .auth-wrap-signup .signup-marketing-mini-guide{
    font-size:11.5px!important;
    line-height:1.58!important;
  }
  .auth-wrap-signup .signup-marketing-consent{
    font-size:15px!important;
    gap:9px!important;
    padding-top:8px!important;
  }
  .auth-wrap-signup .signup-marketing-consent input[type="checkbox"]{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    min-height:21px!important;
  }
}

/* 닉네임 후보 버튼: 두께 한 단계 낮추고 3pt 확대 */
.auth-wrap-signup .nickname-option{
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.42!important;
  letter-spacing:-0.01em!important;
  color:rgba(79,101,110,.92)!important;
  min-height:48px!important;
  padding:10px 10px!important;
}
.auth-wrap-signup .nickname-option:hover{
  color:rgba(49,121,145,.94)!important;
}
.auth-wrap-signup .nickname-option.selected{
  font-size:15px!important;
  font-weight:500!important;
  color:rgba(36,126,152,.96)!important;
}
.auth-wrap-signup .nickname-option-grid{
  gap:10px!important;
}
@media(max-width:620px){
  .auth-wrap-signup .nickname-option{
    font-size:15px!important;
    min-height:47px!important;
  }
}

/* ---------- 공통: 두 번째 참고 이미지의 컴팩트한 선택 UI ---------- */
.auth-wrap-signup .signup-profile-box,
.ys-profile-choice-modal{
  background:#fff!important;
}

/* 닉네임 선택: 3열 작은 버튼 */
.auth-wrap-signup .nickname-option-grid,
.nickname-picker .nickname-option-grid,
.profile-nickname-picker .nickname-option-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:8px!important;
}
.auth-wrap-signup .nickname-option,
.nickname-picker .nickname-option,
.profile-nickname-picker .nickname-option{
  min-height:52px!important;
  padding:8px 10px!important;
  border:1px solid #dce5e8!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#4e6872!important;
  font-size:14.5px!important;
  font-weight:500!important;
  line-height:1.35!important;
  box-shadow:none!important;
  word-break:keep-all!important;
}
.auth-wrap-signup .nickname-option.selected,
.nickname-picker .nickname-option.selected,
.profile-nickname-picker .nickname-option.selected{
  border:1.7px solid #3ca9c7!important;
  background:#f7fcfd!important;
  color:#2b8dab!important;
  font-weight:500!important;
}
.auth-wrap-signup [data-action="signup-reroll-nickname"],
[data-action="reroll-nickname"]{
  min-height:38px!important;
  width:auto!important;
  margin-top:8px!important;
  padding:7px 13px!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:500!important;
  color:#60767e!important;
}

/* 캐릭터 선택: 큰 카드 제거, 작은 타일로 */
.auth-wrap-signup .signup-character-grid,
.ys-reference-character-grid,
.character-picker .character-picker-grid{
  display:grid!important;
  grid-template-columns:repeat(6,58px)!important;
  gap:8px!important;
  justify-content:start!important;
  align-items:start!important;
}
.auth-wrap-signup .character-picker-item,
.ys-reference-character-grid .character-picker-item,
.character-picker .character-picker-item{
  width:58px!important;
  height:58px!important;
  min-height:58px!important;
  aspect-ratio:1/1!important;
  padding:4px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:#f5f6f4!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  box-shadow:none!important;
  transform:none!important;
}
.auth-wrap-signup .character-picker-item:hover,
.ys-reference-character-grid .character-picker-item:hover,
.character-picker .character-picker-item:hover{
  border-color:#8fcbd8!important;
  background:#f4fafb!important;
}
.auth-wrap-signup .character-picker-item.selected,
.ys-reference-character-grid .character-picker-item.selected,
.character-picker .character-picker-item.selected{
  border:2px solid #2da4c3!important;
  background:#f4fbfc!important;
  box-shadow:0 0 0 1px rgba(45,164,195,.06)!important;
}
.auth-wrap-signup .character-picker-item .ys-character-art,
.auth-wrap-signup .character-picker-item .ys-character-vector,
.ys-reference-character-grid .character-picker-item .ys-character-art,
.ys-reference-character-grid .character-picker-item .ys-character-vector,
.character-picker .character-picker-item .ys-character-art,
.character-picker .character-picker-item .ys-character-vector{
  width:50px!important;
  height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  display:block!important;
  overflow:visible!important;
}

/* 회원가입의 큰 '캐릭터 미선택' 프리뷰는 유지하되 높이 축소 */
.auth-wrap-signup .signup-selected-character-preview{
  min-height:72px!important;
  padding:8px 10px!important;
  margin-bottom:10px!important;
  border-radius:12px!important;
}
.auth-wrap-signup .signup-selected-character-preview>div:first-child{
  width:58px!important;
  height:58px!important;
  border-radius:12px!important;
}
.auth-wrap-signup .signup-selected-character-preview>div:first-child .ys-character-art,
.auth-wrap-signup .signup-selected-character-preview>div:first-child .ys-character-vector{
  width:52px!important;
  height:52px!important;
}

/* 후보 다시보기 버튼 */
.auth-wrap-signup [data-action="signup-reroll-character"],
.ys-choice-more-btn{
  min-height:38px!important;
  width:auto!important;
  margin-top:9px!important;
  padding:7px 13px!important;
  border-radius:10px!important;
  font-size:13px!important;
  font-weight:500!important;
  color:#60767e!important;
}

/* 캐릭터 변경 모달 자체도 작고 단정하게 */
.modal-backdrop.open .modal:has(.ys-character-choice-modal){
  width:min(500px,calc(100vw - 28px))!important;
}
.ys-profile-choice-modal{
  padding:2px 0 2px!important;
}
.ys-choice-section-title{
  margin:0 0 10px!important;
  color:#435f69!important;
  font-size:16px!important;
  font-weight:500!important;
}

/* 마이페이지 닉네임 변경 영역: 기존 구조가 무엇이든 같은 밀도로 */
[data-nickname-picker],
.nickname-picker,
.profile-nickname-picker{
  max-width:520px!important;
}
[data-nickname-picker] .nickname-option-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
[data-nickname-picker] .nickname-option{
  min-height:52px!important;
  border-radius:11px!important;
  font-size:14.5px!important;
  font-weight:500!important;
}

/* 모바일 */
@media(max-width:620px){
  .auth-wrap-signup .nickname-option-grid,
  .nickname-picker .nickname-option-grid,
  .profile-nickname-picker .nickname-option-grid,
  [data-nickname-picker] .nickname-option-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .auth-wrap-signup .signup-character-grid,
  .ys-reference-character-grid,
  .character-picker .character-picker-grid{
    grid-template-columns:repeat(5,54px)!important;
    gap:7px!important;
  }
  .auth-wrap-signup .character-picker-item,
  .ys-reference-character-grid .character-picker-item,
  .character-picker .character-picker-item{
    width:54px!important;
    height:54px!important;
    min-height:54px!important;
  }
  .auth-wrap-signup .character-picker-item .ys-character-art,
  .auth-wrap-signup .character-picker-item .ys-character-vector,
  .ys-reference-character-grid .character-picker-item .ys-character-art,
  .ys-reference-character-grid .character-picker-item .ys-character-vector,
  .character-picker .character-picker-item .ys-character-art,
  .character-picker .character-picker-item .ys-character-vector{
    width:46px!important;
    height:46px!important;
  }
}
@media(max-width:380px){
  .auth-wrap-signup .signup-character-grid,
  .ys-reference-character-grid,
  .character-picker .character-picker-grid{
    grid-template-columns:repeat(4,52px)!important;
  }
}

#ys-gradeless-character-defs{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important}
.ys-character-vector{display:block!important;width:100%!important;height:100%!important}
.ys-character-vector use{pointer-events:none}
.auth-wrap-signup .signup-phone-status{
  margin-top:7px;
  padding-left:2px;
  font-size:11.5px;
  line-height:1.55;
  color:rgba(103,120,127,.78);
}
.auth-wrap-signup .signup-phone-status.is-required{color:rgba(177,105,39,.9)}
.auth-wrap-signup .signup-phone-status.is-demo{color:rgba(105,120,126,.72)}
.auth-wrap-signup .signup-phone-status.is-verified{color:#2f8f76!important;font-weight:500}

/* 제거된 설명/프리뷰가 혹시 이전 CSS 영향으로 남지 않게 */
.auth-wrap-signup .signup-selected-character-preview{display:none!important}

/* 닉네임과 캐릭터 다시뽑기 버튼 */
.auth-wrap-signup .signup-reroll-btn{
  margin-top:10px!important;
  min-height:40px!important;
  padding:8px 14px!important;
  border-radius:10px!important;
  font-size:13.5px!important;
  font-weight:500!important;
  color:#5c727b!important;
  background:#fff!important;
  border:1px solid #d7e2e5!important;
}
.auth-wrap-signup .signup-reroll-btn:hover{
  border-color:#80c1d0!important;
  color:#258ba7!important;
  background:#f8fcfd!important;
}
.auth-wrap-signup .signup-profile-compact .field:last-of-type{margin-bottom:0!important}
.auth-wrap-signup .signup-reroll-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:14px!important;
  padding:10px 16px!important;
  border-radius:12px!important;
  font-size:14px!important;
  font-weight:500!important;
  color:#566b72!important;
  background:#fff!important;
  border:1px solid #d6dee1!important;
  box-shadow:0 1px 2px rgba(25,35,38,.04)!important;
}

/* 3번 파일 4번 화면 형태: 저장된 원형 캐릭터 아트 자체를 크게 표시 */
.auth-wrap-signup .signup-character-grid{
  display:grid!important;
  grid-template-columns:repeat(6,92px)!important;
  grid-auto-rows:92px!important;
  gap:12px!important;
  justify-content:start!important;
  align-items:start!important;
  width:100%!important;
  max-width:640px!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item{
  width:92px!important;
  height:92px!important;
  min-height:92px!important;
  aspect-ratio:1/1!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  box-shadow:none!important;
  transform:none!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item:hover{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:translateY(-1px)!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item.selected{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item.selected .ys-character-art{
  filter:drop-shadow(0 0 5px rgba(45,164,195,.32))!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector{
  width:92px!important;
  height:92px!important;
  max-width:92px!important;
  max-height:92px!important;
  margin:0!important;
  border-radius:0!important;
  display:block!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item svg{
  width:100%!important;
  height:100%!important;
  overflow:visible!important;
  display:block!important;
}

/* 가입 영역 폭 */
.auth-wrap-signup{max-width:760px!important}

@media(max-width:900px){
  .auth-wrap-signup .signup-character-grid{
    grid-template-columns:repeat(5,88px)!important;
    grid-auto-rows:88px!important;
    gap:11px!important;
  }
  .auth-wrap-signup .signup-character-grid .character-picker-item,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector{
    width:88px!important;height:88px!important;min-height:88px!important;
    max-width:88px!important;max-height:88px!important;
  }
}
@media(max-width:680px){
  .auth-wrap-signup .signup-character-grid{
    grid-template-columns:repeat(4,78px)!important;
    grid-auto-rows:78px!important;
    gap:10px!important;
  }
  .auth-wrap-signup .signup-character-grid .character-picker-item,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector{
    width:78px!important;height:78px!important;min-height:78px!important;
    max-width:78px!important;max-height:78px!important;
  }
}
@media(max-width:430px){
  .auth-wrap-signup .signup-character-grid{
    grid-template-columns:repeat(3,72px)!important;
    grid-auto-rows:72px!important;
    gap:10px!important;
  }
  .auth-wrap-signup .signup-character-grid .character-picker-item,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
  .auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector{
    width:72px!important;height:72px!important;min-height:72px!important;
    max-width:72px!important;max-height:72px!important;
  }
}

.auth-wrap-signup .nickname-option.selected{
  border:2px solid #35a8c6!important;
  background:linear-gradient(180deg,#f0fbfd,#f8fdfe)!important;
  color:#238ba8!important;
  font-weight:500!important;
  box-shadow:0 0 0 2px rgba(53,168,198,.08)!important;
}
.auth-wrap-signup .signup-reroll-btn{
  cursor:pointer!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:2!important;
}
.auth-wrap-signup .signup-reroll-btn:active{
  transform:translateY(1px)!important;
}

/* 버튼 문구 성격에 맞게 조금 더 부드러운 CTA 느낌 */
.auth-wrap-signup .signup-reroll-btn{
  min-height:40px!important;
  padding:8px 14px!important;
  border-radius:11px!important;
  font-size:13.5px!important;
  font-weight:500!important;
}

/* 캐릭터 hover 확대: 100% 확대 = 2배 */
.auth-wrap-signup .signup-character-grid,
.character-picker .character-picker-grid,
.ys-reference-character-grid{
  overflow:visible!important;
}

.auth-wrap-signup .signup-character-grid .character-picker-item,
.character-picker .character-picker-grid .character-picker-item,
.ys-reference-character-grid .character-picker-item{
  position:relative!important;
  overflow:visible!important;
}

.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector,
.character-picker .character-picker-grid .character-picker-item .ys-character-art,
.character-picker .character-picker-grid .character-picker-item .ys-character-vector,
.ys-reference-character-grid .character-picker-item .ys-character-art,
.ys-reference-character-grid .character-picker-item .ys-character-vector{
  position:relative!important;
  z-index:1;
  transform-origin:center center;
  transition:transform .16s ease, filter .16s ease;
}

.auth-wrap-signup .signup-character-grid .character-picker-item:hover,
.character-picker .character-picker-grid .character-picker-item:hover,
.ys-reference-character-grid .character-picker-item:hover{
  z-index:30!important;
}

.auth-wrap-signup .signup-character-grid .character-picker-item:hover .ys-character-art,
.auth-wrap-signup .signup-character-grid .character-picker-item:hover .ys-character-vector,
.character-picker .character-picker-grid .character-picker-item:hover .ys-character-art,
.character-picker .character-picker-grid .character-picker-item:hover .ys-character-vector,
.ys-reference-character-grid .character-picker-item:hover .ys-character-art,
.ys-reference-character-grid .character-picker-item:hover .ys-character-vector{
  transform:scale(2)!important;
  filter:drop-shadow(0 8px 18px rgba(41,79,92,.18));
}

/* 선택된 캐릭터는 hover 시 더 잘 보이도록 */
.auth-wrap-signup .signup-character-grid .character-picker-item.selected:hover,
.character-picker .character-picker-grid .character-picker-item.selected:hover,
.ys-reference-character-grid .character-picker-item.selected:hover{
  z-index:35!important;
}

@media (max-width: 700px){
  /* 모바일 터치 환경에서는 과도한 겹침 방지 */
  .auth-wrap-signup .signup-character-grid .character-picker-item:hover .ys-character-art,
  .auth-wrap-signup .signup-character-grid .character-picker-item:hover .ys-character-vector,
  .character-picker .character-picker-grid .character-picker-item:hover .ys-character-art,
  .character-picker .character-picker-grid .character-picker-item:hover .ys-character-vector,
  .ys-reference-character-grid .character-picker-item:hover .ys-character-art,
  .ys-reference-character-grid .character-picker-item:hover .ys-character-vector{
    transform:scale(1.7)!important;
  }
}

.auth-wrap-signup .nickname-option-grid,
.auth-wrap-signup .signup-character-grid{
  position:relative!important;
  transition:transform .19s cubic-bezier(.4,0,.2,1),opacity .19s ease!important;
  will-change:transform,opacity;
}

/* 현재 화면: 왼쪽으로 빠짐 */
.auth-wrap-signup .nickname-option-grid.ys-slide-exit-left,
.auth-wrap-signup .signup-character-grid.ys-slide-exit-left{
  transform:translateX(-34px)!important;
  opacity:0!important;
}

/* 새 화면: 오른쪽에서 시작 */
.auth-wrap-signup .nickname-option-grid.ys-slide-enter-right,
.auth-wrap-signup .signup-character-grid.ys-slide-enter-right{
  transform:translateX(34px)!important;
  opacity:0!important;
  transition:none!important;
}

/* 새 화면: 제자리로 슬라이드 */
.auth-wrap-signup .nickname-option-grid.ys-slide-enter-right.ys-slide-enter-active,
.auth-wrap-signup .signup-character-grid.ys-slide-enter-right.ys-slide-enter-active{
  transform:translateX(0)!important;
  opacity:1!important;
  transition:transform .34s cubic-bezier(.22,.78,.24,1),opacity .28s ease!important;
}

/* 전환 중 레이아웃 영역 밖으로 튀는 느낌을 줄임 */
.auth-wrap-signup .signup-profile-box .field{
  overflow:visible!important;
}
.auth-wrap-signup .signup-profile-box{
  overflow:hidden!important;
}

/* hover 2배 확대는 슬라이드 종료 후 그대로 동작 */
.auth-wrap-signup .signup-character-grid:not(.ys-slide-exit-left):not(.ys-slide-enter-right)
.character-picker-item:hover{
  z-index:40!important;
}

/* 사용자가 OS에서 동작 줄이기를 선택한 경우 과한 애니메이션 방지 */
@media (prefers-reduced-motion:reduce){
  .auth-wrap-signup .nickname-option-grid,
  .auth-wrap-signup .signup-character-grid,
  .auth-wrap-signup .nickname-option-grid.ys-slide-enter-right.ys-slide-enter-active,
  .auth-wrap-signup .signup-character-grid.ys-slide-enter-right.ys-slide-enter-active{
    transition-duration:.01ms!important;
  }
}

.auth-wrap-signup .nickname-option-grid,
.auth-wrap-signup .signup-character-grid{
  contain:layout style;
}
.auth-wrap-signup .signup-reroll-btn{
  touch-action:manipulation;
}

.board-author .community-author-avatar{
  flex:0 0 26px!important;
  width:26px!important;
  height:26px!important;
  border-radius:9px!important;
  overflow:hidden!important;
  background:#f4f7f6!important;
}
.board-author .community-author-avatar .ys-character-art,
.board-author .community-author-avatar .ys-character-vector{
  width:24px!important;
  height:24px!important;
  display:block!important;
}
.ys-home-author-mini .community-author-avatar,
.ys-hub-author-mini .community-author-avatar{
  overflow:hidden!important;
  background:#f5f7f6!important;
}
.ops-admin-avatar{
  width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #e1e9e8;border-radius:11px;
  background:#f6f8f7;overflow:hidden;
}
.ops-admin-avatar .ys-character-art,
.ops-admin-avatar .ys-character-vector{
  width:34px!important;height:34px!important;
}
.ops-admin-table th:first-child,
.ops-admin-table td:first-child{
  width:58px;text-align:center;
}
.board-author{gap:4px!important}

/* =========================================================
   가독성 최종 보정 (2025-08 요청 반영)
   1) 서체는 2~5호(200~500, ExtraLight~Medium)만 사용
      - 굵기 6~9호(600~900, SemiBold~Black)는 실제 글꼴 파일이 없어
        브라우저가 강제로 두껍게 흉내내며(합성 굵게) 오히려 흐릿하고
        답답해 보이므로 전체적으로 500 이하로 통일
   2) 진하고 두꺼운 글자는 가독성을 오히려 떨어뜨리므로
      배지/탭/칩/태그/네비게이션 등 "짧고 붙어있는" 텍스트는
      자간을 150~200(=0.15em~0.2em, Illustrator 자간 기준)으로 넓혀
      답답해 보이지 않게 조정
   ========================================================= */

html, body, button, input, select, textarea, option,
h1, h2, h3, h4, h5, h6, p, li, dd, dt, td, th, a, span, div, strong, b {
  font-weight: 500 !important;
}
body, p, li, dd, dt, td, a, .page-sub, .breadcrumb, .brand-copy, .eyebrow,
.debate-meta, .native-desc, .native-cta, .login-links, .post-meta,
.board-date, .board-comments, .board-views, .board-head-sub,
.compact-row, .hub-copy p, .side-info p, .comment-text,
.category-card small, .hub-guide-item {
  font-weight: 400 !important;
}

/* 짧은 라벨류: 자간 0.18em(≈180/1000em) 확보 + 5호(Medium) 상한 */
.nav-link,
.head-cat-nav .nav-link,
.bottom-cat-label,
.account-level-pill,
.ops-public-badge,
.write-top,
.join-btn,
.primary-btn,
.compact-category-brand .hub-name,
.category-button,
.job-tab,
.board-tab,
.job-type-badge,
.job-tag,
.post-detail-tag,
.moderation-status-chip,
.promo-chip,
.demo-chip,
.shop-meta-chip,
.post-award-badge,
.post-award-label,
.debate-result-label,
.comment-badge-current-label,
.badge-recommend-copy,
.badge-admin-card,
.hidden-by-badge,
.ys-notify-public-chip,
.ys-write-badge-empty,
.ys-badge-toggle,
.job-filter-chip,
.job-filter-label,
.moderation-btn-label,
.admin-group-label,
.compact-category-stat,
.account-nick-row,
.ad-label {
  letter-spacing: 0.18em !important;
  font-weight: 500 !important;
}

/* 강조가 필요한 제목류는 5호(Medium, 500)까지만 허용해 굵기 상한 유지 */
.page-title, .detail-title, .debate-title, .category-card strong,
.panel-head, .write-top, .join-btn, .primary-btn, .account-nick-row {
  font-weight: 500 !important;
}

/*
  메인 베스트글 / 방금 올라온 글 정보 우선순위
  1) 게시글 제목  2) 카테고리  3) 날짜·조회·댓글  4) 작성자·배지
  제목 폭을 최우선으로 확보하고, 부가정보는 작고 촘촘하게 표시한다.
*/
.best-post-section .panel-head,
.left-stack > section.card:not(.preview-card) .panel-head{
  padding-left:14px;
  padding-right:14px;
}

.best-post-section .compact-list,
.left-stack > section.card:not(.preview-card) > .compact-list{
  padding-left:12px;
  padding-right:12px;
}

.compact-row.home-feed-row{
  grid-template-columns:96px minmax(0,1fr) max-content !important;
  column-gap:7px !important;
  min-height:29px !important;
  height:29px !important;
}

/* 카테고리는 제목보다 한 단계 낮게 */
.compact-row.home-feed-row .home-category-path{
  gap:3px !important;
  overflow:hidden !important;
}
.compact-row.home-feed-row .home-subcategory-icon{
  width:16px !important;
  height:16px !important;
  flex-basis:16px !important;
  font-size:8.5px !important;
}
.compact-row.home-feed-row .home-subcategory-name{
  max-width:75px !important;
  font-size:11.3px !important;
  font-weight:500 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* 제목을 가장 크고, 가장 넓게 */
.compact-row.home-feed-row .title{
  min-width:0 !important;
  font-size:14px !important;
  font-weight:600 !important;
  letter-spacing:-.025em !important;
  gap:3px !important;
  overflow:hidden !important;
}
.compact-row.home-feed-row .title .post-title-text{
  flex:1 1 auto !important;
  min-width:70px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.compact-row.home-feed-row .new{
  width:11px !important;
  height:11px !important;
  font-size:6.5px !important;
  margin-left:1px !important;
  flex:0 0 11px !important;
}

/* 댓글/추천 배지는 의미는 유지하되 제목 폭을 침범하지 않게 축소 */
.compact-row.home-feed-row .preview-reaction{
  margin-left:1px !important;
  max-width:64px !important;
  overflow:hidden !important;
}
.compact-row.home-feed-row .preview-reaction .comment-badge-item,
.compact-row.home-feed-row .preview-reaction .comment-badge-item img{
  max-width:64px !important;
}
.compact-row.home-feed-row .preview-reaction .ys-comment-badge.compact{
  height:21px !important;
  max-width:64px !important;
  object-fit:contain !important;
}
.compact-row.home-feed-row .post-attachment-indicators{
  margin-left:1px !important;
  gap:2px !important;
}
.compact-row.home-feed-row .post-attachment-icon{
  width:15px !important;
  height:15px !important;
  font-size:9px !important;
}

/* 메타정보는 한 줄 고정, 작은 글씨로 압축 */
.compact-row.home-feed-row .stat{
  gap:4px !important;
  min-width:0 !important;
}
.compact-row.home-feed-row .stat-item{
  gap:1px !important;
  font-size:9.7px !important;
  letter-spacing:-.02em !important;
}
.compact-row.home-feed-row .stat-item i{
  font-size:8.5px !important;
}

/* 작성자는 가장 낮은 우선순위: 폭 제한 + 말줄임 */
.compact-row.home-feed-row .ys-home-author-mini{
  max-width:61px !important;
  overflow:hidden !important;
}
.compact-row.home-feed-row .ys-home-author-mini .community-avatar-shell,
.compact-row.home-feed-row .ys-home-author-mini img{
  width:14px !important;
  height:14px !important;
  flex:0 0 14px !important;
}
.compact-row.home-feed-row .ys-home-author-mini > span:last-child{
  display:block !important;
  max-width:43px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

/* 700px 안팎의 메인 컬럼에서는 작성자보다 제목을 우선 */
@media (max-width:1100px){
  .compact-row.home-feed-row{
    grid-template-columns:90px minmax(0,1fr) max-content !important;
    column-gap:6px !important;
  }
  .compact-row.home-feed-row .ys-home-author-mini{display:none !important;}
  .compact-row.home-feed-row .home-subcategory-name{max-width:69px !important;}
}

@media (max-width:760px){
  .compact-row.home-feed-row{
    grid-template-columns:82px minmax(0,1fr) max-content !important;
  }
  .compact-row.home-feed-row .stat-item:nth-child(3){display:none !important;} /* 조회수 */
  .compact-row.home-feed-row .preview-reaction{max-width:52px !important;}
  .compact-row.home-feed-row .preview-reaction .comment-badge-item,
  .compact-row.home-feed-row .preview-reaction .comment-badge-item img,
  .compact-row.home-feed-row .preview-reaction .ys-comment-badge.compact{max-width:52px !important;}
}

@media (max-width:620px){
  .compact-row.home-feed-row{
    grid-template-columns:74px minmax(0,1fr) max-content !important;
    min-height:31px !important;
    height:31px !important;
    column-gap:5px !important;
  }
  .compact-row.home-feed-row .home-subcategory-name{max-width:54px !important;font-size:10.6px !important;}
  .compact-row.home-feed-row .title{font-size:13.2px !important;}
  .compact-row.home-feed-row .stat-item:nth-child(2){font-size:9px !important;} /* 날짜 */
  .compact-row.home-feed-row .stat-item:nth-child(3),
  .compact-row.home-feed-row .stat-item:nth-child(4){display:none !important;} /* 모바일: 조회·댓글 숨김 */
  .compact-row.home-feed-row .preview-reaction{display:none !important;} /* 모바일: 제목 최우선 */
}

/* 베스트글·방금 올라온 글: 공간 절약을 위해 작성자 프로필 사진 제거 */
.compact-row.home-feed-row .ys-home-author-mini{
  display:inline-flex !important;
  align-items:center !important;
  min-width:0 !important;
  max-width:52px !important;
  gap:0 !important;
}
.compact-row.home-feed-row .ys-home-author-mini .community-author-avatar,
.compact-row.home-feed-row .ys-home-author-mini .community-avatar-shell,
.compact-row.home-feed-row .ys-home-author-mini .profile-avatar,
.compact-row.home-feed-row .ys-home-author-mini img{
  display:none !important;
}
.compact-row.home-feed-row .ys-home-author-mini > span:last-child{
  display:block !important;
  max-width:52px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.compact-row.home-feed-row .stat{
  gap:3px !important;
}
.compact-row.home-feed-row .stat-item{
  gap:1px !important;
}

/* 베스트글·방금 올라온 글: 작성자 정보(프로필사진+닉네임) 완전 제거 */
.compact-row.home-feed-row .ys-home-author-mini{
  display:none !important;
}
.compact-row.home-feed-row{
  grid-template-columns:88px minmax(0,1fr) max-content !important;
  column-gap:6px !important;
}
.compact-row.home-feed-row .stat{
  gap:4px !important;
  justify-self:end !important;
}
.compact-row.home-feed-row .stat-item{
  gap:1px !important;
  font-size:9.7px !important;
}
.compact-row.home-feed-row .stat-item i{
  font-size:8.5px !important;
}
@media (max-width:760px){
  .compact-row.home-feed-row .stat-item:nth-child(3){display:none !important;} /* 조회수 */
}
@media (max-width:640px){
  .compact-row.home-feed-row{
    grid-template-columns:72px minmax(0,1fr) max-content !important;
  }
  .compact-row.home-feed-row .stat-item:nth-child(2),
  .compact-row.home-feed-row .stat-item:nth-child(3),
  .compact-row.home-feed-row .stat-item:nth-child(4){
    display:none !important;
  }
}

/* 우측 상단 2개 버튼: 아이콘/텍스트 수직 정렬 통일 */
.member-guide-actions{
  align-items:stretch !important;
}
.member-guide-actions .profile-guide-btn,
.member-guide-actions .level-guide-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:0 12px !important;
  text-align:center !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
}
.member-guide-actions .profile-guide-btn i,
.member-guide-actions .level-guide-btn i{
  flex:0 0 auto !important;
  line-height:1 !important;
}
.member-guide-actions .profile-guide-btn span,
.member-guide-actions .level-guide-btn span{
  display:block !important;
  line-height:1.2 !important;
  text-align:center !important;
  white-space:nowrap !important;
  letter-spacing:0 !important;
}

/* 실시간 인기검색어: 순위 숫자 너비 고정 -> 10도 한 줄 정렬 */
.rank-grid.rank-grid-vertical{
  gap:2px 12px !important;
}
.rank-item{
  grid-template-columns:22px minmax(0,1fr) 14px !important;
  gap:8px !important;
  min-height:24px !important;
  align-items:center !important;
}
.rank-item .n{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  min-width:22px !important;
  white-space:nowrap !important;
  font-variant-numeric:tabular-nums !important;
  line-height:1 !important;
  text-align:center !important;
}

/* 이번 주 활동왕: 프로필 사진 제거 + 메달 열 고정 */
.weekly-row{
  grid-template-columns:22px minmax(0,1fr) 52px !important;
  gap:7px !important;
  align-items:center !important;
}
.weekly-name-wrap{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 18px !important;
  align-items:center !important;
  column-gap:6px !important;
  min-width:0 !important;
}
.weekly-name-wrap .community-author-avatar{
  display:none !important;
}
.weekly-name-text{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.weekly-medal-after{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  justify-self:center !important;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
}
.weekly-pct{
  display:inline-block !important;
  min-width:48px !important;
  text-align:right !important;
  font-variant-numeric:tabular-nums !important;
}

@media (max-width:640px){
  .member-guide-actions .profile-guide-btn,
  .member-guide-actions .level-guide-btn{
    padding:0 8px !important;
    gap:5px !important;
  }
  .member-guide-actions .profile-guide-btn span,
  .member-guide-actions .level-guide-btn span{
    font-size:12.5px !important;
  }
  .rank-item{
    grid-template-columns:20px minmax(0,1fr) 12px !important;
    gap:6px !important;
  }
  .rank-item .n{
    width:20px !important;
    min-width:20px !important;
  }
  .weekly-row{
    grid-template-columns:20px minmax(0,1fr) 48px !important;
    gap:6px !important;
  }
  .weekly-name-wrap{
    grid-template-columns:minmax(0,1fr) 17px !important;
    column-gap:5px !important;
  }
  .weekly-medal-after{
    width:17px !important;
    height:17px !important;
  }
  .weekly-pct{
    min-width:44px !important;
  }
}

/* 이번 주 활동왕: 제목은 가로 1줄, 운영데이터는 하단 배치 */
.weekly{height:auto !important; min-height:171px !important;}
.weekly .weekly-panel-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
}
.weekly .weekly-head-title{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  min-width:0 !important;
  white-space:nowrap !important;
  color:#6f838a !important;
  font-size:13px !important;
  font-weight:500 !important;
}
.weekly .weekly-head-title i{
  color:var(--orange) !important;
  flex:0 0 auto !important;
}
.weekly .weekly-panel-head .more{
  margin-left:auto !important;
  flex:0 0 auto !important;
}
.weekly-list{padding:4px 18px 10px !important;}
.weekly-data-note{
  display:flex;
  align-items:center;
  padding:9px 18px 12px;
  border-top:1px solid #eef2f3;
}
.weekly-data-note .demo-inline-label{
  margin-left:0 !important;
}
@media (max-width:640px){
  .weekly .weekly-head-title{font-size:12.5px !important;}
  .weekly-data-note{padding:8px 16px 11px !important;}
}

/* 상단 2개 박스 버튼: 텍스트 상하 여백 보정 */
.member-guide-actions .profile-guide-btn,
.member-guide-actions .level-guide-btn{
  min-height:56px !important;
  padding:10px 14px !important;
  line-height:1.2 !important;
  align-items:center !important;
}
.member-guide-actions .profile-guide-btn span,
.member-guide-actions .level-guide-btn span{
  display:inline-block !important;
  line-height:1.2 !important;
}
@media (max-width:620px){
  .member-guide-actions .profile-guide-btn,
  .member-guide-actions .level-guide-btn{
    min-height:52px !important;
    padding:9px 10px !important;
  }
}

/* 상단 2개 버튼: 300px 우측 컬럼 안에서 텍스트가 박스 밖으로 넘지 않도록 조정 */
.member-guide-actions{
  grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr) !important;
  gap:6px !important;
}
.member-guide-actions .profile-guide-btn,
.member-guide-actions .level-guide-btn{
  width:100% !important;
  min-width:0 !important;
  min-height:52px !important;
  padding:8px 8px !important;
  gap:5px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.member-guide-actions .profile-guide-btn span,
.member-guide-actions .level-guide-btn span{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  font-size:13px !important;
  line-height:1.15 !important;
  letter-spacing:-0.035em !important;
}
.member-guide-actions .profile-guide-btn i,
.member-guide-actions .level-guide-btn i{
  flex:0 0 auto !important;
  font-size:16px !important;
}
@media (max-width:620px){
  .member-guide-actions{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;}
  .member-guide-actions .profile-guide-btn,
  .member-guide-actions .level-guide-btn{padding:7px 6px !important;gap:4px !important;}
  .member-guide-actions .profile-guide-btn span,
  .member-guide-actions .level-guide-btn span{font-size:12px !important;letter-spacing:-0.04em !important;}
}

.auth-wrap-signup .signup-id-row{display:flex;align-items:stretch;gap:10px}
.auth-wrap-signup .signup-id-row .input{flex:1;min-width:0}
.auth-wrap-signup .signup-id-check-btn{flex:0 0 128px;min-height:50px!important;border-radius:12px!important;font-size:14px!important;font-weight:500!important}
.auth-wrap-signup .signup-id-status,.auth-wrap-signup .signup-password-guide,.auth-wrap-signup .signup-optional-guide{margin-top:7px;padding-left:2px;font-size:11.5px;line-height:1.55;color:#89989d}
.auth-wrap-signup .signup-id-status.is-success{color:#2f8f76;font-weight:500}
.auth-wrap-signup .signup-id-status.is-error{color:#d45e56;font-weight:500}
.auth-wrap-signup .signup-password-field{margin-bottom:12px!important}
.auth-wrap-signup .signup-password-confirm-field{margin-top:0}
.auth-wrap-signup .signup-birth-gender-grid{align-items:start}
.auth-wrap-signup .signup-birth-selects{display:grid;grid-template-columns:1.35fr .85fr .85fr;gap:7px}
.auth-wrap-signup .signup-birth-selects select{min-width:0!important;padding-left:11px!important;padding-right:28px!important}
.auth-wrap-signup .signup-extra-fields{margin-bottom:22px!important}
.auth-wrap-signup .signup-extra-fields .signup-optional-guide{margin-top:-2px!important;padding-top:5px!important;border-top:1px dashed rgba(216,226,229,.9)}
.auth-wrap-signup .signup-agreement-section{margin:22px 0 20px}
.auth-wrap-signup .signup-agreement-section>h3{margin:0 0 12px;font-size:15px;line-height:1.4;color:#344c55;font-weight:600}
.auth-wrap-signup .signup-agreement-box{border:1px solid #dfe5e7;background:#fff;border-radius:0;padding:12px 18px}
.auth-wrap-signup .signup-agreement-row{min-height:44px;display:flex;align-items:center;gap:10px;color:#4d5e65;font-size:13.5px;line-height:1.45}
.auth-wrap-signup .signup-agreement-row+.signup-agreement-row{border-top:1px solid #edf0f1}
.auth-wrap-signup .signup-agreement-row>label{display:flex;align-items:center;gap:10px;flex:1;min-width:0;cursor:pointer}
.auth-wrap-signup label.signup-agreement-row{cursor:pointer}
.auth-wrap-signup .signup-agreement-row input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:20px;height:20px;min-width:20px;border:1.4px solid #cfd7da;border-radius:4px;background:#fff;display:grid;place-items:center;margin:0;cursor:pointer}
.auth-wrap-signup .signup-agreement-row input[type="checkbox"]:checked{border-color:#3a97b8;background:#3a97b8}
.auth-wrap-signup .signup-agreement-row input[type="checkbox"]:checked:after{content:'✓';color:#fff;font-size:13px;line-height:1;font-weight:700}
.auth-wrap-signup .signup-agreement-all{min-height:49px;font-size:14px;font-weight:500}
.auth-wrap-signup .signup-agreement-all span{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.auth-wrap-signup .signup-agreement-all small{font-size:11px;color:#9aa5a9;font-weight:400}
.auth-wrap-signup .signup-agreement-row em{font-style:normal;color:#2797b1;font-size:11.5px;font-weight:500}
.auth-wrap-signup .signup-agreement-row i{font-style:normal;color:#929fa4;font-size:11.5px}
.auth-wrap-signup .signup-agreement-arrow{margin-left:auto;width:36px;height:36px;border:0;background:transparent;color:#26383f;font-size:28px;font-weight:300;line-height:1;display:grid;place-items:center}
.auth-wrap-signup .signup-captcha-box{margin-top:30px;width:min(300px,100%);display:flex;justify-content:center}
.auth-wrap-signup .signup-captcha-box .cf-turnstile{width:100%}
@media(max-width:620px){
 .auth-wrap-signup .signup-id-row{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:8px}
 .auth-wrap-signup .signup-id-check-btn{width:auto!important;min-width:0!important;flex:none!important;padding:0 9px!important;font-size:13px!important}
 .auth-wrap-signup .signup-birth-gender-grid{grid-template-columns:1fr!important}
 .auth-wrap-signup .signup-birth-selects{grid-template-columns:1.25fr .85fr .85fr}
 .auth-wrap-signup .signup-agreement-box{padding:10px 14px}
 .auth-wrap-signup .signup-agreement-row{font-size:13px;min-height:46px}
 .auth-wrap-signup .signup-agreement-all small{font-size:10.5px}
 .auth-wrap-signup .signup-captcha-box{margin-top:24px}
}
@media(max-width:420px){
 .auth-wrap-signup .signup-id-row{grid-template-columns:1fr}
 .auth-wrap-signup .signup-id-check-btn{width:100%!important;min-height:46px!important}
 .auth-wrap-signup .signup-birth-selects{grid-template-columns:1fr 1fr 1fr;gap:5px}
 .auth-wrap-signup .signup-birth-selects select{font-size:14px!important;padding-left:8px!important;padding-right:20px!important}
 .auth-wrap-signup .signup-agreement-row{font-size:12.5px;gap:8px}
 .auth-wrap-signup .signup-agreement-row>label{gap:8px}
}

/* 3번 파일의 LARGE CIRCLE ART 최종 표시 방식 */
.auth-wrap-signup .signup-character-grid .character-picker-item{
  background:transparent!important;
  border:0!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  border-radius:0!important;
}
.auth-wrap-signup .signup-character-grid .character-picker-item svg{
  width:100%!important;
  height:100%!important;
  overflow:visible!important;
}

.modal:has(.signup-term-content){
  width:min(620px,calc(100vw - 28px));
  max-height:88vh;
}
.signup-term-content{
  max-height:54vh;
  overflow-y:auto;
  padding:2px 8px 4px 0;
  color:#657a83;
  font-size:13px;
  line-height:1.72;
  word-break:keep-all;
}
.signup-term-content::-webkit-scrollbar{width:6px}
.signup-term-content::-webkit-scrollbar-thumb{background:#d5e1e4;border-radius:999px}
.signup-term-content::-webkit-scrollbar-track{background:transparent}
.signup-term-lead{
  margin:0 0 16px;
  padding:12px 14px;
  border-radius:10px;
  background:#f4f9fa;
  color:#526e78;
}
.signup-term-content section{
  margin:0;
  padding:13px 0;
  border-top:1px solid #edf2f3;
}
.signup-term-content section:first-of-type{border-top:0}
.signup-term-content h3{
  margin:0 0 6px;
  color:#48656f;
  font-size:14px;
  font-weight:600;
}
.signup-term-content p{margin:0}
.signup-term-note{
  margin-top:12px!important;
  padding:11px 13px;
  border-radius:9px;
  background:#fff8ed;
  color:#8b765e;
  font-size:11.5px;
  line-height:1.65;
}
@media(max-width:620px){
  .modal:has(.signup-term-content){padding:19px}
  .signup-term-content{max-height:58vh;font-size:12.5px}
  .signup-term-content h3{font-size:13.5px}
}

/* 하단 카테고리 바로가기 영역의 위쪽 우측에 글쓰기 버튼 배치 */
.ys-bottom-write-zone{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  padding:18px 0 14px;
}
.ys-bottom-write-zone .ys-bottom-write-200{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:144px;
  min-height:80px;
  padding:16px 36px !important;
  border-radius:14px !important;
  font-size:27px !important;
  font-weight:500 !important;
  line-height:1 !important;
  letter-spacing:.08em !important;
  background:#d35400 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 7px 18px rgba(211,84,0,.18);
}
.ys-bottom-write-zone .ys-bottom-write-200:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(211,84,0,.24);
}
@media(max-width:620px){
  /* 모바일은 기존 하단 고정 메뉴의 글쓰기 버튼을 사용하므로 중복 노출 방지 */
  .ys-bottom-write-zone{display:none !important;}
}

/* 회원가입 입력창의 사라지는 안내문구(placeholder): 16px → 14px, 연한 주황색 */
.auth-wrap-signup .input::placeholder,
.auth-wrap-signup textarea::placeholder{
  font-size:14px !important;
  color:#D9A06E !important;
  opacity:1 !important;
}
.auth-wrap-signup .input::-webkit-input-placeholder,
.auth-wrap-signup textarea::-webkit-input-placeholder{
  font-size:14px !important;
  color:#D9A06E !important;
  opacity:1 !important;
}

.site-head .brand,
.site-head .brand-home-pwm{
  display:flex !important;
  align-items:center !important;
}
.site-head .brand{
  gap:12px !important;
  min-width:0;
}
.site-head .brand img:first-child{
  flex:0 0 auto;
}
.site-head .brand .brand-copy-svg-centered{
  display:block;
  width:124px;
  height:auto;
  max-width:100%;
  flex:0 0 auto;
  object-fit:contain;
  object-position:center center;
  align-self:center;
  margin:0;
}
@media (max-width:1200px){
  .site-head .brand .brand-copy-svg-centered{
    width:113px;
  }
}
@media (max-width:900px){
  .site-head .brand{
    gap:8px !important;
  }
  .site-head .brand .brand-copy-svg-centered{
    width:99px;
  }
}
@media (max-width:680px){
  .site-head .brand .brand-copy-svg-centered{
    width:80px;
  }
}

/* 8개 상위 카테고리: 제공 이미지의 우측 일러스트만 추출해 히어로 우측에 배치 */
.compact-category-card-hero{position:relative !important;isolation:isolate}
.compact-category-card-hero>.compact-category-intro{
  width:100% !important;
  max-width:57% !important;
  min-height:178px !important;
  position:relative !important;
  z-index:2 !important;
  align-content:center !important;
}
.compact-category-card-hero>.category-card-grid{position:relative !important;z-index:2 !important}
.compact-category-card-hero::before{
  content:"";
  position:absolute;
  z-index:1;
  top:10px;
  right:14px;
  width:43%;
  height:190px;
  background-repeat:no-repeat;
  background-position:right center;
  background-size:contain;
  pointer-events:none;
  transform:scale(.7);
  transform-origin:right center;
}
.compact-category-card-hero[data-menu="communication"]::before{background-image:url("../assets/img/445dca9987.webp")}
.compact-category-card-hero[data-menu="place"]::before{background-image:url("../assets/img/f05884bc5c.webp")}
.compact-category-card-hero[data-menu="used"]::before{background-image:url("../assets/img/03ed55a66a.webp")}
.compact-category-card-hero[data-menu="fun"]::before{background-image:url("../assets/img/5c973cfc19.webp")}
.compact-category-card-hero[data-menu="region"]::before{background-image:url("../assets/img/a0a4ddb4a0.webp")}
.compact-category-card-hero[data-menu="wholesale"]::before{background-image:url("../assets/img/ca4b6866a3.webp")}
.compact-category-card-hero[data-menu="item"]::before{background-image:url("../assets/img/ecaff2f9c9.webp")}
.compact-category-card-hero[data-menu="info"]::before{background-image:url("../assets/img/a68c58ab05.webp")}

@media(max-width:900px){
  .compact-category-card-hero>.compact-category-intro{max-width:58% !important;min-height:165px !important}
  .compact-category-card-hero::before{width:41%;height:172px;top:8px;right:8px}
}
@media(max-width:720px){
  .compact-category-card-hero>.compact-category-intro{max-width:61% !important;min-height:150px !important;padding-right:0 !important}
  .compact-category-card-hero::before{display:block;width:37%;height:148px;top:8px;right:5px}
}
@media(max-width:520px){
  .compact-category-card-hero>.compact-category-intro{max-width:100% !important;min-height:0 !important}
  .compact-category-card-hero::before{display:none}
}

/* 우측 캐릭터 시선 강도 완화: 텍스트/카테고리 가독성 우선 */
.compact-category-card-hero::before{
  opacity:.76 !important;
  filter:saturate(.90) contrast(.98) !important;
}
.shop-hero-art-image,
.shop-hero-art-image-only{
  opacity:.78 !important;
  filter:saturate(.92) contrast(.98) !important;
}

/* 검색란: 우측 끝 위치는 유지하고 가로 폭만 기존 대비 30% 축소 */
.global-search{width:49% !important;margin-left:auto !important;}
@media(max-width:900px){.global-search{width:49% !important;margin-left:auto !important;}}
@media(max-width:620px){.global-search{width:49% !important;margin-left:auto !important;}}

/* 상단 헤더 리디자인(2026-08-10): PC 화면에서 검색창 placeholder가 잘리지 않도록 폭 보정 */
@media(min-width:901px){
  .global-search{width:62% !important;}
}

/* 새 로고 이미지는 기존 헤더의 PWM 크기 변화 기능을 그대로 유지한다. */
.site-head .brand .ys-main-logo-new{
  display:block !important;
  width:108px !important;
  height:58px !important;
  flex:0 0 108px !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 !important;
  background:transparent !important;
}

/* 기존 226px 문구에서 정확히 약 20% 축소: 226 x .8 = 180.8px */
.site-head .brand .brand-copy-wave,
.site-head .brand .brand-copy-svg-centered.brand-copy-wave{
  display:block !important;
  width:181px !important;
  height:auto !important;
  max-width:none !important;
  flex:0 0 181px !important;
  margin:0 !important;
  overflow:visible !important;
  align-self:center !important;
}

/* 새 로고+문구가 기존 310px 좌측 칼럼 안에서 안정적으로 배치되도록 간격만 정리 */
@media (min-width:901px){
  .site-head .brand,
  .site-head .brand-home-pwm{
    gap:4px !important;
    padding-left:6px !important;
  }
}

/* 3번 PDF의 곡선 배치를 그대로 쓰되, 2번 로고의 흰색/블루 입체 글자 질감으로 통일 */
.site-head .brand-copy-wave .ys-slogan-glyph{
  fill:url(#ysSloganGlossGreen) !important;
  stroke:#0752e8;
  stroke-width:.42px;
  paint-order:stroke fill;
  filter:url(#ysSloganSoft3D);
  transform-box:fill-box;
  transform-origin:center center;
  will-change:transform,filter;
  animation:ysSloganWaveFlow 5.4s cubic-bezier(.45,.05,.55,.95) infinite;
  animation-delay:calc(var(--wave-i) * .14s - 1.4s);
}

/* 한 글자씩 순차적으로 올라왔다 내려가며 파동이 좌->우로 흐르는 효과 */
@keyframes ysSloganWaveFlow{
  0%,100%{transform:translateY(0) scale(1);filter:url(#ysSloganSoft3D) brightness(1)}
  16%{transform:translateY(-1.75px) scale(1.055);filter:url(#ysSloganSoft3D) brightness(1.08)}
  32%{transform:translateY(.65px) scale(.995);filter:url(#ysSloganSoft3D) brightness(1.015)}
  48%,82%{transform:translateY(0) scale(1);filter:url(#ysSloganSoft3D) brightness(1)}
}

/* 태블릿/모바일에서는 기존 반응형 공간을 침범하지 않도록 같은 비율로 축소 */
@media (max-width:900px){
  .site-head .brand .brand-copy-wave,
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave{width:145px !important;flex-basis:145px !important}
}
@media (max-width:680px){
  .site-head .brand .brand-copy-wave,
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave{width:116px !important;flex-basis:116px !important}
}
@media (max-width:620px){
  .site-head .brand .ys-main-logo-new{width:88px !important;height:46px !important;flex-basis:88px !important}
}

@media (prefers-reduced-motion:reduce){
  .site-head .brand-copy-wave .ys-slogan-glyph{
    animation:none !important;
    transform:none !important;
    filter:url(#ysSloganSoft3D) !important;
  }
}

.site-head .brand .brand-copy-provided{
  display:block !important;
  width:181px !important;
  height:auto !important;
  max-width:none !important;
  flex:0 0 181px !important;
  margin:0 !important;
  align-self:center !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.site-head .brand .brand-copy-provided,
.site-head .brand .brand-copy-provided:hover,
.site-head .brand .brand-copy-provided:focus{
  transform:none !important;
  filter:none !important;
}
@media (max-width:900px){
  .site-head .brand .brand-copy-provided{width:145px !important;flex-basis:145px !important}
}
@media (max-width:680px){
  .site-head .brand .brand-copy-provided{width:116px !important;flex-basis:116px !important}
}

/* 제공 파일의 형상·색상은 그대로 유지하고, 글자 단위로만 좌→우 웨이브 이동 */
.site-head .brand .brand-copy-wave-glyphs{
  position:relative !important;
  display:block !important;
  width:181px !important;
  height:26.14px !important;
  max-width:none !important;
  flex:0 0 181px !important;
  margin:0 !important;
  overflow:visible !important;
  line-height:0 !important;
  isolation:isolate;
  transform:none !important;
  filter:none !important;
}
.site-head .brand .brand-copy-wave-glyphs .ys-wave-char{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  background-image:url("../assets/img/e2b2258e97.png");
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% 100% !important;
  clip-path:inset(0 var(--clip-r) 0 var(--clip-l));
  -webkit-clip-path:inset(0 var(--clip-r) 0 var(--clip-l));
  transform:translate3d(0,0,0);
  transform-origin:center center;
  will-change:transform;
  animation:ysProvidedGlyphWave 4.2s cubic-bezier(.45,.05,.55,.95) infinite;
  animation-delay:calc(var(--wave-i) * .13s - 1.3s);
  pointer-events:none;
}
@keyframes ysProvidedGlyphWave{
  0%,100%{transform:translate3d(0,0,0)}
  14%{transform:translate3d(0,-1.0px,0)}
  27%{transform:translate3d(0,-3.2px,0)}
  40%{transform:translate3d(0,.8px,0)}
  55%,88%{transform:translate3d(0,0,0)}
}
@media (max-width:900px){
  .site-head .brand .brand-copy-wave-glyphs{width:145px !important;height:20.94px !important;flex-basis:145px !important}
}
@media (max-width:680px){
  .site-head .brand .brand-copy-wave-glyphs{width:116px !important;height:16.75px !important;flex-basis:116px !important}
}
@media (prefers-reduced-motion:reduce){
  .site-head .brand .brand-copy-wave-glyphs .ys-wave-char{animation:none !important;transform:none !important}
}

:root{
  --ys-action-blue:#325c9f;
  --ys-action-blue-hover:#284d86;
  --ys-action-blue-pressed:#234578;
  --ys-action-blue-soft:#eef3f9;
  --ys-action-blue-border:#b7c5da;
  --ys-action-blue-text:#325c9f;
  --ys-live-green:#3e9379;
}

/* ===== 오늘의 토론: 제공 PDF 시안 재현 ===== */
.debate.debate-reference-card{
  position:relative !important;
  overflow:hidden !important;
  min-height:174px !important;
  height:auto !important;
  padding:25px 31px 24px !important;
  border:0 !important;
  border-radius:18px !important;
  background:var(--ys-action-blue) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.debate.debate-reference-card::after{display:none !important}
.debate-reference-card .debate-topline{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:15px !important;
  min-height:23px !important;
}
.debate-reference-card .eyebrow{
  margin:0 !important;
  padding:0 !important;
  color:#e5ebf3 !important;
  opacity:1 !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.35 !important;
  letter-spacing:.08em !important;
  white-space:nowrap !important;
}
.debate-reference-card .debate-status{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:22px !important;
  padding:3px 11px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--ys-live-green) !important;
  color:#eef7f3 !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
}
.debate-reference-card .debate-status.done{
  background:#e8f1ed !important;
  color:#2f715e !important;
}
.debate-reference-card .debate-title{
  margin:8px 0 18px !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:400 !important;
  line-height:1.38 !important;
  letter-spacing:-.035em !important;
}
.debate-reference-card .debate-actions{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:12px !important;
  margin:0 !important;
}
.debate-reference-card .debate-actions button{
  min-height:42px !important;
  height:42px !important;
  padding:0 20px !important;
  border-radius:19px !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.03em !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.debate-reference-card .debate-main-btn{
  min-width:148px !important;
  border:1px solid #fff !important;
  background:#fff !important;
  color:#687f8c !important;
}
.debate-reference-card .debate-main-btn:hover{
  background:#f5f7fa !important;
  border-color:#f5f7fa !important;
  color:#536c79 !important;
}
.debate-reference-card .debate-extra-btn{
  min-width:177px !important;
  border:1px solid #9cb1d1 !important;
  background:transparent !important;
  color:#dce5f2 !important;
}
.debate-reference-card .debate-extra-btn:hover{
  border-color:#d4dfed !important;
  background:rgba(255,255,255,.07) !important;
  color:#fff !important;
}
.debate-reference-card .debate-meta{
  margin-left:4px !important;
  color:#d8e2f0 !important;
  opacity:1 !important;
  font-size:12.5px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  white-space:nowrap !important;
}

/* 토론 모달도 메인 카드와 같은 블루 계열로 연결 */
.debate-choice input:checked + span{
  border-color:var(--ys-action-blue) !important;
  background:var(--ys-action-blue-soft) !important;
  color:var(--ys-action-blue) !important;
  box-shadow:0 0 0 2px rgba(50,92,159,.09) !important;
}
.debate-result-bar span{background:var(--ys-action-blue) !important}

/* ===== 사이트 핵심 CTA 버튼 색상 통일 =====
   기능/클래스/이벤트는 그대로 두고 색상만 토론 카드 계열로 통일한다. */
.join-btn,
.primary-btn,
.login-btn,
.write-top,
.admin-btn.primary,
.admin-login-submit,
.shop-add{
  background:var(--ys-action-blue) !important;
  border-color:var(--ys-action-blue) !important;
  color:#fff !important;
}
.join-btn:hover,
.primary-btn:hover,
.login-btn:hover,
.write-top:hover,
.admin-btn.primary:hover,
.admin-login-submit:hover,
.shop-add:hover{
  background:var(--ys-action-blue-hover) !important;
  border-color:var(--ys-action-blue-hover) !important;
  color:#fff !important;
}
.join-btn:active,
.primary-btn:active,
.login-btn:active,
.write-top:active,
.admin-btn.primary:active,
.admin-login-submit:active,
.shop-add:active{
  background:var(--ys-action-blue-pressed) !important;
  border-color:var(--ys-action-blue-pressed) !important;
}

/* 보조 버튼/신청 보조 동작은 같은 블루 계열의 흰색 아웃라인 스타일 */
.secondary-btn,
.signup-id-check-btn,
.signup-reroll-btn,
.shop-detail-btn,
.shop-cart-btn{
  border-color:var(--ys-action-blue-border) !important;
  background:#fff !important;
  color:var(--ys-action-blue-text) !important;
}
.secondary-btn:hover,
.signup-id-check-btn:hover,
.signup-reroll-btn:hover,
.shop-detail-btn:hover,
.shop-cart-btn:hover{
  border-color:var(--ys-action-blue) !important;
  background:var(--ys-action-blue-soft) !important;
  color:var(--ys-action-blue) !important;
}

/* 선택형 버튼의 활성색도 같은 계열로 정리 */
.filter.active,
.board-page-btn.active,
.job-tab.active{
  background:var(--ys-action-blue) !important;
  border-color:var(--ys-action-blue) !important;
  color:#fff !important;
}
.job-filter-chip.active,
.saved-active,
.liked-active{
  background:var(--ys-action-blue-soft) !important;
  border-color:var(--ys-action-blue-border) !important;
  color:var(--ys-action-blue) !important;
}
.link-btn{color:var(--ys-action-blue) !important}

/* 의미색은 보존: 위험/삭제, 성공, 네이버·카카오 브랜드 버튼은 색상 통일 대상에서 제외 */
.admin-btn.danger,.admin-mini-btn.danger{ /* 기존 위험색 유지 */ }
.admin-btn.success,.admin-mini-btn.success{ /* 기존 성공색 유지 */ }
.social-btn.naver,.social-btn.kakao{ /* 브랜드 고유색 유지 */ }

@media(max-width:900px){
  .debate-reference-card .debate-actions{
    flex-wrap:wrap !important;
  }
  .debate-reference-card .debate-meta{
    flex:1 1 100% !important;
    margin-left:0 !important;
  }
}
@media(max-width:620px){
  .debate.debate-reference-card{
    min-height:0 !important;
    padding:20px 18px 21px !important;
    border-radius:16px !important;
  }
  .debate-reference-card .debate-topline{gap:10px !important}
  .debate-reference-card .eyebrow{font-size:13px !important}
  .debate-reference-card .debate-status{font-size:10.5px !important;padding:3px 9px !important}
  .debate-reference-card .debate-title{
    margin:9px 0 16px !important;
    font-size:18px !important;
    line-height:1.45 !important;
  }
  .debate-reference-card .debate-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
  }
  .debate-reference-card .debate-actions button{
    width:100% !important;
    min-width:0 !important;
    padding:0 10px !important;
    font-size:12.5px !important;
  }
  .debate-reference-card .debate-meta{
    grid-column:1/-1 !important;
    width:100% !important;
    margin-top:2px !important;
    font-size:11.5px !important;
    white-space:normal !important;
  }
}

/* =========================================================
   게시글 날짜 ↔ 승인 배지 전환 시스템 (완성형)
   - 모든 하위 카테고리 목록의 첫 열은 날짜/배지 전용
   - 방장은 승인 요청, 관리자는 승인·반려·회수·감사 가능
   ========================================================= */
.list-head,.post-line{grid-template-columns:90px minmax(0,1fr) 120px 80px 55px 62px!important}
.list-head>span:first-child{text-align:center}
.post-award-slot-cell{display:flex;align-items:center;justify-content:center;min-width:0;width:100%}
.post-award-slot-control{width:100%;min-width:0;min-height:34px;padding:2px;border:0;background:transparent;border-radius:12px;display:flex;align-items:center;justify-content:center;color:inherit}
button.post-award-slot-control{cursor:pointer;transition:background .16s ease,transform .16s ease}
button.post-award-slot-control:hover,button.post-award-slot-control:focus-visible{background:#eff8fa;transform:translateY(-1px);outline:2px solid rgba(42,150,189,.18);outline-offset:1px}
.post-award-date{display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:27px;padding:0 9px;border:1px solid #dce8ea;border-radius:999px;background:linear-gradient(180deg,#fff,#f4f8f9);color:#6f858d;font-size:12px;font-weight:500;letter-spacing:.03em;box-shadow:0 2px 5px rgba(28,83,96,.05);white-space:nowrap}
.post-award-badge{--badge-accent:#2f9dc2;--badge-soft:#e8f5ff;--badge-dark:#176e9d;display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;height:26px;padding:0 17px;border:1.5px solid var(--badge-accent);border-radius:999px;background:var(--badge-soft);color:var(--badge-dark);font-weight:500;line-height:1;white-space:nowrap;overflow:hidden;box-shadow:none}
.post-award-badge .post-award-icon{display:none}
.post-award-badge .post-award-label{display:block;min-width:0;font-size:clamp(10px,calc(13px - (var(--badge-chars,2) * .3px)),12px);overflow:hidden;text-overflow:clip;white-space:nowrap;letter-spacing:-.02em}
.post-award-badge.tone-blue{--badge-accent:#238ee9;--badge-soft:#e8f4ff;--badge-dark:#1266ba}
.post-award-badge.tone-red{--badge-accent:#f14545;--badge-soft:#ffeaea;--badge-dark:#ba2020}
.post-award-badge.tone-orange{--badge-accent:#f29b18;--badge-soft:#fff3d8;--badge-dark:#b76800}
.post-award-badge.tone-green{--badge-accent:#39ae45;--badge-soft:#eaf9e9;--badge-dark:#247b2c}
.post-award-badge.tone-purple{--badge-accent:#7652df;--badge-soft:#efeaff;--badge-dark:#5134ac}
.post-award-badge.tone-pink{--badge-accent:#ef4f79;--badge-soft:#ffeaf0;--badge-dark:#b82950}.post-award-badge.size-list{height:32px;padding:0 21px;border-radius:999px;border-width:1.5px}.post-award-badge.size-list .post-award-label{font-size:clamp(13px,calc(15.5px - (var(--badge-chars,2) * .28px)),15px);font-weight:500;letter-spacing:-.01em}.post-award-badge.size-home{height:24px;padding:0 16px;border-radius:999px}.post-award-badge.size-home .post-award-label{font-size:clamp(10px,calc(12.5px - (var(--badge-chars,2) * .28px)),12px)}.post-title-badges{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto}.board-title-cell .post-title .post-title-text{flex:1 1 auto;min-width:0}
.post-award-pending-dot{width:7px;height:7px;border-radius:50%;background:#ef9b28;box-shadow:0 0 0 3px #fff3df;margin-left:3px;flex:0 0 7px}
.post-award-status-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:12px 0 2px;border:1px solid #e1ecee;border-radius:11px;background:#f8fbfc;color:#607981;font-size:12px}
.post-award-status-strip b{color:#456b77}
.post-award-status-strip .pending{color:#aa6e22;font-weight:500}
.post-award-manage-btn{margin-left:auto}

/* 배지 선택 모달 */
.award-modal-post{border:1px solid #e2ebed;border-radius:12px;background:#f8fbfc;padding:13px;margin-bottom:12px}
.award-modal-post h3{font-size:14px;margin:0 0 5px;color:#456a76}.award-modal-post p{font-size:11.5px;line-height:1.65;margin:0;color:#758a91;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.award-modal-metrics{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.award-modal-metrics span{padding:4px 8px;border-radius:999px;background:#fff;border:1px solid #e0e9eb;font-size:10.5px;color:#6d8289}
.award-recommendations{display:grid;gap:7px;margin:10px 0 13px}.award-recommendation{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e3ebed;border-radius:10px;background:#fff}.award-recommendation .reason{min-width:0;font-size:10.5px;color:#788a90;line-height:1.5}.award-recommendation .reason b{display:block;color:#4d6c77;font-size:11.5px}
.award-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:310px;overflow:auto;padding:2px}
.award-choice{position:relative;min-width:0}.award-choice input{position:absolute;opacity:0;pointer-events:none}.award-choice-card{min-height:58px;border:1px solid #dfe9eb;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;padding:7px;cursor:pointer;transition:.15s}.award-choice input:checked+.award-choice-card{border-color:#2a96bd;background:#eef9fc;box-shadow:0 0 0 2px rgba(42,150,189,.14)}.award-choice-card:hover{border-color:#9bcfda}
.award-current-note{padding:9px 11px;border-radius:9px;background:#fff8e9;color:#8d682f;font-size:11px;margin-bottom:11px}

/* 관리자 승인 센터 */
.badge-admin-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:14px}
.badge-admin-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.badge-admin-card span{display:block;font-size:11px;color:#8b9ba0}.badge-admin-card b{display:block;margin-top:3px;font-size:23px;color:#436a77}
.badge-recommend-cell{max-width:300px}.badge-recommend-copy{display:block;margin-top:5px;font-size:10.5px;color:#85969c;line-height:1.5}
.badge-audit-detail{max-width:340px;white-space:normal;line-height:1.55}
.badge-admin-intro{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border:1px solid #d7ebef;background:#f3fbfd;border-radius:12px;margin-bottom:14px}.badge-admin-intro i{font-size:21px;color:#2a96bd}.badge-admin-intro b{display:block;color:#426a77}.badge-admin-intro p{font-size:11.5px;color:#71868d;margin:3px 0 0;line-height:1.65}

@media(max-width:620px){
 .list-head,.post-line{grid-template-columns:78px minmax(0,1fr)!important}
 .post-award-badge{height:27px;gap:3px;padding:2px 6px 2px 3px}
 .post-award-badge .post-award-icon{width:20px;height:20px;flex-basis:20px;font-size:12px;border-radius:7px}
 .post-award-badge .post-award-label{font-size:clamp(8.5px,calc(12px - (var(--badge-chars,2) * .35px)),10.5px)}
 .post-award-date{min-width:48px;height:25px;padding:0 7px;font-size:10.5px}
 .award-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .badge-admin-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:380px){.award-choice-grid{grid-template-columns:1fr}.badge-admin-summary{grid-template-columns:1fr}}

/* =========================================================
   SITE-WIDE PILL / TYPOGRAPHY UNIFICATION
   Reference: supplied 2nd sample box (full stadium silhouette)
   Colors are intentionally inherited from the existing design.
   ========================================================= */
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:100;font-style:normal;font-display:swap}
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'SCDream Site';src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');font-weight:600 900;font-style:normal;font-display:swap}




html,body,button,input,select,textarea,option{font-family:'SCDream Site'!important}
body *:not(.ti){font-family:'SCDream Site'!important}
svg text{font-family:'SCDream Site'!important}
.ti,.ti::before{font-family:'tabler-icons-subset'!important}

/* Common textual controls: generous horizontal room + tight vertical room. */
.join-btn,.primary-btn,.secondary-btn,.write-top,.admin-btn,.admin-mini-btn,
.login-btn,.social-btn,.comment-badge-trigger,.filter,.job-filter-chip{
  border-radius:999px!important;
  min-height:0!important;
  height:auto!important;
  padding-block:5px!important;
  padding-inline:16px!important;
  line-height:1.12!important;
}
.admin-mini-btn{padding-block:4px!important;padding-inline:10px!important}
.filter,.job-filter-chip{padding-block:4px!important;padding-inline:14px!important}

/* Tag / chip family: same stadium geometry, existing colors untouched. */
.badge,.badge-approval-chip,.grade-badge,.grade-badge.mini,.status-pill,.admin-status,
.account-level-pill,.profile-card-levelbadge,.demo-chip,.job-type-badge,.job-tag,
.post-detail-tag,.debate-vote-pill,.category-mini-badge,.hub-pill,.admin-badge-summary-chip,
.award-modal-metrics span,.post-award-date{
  border-radius:999px!important;
  min-height:0!important;
  height:auto!important;
  line-height:1.08!important;
  padding-block:3px!important;
  padding-inline:11px!important;
  white-space:nowrap;
}
.grade-badge.mini,.demo-chip{padding-block:2px!important;padding-inline:8px!important}
.hub-pill,.filter,.job-filter-chip,.post-detail-tag,.job-tag{padding-inline:13px!important}
.category-mini-badge{padding-block:3px!important;padding-inline:10px!important}

/* Auto/admin/category post badges — one exact pill ratio across every source. */
.post-award-badge,
.post-award-badge.size-home,.post-award-badge.size-list,.post-award-badge.size-detail,
.post-award-badge.size-admin,.post-award-badge.size-picker{
  width:max-content!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  border-radius:999px!important;
  line-height:1!important;
  padding-block:3px!important;
  padding-inline:14px!important;
  gap:0!important;
  font-weight:500!important;
}
.post-award-badge.size-home{padding-block:2.5px!important;padding-inline:11px!important}
.post-award-badge.size-detail{padding-block:4px!important;padding-inline:16px!important}
.post-award-badge.size-admin,.post-award-badge.size-picker{padding-inline:13px!important}
.post-award-badge .post-award-icon{display:none!important}
.post-award-badge .post-award-label{
  font-family:'SCDream Site'!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  font-size:12.5px!important;
}
.post-award-badge.size-home .post-award-label{font-size:11px!important}
.post-award-badge.size-detail .post-award-label{font-size:13.5px!important}
.post-award-badge.size-admin .post-award-label,.post-award-badge.size-picker .post-award-label{font-size:12px!important}

/* Legacy SVG post badges: shell stays proportional; internal boxes were converted to rx=height/2. */
.community-post-badge{border-radius:999px!important;overflow:visible!important}
.community-post-badge text{font-family:'SCDream Site'!important;font-weight:500!important}

/* Comment badges rebuilt as HTML pills: original icon + original accent + SCDream text. */
.comment-badge-item{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  padding:2px 10px 2px 5px!important;
  border:1.5px solid var(--comment-badge-color,#2a96bd)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#26323a!important;
  line-height:1!important;
  overflow:hidden!important;
  vertical-align:middle!important;
  box-sizing:border-box!important;
}
.comment-badge-item.compact{gap:4px!important;padding:1.5px 8px 1.5px 4px!important}
.comment-badge-item img.comment-badge-icon,
.comment-badge-item.compact img.comment-badge-icon,
.comment-badge-option-preview img.comment-badge-icon,
.comment-badge-current img.comment-badge-icon{
  display:block!important;
  flex:0 0 auto!important;
  width:24px!important;
  height:24px!important;
  max-width:24px!important;
  min-width:24px!important;
  object-fit:contain!important;
  opacity:1!important;
  border-radius:7px!important;
}
.comment-badge-item.compact img.comment-badge-icon{width:20px!important;height:20px!important;max-width:20px!important;min-width:20px!important;border-radius:6px!important}
.comment-badge-label{
  display:block!important;
  min-width:0!important;
  font-family:'SCDream Site'!important;
  font-size:12.5px!important;
  font-weight:500!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
}
.comment-badge-item.compact .comment-badge-label{font-size:11px!important}
.comment-badge-option-preview{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  min-width:0!important;
  overflow:visible!important;
  flex:0 1 auto!important;
}
.comment-badge-option-preview .comment-badge-item.compact{max-width:100%!important}
.comment-badge-current .comment-badge-item.compact img.comment-badge-icon{width:20px!important;height:20px!important;max-width:20px!important}
.preview-reaction .comment-badge-item{max-width:108px!important}
.preview-reaction .comment-badge-item .comment-badge-label{overflow:hidden!important;text-overflow:ellipsis!important}
.preview-reaction .comment-badge-item.compact img.comment-badge-icon{width:18px!important;height:18px!important;max-width:18px!important;min-width:18px!important}
.preview-reaction .comment-badge-item.compact .comment-badge-label{font-size:10.5px!important}

/* Picker/current shells are containers, not badge silhouettes; keep them neutral. */
.admin-badge-option,.comment-badge-option,.award-choice-card{font-family:'SCDream Site'!important}

@media(max-width:620px){
  .post-award-badge,.post-award-badge.size-list{padding-block:2.5px!important;padding-inline:10px!important}
  .post-award-badge .post-award-label,.post-award-badge.size-list .post-award-label{font-size:10.8px!important}
  .post-award-badge.size-detail .post-award-label{font-size:12.5px!important}
  .comment-badge-item{padding:2px 9px 2px 4px!important}
  .comment-badge-label{font-size:11.8px!important}
}

/* =========================================================
   87개 하위카테고리 영역 폰트 경량화
   - 일반 배지/태그 글자: SCDream4 Regular
   - 강조/관리/선택 상태: SCDream5 Medium
   - 기존 색상, 크기, 필(스타디움) 박스 형태는 변경하지 않음
   ========================================================= */
@font-face{
  font-family:'SCDream Category';
  src:local('S-Core Dream 4 Regular'),url(../assets/fonts/3651a304ea.woff2) format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'SCDream Category';
  src:local('S-Core Dream 5 Medium'),url('../assets/fonts/3651a304ea.woff2') format('woff2');
  font-weight:500;
  font-style:normal;
  font-display:swap;
}

/* 게시판 목록에 노출되는 카테고리별 배지: 기존 Bold(6) → Regular(4) */
.post-award-badge.type-category{
  font-family:'SCDream Category','SCDream Site',sans-serif!important;
  font-weight:400!important;
}
.post-award-badge.type-category .post-award-label{
  font-family:'SCDream Category','SCDream Site',sans-serif!important;
  font-weight:400!important;
  letter-spacing:-.01em!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* 상세/관리자 선택 화면은 가독성을 위해 Medium(5)까지만 사용 */
.post-award-badge.type-category.size-detail .post-award-label,
.post-award-badge.type-category.size-admin .post-award-label,
.post-award-badge.type-category.size-picker .post-award-label{
  font-weight:500!important;
}

/* 87개 하위카테고리 이름이 표시되는 허브/홈 요소도 4·5 굵기로 제한 */
.category-button .label,
.category-card strong,
.home-subcategory-name{
  font-family:'SCDream Category','SCDream Site',sans-serif!important;
  font-weight:500!important;
}
.category-mini-badge,
.hub-pill,
.filter{
  font-family:'SCDream Category','SCDream Site',sans-serif!important;
  font-weight:400!important;
}

/* Uploaded SVG badge sets: post/community 287 + comment 78 */
.ys-post-badge,.ys-comment-badge{display:inline-block;vertical-align:middle;flex:0 0 auto;overflow:visible}
.ys-post-badge{height:22px;width:auto}.ys-post-badge.size-home{height:19px}.ys-post-badge.size-detail{height:27px}.ys-post-badge.size-admin{height:24px}.ys-post-badge.size-picker{height:30px}
.ys-author-badge{height:20px;width:auto;display:inline-block;vertical-align:middle;flex:0 0 auto;margin-right:3px}
.ys-comment-badge{height:25px;width:auto}.ys-comment-badge.compact{height:22px}.ys-comment-badge.admin{height:28px}
.post-title-badges-v2{display:inline-flex;align-items:center;gap:5px;margin-right:6px;vertical-align:middle;max-width:44%;overflow:hidden;flex:0 0 auto}
.post-title-badges-v2 .ys-post-badge{max-width:145px}
.board-title-cell .post-title,.preview-title{align-items:center!important}
.compact-row.home-feed-row .title{display:flex;align-items:center;min-width:0}
.compact-row.home-feed-row .post-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ys-author-prefix{display:inline-flex;align-items:center;margin-right:2px;flex:0 0 auto}
/* old award visuals are superseded by the uploaded SVG catalog */
.post-award-status-strip,.post-award-badge,.post-admin-badges:not(.post-title-badges-v2){display:none!important}
/* New comment SVGs replace icon-based comment badges */
.comment-badge-item{border:0!important;background:transparent!important;padding:0!important;min-height:0!important;height:auto!important;overflow:visible!important}
.comment-badge-item .comment-badge-icon,.comment-badge-item .comment-badge-label{display:none!important}
.comment-badge-option-preview{height:38px!important;width:auto!important;min-width:120px!important;overflow:visible!important;justify-content:center}
.comment-badge-option{min-height:64px}
.comment-badge-option-copy{flex:1}
.comment-badge-current{gap:7px!important}
.comment-badge-admin-preview{align-items:center!important}
/* Admin catalog */
.ys-badge-admin-hero{display:flex;align-items:flex-start;gap:12px;padding:15px 16px;border:1px solid #d9e9ed;background:linear-gradient(135deg,#f4fbfd,#fff);border-radius:13px;margin-bottom:14px}.ys-badge-admin-hero i{font-size:24px;color:var(--sky-deep)}.ys-badge-admin-hero b{display:block;color:#426a77}.ys-badge-admin-hero p{margin:4px 0 0;font-size:12px;color:#71858d;line-height:1.65}
.ys-badge-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.ys-badge-summary>div{border:1px solid var(--line);background:#fff;border-radius:11px;padding:13px}.ys-badge-summary span{display:block;font-size:10.5px;color:#8d9da2}.ys-badge-summary b{display:block;font-size:22px;color:#456c79;margin-top:3px}
.ys-badge-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:610px;overflow:auto;padding:2px}.ys-badge-lib-card{min-width:0;border:1px solid #e1eaec;border-radius:10px;background:#fff;padding:9px;display:flex;flex-direction:column;gap:7px}.ys-badge-lib-card.disabled{opacity:.45;background:#f7f8f8}.ys-badge-lib-preview{height:34px;display:flex;align-items:center;justify-content:center;overflow:hidden}.ys-badge-lib-copy{display:flex;align-items:center;gap:6px;min-width:0}.ys-badge-lib-copy>div{min-width:0;flex:1}.ys-badge-lib-copy b{display:block;font-size:11px;color:#526f79;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ys-badge-lib-copy small{display:block;font-size:9.5px;color:#94a3a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ys-badge-toggle{border:1px solid #d9e4e6;background:#fff;border-radius:7px;padding:5px 7px;font-size:9px;color:#668088;white-space:nowrap}.ys-badge-toggle.on{border-color:#b9dfd5;color:#2d8d71;background:#f4fcf9}.ys-badge-toggle.off{border-color:#ebd0ce;color:#c35c54;background:#fff8f7}
.ys-badge-use-chip{display:inline-flex;align-items:center;padding:2px 6px;border-radius:8px;font-size:8.5px;background:#edf6f8;color:#4e8593}.ys-badge-use-chip.author{background:#eef8f5;color:#4c8978}.ys-badge-use-chip.title{background:#f4efff;color:#7359c4}
.ys-badge-post-list{display:flex;flex-direction:column;gap:7px}.ys-badge-post-row{display:grid;grid-template-columns:52px minmax(0,1fr) 120px 150px auto;gap:8px;align-items:center;padding:10px 11px;border:1px solid #e8eef0;border-radius:10px}.ys-badge-post-row .title{min-width:0}.ys-badge-post-row .title b{display:block;font-size:11.5px;color:#4c6974;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ys-badge-post-row .title small{font-size:9.5px;color:#97a4a8}.ys-badge-assigned{display:flex;align-items:center;gap:4px;min-height:25px;overflow:hidden}
.ys-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto;padding:2px}.ys-picker-card{position:relative;border:1px solid #e0e9eb;border-radius:10px;background:#fff;padding:8px;min-height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}.ys-picker-card:has(input:checked){border-color:#2a96bd;background:#eef9fc;box-shadow:inset 0 0 0 1px #2a96bd}.ys-picker-card input{position:absolute;left:7px;top:7px}.ys-picker-card small{font-size:9px;color:#8d9da2}.ys-author-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.ys-author-choice{position:relative;border:1px solid #e1eaec;border-radius:9px;min-height:52px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#fff}.ys-author-choice:has(input:checked){border-color:#55af9b;background:#f1faf7}.ys-author-choice input{position:absolute;left:6px;top:6px}.ys-admin-setting-inline{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ys-admin-setting-inline>div{border:1px solid #e4ecee;border-radius:10px;padding:12px;background:#fbfdfd}.ys-admin-setting-inline label{display:block;font-size:11px;font-weight:500;color:#58727c}.ys-admin-setting-inline p{font-size:9.5px;color:#96a3a7;margin:3px 0 8px}.ys-admin-setting-inline input{width:90px;height:34px;border:1px solid var(--line);border-radius:7px;padding:0 8px}
@media(max-width:1000px){.ys-badge-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ys-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ys-badge-post-row{grid-template-columns:44px minmax(0,1fr) 110px auto}.ys-badge-post-row .ys-author-col{display:none}}
@media(max-width:720px){.ys-badge-summary{grid-template-columns:1fr 1fr}.ys-badge-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ys-picker-grid,.ys-author-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.ys-admin-setting-inline{grid-template-columns:1fr}.ys-badge-post-row{grid-template-columns:34px minmax(0,1fr) auto}.ys-badge-post-row .ys-badge-col,.ys-badge-post-row .ys-author-col{display:none}.post-title-badges-v2{max-width:38%;margin-right:4px}.post-title-badges-v2 .ys-post-badge{max-width:100px}}

/* 글작성 본문: 기존 최소 200px 기준 정확히 7배(1,400px) 확장 */
form[data-write-form] textarea.ys-write-body{
  min-height:1400px !important;
  height:1400px;
  resize:vertical;
  line-height:1.75;
}

/* 승인등급별 게시글 배지 선택 */
.ys-write-badge-field{
  border:1px solid #dbe8ea;
  border-radius:12px;
  padding:14px;
  background:#fbfdfd;
}
.ys-write-grade-note{
  margin-left:7px;
  font-size:11px;
  font-weight:500;
  color:#2a96bd;
}
.ys-write-badge-loading,
.ys-write-badge-empty{
  padding:18px;
  border:1px dashed #d6e3e5;
  border-radius:10px;
  color:#8b9ba0;
  font-size:12px;
  text-align:center;
  background:#fff;
}
.ys-write-badge-head{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.ys-write-grade-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:#eaf7fa;
  border:1px solid #bfe1e8;
  color:#237f98;
  font-size:11.5px;
  font-weight:500;
}
.ys-write-badge-limit{
  font-size:11px;
  color:#758a92;
}
.ys-write-badge-count{
  margin-left:auto;
  font-size:11px;
  font-weight:500;
  color:#2a96bd;
}
.ys-write-badge-policy{
  margin:0 0 11px;
  padding:9px 11px;
  border-radius:9px;
  background:#f2f7f8;
  color:#71868e;
  font-size:10.5px;
  line-height:1.65;
}
.ys-write-badge-tools{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:8px;
  margin-bottom:10px;
}
.ys-write-badge-tools input,
.ys-write-badge-tools select{
  min-height:38px;
  border:1px solid #dce7e9;
  border-radius:8px;
  background:#fff;
  color:#536b75;
  padding:8px 10px;
  font-size:12px;
  outline:none;
}
.ys-write-badge-tools input:focus,
.ys-write-badge-tools select:focus{
  border-color:#3cb7d7;
}
.ys-write-badge-empty-search{
  padding:12px;
  margin-bottom:10px;
  border:1px dashed #d6e3e5;
  border-radius:8px;
  color:#8b9ba0;
  font-size:11.5px;
  text-align:center;
  background:#fff;
}
.ys-write-badge-empty-search.hidden{display:none !important}
#ysWriteBadgeGroups{
  max-height:420px;
  overflow:auto;
  padding:0 4px 4px 1px;
  border:1px solid #eef3f4;
  border-radius:10px;
}
.ys-write-badge-group{
  border-bottom:1px solid #eef3f4;
  padding:2px 4px;
}
.ys-write-badge-group:last-child{border-bottom:none}
.ys-write-badge-group.hidden{display:none !important}
.ys-write-badge-group summary{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 6px;
  cursor:pointer;
  list-style:none;
  font-size:12px;
  font-weight:700;
  color:#3f5a64;
  user-select:none;
}
.ys-write-badge-group summary::-webkit-details-marker{display:none}
.ys-write-badge-group summary::before{
  content:'▸';
  display:inline-block;
  font-size:10px;
  color:#8fa6ad;
  transition:transform .15s;
}
.ys-write-badge-group[open]>summary::before{transform:rotate(90deg)}
.ys-write-badge-group-count{
  margin-left:auto;
  font-weight:500;
  font-size:10.5px;
  color:#8b9ba0;
  background:#f2f7f8;
  border-radius:999px;
  padding:2px 8px;
}
.ys-write-badge-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:3px 6px 10px 6px;
}
.ys-write-badge-choice{
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  min-height:55px;
  padding:8px 9px;
  border:1px solid #e0e9eb;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
  transition:.15s;
}
.ys-write-badge-choice:hover{
  border-color:#9ed4df;
  background:#f8fdfe;
}
.ys-write-badge-choice.selected{
  border-color:#39a9c4;
  background:#edf9fb;
  box-shadow:0 0 0 1px rgba(57,169,196,.08);
}
.ys-write-badge-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.ys-write-badge-choice .preview{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  max-width:128px;
  overflow:hidden;
}
.ys-write-badge-choice .preview svg{
  display:block;
  max-width:126px;
  height:31px;
}
.ys-write-badge-choice .meta{
  min-width:0;
  flex:1;
}
.ys-write-badge-choice .meta b{
  display:block;
  color:#4d6670;
  font-size:11px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ys-write-badge-choice .meta small{
  display:block;
  margin-top:2px;
  color:#96a4a9;
  font-size:9px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ys-write-badge-choice.hidden{
  display:none !important;
}
@media(max-width:900px){
  .ys-write-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  form[data-write-form] textarea.ys-write-body{
    min-height:1400px !important;
    height:1400px;
  }
  .ys-write-badge-tools{grid-template-columns:1fr}
  .ys-write-badge-grid{grid-template-columns:1fr}
  #ysWriteBadgeGroups{max-height:460px}
  .ys-write-badge-count{margin-left:0}
}

.ys-badge-teaser{
  border:1px solid #dbe8ea;
  border-radius:12px;
  padding:14px;
  background:linear-gradient(180deg,#f5fbfc,#fbfdfd);
}
.ys-badge-teaser-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.ys-badge-teaser-title{display:flex;flex-direction:column;gap:3px}
.ys-badge-teaser-title b{display:flex;align-items:center;gap:5px;font-size:13px;color:#2c4750}
.ys-badge-teaser-sub{font-size:11px;color:#7c9199;font-weight:500}
.ys-badge-teaser-headbtns{display:flex;gap:6px;flex-wrap:wrap}
.ys-badge-teaser-note{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  padding:9px 11px;
  border-radius:9px;
  background:#eaf7fa;
  border:1px solid #bfe1e8;
  color:#2c6d80;
  font-size:11px;
  line-height:1.6;
  margin-bottom:10px;
}
.ys-badge-teaser-linkbtn{
  margin-left:auto;
  border:1px solid #9ed4df;
  background:#fff;
  color:#237f98;
  border-radius:999px;
  padding:4px 11px;
  font-size:10.5px;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
}
.ys-badge-teaser-linkbtn:hover{background:#eaf7fa}
.ys-badge-teaser-example{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:9px 11px;
  border:1px dashed #d6e3e5;
  border-radius:9px;
  background:#fff;
  font-size:11.5px;
  color:#536b75;
  margin-bottom:10px;
}
.ys-badge-teaser-example-label{
  flex:0 0 auto;
  font-size:10px;
  font-weight:700;
  color:#8b9ba0;
  border:1px solid #e0e9eb;
  border-radius:6px;
  padding:2px 6px;
}
.ys-badge-teaser-example-title{flex:1;min-width:110px}
.ys-badge-teaser-strip{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 1px 4px;
}
.ys-badge-teaser-chip{flex:0 0 auto}
.ys-badge-teaser-boardnote{
  margin:8px 0 0;
  font-size:10.5px;
  color:#8b9ba0;
}
.badge-guide-tabbar{display:flex;gap:8px;margin:14px 0 10px;flex-wrap:wrap}
.badge-guide-tab{
  border:1px solid #dce7e9;
  background:#fff;
  color:#5c757d;
  border-radius:999px;
  padding:8px 16px;
  font-size:12.5px;
  font-weight:600;
  cursor:pointer;
}
.badge-guide-tab.active{
  background:#2a96bd;
  border-color:#2a96bd;
  color:#fff;
}
.badge-guide-eyebrow{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  padding:10px 12px;
  border-radius:10px;
  background:#eaf7fa;
  border:1px solid #bfe1e8;
  color:#2c6d80;
  font-size:12px;
  line-height:1.6;
  margin-bottom:14px;
}
.badge-guide-example{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:14px;
  font-size:13px;
  color:#3f5a64;
  margin-bottom:12px;
}
.badge-guide-example-label{
  font-size:10.5px;
  font-weight:700;
  color:#8b9ba0;
  border:1px solid #e0e9eb;
  border-radius:6px;
  padding:3px 7px;
}
.badge-guide-example-title{flex:1;min-width:140px}
.badge-guide-strip{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:14px;
  margin-bottom:12px;
}
.badge-guide-chip{flex:0 0 auto}
.badge-guide-tier-card{padding:16px;margin-bottom:12px}
.badge-guide-tier-card h3{margin:0 0 4px;font-size:14px;color:#2c4750}
.badge-guide-tier-table td,.badge-guide-tier-table th{font-size:11.5px}
.badge-guide-current-row{background:#eaf7fa}
.badge-guide-current-chip{
  display:inline-block;
  margin-left:4px;
  padding:1px 7px;
  border-radius:999px;
  background:#2a96bd;
  color:#fff;
  font-size:9.5px;
  font-weight:700;
}
.badge-guide-cta{padding:16px;display:flex;flex-direction:column;gap:10px}
.badge-guide-cta-btns{display:flex;gap:8px;flex-wrap:wrap}
.badge-guide-search-card{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  margin-bottom:10px;
}
.badge-guide-search-card input{
  flex:1;
  min-height:38px;
  border:1px solid #dce7e9;
  border-radius:8px;
  padding:8px 10px;
  font-size:12.5px;
  outline:none;
}
.badge-guide-search-card input:focus{border-color:#3cb7d7}
.badge-guide-total{font-size:11px;color:#8b9ba0;white-space:nowrap}
.badge-guide-empty{
  padding:14px;
  margin-bottom:10px;
  border:1px dashed #d6e3e5;
  border-radius:10px;
  color:#8b9ba0;
  font-size:12px;
  text-align:center;
  background:#fff;
}
.badge-guide-empty.hidden{display:none !important}
.badge-guide-group{
  border:1px solid #eef3f4;
  border-radius:10px;
  margin-bottom:8px;
  background:#fff;
  padding:2px 4px;
}
.badge-guide-group.hidden{display:none !important}
.badge-guide-group summary{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 8px;
  cursor:pointer;
  list-style:none;
  font-size:12.5px;
  font-weight:700;
  color:#3f5a64;
  user-select:none;
}
.badge-guide-group summary::-webkit-details-marker{display:none}
.badge-guide-group summary::before{
  content:'▸';
  font-size:10px;
  color:#8fa6ad;
  transition:transform .15s;
}
.badge-guide-group[open]>summary::before{transform:rotate(90deg)}
.badge-guide-group-count{
  margin-left:auto;
  font-weight:500;
  font-size:10.5px;
  color:#8b9ba0;
  background:#f2f7f8;
  border-radius:999px;
  padding:2px 8px;
}
.badge-guide-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:8px;
  padding:2px 8px 12px;
}
.badge-guide-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  padding:9px 10px;
  border:1px solid #eef3f4;
  border-radius:9px;
  background:#fbfdfd;
}
.badge-guide-card.hidden{display:none !important}
.badge-guide-card small{font-size:9.5px;color:#9aa8ac}
@media(max-width:620px){
  .ys-badge-teaser-headbtns{width:100%}
  .ys-badge-teaser-headbtns .secondary-btn{flex:1}
  .badge-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* 전체 배지 보기: 현재 글쓰기 화면을 유지한 채 모달로 표시 */
#modalBox.ys-badge-guide-modal-box{
  width:min(920px,calc(100vw - 40px));
  max-height:min(86vh,900px);
  display:flex;
  flex-direction:column;
  padding:20px 22px 18px;
}
#modalBox.ys-badge-guide-modal-box>h2{flex:0 0 auto;margin-bottom:12px}
#modalBox.ys-badge-guide-modal-box .modal-scroll-body{
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:4px;
}
#modalBox.ys-badge-guide-modal-box .modal-actions{
  flex:0 0 auto;
  padding-top:12px;
  background:#fff;
}
#modalBox.ys-badge-guide-modal-box .badge-guide-search-card{
  position:sticky;
  top:0;
  z-index:2;
  background:#fff;
  box-shadow:0 5px 12px rgba(27,101,123,.05);
}
@media(max-width:620px){
  #modalBox.ys-badge-guide-modal-box{
    width:calc(100vw - 20px);
    max-height:calc(100vh - 24px);
    padding:16px 14px 14px;
  }
  #modalBox.ys-badge-guide-modal-box .badge-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* 스크롤 중 상단 고정 배너의 둥근 모서리 밖으로
   뒤쪽 파란 요소가 비쳐 보이는 현상 차단 */
body.ys-page-scrolled .ad-top{
  isolation:isolate !important;
  background:#f7f6f0 !important;
  box-shadow:0 0 0 12px #fff !important;
}

/* 헤더와 배너 사이도 흰색으로 완전히 불투명 처리 */
body.ys-page-scrolled .site-head{
  background:#fff !important;
  box-shadow:none !important;
}

/* 하위 카테고리 긴급공지 */
.category-emergency-stack{
  display:flex;flex-direction:column;gap:8px;margin:0 0 14px;
}
.category-emergency-notice{
  display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:start;
  padding:13px 15px;border:1px solid #f0c9c5;border-radius:12px;
  background:linear-gradient(180deg,#fff9f8 0%,#fff4f2 100%);
  box-shadow:0 4px 14px rgba(188,76,64,.06);
}
.category-emergency-notice.important{
  border-color:#ecd7b4;background:linear-gradient(180deg,#fffdf8 0%,#fff8ea 100%);
}
.category-emergency-notice.info{
  border-color:#c9e1e7;background:linear-gradient(180deg,#f9fdfe 0%,#f1fafc 100%);
}
.category-emergency-icon{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:#e85d52;color:#fff;font-size:18px;box-shadow:0 3px 8px rgba(232,93,82,.18);
}
.category-emergency-notice.important .category-emergency-icon{background:#d6953f;box-shadow:0 3px 8px rgba(214,149,63,.18)}
.category-emergency-notice.info .category-emergency-icon{background:var(--sky-deep);box-shadow:0 3px 8px rgba(42,150,189,.16)}
.category-emergency-copy{min-width:0}
.category-emergency-label{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:2px;color:#c84d45;font-size:11px;font-weight:500;letter-spacing:.02em}
.category-emergency-notice.important .category-emergency-label{color:#b67625}
.category-emergency-notice.info .category-emergency-label{color:var(--sky-deep)}
.category-emergency-label .target{font-weight:500;color:#89989d}
.category-emergency-title{display:block;color:#4b5960;font-size:14px;font-weight:500;line-height:1.45;margin-bottom:2px}
.category-emergency-body{margin:0;color:#687a82;font-size:12.5px;line-height:1.65;white-space:pre-line}
.category-emergency-period{align-self:center;color:#97a4a8;font-size:10.5px;white-space:nowrap}
.category-emergency-tools{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px;min-width:102px}
.category-emergency-stop{border:1px solid #efb6b2;background:#fff;color:#c84d45;border-radius:8px;padding:6px 9px;font-size:10.5px;font-weight:500;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;box-shadow:0 2px 7px rgba(200,77,69,.07)}
.category-emergency-stop:hover{background:#fff3f2;border-color:#e7958f}
.admin-emergency-live-panel{border-color:#f1c9c6!important;background:#fffdfd}
.admin-emergency-live-list{display:flex;flex-direction:column;gap:8px}
.admin-emergency-live-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid #f0d8d5;border-radius:10px;background:#fff}
.admin-emergency-live-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.admin-emergency-live-target{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#70858d;font-size:11px}
.admin-emergency-live-main>strong{color:#425c65;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-emergency-live-main>small{color:#97a4a8;font-size:10.5px}
.admin-emergency-stop-now{flex:0 0 auto;background:#d95c54!important;border-color:#d95c54!important;color:#fff!important;white-space:nowrap}
.admin-notice-target{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:#f1f6f7;color:#617982;font-size:10px;font-weight:500}
.admin-notice-preview{max-width:440px;white-space:normal;line-height:1.55;color:#71838a;font-size:11px}
.admin-notice-title{font-weight:500;color:#415962;margin-bottom:2px}
@media(max-width:620px){
  .category-emergency-notice{grid-template-columns:32px minmax(0,1fr);padding:11px 12px;gap:9px}
  .category-emergency-icon{width:30px;height:30px;font-size:16px}
  .category-emergency-period{grid-column:auto;align-self:start;margin-top:1px}
  .category-emergency-tools{grid-column:2;align-items:flex-start;min-width:0;margin-top:2px}
  .admin-emergency-live-item{align-items:flex-start;flex-direction:column}
  .admin-emergency-stop-now{width:100%;justify-content:center}
  .category-emergency-title{font-size:13.5px}.category-emergency-body{font-size:12px}
}

/* 카테고리 공지 팝업 */
.category-emergency-popup-layer{position:fixed;inset:0;z-index:1200;background:rgba(24,43,50,.42);display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(1.5px)}
.category-emergency-popup{width:min(var(--notice-popup-w,680px),calc(100vw - 36px));height:min(var(--notice-popup-h,500px),calc(100vh - 40px));max-width:1000px;max-height:800px;background:#fff;border:1px solid #efc9c5;border-radius:18px;box-shadow:0 24px 70px rgba(27,64,76,.24);display:flex;flex-direction:column;overflow:hidden}
.category-emergency-popup.important{border-color:#ead2ab}.category-emergency-popup.info{border-color:#c8e1e7}
.category-emergency-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 14px;border-bottom:1px solid #edf1f2;background:linear-gradient(180deg,#fffafa,#fff)}
.category-emergency-popup.important .category-emergency-popup-head{background:linear-gradient(180deg,#fffbf3,#fff)}.category-emergency-popup.info .category-emergency-popup-head{background:linear-gradient(180deg,#f6fcfe,#fff)}
.category-emergency-popup-head .left{display:flex;align-items:flex-start;gap:11px;min-width:0}.category-emergency-popup-head .category-emergency-icon{flex:0 0 34px}
.category-emergency-popup-close{width:34px;height:34px;border:0;border-radius:50%;background:#f1f4f5;color:#71858c;font-size:25px;line-height:30px;display:grid;place-items:center;flex:0 0 34px}
.category-emergency-popup-close:hover{background:#e6edef;color:#465e67}
.category-emergency-label .count{padding:2px 6px;border-radius:999px;background:#eef3f4;color:#75888f;font-size:9.5px}
.category-emergency-popup-body{flex:1;min-height:0;overflow:auto;padding:20px}.category-emergency-popup-body .category-emergency-body{font-size:14px;line-height:1.8;color:#536b74;margin:0}
.category-emergency-popup-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid #edf1f2;background:#fbfcfc}.category-emergency-popup-foot .actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.category-emergency-attachment{margin-top:17px;border:1px solid #e1e9eb;border-radius:12px;background:#fafcfc;overflow:hidden}.category-emergency-attachment.image img{display:block;width:100%;max-height:420px;object-fit:contain;background:#f4f7f7}.category-emergency-attachment.image .file-name{padding:9px 11px;color:#71858d;font-size:11px;display:flex;align-items:center;gap:5px}
.category-emergency-attachment.file{display:flex;align-items:center;gap:11px;padding:12px}.category-emergency-attachment .file-icon{width:38px;height:38px;border-radius:9px;background:#e8f4f7;color:var(--sky-deep);display:grid;place-items:center;font-size:19px;flex:0 0 38px}.category-emergency-attachment .file-copy{display:flex;flex-direction:column;min-width:0;flex:1}.category-emergency-attachment .file-copy strong{font-size:12.5px;color:#4d656e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-emergency-attachment .file-copy span{font-size:10px;color:#97a5a9;margin-top:2px}
.emergency-current-file{margin-top:8px;padding:10px 12px;border:1px solid #dfe9eb;border-radius:9px;background:#f7fafb;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;color:#67808a}.emergency-current-file>i{font-size:20px;color:var(--sky-deep)}.emergency-current-file>div{display:flex;flex-direction:column;min-width:0}.emergency-current-file strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emergency-current-file span{font-size:9.5px;color:#97a5a9}.emergency-current-file label{font-size:10.5px;white-space:nowrap}
@media(max-width:620px){.category-emergency-popup-layer{padding:10px}.category-emergency-popup{width:calc(100vw - 20px)!important;height:min(var(--notice-popup-h,500px),calc(100vh - 20px));border-radius:14px}.category-emergency-popup-head{padding:14px}.category-emergency-popup-body{padding:15px}.category-emergency-popup-foot{padding:10px 12px;align-items:flex-start;flex-direction:column}.category-emergency-popup-foot .actions{width:100%;justify-content:flex-end}.category-emergency-popup-body .category-emergency-body{font-size:13px}.emergency-current-file{grid-template-columns:auto minmax(0,1fr)}.emergency-current-file label{grid-column:2}}

/* 공지바/공지창 선택 관리 */
.category-emergency-mode-chip,.admin-notice-mode{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:999px;background:#eef5f7;color:#527784;font-size:9.5px;font-weight:500;white-space:nowrap}
.admin-notice-mode.bar{background:#eef8f4;color:#357d68}.admin-notice-mode.popup{background:#eef5fb;color:#3d73a1}
.category-emergency-bar-file{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:5px 8px;border:1px solid #dce7e9;border-radius:7px;background:#fff;color:#55727c;font-size:10.5px;font-weight:500;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.category-emergency-bar-file:hover{border-color:#add3dc;color:var(--sky-deep)}
.category-emergency-admin-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.category-emergency-admin-actions .secondary-btn{padding:6px 9px;font-size:10.5px}
.emergency-mode-hint{margin:-3px 0 14px;padding:10px 12px;border:1px solid #dce9ec;border-radius:9px;background:#f6fafb;color:#677f88;font-size:11.5px;line-height:1.6}
.admin-summary-box small{display:block;margin-top:2px;color:#97a5a9;font-size:9.5px;font-weight:500}
@media(max-width:620px){.category-emergency-admin-actions{justify-content:flex-start}.category-emergency-bar-file{white-space:normal;line-height:1.4}}

/* 메인 헤더 알림 */
.account>.dot{display:none}
.ys-notify-wrap{position:relative;display:inline-flex;align-items:center}
.ys-notify-bell{width:auto;height:auto;border:0;background:transparent;color:#54727d;display:inline-grid;place-items:center;position:relative;padding:0 2px;flex:0 0 auto;transition:.18s;border-radius:0;box-shadow:none;appearance:none}
.ys-notify-bell:hover,.ys-notify-bell.active{border:0;background:transparent;color:var(--sky-deep);box-shadow:none}
.ys-notify-bell i{font-size:36px;line-height:1}
.ys-notify-count{position:absolute;right:-7px;top:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;border:2px solid #fff;font-size:10px;font-weight:500;display:grid;place-items:center;line-height:1}
.ys-notify-dropdown{position:absolute;right:0;top:47px;width:360px;max-height:480px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 18px 55px rgba(26,76,91,.18);z-index:180;overflow:hidden}
.ys-notify-dropdown.hidden{display:none}
.ys-notify-drop-head{display:flex;align-items:center;gap:8px;padding:14px 15px 11px;border-bottom:1px solid #edf2f3}
.ys-notify-drop-head strong{font-size:14px;color:#456873}
.ys-notify-drop-head .ys-notify-actions{margin-left:auto;display:flex;gap:4px}
.ys-notify-text-btn{border:0;background:transparent;color:#6e8c95;font-size:11px;padding:5px 6px}
.ys-notify-text-btn:hover{color:var(--sky-deep)}
.ys-notify-drop-list{max-height:340px;overflow:auto}
.ys-notify-item{display:block;width:100%;border:0;border-bottom:1px solid #f0f3f4;background:#fff;text-align:left;padding:12px 14px;color:#5b727b}
.ys-notify-item:hover{background:#f9fcfd}
.ys-notify-item.unread{background:#f1fafc}
.ys-notify-item.important{box-shadow:inset 3px 0 #e69b4b}
.ys-notify-item-top{display:flex;align-items:center;gap:7px;margin-bottom:4px}
.ys-notify-item-top strong{font-size:12.5px;color:#466873;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ys-notify-item-dot{width:7px;height:7px;border-radius:50%;background:var(--danger);flex:0 0 7px}
.ys-notify-item p{margin:0;color:#788b92;font-size:11.5px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ys-notify-item small{display:block;margin-top:6px;color:#a0acb0;font-size:10px}
.ys-notify-drop-empty{padding:34px 18px;text-align:center;color:#97a6aa;font-size:12px}
.ys-notify-drop-foot{padding:9px 12px;background:#fafcfc;border-top:1px solid #edf2f3;text-align:center}
.ys-notify-drop-foot button{border:0;background:transparent;color:var(--sky-deep);font-size:11.5px;font-weight:500}
.ys-notify-public-chip{display:inline-flex;align-items:center;padding:2px 6px;border-radius:8px;background:#edf6f7;color:#68858e;font-size:9px;font-weight:500}

/* 알림센터 */
.ys-notification-page-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.ys-notification-page-head .actions{margin-left:auto;display:flex;gap:7px}
.ys-notification-list{margin-top:16px;overflow:hidden}
.ys-notification-row{display:grid;grid-template-columns:32px minmax(0,1fr) 98px;gap:12px;align-items:start;padding:16px 17px;border-top:1px solid #edf2f3}
.ys-notification-row:first-child{border-top:0}
.ys-notification-row.unread{background:#f7fcfd}
.ys-notification-row.important{box-shadow:inset 4px 0 #e69b4b}
.ys-notification-ico{width:30px;height:30px;border-radius:9px;background:#eaf7f9;color:#2d98b0;display:grid;place-items:center}
.ys-notification-copy strong{display:flex;align-items:center;gap:7px;font-size:14px;color:#466873}
.ys-notification-copy p{margin:5px 0 0;font-size:13px;color:#6e8188;line-height:1.7}
.ys-notification-copy small{display:block;margin-top:7px;font-size:11px;color:#9aa7ab}
.ys-notification-row .secondary-btn{justify-self:end}

/* 관리자 알림 */
.ys-admin-notice-title{max-width:320px}
.ys-admin-notice-title strong{display:block;color:#456873;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ys-admin-notice-title span{display:block;color:#95a3a7;font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ys-notice-priority{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:10px;background:#fff3e5;color:#bd7832;font-size:10px;font-weight:500}
.ys-notice-target{font-size:11px;color:#627a83}
.ys-notice-period{font-size:10.5px;color:#81939a;white-space:nowrap}
.ys-admin-notice-guide{padding:12px 14px;border-radius:10px;background:#f4fafb;border:1px solid #e1eff1;color:#607b85;font-size:11.5px;line-height:1.65;margin-bottom:14px}
.ys-admin-notice-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ys-admin-notice-form-grid .full{grid-column:1/-1}
.ys-admin-check-row{display:flex;align-items:center;gap:8px;padding:9px 0;color:#5e7780;font-size:12px}
.ys-admin-check-row input{width:auto;min-height:0}
@media(max-width:900px){
  .ys-notify-dropdown{position:fixed;right:16px;left:16px;top:calc(var(--header-h,120px) - 2px);width:auto}
}
@media(max-width:620px){
  .account{gap:6px}
  .ys-notify-bell{width:auto;height:auto;flex-basis:auto;padding:0 2px}
  .ys-notify-bell i{font-size:36px}
  .account .ys-notify-count{display:grid!important}
  .ys-notification-row{grid-template-columns:30px minmax(0,1fr);padding:14px}
  .ys-notification-row .secondary-btn{grid-column:2;justify-self:start}
  .ys-admin-notice-form-grid{grid-template-columns:1fr}
  .ys-admin-notice-form-grid .full{grid-column:auto}
}

/* 글상세 공통: 제목 위 = 승인 게시글 배지 우선, 없을 때 댓글 배지 / 최대 7개 */
.ys-detail-priority-badges{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  min-height:23px;
  margin:0 0 0 6px;
  overflow:visible;
}
.ys-detail-priority-badges:empty{display:none}
.ys-detail-priority-badges .ys-post-badge,
.ys-detail-priority-badges .ys-comment-badge{
  flex:0 0 auto!important;
  max-width:none!important;
  overflow:visible!important;
}
.ys-detail-priority-badges .ys-post-badge{height:23px!important}
.ys-detail-priority-badges .ys-comment-badge{height:23px!important}

/* 기존 제목 위 분류/해시태그/운영계정 칩은 작성정보(날짜·조회·댓글·좋아요) 바로 위로 이동 */
.ys-detail-context-tags{margin:13px 0 7px}
.ys-detail-context-tags .post-detail-tags{
  margin:0!important;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
}
.detail-card>.detail-title{margin-top:0!important}
.detail-card>.detail-meta{margin-top:0}

/* 상세 제목 안에서는 게시글/댓글 배지를 다시 노출하지 않음 */
.detail-title .post-title-trailing .post-title-post-badges,
.detail-title .post-title-trailing .post-title-comment-badge,
.detail-title>.post-title-badges-v2,
.detail-title>.preview-reaction{display:none!important}

@media(max-width:620px){
  .ys-detail-priority-badges{gap:4px;margin:0 0 0 5px}
  .ys-detail-priority-badges .ys-post-badge,
  .ys-detail-priority-badges .ys-comment-badge{height:20px!important}
  .ys-detail-context-tags{margin-top:11px}
}

/*
  공통 제목 뒤 배지 규칙
  1) 관리자 승인(지정) 게시글 배지가 있으면 게시글 배지만 표시
  2) 게시글 배지가 하나도 없을 때만 댓글 배지 1개를 대체 표시
  3) 홈 피드/하위카테고리 게시판/검색·미리보기 모두 제목 뒤에 배치
*/
.ys-title-priority-post,
.ys-title-priority-comment{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  flex:0 0 auto!important;
  vertical-align:middle!important;
  margin-left:4px!important;
  max-width:none!important;
  overflow:visible!important;
}
.ys-title-priority-post .ys-post-badge,
.ys-title-priority-comment .ys-comment-badge{
  flex:0 0 auto!important;
  max-width:none!important;
  overflow:visible!important;
}

/* 제목 → N → 우선순위 배지 → 첨부표시 순서 */
.compact-row.home-feed-row .title,
.preview-row .preview-title{
  display:inline-flex;
  align-items:center;
  min-width:0;
  white-space:nowrap;
}
.compact-row.home-feed-row .title .post-title-text,
.preview-row .preview-title .post-title-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.compact-row.home-feed-row .title .new,
.preview-row .preview-title .preview-new{flex:0 0 auto}

.board-title-cell .post-title .post-title-trailing{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
}
.board-title-cell .post-title .ys-title-priority-post,
.board-title-cell .post-title .ys-title-priority-comment{
  order:1!important;
  margin-left:0!important;
}
.board-title-cell .post-title .post-attachment-indicators{order:2!important}

@media(max-width:620px){
  .ys-title-priority-post,
  .ys-title-priority-comment{margin-left:3px!important}
}

.level-guide-btn{
  width:100%;
  min-height:52px;
  margin-top:8px;
  border:1px solid #cfe3e7;
  border-radius:8px;
  background:#fff;
  color:#397486;
  font-size:16.25px;
  font-weight:500;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  cursor:pointer;
  transition:.18s ease;
}
.level-guide-btn:hover{
  border-color:#6bb9ca;
  background:#f7fcfd;
  color:#238ca7;
}
.level-guide-btn i{font-size:20px}
.level-guide-wrap{max-height:68vh;overflow:auto}
.level-guide-summary{
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:11px 12px;
  margin-bottom:12px;
  border:1px solid #dcecef;
  border-radius:10px;
  background:#f7fbfc;
  color:#5d7780;
  font-size:11.5px;
  line-height:1.65;
}
.level-guide-summary i{color:#2a96bd;font-size:17px;margin-top:2px;flex:none}
.level-guide-table-wrap{
  overflow:auto;
  border:1px solid #e2eaec;
  border-radius:10px;
}
.level-guide-table{
  width:100%;
  min-width:850px;
  border-collapse:collapse;
  font-size:11px;
  background:#fff;
}
.level-guide-table th{
  position:sticky;
  top:0;
  z-index:1;
  padding:9px 8px;
  background:#f4f8f9;
  color:#72878e;
  border-bottom:1px solid #dfe8ea;
  white-space:nowrap;
  text-align:center;
}
.level-guide-table td{
  padding:10px 8px;
  border-bottom:1px solid #edf2f3;
  color:#596f78;
  text-align:center;
  white-space:nowrap;
}
.level-guide-table tr:last-child td{border-bottom:0}
.level-guide-level{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-weight:500;
  color:#3e6270;
}
.level-guide-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.level-guide-auto{
  display:inline-flex;
  align-items:center;
  padding:3px 7px;
  border-radius:999px;
  background:#e9f6f1;
  color:#338b73;
  font-size:10px;
  font-weight:500;
}
.level-guide-review{
  display:inline-flex;
  align-items:center;
  padding:3px 7px;
  border-radius:999px;
  background:#fff2e5;
  color:#b46e24;
  font-size:10px;
  font-weight:500;
}
.level-guide-note{
  margin-top:11px;
  padding:11px 12px;
  border-radius:10px;
  background:#fff9ef;
  border:1px solid #f0dfbf;
  color:#7d6b4f;
  font-size:11px;
  line-height:1.65;
}
.level-guide-note b{color:#a66b24}
@media(max-width:620px){
  .level-guide-btn{font-size:15px;min-height:48px}
  .level-guide-btn i{font-size:18px}
  .level-guide-wrap{max-height:72vh}
}

/* 로그인 버튼 세로 25% 확대 */
.login-btn{
  height:53px !important;
}
form[data-auth-form][data-mode="login"] .primary-btn{
  min-height:53px !important;
  padding-top:11px !important;
  padding-bottom:11px !important;
}

/* 회원 레벨 승급기준 버튼의 아이콘 + 텍스트 30% 확대 */
.level-guide-btn{
  min-height:52px !important;
  font-size:16.25px !important;
  gap:8px !important;
}
.level-guide-btn i{
  font-size:20px !important;
}

@media(max-width:620px){
  .login-btn{height:50px !important;}
  form[data-auth-form][data-mode="login"] .primary-btn{min-height:50px !important;}
  .level-guide-btn{
    min-height:48px !important;
    font-size:15.6px !important;
  }
  .level-guide-btn i{font-size:18px !important;}
}

/* 읽지 않은 알림이 있을 때 30초마다 짧게 흔들림 */
@keyframes ysUnreadBellShake{
  0%,100%{transform:rotate(0deg)}
  10%{transform:rotate(-13deg)}
  20%{transform:rotate(11deg)}
  30%{transform:rotate(-10deg)}
  40%{transform:rotate(8deg)}
  50%{transform:rotate(-6deg)}
  60%{transform:rotate(5deg)}
  72%{transform:rotate(-3deg)}
  84%{transform:rotate(2deg)}
}
.ys-notify-bell.ys-unread-shake{
  animation:ysUnreadBellShake 1.25s ease-in-out 1;
  transform-origin:50% 12%;
  will-change:transform;
}
/* 아이콘만 자연스럽게 흔들리고 숫자 배지는 읽기 쉽게 유지 */
.ys-notify-bell.ys-unread-shake .ys-notify-count{
  animation:ysUnreadCounterHold 1.25s ease-in-out 1;
}
@keyframes ysUnreadCounterHold{
  0%,100%{transform:rotate(0deg)}
  10%{transform:rotate(13deg)}
  20%{transform:rotate(-11deg)}
  30%{transform:rotate(10deg)}
  40%{transform:rotate(-8deg)}
  50%{transform:rotate(6deg)}
  60%{transform:rotate(-5deg)}
  72%{transform:rotate(3deg)}
  84%{transform:rotate(-2deg)}
}
@media (prefers-reduced-motion:reduce){
  .ys-notify-bell.ys-unread-shake,
  .ys-notify-bell.ys-unread-shake .ys-notify-count{animation:none!important}
}

/* 로그인 버튼 / 회원레벨승급기준 버튼 / 아이디찾기·비밀번호찾기 자간 조정 */
.login-btn,
form[data-auth-form][data-mode="login"] .primary-btn,
.level-guide-btn,
.auth-links,
.auth-links button{
  letter-spacing:0.1em !important;
}

.level-guide-btn span{
  letter-spacing:0.1em !important;
}

.auth-wrap{margin:0 auto}
.auth-wrap-login{max-width:480px}
.auth-wrap-signup{max-width:620px}
.auth-page-title{margin-bottom:10px}
.auth-wrap-signup .form-card{padding:24px 22px}
.auth-wrap-signup .signup-profile-box{padding:16px;margin-bottom:18px;background:#fcfefe}
.auth-wrap-signup .signup-profile-box>.field:last-of-type{margin-bottom:0}

.signup-field-help{margin-left:5px;color:#97a6ab;font-size:11px;font-weight:500}
.signup-field-note{margin-top:6px;color:#8a9aa0;font-size:11px;line-height:1.55}

/* 가입 단계가 한눈에 보이도록 섹션 분리 */
.auth-wrap-signup .social-signup{margin-bottom:9px}
.auth-wrap-signup .auth-divider{margin:16px 0}
.auth-wrap-signup .signup-profile-box::before{
  content:'프로필 설정';
  display:block;
  margin-bottom:13px;
  color:#355f6e;
  font-size:14px;
  font-weight:500;
}
.auth-wrap-signup .signup-profile-box+.signup-realname-field{
  margin-top:20px;
  padding-top:19px;
  border-top:1px solid #edf2f3;
}
.auth-wrap-signup .signup-realname-field::before{
  content:'계정 정보';
  display:block;
  margin-bottom:13px;
  color:#355f6e;
  font-size:14px;
  font-weight:500;
}

/* 닉네임 후보 */
.auth-wrap-signup .nickname-option-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.auth-wrap-signup .nickname-option{
  min-height:44px;
  border:1px solid #dfe7e9;
  border-radius:10px;
  background:#fff;
  color:#506871;
  padding:9px 8px;
  font-size:12px;
  font-weight:500;
  line-height:1.35;
  word-break:keep-all;
}
.auth-wrap-signup .nickname-option:hover{border-color:#8bc7d4;background:#f7fcfd}
.auth-wrap-signup .nickname-option.selected{
  border-color:var(--sky-deep);
  background:#eef9fc;
  color:#247e98;
  box-shadow:0 0 0 1px rgba(42,150,189,.12);
}

/* 캐릭터는 확실히 보이도록 카드 크기·배경·선택 상태 정리 */
.auth-wrap-signup .signup-character-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
.auth-wrap-signup .character-picker-item{
  min-height:98px;
  aspect-ratio:1/1;
  padding:8px;
  border:1px solid #dfe7e9;
  border-radius:16px;
  background:#fff;
  overflow:hidden;
}
.auth-wrap-signup .character-picker-item:hover{
  border-color:#84c5d4;
  background:#f8fcfd;
  transform:translateY(-2px);
}
.auth-wrap-signup .character-picker-item.selected{
  border:2px solid var(--sky-deep);
  background:#eef9fc;
  box-shadow:0 0 0 2px rgba(42,150,189,.10);
}
.auth-wrap-signup .character-picker-item .ys-character-art,
.auth-wrap-signup .character-picker-item .ys-character-art svg{
  width:100%!important;
  height:100%!important;
  max-width:78px;
  max-height:78px;
  margin:auto;
}

/* 입력 단계 리듬 */
.auth-wrap-signup .field{margin-bottom:17px}
.auth-wrap-signup .field>label{font-size:13px;margin-bottom:7px}
.auth-wrap-signup .input,
.auth-wrap-signup select{min-height:46px}
.auth-wrap-signup .primary-btn{min-height:48px;font-size:14px}
.auth-wrap-signup .secondary-btn{min-height:38px}

/* 선택 항목은 접힘 없이도 본문과 구분 */
.auth-wrap-signup .marketing-fields{
  margin-top:20px;
  padding:15px;
  border-radius:12px;
  background:#f8fbfb;
}

@media(max-width:620px){
  .auth-section{padding-top:18px}
  .auth-wrap-signup{max-width:none}
  .auth-wrap-signup .form-card{padding:18px 14px}
  .auth-wrap-signup .signup-profile-box{padding:13px;margin-bottom:16px}
  .auth-wrap-signup .nickname-option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .auth-wrap-signup .signup-character-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .auth-wrap-signup .character-picker-item{min-height:88px;padding:7px;border-radius:14px}
  .auth-wrap-signup .character-picker-item .ys-character-art,
  .auth-wrap-signup .character-picker-item .ys-character-art svg{max-width:70px;max-height:70px}
  .auth-wrap-signup .otp-row{flex-direction:column}
  .auth-wrap-signup .otp-row .secondary-btn{width:100%}
  .auth-wrap-signup .form-grid{grid-template-columns:1fr}
  .auth-wrap-signup .marketing-fields{padding:13px}
}

@media(max-width:380px){
  .auth-wrap-signup .signup-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .auth-wrap-signup .nickname-option-grid{grid-template-columns:1fr 1fr}
}

.auth-wrap-signup .signup-social-divider{margin:22px 0 12px;color:#98a6aa}
.auth-wrap-signup .signup-social-bottom{margin:0;gap:9px}
.auth-wrap-signup .signup-social-bottom .social-btn{height:44px}
@media(max-width:620px){
  .auth-wrap-signup .signup-social-divider{margin:20px 0 11px}
  .auth-wrap-signup .signup-social-bottom .social-btn{height:46px}
}

/* 게시판·검색·허브·메인·랭킹에서 캐릭터를 작성자 정보와 함께 일괄 표시 */
.board-author .community-author-avatar{width:24px!important;height:24px!important;box-shadow:0 0 0 1px rgba(42,150,189,.13);background:#f4fbfc}
.board-author .community-author-avatar .ys-character-art{width:24px!important;height:24px!important}
.board-author .community-author-avatar svg{width:24px!important;height:24px!important}
.board-author{gap:5px!important}
.board-author-name{max-width:5.8em!important}

.ys-search-author{display:inline-flex;align-items:center;gap:5px;min-width:0;white-space:nowrap}
.ys-search-author .community-author-avatar{width:24px!important;height:24px!important;box-shadow:0 0 0 1px rgba(42,150,189,.12)}
.ys-search-author .community-author-avatar .ys-character-art,.ys-search-author .community-author-avatar svg{width:24px!important;height:24px!important}

.ys-hub-author-mini{display:flex!important;align-items:center!important;gap:5px!important;min-height:22px;margin-top:3px}
.ys-hub-author-mini .community-author-avatar{width:20px!important;height:20px!important}
.ys-hub-author-mini .community-author-avatar .ys-character-art,.ys-hub-author-mini .community-author-avatar svg{width:20px!important;height:20px!important}

.ys-home-author-mini{color:#71878e!important;font-weight:500}
.ys-home-author-mini .community-author-avatar{width:18px!important;height:18px!important}
.ys-home-author-mini .community-author-avatar .ys-character-art,.ys-home-author-mini .community-author-avatar svg{width:18px!important;height:18px!important}
.ys-home-author-mini>span:last-child{max-width:7.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.weekly-name-wrap,.ranking-name-wrap{display:flex!important;align-items:center!important;gap:6px!important;min-width:0}
.weekly-name-wrap .community-author-avatar{width:24px!important;height:24px!important}
.weekly-name-wrap .community-author-avatar .ys-character-art,.weekly-name-wrap .community-author-avatar svg{width:24px!important;height:24px!important}
.ranking-name-wrap .community-author-avatar{width:26px!important;height:26px!important}
.ranking-name-wrap .community-author-avatar .ys-character-art,.ranking-name-wrap .community-author-avatar svg{width:26px!important;height:26px!important}

/* 캐릭터 자체가 외부 SVG 파일 없이 HTML 내부에서 항상 그려지도록 유지 */
.ys-character-art{overflow:hidden;border-radius:50%}
.ys-character-art>svg{display:block!important;width:100%!important;height:100%!important}

@media(max-width:620px){
  .board-author .community-author-avatar{width:22px!important;height:22px!important}
  .board-author .community-author-avatar .ys-character-art,.board-author .community-author-avatar svg{width:22px!important;height:22px!important}
  .ys-home-author-mini>span:last-child{max-width:5.5em}
}

/* 등급 없는 2,000개 프로필 캐릭터: SVG symbol 직접 재사용 */
.ys-compact-character{position:relative;display:inline-flex!important;align-items:center;justify-content:center;overflow:hidden!important}
.ys-compact-character .ys-character-vector{display:block;width:100%;height:100%;pointer-events:none}
.ys-character-level{display:none!important}

/* 회원가입 안에서는 실제 선택 항목만 보여주고, 설명은 별도 안내 버튼으로 분리 */
.auth-wrap-signup .signup-profile-compact{padding-top:14px}
.auth-wrap-signup .signup-profile-compact::before{content:'닉네임 · 캐릭터 설정'}
.signup-profile-startline{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  padding:9px 11px;margin:-2px 0 14px;border:1px solid #dcebed;border-radius:10px;
  background:#f7fbfc;color:#71858d;font-size:11.5px;line-height:1.45
}
.signup-profile-startbadge{
  display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;
  background:#e9f6f8;color:#2c7e91;font-weight:500;white-space:nowrap
}

/* 로그인 영역: 프로필 안내와 회원 레벨 기준을 같은 위계의 독립 버튼으로 배치 */
.member-guide-actions{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;margin-top:8px
}
.member-guide-actions .level-guide-btn,
.member-guide-actions .profile-guide-btn{margin-top:0!important;width:100%;min-width:0}
.profile-guide-btn{
  min-height:52px;border:1px solid #cfe3e7;border-radius:8px;background:#fff;color:#397486;
  font-size:14.5px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:7px;
  cursor:pointer;transition:.18s ease;white-space:nowrap;letter-spacing:.02em
}
.profile-guide-btn:hover{border-color:#6bb9ca;background:#f7fcfd;color:#238ca7}
.profile-guide-btn i{font-size:19px}
.member-guide-actions .level-guide-btn{font-size:14.5px!important;white-space:nowrap;letter-spacing:.02em!important;gap:7px!important}
.member-guide-actions .level-guide-btn i{font-size:19px!important}

.profile-guide-wrap{display:grid;gap:12px}
.profile-guide-intro{padding:13px 14px;border:1px solid #dcecef;border-radius:12px;background:#f7fbfc;color:#59737c;font-size:12px;line-height:1.65}
.profile-guide-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.profile-guide-step{border:1px solid #e1e9eb;border-radius:12px;background:#fff;padding:13px 12px;min-height:92px}
.profile-guide-step b{display:block;color:#355762;font-size:12.5px;margin-bottom:5px}
.profile-guide-step span{display:block;color:#7f9197;font-size:11px;line-height:1.55}
.profile-guide-levels{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.profile-guide-level{padding:11px 12px;border-radius:10px;border:1px solid #e1e9eb;background:#fff}
.profile-guide-level b{display:block;font-size:12px;color:#3d5f6b}.profile-guide-level small{display:block;margin-top:3px;color:#84969c;font-size:10.5px}
.profile-guide-note{padding:11px 12px;border-radius:10px;background:#fff9ef;border:1px solid #f0dfbf;color:#79684e;font-size:11px;line-height:1.6}
@media(max-width:620px){
  .member-guide-actions{gap:6px}
  .profile-guide-btn,.member-guide-actions .level-guide-btn{font-size:12.5px!important;min-height:48px!important;gap:5px!important}
  .profile-guide-btn i,.member-guide-actions .level-guide-btn i{font-size:17px!important}
  .profile-guide-flow{grid-template-columns:1fr}
}

/* 프로필 안내 팝업 가독성 확대 */
.modal-backdrop.open .modal.ys-profile-guide-modal{
  width:min(920px,calc(100vw - 32px))!important;
  max-width:920px!important;
}
.modal.ys-profile-guide-modal .modal-head{
  padding:22px 24px 17px!important;
}
.modal.ys-profile-guide-modal .modal-head h3,
.modal.ys-profile-guide-modal .modal-title{
  font-size:22px!important;
  line-height:1.3!important;
}
.modal.ys-profile-guide-modal .modal-body{
  padding:20px 24px 22px!important;
}
.modal.ys-profile-guide-modal .profile-guide-wrap{gap:16px!important}
.modal.ys-profile-guide-modal .profile-guide-intro{
  padding:17px 18px!important;
  font-size:15px!important;
  line-height:1.7!important;
  border-radius:14px!important;
}
.modal.ys-profile-guide-modal .profile-guide-intro b{font-size:16px!important}
.modal.ys-profile-guide-modal .profile-guide-flow{gap:12px!important}
.modal.ys-profile-guide-modal .profile-guide-step{
  min-height:126px!important;
  padding:17px 16px!important;
  border-radius:14px!important;
}
.modal.ys-profile-guide-modal .profile-guide-step b{
  font-size:16px!important;
  margin-bottom:8px!important;
}
.modal.ys-profile-guide-modal .profile-guide-step span{
  font-size:14px!important;
  line-height:1.65!important;
}
.modal.ys-profile-guide-modal .profile-guide-levels{gap:12px!important}
.modal.ys-profile-guide-modal .profile-guide-level{
  padding:15px 16px!important;
  border-radius:12px!important;
}
.modal.ys-profile-guide-modal .profile-guide-level b{font-size:15px!important}
.modal.ys-profile-guide-modal .profile-guide-level small{
  margin-top:6px!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.modal.ys-profile-guide-modal .profile-guide-note{
  padding:14px 16px!important;
  font-size:13.5px!important;
  line-height:1.65!important;
  border-radius:12px!important;
}
.modal.ys-profile-guide-modal .modal-foot{
  padding:15px 24px 20px!important;
  gap:9px!important;
}
.modal.ys-profile-guide-modal .profile-settings-go-btn{
  min-height:48px!important;
  padding:0 22px!important;
  font-size:15px!important;
  font-weight:500!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.modal.ys-profile-guide-modal .secondary-btn{min-height:48px!important;font-size:14px!important}

/* 프로필 설정 화면으로 이동했을 때 위치를 즉시 인지하도록 강조 */
.signup-profile-compact.ys-profile-focus{
  animation:ysProfileFocusPulse 1.6s ease 1;
  box-shadow:0 0 0 3px rgba(42,150,189,.18),0 10px 28px rgba(50,91,103,.10)!important;
}
@keyframes ysProfileFocusPulse{
  0%{transform:translateY(0);box-shadow:0 0 0 0 rgba(42,150,189,.30)}
  45%{transform:translateY(-2px);box-shadow:0 0 0 5px rgba(42,150,189,.16)}
  100%{transform:translateY(0);box-shadow:0 0 0 3px rgba(42,150,189,.18)}
}

@media(max-width:700px){
  .modal-backdrop.open .modal.ys-profile-guide-modal{width:calc(100vw - 18px)!important}
  .modal.ys-profile-guide-modal .modal-head{padding:18px 16px 14px!important}
  .modal.ys-profile-guide-modal .modal-body{padding:15px 16px 18px!important}
  .modal.ys-profile-guide-modal .modal-foot{padding:13px 16px 16px!important}
  .modal.ys-profile-guide-modal .modal-head h3,
  .modal.ys-profile-guide-modal .modal-title{font-size:20px!important}
  .modal.ys-profile-guide-modal .profile-guide-intro{font-size:14px!important}
  .modal.ys-profile-guide-modal .profile-guide-intro b{font-size:15px!important}
  .modal.ys-profile-guide-modal .profile-guide-flow{grid-template-columns:1fr!important}
  .modal.ys-profile-guide-modal .profile-guide-step{min-height:auto!important;padding:15px!important}
  .modal.ys-profile-guide-modal .profile-guide-step b{font-size:15px!important}
  .modal.ys-profile-guide-modal .profile-guide-step span{font-size:13.5px!important}
  .modal.ys-profile-guide-modal .profile-guide-levels{grid-template-columns:1fr!important}
  .modal.ys-profile-guide-modal .modal-foot{display:grid!important;grid-template-columns:1fr!important}
  .modal.ys-profile-guide-modal .profile-settings-go-btn,
  .modal.ys-profile-guide-modal .secondary-btn{width:100%!important}
}

/* 가입 필수 순서: 아이디 → 비밀번호 → 이름 → 휴대폰 인증 → 닉네임 → 캐릭터 */
.auth-wrap-signup .signup-profile-box{
  margin-top:4px!important;
  margin-bottom:18px!important;
}
.auth-wrap-signup .signup-profile-box::before{
  content:'닉네임 · 캐릭터 설정'!important;
}
.auth-wrap-signup .signup-profile-box+.signup-realname-field{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}
.auth-wrap-signup .signup-realname-field::before{display:none!important}

/* 두 번째 참고화면의 가입 완료 / 네이버 / 카카오 버튼 세로 약 30% 확대 */
.auth-wrap-signup .signup-submit-tall{
  min-height:63px!important;
  height:63px!important;
  font-size:15px!important;
  border-radius:12px!important;
}
.auth-wrap-signup .signup-social-bottom .social-btn{
  min-height:58px!important;
  height:58px!important;
  font-size:14px!important;
  border-radius:11px!important;
}
@media(max-width:620px){
  .auth-wrap-signup .signup-submit-tall{min-height:63px!important;height:63px!important}
  .auth-wrap-signup .signup-social-bottom .social-btn{min-height:60px!important;height:60px!important}
}

.auth-wrap-signup .signup-required-hint{
  display:inline-flex;align-items:center;margin-left:6px;padding:2px 6px;border-radius:999px;
  color:#e77b18;background:#fff5e9;border:1px solid #f4c18d;font-size:10.5px;font-weight:500;
  letter-spacing:0!important;vertical-align:middle;
}
.auth-wrap-signup .signup-optional-hint{
  display:inline-flex;align-items:center;margin-left:6px;color:#8b9aa0;font-size:10.5px;font-weight:500;
}
.auth-wrap-signup .signup-random-profile-note{
  margin:0 0 14px;padding:10px 12px;border:1px solid #f1cfaa;border-radius:12px;background:#fff8ef;
  color:#9a6327;font-size:12px;line-height:1.6;
}
.auth-wrap-signup .signup-random-profile-note b{color:#df7517}
.auth-wrap-signup .signup-selected-character-preview.no-selection>div:first-child{color:#d88328;font-size:26px}
.auth-wrap-signup .field>label{display:flex;align-items:center;flex-wrap:wrap;gap:2px}
@media(max-width:620px){
 .auth-wrap-signup .signup-required-hint,.auth-wrap-signup .signup-optional-hint{font-size:10px}
 .auth-wrap-signup .signup-random-profile-note{font-size:11.5px;padding:9px 10px}
}

/* 굵은 글꼴(Bold 계열) 사용을 제거하고 라이트~미디엄 서체 범위로 통일한 뒤,
   공백 없이 붙어 있는 짧은 라벨/배지/버튼류 텍스트가 답답해 보이지 않도록
   자간을 살짝 넓혀 가독성을 보강합니다. */
.account-level-pill,
.join-btn,
.primary-btn,
.write-top,
.bottom-cat-label,
.ad-label,
.nav-link,
.eyebrow,
.category-mini-badge,
.hub-pill,
.filter,
.home-subcategory-name,
.debate-actions button{
  letter-spacing:.16em!important;
}

/* 모든 제목에서 게시글 배지가 댓글 배지보다 항상 우선 */
.ys-v9-post-priority{display:inline-flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important;margin-left:4px!important;vertical-align:middle!important}
.ys-v9-comment-fallback{display:inline-flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important;margin-left:4px!important;vertical-align:middle!important}
.best-post-section .ys-v9-post-priority .ys-post-badge{max-width:none!important;flex:0 0 auto!important}

/* 베스트글은 댓글배지 대신 게시글배지만 노출 */
.best-post-section .preview-reaction,
.best-post-section .ys-title-priority-comment,
.best-post-section .ys-v9-comment-fallback{
  display:none !important;
}
.best-post-section .title .ys-best-force-post-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  margin-left:4px !important;
  flex:0 0 auto !important;
}

.best-post-section .title{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  gap:4px !important;
}
.best-post-section .title .post-title-text{
  flex:1 1 auto !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.best-post-section .title .post-title-badges-v2,
.best-post-section .title .ys-best-force-post-badge{
  display:inline-flex !important;
  align-items:center !important;
  flex:0 0 auto !important;
}

/* 홈 활동 신호: 베스트=게시글 배지, 최신=댓글 반응 배지 */
.best-post-section .title,
.ys-latest-post-section .title{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  gap:4px !important;
}
.best-post-section .title .post-title-text,
.ys-latest-post-section .title .post-title-text{
  flex:1 1 auto !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
.best-post-section .ys-v14-best-post-badge,
.ys-latest-post-section .ys-v14-latest-post-badge,
.ys-latest-post-section .ys-v14-latest-comment-badge{
  display:inline-flex !important;
  align-items:center !important;
  flex:0 0 auto !important;
  margin-left:2px !important;
  max-width:none !important;
  overflow:visible !important;
}
.best-post-section .ys-v14-best-post-badge .ys-post-badge,
.ys-latest-post-section .ys-v14-latest-post-badge .ys-post-badge{
  flex:0 0 auto !important;
  max-width:92px !important;
}
.ys-latest-post-section .ys-v14-latest-comment-badge .comment-badge-item,
.ys-latest-post-section .ys-v14-latest-comment-badge .ys-comment-badge,
.best-post-section .ys-v14-latest-comment-badge .comment-badge-item,
.best-post-section .ys-v14-latest-comment-badge .ys-comment-badge{
  flex:0 0 auto !important;
  max-width:78px !important;
}

.character-picker-item,
.auth-wrap-signup .character-picker-item,
.auth-wrap-signup .signup-character-grid .character-picker-item,
.character-picker .character-picker-item,
.character-picker .character-picker-grid .character-picker-item,
.ys-reference-character-grid .character-picker-item{
  border-radius:50%!important;
}
.character-picker-item .ys-character-art,
.character-picker-item .ys-character-vector,
.auth-wrap-signup .character-picker-item .ys-character-art,
.auth-wrap-signup .character-picker-item .ys-character-vector,
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-art,
.auth-wrap-signup .signup-character-grid .character-picker-item .ys-character-vector,
.character-picker .character-picker-item .ys-character-art,
.character-picker .character-picker-item .ys-character-vector,
.character-picker .character-picker-grid .character-picker-item .ys-character-art,
.character-picker .character-picker-grid .character-picker-item .ys-character-vector,
.ys-reference-character-grid .character-picker-item .ys-character-art,
.ys-reference-character-grid .character-picker-item .ys-character-vector{
  width:90%!important;
  height:90%!important;
  max-width:90%!important;
  max-height:90%!important;
  margin:auto!important;
  border-radius:50%!important;
}

/* 간편 글 편집기: 제목 아래, 본문 위에 필요한 기능만 배치 */
.ys-simple-editor-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  min-height:48px;
  margin:2px 0 7px;
  padding:7px 9px;
  border:1px solid #dce7e9;
  border-radius:10px;
  background:#fbfcfc;
}
.ys-simple-editor-group{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.ys-simple-editor-badge-group{margin-left:auto;min-width:0}
.ys-simple-editor-sep{width:1px;height:25px;background:#dce7e9;display:block}
.ys-simple-editor-btn{
  height:34px;
  min-width:42px;
  padding:0 8px;
  border:1px solid transparent;
  border-radius:7px;
  background:transparent;
  color:#526b75;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  font-size:12px;
  white-space:nowrap;
}
.ys-simple-editor-btn:hover,
.ys-simple-editor-btn:focus-visible{
  border-color:#c9e0e5;
  background:#fff;
  color:#238ca7;
  outline:none;
}
.ys-simple-editor-btn i{font-size:16px}
.ys-simple-editor-btn b,.ys-simple-editor-btn u,.ys-color-a{font-size:16px;line-height:1}
.ys-color-a{font-weight:600;text-decoration:underline;text-decoration-color:#d35400;text-decoration-thickness:3px;text-underline-offset:3px}
.ys-simple-color-wrap{position:relative}
.ys-simple-color-palette{
  position:absolute;
  left:0;
  top:39px;
  z-index:80;
  display:flex;
  gap:7px;
  padding:8px;
  border:1px solid #dce7e9;
  border-radius:9px;
  background:#fff;
  box-shadow:0 8px 24px rgba(31,85,100,.14);
}
.ys-color-dot{
  width:24px;
  height:24px;
  border-radius:50%;
  border:2px solid #fff;
  box-shadow:0 0 0 1px #d4dfe1;
  padding:0;
}
.ys-color-dot[data-ys-color="#d35400"]{background:#d35400}
.ys-color-dot[data-ys-color="#2a96bd"]{background:#2a96bd}
.ys-color-dot[data-ys-color="#319d83"]{background:#319d83}
.ys-color-dot[data-ys-color="#7b61a8"]{background:#7b61a8}
.ys-simple-editor-badge-btn{
  border-color:#cfe5ea;
  background:#f6fbfc;
  color:#287f96;
}
.ys-simple-badge-current{
  min-height:32px;
  max-width:160px;
  display:inline-flex;
  align-items:center;
  padding:2px 4px;
  overflow:hidden;
}
.ys-simple-badge-current svg{display:block;max-width:145px;height:30px}
.ys-simple-badge-empty{
  color:#96a4a9;
  font-size:11px;
  padding:4px 6px;
}
.ys-simple-editor-note{
  margin:0 0 14px;
  color:#8a9ba1;
  font-size:11px;
  line-height:1.55;
}
.ys-write-simple-badge-intro{
  margin:0 0 12px;
  padding:9px 11px;
  border-radius:9px;
  background:#f4f8f9;
  color:#6f838b;
  font-size:11.5px;
  line-height:1.6;
}
.ys-write-simple-badge-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.ys-write-simple-badge-card{
  min-height:62px;
  border:1px solid #dfe8ea;
  border-radius:10px;
  background:#fff;
  padding:9px 10px;
  display:flex;
  align-items:center;
  gap:8px;
  text-align:left;
  color:#526b75;
}
.ys-write-simple-badge-card:hover{border-color:#9fd2dd;background:#f8fdfe}
.ys-write-simple-badge-card.selected{border-color:#35a4be;background:#edf9fb;box-shadow:0 0 0 1px rgba(53,164,190,.08)}
.ys-write-simple-badge-preview{display:inline-flex;align-items:center;max-width:132px;overflow:hidden;flex:0 0 auto}
.ys-write-simple-badge-preview svg{display:block;max-width:130px;height:31px}
.ys-write-simple-badge-name{font-size:11.5px;font-weight:500;white-space:nowrap}
.ys-write-simple-badge-none{
  grid-column:1/-1;
  justify-content:center;
  min-height:44px;
  color:#7d8e94;
  background:#f8fafb;
}
.ys-write-simple-badge-admin-note{
  margin-top:12px;
  padding:9px 11px;
  border:1px solid #e4ecee;
  border-radius:9px;
  color:#87979d;
  font-size:10.5px;
  line-height:1.6;
}
.ys-rich-link{color:#238ca7;text-decoration:underline;text-underline-offset:2px}

.ys-member-post-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:24px;
  padding:3px 9px;
  margin-left:5px;
  border:1px solid #d7e4e7;
  border-radius:999px;
  background:#fff;
  color:#55717b;
  font-size:10.5px;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
  vertical-align:middle;
}
.ys-member-post-badge.tone-review{border-color:#bcdde5;background:#f2fafc;color:#2a8197}
.ys-member-post-badge.tone-recommend{border-color:#c7deef;background:#f5f9fd;color:#3e76a2}
.ys-member-post-badge.tone-satisfied{border-color:#c9e3d7;background:#f5fbf8;color:#3b836c}
.ys-member-post-badge.tone-wow{border-color:#f1ced5;background:#fff6f8;color:#b55c70}
.ys-member-post-badge.tone-agree{border-color:#d6dfc8;background:#fafcf5;color:#738351}
.ys-member-post-badge.tone-tip{border-color:#eadbb9;background:#fffaf0;color:#9a7333}
.ys-member-post-badge.tone-info{border-color:#d7d8ed;background:#f8f8fd;color:#666aa0}
.ys-member-post-badge.tone-question{border-color:#d5dfe2;background:#f7f9fa;color:#60737a}
.ys-write-simple-badge-card .ys-member-post-badge{margin-left:0}
.ys-simple-badge-current .ys-member-post-badge{margin-left:0}

@media(max-width:620px){
  .ys-simple-editor-toolbar{gap:5px;padding:6px}
  .ys-simple-editor-btn{min-width:36px;padding:0 7px}
  .ys-simple-editor-btn span{display:none}
  .ys-simple-editor-badge-group{margin-left:0;width:100%;border-top:1px solid #e5ecee;padding-top:6px}
  .ys-simple-editor-badge-btn span{display:inline}
  .ys-simple-badge-current{max-width:180px}
  .ys-write-simple-badge-grid{grid-template-columns:1fr}
}

/* ===== 모바일·웹 반응형 최종 보강 패치 =====
   기존에 154개의 미디어쿼리로 대부분 화면이 잘 대응되어 있었으나,
   아래 항목들은 누락되어 있어 추가로 보강합니다. */

/* 1) 공용 모달(#modalBox / .modal) 세로 스크롤 처리
   - 기존엔 관리자 광고 모달(#modalBox.admin-ad-editor-modal) 한 곳에만
     max-height/overflow가 임시로 적용되어 있었고, 회원가입·확인창 등
     나머지 모든 모달에는 없어서 모바일 짧은 화면(가로모드 등)에서
     내용이 길면 하단 버튼이 화면 밖으로 잘려 클릭이 안 되는 문제가 있었음.
   - .modal-backdrop이 padding:20px(상하 합 40px)로 감싸는 구조를 그대로 살려
     동일한 계산식으로 모달 내부만 스크롤되게 처리. */
.modal,#modalBox{
  max-height:calc(100vh - 40px);
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
@media(max-width:620px){
  .modal,#modalBox{
    width:calc(100% - 0px);
    max-height:calc(100vh - 24px);
    max-height:calc(100dvh - 24px);
    border-radius:14px;
  }
  .modal-backdrop{padding:12px}
}

/* 2) 사용자 업로드 이미지 등 크기 지정이 안 된 img가 컨테이너를 넘어가지
   않도록 하는 기본 안전장치. 로고(.brand img) 등 크기가 이미 지정된
   요소는 더 구체적인 선택자라 이 규칙(단순 img)보다 우선 적용되어
   영향받지 않으므로 별도 복원 규칙이 필요 없음(추가했다가 동일 우선순위
   충돌로 로고가 커지는 버그가 발생해 제거함). */
img{max-width:100%;height:auto}

/* 3) 실수로 발생하는 가로 스크롤(좌우 밀림) 방지 안전장치.
   내부적으로 필요한 가로 스크롤 영역(.nav-row, .admin-table-wrap 등)은
   각자 overflow-x:auto를 갖고 있어 이 규칙의 영향을 받지 않음. */
html,body{overflow-x:hidden}
.wrap,.app-main{max-width:100vw}

/* 4) 모바일 폼 요소 터치 영역 최소 44px 보장 (이미 대부분 16px+44px로
   되어 있으나 일부 관리자/좁은 셀렉트 요소가 빠져 있어 보강) */
@media(max-width:620px){
  button,.filter,.list-sort,.board-page-btn,select,.admin-select,
  .job-filter-chip{min-height:40px}
  input[type="checkbox"],input[type="radio"]{min-width:18px;min-height:18px}
}

/* 5) 초소형 화면(360px 이하, 구형 안드로이드 등) 헤더 여백 추가 보정 */
@media(max-width:360px){
  .wrap{width:calc(100% - 20px)}
  .brand img{width:76px;height:40px}
  .page-title{font-size:19px}
  .icon-grid{--cols:3!important;gap:14px 4px}
}

@media (min-width:901px){
  /* 환영 띠: 참고 이미지 58px */
  .top-welcome{
    height:58px !important;
    min-height:58px !important;
    padding:0 !important;
    font-size:16px !important;
    line-height:1.4 !important;
    letter-spacing:.02em !important;
    color:#80939a !important;
    background:var(--cream) !important;
  }
  /* 참고 이미지에서는 닫기 버튼이 시각적으로 드러나지 않지만 클릭 기능은 그대로 둠 */
  .top-welcome .close{
    right:28px !important;
    top:13px !important;
    width:32px !important;
    height:32px !important;
    color:#fff !important;
    background:transparent !important;
    outline:0 !important;
  }

  /* 전체 헤더 세로 리듬 */
  .site-head{
    padding:23px 0 7px !important;
    background:#fff !important;
  }
  .head-row{
    display:grid !important;
    grid-template-columns:310px minmax(0,1fr) 240px !important;
    column-gap:20px !important;
    row-gap:0 !important;
    align-items:center !important;
  }

  /* 좌측 로고 + 잘나가는 사장님 문구 */
  .site-head .brand,
  .site-head .brand-home-pwm{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    padding-left:19px !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  .site-head .brand img:first-child{
    width:108px !important;
    height:58px !important;
    flex:0 0 108px !important;
    margin-right:0 !important;
    object-fit:contain !important;
    object-position:left center !important;
  }
  .site-head .brand .brand-copy-svg-centered{
    display:block !important;
    width:226px !important;
    height:auto !important;
    max-width:none !important;
    flex:0 0 226px !important;
    margin:0 !important;
    object-fit:contain !important;
    object-position:left center !important;
  }

  /* 중앙 검색창: 참고 이미지와 같은 짧고 낮은 pill */
  .global-search{
    width:62% !important;
    height:32px !important;
    min-height:32px !important;
    margin-left:auto !important;
    padding:0 14px !important;
    gap:9px !important;
    border-radius:20px !important;
  }
  .global-search input{
    min-width:0 !important;
    font-size:13px !important;
    line-height:1.4 !important;
  }

  /* 우측 계정 영역: 로그인 상태에서도 검색창을 침범하지 않게 240px 안에 고정 */
  .account{
    width:240px !important;
    min-width:240px !important;
    max-width:240px !important;
    justify-content:flex-end !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
    font-size:13px !important;
    line-height:1.2 !important;
    overflow:visible !important;
  }
  .account .nav-link{
    min-height:0 !important;
    padding:6px 5px !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }
  .account .join-btn{
    width:98px !important;
    min-width:98px !important;
    height:26px !important;
    min-height:26px !important;
    padding:0 12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:20px !important;
    font-size:13px !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
    flex:0 0 98px !important;
  }
  .ys-notify-bell .ys-bell-svg{
    width:36px !important;
    height:36px !important;
  }

  /* 로그인 시 긴 닉네임 때문에 알림/검색이 겹치던 문제만 별도 정리 */
  .head-row:has(.account-btn) .account{
    gap:5px !important;
  }
  .head-row:has(.account-btn) .account-btn{
    width:104px !important;
    max-width:104px !important;
    min-width:104px !important;
    padding:3px 2px !important;
    flex:0 0 104px !important;
    overflow:hidden !important;
  }
  .head-row:has(.account-btn) .account-nick-row{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    text-align:right !important;
    font-size:12.5px !important;
    line-height:1.15 !important;
  }
  .head-row:has(.account-btn) .account-level-pill{
    max-width:100% !important;
    padding:2px 7px !important;
    font-size:9.5px !important;
    line-height:1.15 !important;
  }
  .head-row:has(.account-btn) .account .join-btn{
    width:82px !important;
    min-width:82px !important;
    flex-basis:82px !important;
    padding:0 9px !important;
  }

  /* 카테고리 메뉴: 참고 이미지의 글자 크기/간격 */
  .head-cat-nav{
    border-top:1px solid var(--line) !important;
    margin-top:4px !important;
    padding-top:11px !important;
    gap:7px !important;
  }
  .head-cat-nav .nav-link{
    min-height:0 !important;
    padding:10px 16px !important;
    font-size:19px !important;
    line-height:1.35 !important;
    color:#4d6870 !important;
  }
}

:root{
  --ys-action-blue:#325c9f;
  --ys-action-blue-hover:#284d86;
  --ys-action-blue-pressed:#234578;
  --ys-action-blue-soft:#eef3f9;
  --ys-action-blue-border:#b7c5da;
  --ys-action-blue-text:#325c9f;
  --ys-live-green:#3e9379;
}

/* ===== 오늘의 토론: 제공 PDF 시안 재현 ===== */
.debate.debate-reference-card{
  position:relative !important;
  overflow:hidden !important;
  min-height:174px !important;
  height:auto !important;
  padding:25px 31px 24px !important;
  border:0 !important;
  border-radius:18px !important;
  background:var(--ys-action-blue) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.debate.debate-reference-card::after{display:none !important}
.debate-reference-card .debate-topline{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:15px !important;
  min-height:23px !important;
}
.debate-reference-card .eyebrow{
  margin:0 !important;
  padding:0 !important;
  color:#e5ebf3 !important;
  opacity:1 !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.35 !important;
  letter-spacing:.08em !important;
  white-space:nowrap !important;
}
.debate-reference-card .debate-status{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:22px !important;
  padding:3px 11px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--ys-live-green) !important;
  color:#eef7f3 !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  letter-spacing:.01em !important;
  white-space:nowrap !important;
}
.debate-reference-card .debate-status.done{
  background:#e8f1ed !important;
  color:#2f715e !important;
}
.debate-reference-card .debate-title{
  margin:8px 0 18px !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:400 !important;
  line-height:1.38 !important;
  letter-spacing:-.035em !important;
}
.debate-reference-card .debate-actions{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:12px !important;
  margin:0 !important;
}
.debate-reference-card .debate-actions button{
  min-height:42px !important;
  height:42px !important;
  padding:0 20px !important;
  border-radius:19px !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.03em !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.debate-reference-card .debate-main-btn{
  min-width:148px !important;
  border:1px solid #fff !important;
  background:#fff !important;
  color:#687f8c !important;
}
.debate-reference-card .debate-main-btn:hover{
  background:#f5f7fa !important;
  border-color:#f5f7fa !important;
  color:#536c79 !important;
}
.debate-reference-card .debate-extra-btn{
  min-width:177px !important;
  border:1px solid #9cb1d1 !important;
  background:transparent !important;
  color:#dce5f2 !important;
}
.debate-reference-card .debate-extra-btn:hover{
  border-color:#d4dfed !important;
  background:rgba(255,255,255,.07) !important;
  color:#fff !important;
}
.debate-reference-card .debate-meta{
  margin-left:4px !important;
  color:#d8e2f0 !important;
  opacity:1 !important;
  font-size:12.5px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  white-space:nowrap !important;
}

/* 토론 모달도 메인 카드와 같은 블루 계열로 연결 */
.debate-choice input:checked + span{
  border-color:var(--ys-action-blue) !important;
  background:var(--ys-action-blue-soft) !important;
  color:var(--ys-action-blue) !important;
  box-shadow:0 0 0 2px rgba(50,92,159,.09) !important;
}
.debate-result-bar span{background:var(--ys-action-blue) !important}

/* ===== 사이트 핵심 CTA 버튼 색상 통일 =====
   기능/클래스/이벤트는 그대로 두고 색상만 토론 카드 계열로 통일한다. */
.join-btn,
.primary-btn,
.login-btn,
.write-top,
.admin-btn.primary,
.admin-login-submit,
.shop-add{
  background:var(--ys-action-blue) !important;
  border-color:var(--ys-action-blue) !important;
  color:#fff !important;
}
.join-btn:hover,
.primary-btn:hover,
.login-btn:hover,
.write-top:hover,
.admin-btn.primary:hover,
.admin-login-submit:hover,
.shop-add:hover{
  background:var(--ys-action-blue-hover) !important;
  border-color:var(--ys-action-blue-hover) !important;
  color:#fff !important;
}
.join-btn:active,
.primary-btn:active,
.login-btn:active,
.write-top:active,
.admin-btn.primary:active,
.admin-login-submit:active,
.shop-add:active{
  background:var(--ys-action-blue-pressed) !important;
  border-color:var(--ys-action-blue-pressed) !important;
}

/* 보조 버튼/신청 보조 동작은 같은 블루 계열의 흰색 아웃라인 스타일 */
.secondary-btn,
.signup-id-check-btn,
.signup-reroll-btn,
.shop-detail-btn,
.shop-cart-btn{
  border-color:var(--ys-action-blue-border) !important;
  background:#fff !important;
  color:var(--ys-action-blue-text) !important;
}
.secondary-btn:hover,
.signup-id-check-btn:hover,
.signup-reroll-btn:hover,
.shop-detail-btn:hover,
.shop-cart-btn:hover{
  border-color:var(--ys-action-blue) !important;
  background:var(--ys-action-blue-soft) !important;
  color:var(--ys-action-blue) !important;
}

/* 선택형 버튼의 활성색도 같은 계열로 정리 */
.filter.active,
.board-page-btn.active,
.job-tab.active{
  background:var(--ys-action-blue) !important;
  border-color:var(--ys-action-blue) !important;
  color:#fff !important;
}
.job-filter-chip.active,
.saved-active,
.liked-active{
  background:var(--ys-action-blue-soft) !important;
  border-color:var(--ys-action-blue-border) !important;
  color:var(--ys-action-blue) !important;
}
.link-btn{color:var(--ys-action-blue) !important}

/* 의미색은 보존: 위험/삭제, 성공, 네이버·카카오 브랜드 버튼은 색상 통일 대상에서 제외 */
.admin-btn.danger,.admin-mini-btn.danger{ /* 기존 위험색 유지 */ }
.admin-btn.success,.admin-mini-btn.success{ /* 기존 성공색 유지 */ }
.social-btn.naver,.social-btn.kakao{ /* 브랜드 고유색 유지 */ }

@media(max-width:900px){
  .debate-reference-card .debate-actions{
    flex-wrap:wrap !important;
  }
  .debate-reference-card .debate-meta{
    flex:1 1 100% !important;
    margin-left:0 !important;
  }
}
@media(max-width:620px){
  .debate.debate-reference-card{
    min-height:0 !important;
    padding:20px 18px 21px !important;
    border-radius:16px !important;
  }
  .debate-reference-card .debate-topline{gap:10px !important}
  .debate-reference-card .eyebrow{font-size:13px !important}
  .debate-reference-card .debate-status{font-size:10.5px !important;padding:3px 9px !important}
  .debate-reference-card .debate-title{
    margin:9px 0 16px !important;
    font-size:18px !important;
    line-height:1.45 !important;
  }
  .debate-reference-card .debate-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
  }
  .debate-reference-card .debate-actions button{
    width:100% !important;
    min-width:0 !important;
    padding:0 10px !important;
    font-size:12.5px !important;
  }
  .debate-reference-card .debate-meta{
    grid-column:1/-1 !important;
    width:100% !important;
    margin-top:2px !important;
    font-size:11.5px !important;
    white-space:normal !important;
  }
}

/* 최종 헤더 보정: 파일 후반의 226px/height:auto 규칙보다 나중에 적용 */
.site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
.site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
.site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
  position:relative !important;
  display:block !important;
  width:181px !important;
  height:26.14px !important;
  min-width:181px !important;
  min-height:26.14px !important;
  max-width:181px !important;
  max-height:26.14px !important;
  flex:0 0 181px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  line-height:0 !important;
  object-fit:unset !important;
  transform:none !important;
  filter:none !important;
}
.site-head .brand .brand-copy-wave-glyphs>.ys-wave-char{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  display:block !important;
}
@media (max-width:900px){
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
    width:145px !important;height:20.94px !important;min-width:145px !important;min-height:20.94px !important;max-width:145px !important;max-height:20.94px !important;flex:0 0 145px !important;
  }
}
@media (max-width:680px){
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
    width:116px !important;height:16.75px !important;min-width:116px !important;min-height:16.75px !important;max-width:116px !important;max-height:16.75px !important;flex:0 0 116px !important;
  }
}

/* ============================================================
   YOJUMSAJANG — unified responsive layer / 2026-08-10
   기준: Desktop > 900 / Tablet <= 900 / Mobile <= 620 / Small <= 380
   기존 기능·색상·일러스트를 유지하면서 화면 폭 관련 최종 우선순위를 한곳에서 관리한다.
   ============================================================ */

/* 공통: grid/flex 자식의 intrinsic width 때문에 생기는 가로 넘침 방지 */
html,body{max-width:100%;overflow-x:clip}
img,svg,video,canvas{max-width:100%}
.head-row>*,.home-grid>*,.content-layout>*,.preview-grid>*,.jobs-layout>*,
.admin-shell-v2>*,.admin-grid-2>*,.admin-grid-equal>*,.hub-lower-grid>*{min-width:0}

/* Desktop: 기존 의도(검색창 축소 폭)는 유지 */
.global-search{width:49% !important;max-width:100%;min-width:0;margin-left:auto !important}
.global-search input{min-width:0}
.ad-top{position:sticky;top:var(--header-h,96px);z-index:60}

/* ---------- Tablet / narrow desktop ---------- */
@media(max-width:900px){
  .head-row{
    grid-template-columns:minmax(0,1fr) auto !important;
    column-gap:14px !important;
    row-gap:12px !important;
    align-items:center !important;
  }
  .brand{grid-column:1 !important;grid-row:1 !important;min-width:0 !important}
  .account{grid-column:2 !important;grid-row:1 !important;min-width:0 !important}
  .global-search{
    grid-column:1/-1 !important;
    grid-row:2 !important;
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
  }
  .home-grid,.content-layout,.jobs-layout,.job-detail-shell{grid-template-columns:1fr !important}
  .right-stack{order:2}
  .preview-grid{grid-template-columns:1fr 1fr}
  .profile-grid{grid-template-columns:1fr}
  .admin-shell,.admin-shell-v2{grid-template-columns:1fr !important}
  .admin-grid-2,.admin-grid-equal,.admin-setting-grid{grid-template-columns:1fr !important}
  .admin-sidebar-v2{overflow-x:auto;overscroll-behavior-x:contain}
  .admin-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ad-side.tall{height:220px}
  .hub-lower-grid{grid-template-columns:minmax(0,1fr) !important}
  .hub-topic-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}


/* ---------- Mobile ---------- */
@media(max-width:620px){
  :root{--mobile-gutter:12px}
  body{min-width:0}
  .wrap{width:calc(100% - (var(--mobile-gutter) * 2)) !important;max-width:var(--content);margin-inline:auto}

  /* Header: 로고/슬로건/계정 → 검색창 순서로 안정화 */
  .site-head{padding:11px 0 8px !important}
  .head-row{column-gap:8px !important;row-gap:9px !important}
  .site-head .brand{gap:6px !important;overflow:hidden !important}
  .site-head .brand img:first-child,
  .site-head .brand .ys-main-logo-new{width:84px !important;height:44px !important;flex:0 0 84px !important;object-fit:contain}
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
    width:92px !important;height:13.30px !important;
    min-width:92px !important;min-height:13.30px !important;
    max-width:92px !important;max-height:13.30px !important;
    flex:0 0 92px !important;
  }
  .account{gap:5px !important;white-space:nowrap}
  .account .nav-link{min-height:36px !important;padding:7px 5px !important;font-size:12px !important}
  .account .join-btn{min-height:36px !important;padding:7px 9px !important;font-size:12px !important}
  .global-search{height:42px !important;width:100% !important;padding-inline:12px !important}
  .global-search input{font-size:14px !important}

  /* 상단 광고: AD 라벨의 absolute 기준을 광고 박스로 고정 */
  .ad-top{position:relative !important;top:auto !important;z-index:auto !important;height:72px}
  .ad-top .ad-label{top:7px !important;right:8px !important}

  /* 홈/카드 */
  .home-grid{gap:12px !important}
  .preview-grid{grid-template-columns:1fr !important;gap:12px !important}
  .preview-card{height:auto !important;min-height:176px}
  .debate{height:auto !important;min-height:0 !important}
  .market-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .product-card,.category-card,.job-card{min-width:0}

  /* 게시판: 제목 텍스트와 배지가 서로 밀어내지 않도록 비율 제한 */
  .board-row{grid-template-columns:32px minmax(0,1fr) !important;gap:6px !important}
  .board-row>*:nth-child(n+3){display:none !important}
  .board-title-cell{min-width:0 !important;overflow:hidden !important}
  .board-title-cell .post-title{min-width:0 !important;max-width:100% !important;overflow:hidden !important;gap:3px !important}
  .board-title-cell .post-title .post-title-text{min-width:0 !important;flex:1 1 auto !important}
  .board-title-cell .post-title .post-title-trailing{
    min-width:0 !important;
    max-width:48% !important;
    width:auto !important;
    flex:0 1 auto !important;
    overflow:hidden !important;
  }
  .board-title-cell .post-title .ys-post-badge.size-list{height:21px !important;max-width:68px !important}
  .board-title-cell .post-title .ys-comment-badge.compact{height:21px !important;max-width:62px !important}
  .board-title-cell .post-title .comment-badge-item,
  .board-title-cell .post-title .preview-reaction{max-width:62px !important;overflow:hidden !important}
  .board-title-cell .post-title .post-attachment-indicators{max-width:24px !important;overflow:hidden !important}

  /* 글/댓글/폼 */
  .detail-card,.form-card{padding:18px !important}
  .detail-body{max-width:100%;overflow-wrap:anywhere}
  .form-grid{grid-template-columns:1fr !important}
  .otp-row{align-items:stretch}
  .otp-row>*{min-width:0}
  .modal{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}

  /* 카테고리 허브 */
  .category-card-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important}
  .hub-intro{grid-template-columns:70px minmax(0,1fr) !important;gap:12px !important}
  .hub-summary{display:none !important}
  .hub-lower-grid,.hub-topic-list{grid-template-columns:minmax(0,1fr) !important}
  .hub-mini-panel,.hub-topic,.hub-topic>div{min-width:0 !important;max-width:100% !important}
  .hub-topic{width:100% !important;overflow:hidden !important}
  .hub-topic>div{width:calc(100% - 40px) !important;overflow:hidden !important}
  .hub-topic strong{max-width:100% !important;overflow:hidden !important}
  .compact-category-card-hero>.compact-category-intro{max-width:100% !important;width:100% !important}
  .compact-category-card-hero::before{opacity:.18 !important;width:50% !important;right:-5% !important}

  /* 구인·구직 */
  .local-jobs-head,.job-hero{flex-direction:column !important;align-items:flex-start !important}
  .local-jobs-preview{grid-template-columns:1fr !important}
  .job-meta-grid,.job-condition-grid{grid-template-columns:1fr 1fr !important}
  .job-side{display:grid;grid-template-columns:1fr !important}
  .job-card-top{flex-direction:column !important}

  /* 관리자: 페이지 자체는 고정 폭 없이, 표만 내부 스크롤 */
  .admin-page-v2{padding:16px 12px 26px !important}
  .admin-metrics-v2,.admin-summary-strip{grid-template-columns:1fr 1fr !important}
  .admin-toolbar{align-items:stretch !important}
  .admin-search{min-width:100% !important;flex-basis:100% !important}
  .admin-select{min-width:0 !important;flex:1 1 120px}
  .admin-ad-slots,.admin-queue-grid,.admin-setting-grid{grid-template-columns:1fr !important}
  .admin-topbar-v2{padding-inline:10px !important}

  /* iPhone safe area 포함 하단 고정 메뉴 */
  .mobile-bottom{
    height:calc(58px + env(safe-area-inset-bottom)) !important;
    padding-bottom:env(safe-area-inset-bottom) !important;
  }
  .mobile-bottom button{min-width:0;min-height:44px}
  .footer{padding-bottom:calc(85px + env(safe-area-inset-bottom)) !important}
  .test-dock{bottom:calc(70px + env(safe-area-inset-bottom)) !important}
}

/* ---------- Small phones ---------- */
@media(max-width:430px){
  .site-head .brand img:first-child,
  .site-head .brand .ys-main-logo-new{width:80px !important;height:42px !important;flex-basis:80px !important}
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
    width:82px !important;height:11.85px !important;
    min-width:82px !important;min-height:11.85px !important;
    max-width:82px !important;max-height:11.85px !important;
    flex-basis:82px !important;
  }
  .account .nav-link{padding-inline:4px !important;font-size:11.5px !important}
  .account .join-btn{padding-inline:8px !important;font-size:11.5px !important}
}

@media(max-width:380px){
  :root{--mobile-gutter:10px}
  .head-row{column-gap:5px !important}
  .site-head .brand img:first-child,
  .site-head .brand .ys-main-logo-new{width:76px !important;height:40px !important;flex-basis:76px !important}
  .site-head .brand .brand-copy-svg-centered.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-wave.brand-copy-wave-glyphs,
  .site-head .brand .brand-copy-provided.brand-copy-wave-glyphs{
    width:72px !important;height:10.41px !important;
    min-width:72px !important;min-height:10.41px !important;
    max-width:72px !important;max-height:10.41px !important;
    flex-basis:72px !important;
  }
  .account{gap:3px !important}
  .account .nav-link{padding-inline:3px !important;font-size:11px !important}
  .account .join-btn{padding-inline:7px !important;font-size:11px !important}
  .category-card-grid{grid-template-columns:1fr !important}
  .market-grid{grid-template-columns:1fr !important}
  .admin-metrics-v2,.admin-summary-strip{grid-template-columns:1fr !important}
  .job-meta-grid,.job-condition-grid{grid-template-columns:1fr !important}
}
