/*
Theme Name: 링크모음.me 디렉터리
Author: 비랜딩 (blanding.kr)
Version: 1.1.5
Description: 링크 포털, 배너 관리, 분류별 사이트 목록과 앨범형 뉴스. 비랜딩 기본테마 파생.
Text Domain: linkmoeum
*/
@font-face{font-family:Paperlogy;src:url('assets/fonts/paperlogy-4Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Paperlogy;src:url('assets/fonts/paperlogy-6SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Paperlogy;src:url('assets/fonts/paperlogy-8ExtraBold.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
:root{--blue:#0878f9;--navy:#08284d;--ink:#172c43;--muted:#6d7888;--line:#e6e9ee;--pale:#f2f7fd;--font:Paperlogy,'Malgun Gothic',sans-serif;--display:800 28px/1.25 var(--font);--page-title:800 30px/1.35 var(--font);--section-title:800 24px/1.4 var(--font);--subheading:800 19px/1.4 var(--font);--body:400 16px/1.7 var(--font);--body-small:400 14px/1.6 var(--font);--label:800 17px/1.4 var(--font);--caption:600 12px/1.5 var(--font);--title-spacing:-.025em;--body-spacing:0;--label-spacing:-.02em;--caption-spacing:0}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{margin:0;color:var(--ink);background:#fff;font:var(--body);letter-spacing:var(--body-spacing);word-break:keep-all}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;height:auto}svg{display:block}h1,h2,h3,p{margin:0}h1{font:var(--display);letter-spacing:var(--title-spacing)}h2{font:var(--section-title);letter-spacing:var(--title-spacing)}h3{font:var(--subheading);letter-spacing:var(--title-spacing)}p+p{margin-top:16px}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.container{width:min(1280px,calc(100% - 32px));margin:auto}.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{clip:auto;width:auto;height:auto;z-index:999;padding:12px;background:#fff}.utility{border-bottom:1px solid var(--line);font:var(--caption);letter-spacing:var(--caption-spacing)}.utility-inner{display:flex;justify-content:space-between;align-items:center;min-height:49px;gap:20px}.utility-brand,.utility nav{display:flex;gap:14px;align-items:center}.utility-chip{background:var(--navy);color:#fff;padding:4px 12px;border-radius:4px}.bookmark-help{border:0;background:none;color:inherit;padding:0;font:inherit}.utility a:hover{color:var(--blue)}.utility .utility-chip:hover,.utility .utility-chip:focus-visible{color:#fff;background:#0064df}.header-inner{display:grid;grid-template-columns:220px 205px 1fr 360px;gap:22px;align-items:center;min-height:123px}.header-date{text-align:center;font:var(--label);color:var(--blue);white-space:nowrap}.mobile-favorites{display:none}.header-date time{display:block;color:var(--navy);margin-top:4px;font-variant-numeric:tabular-nums}.header-shortcut{font:var(--body-small)}.shortcut-label{display:block;color:var(--muted);font:var(--caption);margin-bottom:5px}.header-shortcut a{font:var(--label)}.brand{display:block;width:210px;justify-self:center;flex-shrink:0}.brand-crop{position:relative;display:block;width:100%;aspect-ratio:3.62;overflow:hidden}.brand-crop img{position:absolute;width:109%;max-width:none;height:auto;left:-4.5%;top:-73%}.brand-image{display:block;max-height:68px;width:auto;object-fit:contain}.search{display:flex;align-items:center;border:2px solid var(--blue);border-radius:5px;width:100%;height:48px;background:white}.search select{border:0;border-right:1px solid var(--line);background:#fff;width:105px;margin-left:9px;padding:0 5px;font:var(--body-small);color:var(--ink)}.search input{min-width:0;border:0;background:none;outline:0;flex:1;padding:0 12px;font:var(--body-small);color:var(--ink)}.search button{border:0;background:none;padding:11px;color:var(--blue)}.category-nav{background:var(--blue);color:#fff}.category-scroll{display:flex;align-items:stretch;justify-content:center}.category-scroll a{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;font:var(--label);letter-spacing:var(--label-spacing);white-space:nowrap;min-height:57px;padding:12px 8px}.category-scroll a:hover,.category-scroll a[aria-current]{background:#0064df}.category-scroll .nav-all{background:#0b6be1}.nav-symbol{display:block}.portal-main{padding-top:0}.banner-heading{text-align:center;padding:12px 0;font:var(--section-title);color:var(--navy)}.banner-area-note{text-align:center;font:var(--caption);color:var(--muted);margin:-5px 0 10px}.banner-heading>span{color:#f0b843}.banner-group{display:grid;gap:4px}.banner-group+.banner-group{margin-top:4px}.banner-large{grid-template-columns:1fr}.banner-medium{grid-template-columns:repeat(2,minmax(0,1fr))}.banner-small{grid-template-columns:repeat(4,minmax(0,1fr))}.portal-banner{display:flex;align-items:center;gap:24px;padding:12px 28px;overflow:hidden;position:relative;border-radius:2px;background:var(--blue);color:white;min-width:0;aspect-ratio:15.24}.portal-banner:after{content:'';position:absolute;right:40px;top:-40%;width:90px;height:180%;background:#ffffff0b;transform:rotate(25deg);pointer-events:none}.tone-navy{background:#092f60}.tone-cyan{background:#057fa6}.tone-violet{background:#394fbe}.banner-medium .portal-banner{aspect-ratio:7.5}.banner-small .portal-banner{aspect-ratio:3.75;gap:12px;padding:10px 18px}.banner-symbol{font:var(--display);border:1px solid #ffffff65;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.banner-copy{display:flex;flex-direction:column;gap:5px;min-width:0;position:relative;z-index:1}.banner-copy :is(strong,h1){font:var(--section-title);letter-spacing:var(--title-spacing);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.banner-copy>span{font:var(--caption);letter-spacing:var(--caption-spacing);color:#e0edff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.banner-large .banner-copy :is(strong,h1){font:var(--display)}.banner-large .banner-copy>span{font:var(--body-small)}.banner-small .banner-copy :is(strong,h1){font:var(--subheading)}.banner-small .banner-symbol{width:40px;height:40px;font:var(--subheading)}.banner-arrow{margin-left:auto;font:var(--display);position:relative;z-index:1;flex-shrink:0}.banner-small .banner-arrow{font:var(--subheading)}.portal-banner:hover{filter:brightness(1.08)}.image-banner{padding:0}.image-banner:after{display:none}.image-banner img{width:100%;height:100%;object-fit:contain}.directory{padding-top:15px}.directory-notice{display:flex;justify-content:center;align-items:center;gap:18px;border:1px solid var(--line);border-radius:10px;padding:16px 12px;margin-bottom:10px}.directory-notice h2{font:var(--subheading);color:var(--blue);text-align:center}.directory-notice>span{font:var(--section-title);color:var(--blue)}.quick-section{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:10px}.quick-title{font:var(--label);white-space:nowrap}.quick-title strong{font:var(--subheading);color:var(--blue)}.quick-links{display:flex;align-items:center;gap:13px}.quick-link{display:flex;align-items:center;gap:5px;font:var(--body-small)}.quick-link>span:first-child{display:grid;place-items:center;width:30px;height:30px;border-radius:4px;font:var(--subheading);color:#4285f4}.quick-1>span:first-child{background:#03c75a;color:white}.quick-2>span:first-child{color:#ee6c27}.quick-3>span:first-child{background:#fee500;color:#292219}.quick-4>span:first-child{background:#08be61;color:#fff}.quick-5>span:first-child{color:#ff002b}.quick-6>span:first-child{color:#bd227f}.quick-7>span:first-child{color:#1877f2}.quick-link:hover{color:var(--blue)}.directory-grid,.favorite-catalog{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.directory-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white;min-width:0}.directory-head{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid #f0f1f4;gap:7px}.directory-head h3{display:flex;align-items:center;gap:8px;font:var(--subheading);min-width:0}.directory-head h3 a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-symbol{flex-shrink:0}.category-more{font:var(--section-title);color:#8b97a7;padding:0 3px}.category-more:hover{color:var(--blue)}.rank-list{list-style:none;padding:12px 10px 16px;margin:0}.rank-row{display:flex;align-items:center;min-height:35px;gap:3px;padding:4px 2px}.site-link{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.rank{display:grid;place-items:center;font:var(--caption);width:23px;height:23px;color:#758498;flex-shrink:0;font-variant-numeric:tabular-nums}.rank-1,.rank-2,.rank-3{color:#fff;border-radius:50%;background:#eeaa27}.rank-2{background:#ed71a1}.rank-3{background:#1bba9d}.site-monogram{display:grid;place-items:center;width:19px;height:19px;border:1px solid #dee4ee;border-radius:3px;background:#f5f8fc;color:#456789;font:var(--caption);flex-shrink:0}.site-info{min-width:0;flex:1}.link-name{display:block;font:var(--label);letter-spacing:var(--label-spacing);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-row:nth-child(1) .link-name{color:var(--blue)}.rank-row:nth-child(2) .link-name{color:#8354be}.rank-row:nth-child(3) .link-name{color:#009e82}.favorite-toggle{flex-shrink:0;border:0;background:transparent;padding:4px;color:#77869a}.favorite-toggle svg{width:15px;height:15px}.favorite-toggle:hover,.favorite-toggle[aria-pressed=true]{color:#ec4e86}.favorite-toggle[aria-pressed=true] svg{fill:currentColor}.site-link:hover .link-name{text-decoration:underline}.empty-category{padding:20px;font:var(--body-small);color:var(--muted)}.news-section{padding:30px 0 45px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.section-head h2{font:var(--section-title)}.text-link{font:var(--body-small);color:var(--blue);white-space:nowrap}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.news-image{display:block;aspect-ratio:1.6;overflow:hidden;border-radius:7px;background:var(--pale)}.news-image img{width:100%;height:100%;object-fit:cover}.news-meta{font:var(--caption);letter-spacing:var(--caption-spacing);color:var(--muted);margin:15px 0 7px}.news-card h3{font:var(--subheading);margin-bottom:8px}.news-card h3 a:hover{color:var(--blue)}.news-card p{font:var(--body-small);color:var(--muted)}.site-footer{border-top:1px solid var(--line);background:#f8fafc;padding:30px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-brand{width:175px;margin-bottom:15px}.footer-inner p{font:var(--body-small);color:var(--muted);max-width:560px}.copyright{display:block;font:var(--caption);letter-spacing:var(--caption-spacing);color:var(--muted);margin-top:15px}.footer-inner nav{display:flex;gap:24px;font:var(--body-small);align-self:flex-start;padding-top:10px}.back-top{position:fixed;bottom:24px;right:23px;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:50%;font:var(--subheading)}.toast{position:fixed;z-index:30;bottom:28px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);background:var(--navy);color:#fff;padding:14px 20px;border-radius:6px;font:var(--body-small)}.article-main{padding-block:40px 65px;min-height:60vh}.page-title{font:var(--page-title);letter-spacing:var(--title-spacing)}.article-main .section-head p{margin-top:12px;color:var(--muted);font:var(--body-small)}.news-detail{max-width:850px;margin:auto}.news-detail>.news-meta{margin-top:30px}.news-detail>.page-title{margin-bottom:28px}.detail-image{margin-bottom:28px}.detail-image img{display:block;width:100%;border-radius:7px}.prose{font:var(--body);letter-spacing:var(--body-spacing)}.prose p,.prose ul,.prose ol{margin-bottom:20px}.prose h2{font:var(--section-title);margin:30px 0 15px}.prose h3{font:var(--subheading);margin:24px 0 12px}.prose a{color:var(--blue);text-decoration:underline}.prose img{max-width:100%}.pagination{margin-top:35px}.search-results{list-style:none;margin:24px 0 0;padding:0;max-width:850px}.search-results li{border-bottom:1px solid var(--line);padding:18px 0}.search-results h2{font:var(--subheading)}.search-results p{font:var(--body-small);color:var(--muted);margin-top:7px}.category-page{padding:28px 0 45px}.category-page .page-title{margin-top:14px}.category-total{font:var(--body-small);color:var(--muted)}.rank-expanded{padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.rank-expanded .rank-row{padding:18px 12px;border-bottom:1px solid var(--line);min-height:75px}.rank-expanded .site-monogram{width:35px;height:35px;font:var(--subheading)}.rank-expanded .site-link{gap:13px}.rank-expanded .favorite-toggle svg{width:20px;height:20px}.link-summary{display:block;font:var(--body-small);color:var(--muted);margin-top:5px}.favorite-empty{border:1px solid var(--line);padding:28px;border-radius:10px;font:var(--body-small);color:var(--muted)}[hidden]{display:none!important}
@media(max-width:1279px){.header-inner{grid-template-columns:190px 1fr 340px;gap:20px}.header-shortcut{display:none}.brand{width:210px}.category-scroll a{font:var(--label);padding:12px 5px}.directory-grid,.favorite-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-title strong{display:none}.quick-links{gap:12px}}
@media(max-width:1024px){.header-inner{grid-template-columns:170px 1fr 300px}.brand{width:195px}.category-scroll{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.category-scroll a{min-height:46px;border-right:1px solid #ffffff30;border-bottom:1px solid #ffffff30}.quick-section{display:block}.quick-title{display:block;text-align:center;margin-bottom:10px}.quick-title strong{display:inline}.quick-links{justify-content:space-around}.directory-grid,.favorite-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.banner-small .portal-banner{gap:8px;padding:10px}.banner-small .banner-arrow{display:none}}
@media(max-width:760px){:root{--display:800 22px/1.25 var(--font);--page-title:800 25px/1.35 var(--font);--section-title:800 20px/1.4 var(--font);--subheading:800 15px/1.4 var(--font);--body:400 15px/1.7 var(--font);--body-small:400 13px/1.6 var(--font);--label:800 14px/1.4 var(--font);--caption:600 11px/1.5 var(--font)}.container{width:calc(100% - 20px)}.utility{display:none}.header-inner{display:grid;grid-template-columns:1fr;gap:9px;padding:10px 0 12px;min-height:0}.header-date{display:flex;justify-content:space-between;align-items:center;text-align:left;font:var(--body-small);grid-column:1/-1}.header-date time{display:inline;margin:0}.mobile-favorites{display:inline;color:var(--ink);font:var(--body-small)}.brand{width:190px;grid-column:1;grid-row:2}.brand-image{max-height:50px}.search{grid-column:1/-1;height:44px}.search select{width:96px}.category-scroll{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.category-scroll a{min-height:44px;gap:5px;padding:7px 5px}.category-scroll .nav-all svg{width:17px}.banner-heading{padding:10px 0;font:var(--subheading)}.banner-group{gap:3px}.banner-group+.banner-group{margin-top:3px}.banner-large .portal-banner{aspect-ratio:7.5;padding:10px 14px;gap:12px}.banner-large .banner-symbol{display:none}.banner-large .banner-copy :is(strong,h1){font:var(--subheading)}.banner-large .banner-copy>span{font:var(--caption)}.banner-medium .portal-banner{padding:7px 12px;gap:12px}.banner-medium .banner-copy :is(strong,h1){font:var(--subheading)}.banner-symbol{width:34px;height:34px;font:var(--subheading)}.banner-arrow{font:var(--subheading)}.banner-small{grid-template-columns:repeat(2,minmax(0,1fr))}.banner-small .portal-banner{padding:7px 9px;gap:8px}.banner-small .banner-symbol{width:29px;height:29px;font:var(--subheading)}.banner-small .banner-copy{gap:2px}.banner-small .banner-copy :is(strong,h1){font:var(--subheading)}.banner-small .banner-copy>span{font:var(--caption)}.directory{padding-top:10px}.directory-notice{gap:10px;padding:12px 8px}.directory-notice>span{font:var(--subheading)}.quick-section{padding:9px 8px}.quick-title{font:var(--body-small);margin-bottom:9px}.quick-title strong{font:var(--subheading)}.quick-links{gap:4px}.quick-link>span:first-child{width:28px;height:28px}.quick-name{display:none}.directory-grid,.favorite-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.directory-head{padding:10px 8px;gap:4px}.directory-head h3{gap:5px}.category-more{font:var(--subheading)}.rank-list{padding:8px 5px 12px}.rank-row{min-height:32px;padding:3px 1px;gap:0}.site-link{gap:4px}.rank{width:20px;height:20px}.site-monogram{width:16px;height:16px}.favorite-toggle{padding:5px;width:24px;min-height:26px}.favorite-toggle svg{width:12px;height:12px}.news-section{padding:25px 0 35px}.news-grid{grid-template-columns:1fr;gap:25px}.footer-inner{display:block}.footer-inner nav{margin-top:18px;gap:22px}.footer-brand{width:170px}.article-main{padding-block:28px 45px}.section-head{gap:12px}.news-detail>.page-title{margin-bottom:24px}.back-top{right:12px;bottom:12px}.toast{bottom:20px;width:max-content;word-break:keep-all}.category-page{padding-block:22px 35px}.rank-expanded{grid-template-columns:1fr}.rank-expanded .rank-row{padding:14px 3px}.rank-expanded .site-monogram{width:28px;height:28px}.rank-expanded .favorite-toggle{padding:7px}.rank-expanded .favorite-toggle svg{width:19px;height:19px}}
@media(min-width:761px) and (max-width:1024px){.portal-banner{padding:2px 16px;gap:14px}.banner-copy{gap:0}.banner-large .banner-copy :is(strong,h1){font:var(--subheading)}.banner-large .banner-copy>span{font:var(--caption)}.banner-medium .banner-copy :is(strong,h1){font:var(--subheading)}.banner-symbol{width:38px;height:38px;font:var(--subheading)}.banner-small .portal-banner{padding:6px 10px;gap:8px}.banner-small .banner-symbol{width:29px;height:29px;font:var(--label)}.banner-small .banner-copy :is(strong,h1){font:var(--label)}.banner-small .banner-copy>span{font:var(--caption)}.banner-small .banner-arrow{display:none}}
@media(max-width:600px){.banner-medium{grid-template-columns:1fr}.banner-medium .portal-banner{aspect-ratio:7.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.banner-area .portal-banner.image-banner{padding:0;gap:0;display:block;background:transparent}.banner-area .portal-banner.image-banner img{display:block;width:100%;height:100%;object-fit:cover}

/* Newly added categories wrap while keeping the existing responsive grid. */
@media(min-width:1101px){.category-scroll{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}
.category-scroll a{min-width:0;white-space:normal;overflow-wrap:anywhere}
