@import "https://fonts.googleapis.com/css2?family=Work+Sans:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;600&family=Noto+Sans+KR:wght@300;400;500;700&display=swap";:root{--bg-base:oklch(11% .025 15);--bg-panel:oklch(14% .02 18);--bg-hover:oklch(17% .025 20);--bg-selected:oklch(19% .03 20);--border:oklch(22% .03 20);--border-accent:oklch(35% .08 20);--accent:oklch(65% .22 20);--accent-dim:oklch(28% .1 20);--accent-glow:oklch(65% .22 20/.3);--text-primary:oklch(94% .01 30);--text-secondary:oklch(70% .04 25);--text-muted:oklch(52% .04 22);--lava-hot:oklch(72% .19 35);--lava-glow:oklch(55% .25 15);--green:oklch(72% .17 148);--red:oklch(63% .22 25);--yellow:oklch(78% .16 75);--header-h:58px;--radius-sm:4px;--radius-md:8px;--radius-lg:10px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 14px #00000080;--shadow-lg:0 8px 30px #0009;--shadow-glow:0 0 24px var(--accent-glow);--shadow-lava:0 4px 20px oklch(65% .22 20/.25), inset 0 1px 0 oklch(72% .19 35/.15);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.12s;--dur-normal:.2s;--dur-slow:.35s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:16px}body{background:var(--bg-base);color:var(--text-primary);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Work Sans,Noto Sans KR,sans-serif;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 50% -20%,oklch(55% .25 15/.12) 0%,#0000 60%);position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000004 2px 4px);position:fixed;inset:0}.skip-link{z-index:9999;background:var(--accent);color:#fff;border-radius:var(--radius-md);padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:top .2s;position:fixed;top:-100%;left:16px}.skip-link:focus{top:8px}.site-header{z-index:100;-webkit-backdrop-filter:blur(14px)saturate(1.3);backdrop-filter:blur(14px)saturate(1.3);border-bottom:1px solid var(--border);background:oklch(14% .02 18/.82);position:sticky;top:0;box-shadow:0 2px 20px #0000004d}.header-inner{max-width:1440px;height:var(--header-h);align-items:center;gap:16px;margin:0 auto;padding:0 24px;display:flex}.site-logo{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex-shrink:0;align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:15px;font-weight:600;text-decoration:none;display:flex}.site-logo:before{content:none}.nav-links{scrollbar-width:none;flex:1;align-items:center;gap:2px;list-style:none;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links a{color:var(--text-secondary);border-radius:var(--radius-md);white-space:nowrap;transition:color var(--dur-fast), background var(--dur-fast);padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;display:block}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--text-primary);background:var(--bg-hover)}.nav-links a[aria-current=page]{color:var(--accent);background:var(--accent-dim)}.nav-search{flex-shrink:0;position:relative}.nav-search input{background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-lg);width:200px;height:34px;color:var(--text-primary);transition:border-color var(--dur-fast), box-shadow var(--dur-fast), width .3s var(--ease-out);outline:none;padding:0 12px 0 36px;font-family:inherit;font-size:13px}.nav-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);width:260px}.nav-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.nav-toggle{background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-md);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);touch-action:manipulation;flex-shrink:0;justify-content:center;align-items:center;display:none}.nav-toggle:hover{background:var(--bg-selected);color:var(--text-primary)}.mobile-nav{inset:var(--header-h) 0 0 0;z-index:99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .3s var(--ease-out);background:oklch(11% .025 15/.97);padding:16px;display:none;position:fixed;overflow-y:auto;transform:translateY(-100%)}.mobile-nav.is-open{transform:translateY(0)}.mobile-nav-links{flex-direction:column;gap:4px;list-style:none;display:flex}.mobile-nav-links a{color:var(--text-secondary);border-radius:var(--radius-lg);transition:background var(--dur-fast), color var(--dur-fast);padding:12px 16px;font-size:15px;font-weight:500;text-decoration:none;display:block}.mobile-nav-links a:hover{background:var(--bg-hover);color:var(--text-primary)}.mobile-nav-links a[aria-current=page]{background:var(--accent-dim);color:var(--accent)}.site-main{z-index:1;max-width:1440px;margin:0 auto;padding:24px;position:relative}.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.filter-heading{color:var(--text-primary);align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex}.filter-count{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);padding:3px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.sort-tabs{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);gap:4px;padding:4px;display:flex}.sort-tab{color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-fast);touch-action:manipulation;background:0 0;border:none;padding:5px 14px;font-size:12px;font-weight:500}.sort-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.sort-tab.active{color:var(--text-primary);background:var(--bg-hover);box-shadow:var(--shadow-sm)}.card-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.card-grid .card-wide{grid-column:span 2}.content-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.content-card:before{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,oklch(65% .22 20/.04) 0%,#0000 50%);position:absolute;inset:0}.content-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lava);animation:cardShake .4s var(--ease-spring)}.card-thumb{aspect-ratio:16/9;flex-shrink:0;position:relative;overflow:hidden}.card-thumb-bg{background:linear-gradient(135deg, var(--accent-dim) 0%, oklch(18% .03 20) 100%);width:100%;height:100%;color:var(--accent);justify-content:center;align-items:center;display:flex}.card-wide .card-thumb{aspect-ratio:21/9}.card-format-badge{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;padding:2px 7px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600;position:absolute;bottom:8px;left:8px}.card-cat-badge{background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);border:1px solid oklch(65% .22 20/.3);padding:2px 8px;font-size:10px;font-weight:600;position:absolute;bottom:8px;right:8px}.card-badge{letter-spacing:.05em;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;display:flex;position:absolute;top:8px;right:8px;transform:rotate(12deg)}.card-badge.new{background:var(--green);color:#000}.card-badge.hot{background:var(--red);color:#fff}.card-badge.sale{background:var(--yellow);color:#000}.card-info{flex-direction:column;flex:1;gap:6px;padding:12px 14px;display:flex}.card-title{color:var(--text-primary);-webkit-line-clamp:2;text-wrap:balance;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-size{color:var(--green);font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:11px}.card-views{color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:10px}.content-card{opacity:0;animation:cardReveal .4s var(--ease-out) forwards}.content-card:first-child{animation-delay:30ms}.content-card:nth-child(2){animation-delay:60ms}.content-card:nth-child(3){animation-delay:90ms}.content-card:nth-child(4){animation-delay:.12s}.content-card:nth-child(5){animation-delay:.15s}.content-card:nth-child(6){animation-delay:.18s}.content-card:nth-child(7){animation-delay:.21s}.content-card:nth-child(8){animation-delay:.24s}.content-card:nth-child(9){animation-delay:.27s}.content-card:nth-child(10){animation-delay:.3s}.pagination{justify-content:center;align-items:center;gap:4px;margin-top:32px;display:flex}.page-btn{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:all var(--dur-fast);touch-action:manipulation;justify-content:center;align-items:center;font-family:IBM Plex Mono,monospace;font-size:12px;display:flex}.page-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-accent)}.page-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow-glow)}.page-btn.arrow{background:0 0;border-color:#0000}.page-btn.arrow:hover{background:var(--bg-hover);border-color:var(--border)}.write-fab{z-index:50;background:var(--accent);color:#fff;border-radius:var(--radius-full);cursor:pointer;height:48px;box-shadow:var(--shadow-glow), var(--shadow-md);transition:transform var(--dur-fast) var(--ease-spring), box-shadow var(--dur-fast), filter var(--dur-fast);touch-action:manipulation;border:none;align-items:center;gap:8px;padding:0 20px;font-size:13px;font-weight:600;display:flex;position:fixed;bottom:28px;right:28px}.write-fab:hover{filter:brightness(1.1);box-shadow:0 0 32px var(--accent-glow), var(--shadow-lg);transform:translateY(-3px)}.write-fab:active{transform:scale(.96)}.stats-bar{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;gap:20px;margin-bottom:16px;padding:14px 20px;display:flex}.stat-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.stat-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.stat-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--bg-panel);border-bottom:1px solid var(--border);text-align:left;padding:10px 14px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.data-table thead th:last-child{text-align:right}.data-table tbody tr{cursor:pointer;transition:background var(--dur-fast);border-bottom:1px solid oklch(22% .03 20/.5)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr.pinned{border-left:3px solid var(--accent);background:oklch(65% .22 20/.06)}.data-table td{color:var(--text-secondary);vertical-align:middle;padding:11px 14px}.data-table .col-num{width:80px;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:11px}.data-table .col-title{color:var(--text-primary);font-weight:500}.data-table .col-size{width:90px;color:var(--green);font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace;font-size:11px}.data-table .col-seller{width:110px;font-size:12px}.data-table .col-views{text-align:right;font-variant-numeric:tabular-nums;width:90px;font-family:IBM Plex Mono,monospace;font-size:11px}.post-tag{text-transform:uppercase;border-radius:var(--radius-sm);margin-right:6px;padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;display:inline-block}.post-tag.notice{background:var(--accent-dim);color:var(--accent)}.post-tag.file{color:var(--green);background:oklch(72% .17 148/.15);border:1px solid oklch(72% .17 148/.3)}.post-tag.req{color:var(--yellow);background:oklch(78% .16 75/.15);border:1px solid oklch(78% .16 75/.3)}.rank-tabs{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);gap:6px;width:fit-content;margin-bottom:24px;padding:5px;display:flex}.rank-tab{color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-fast);touch-action:manipulation;background:0 0;border:none;padding:7px 20px;font-size:13px;font-weight:600}.rank-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.rank-tab[aria-selected=true]{color:var(--text-primary);background:var(--accent)}.rank-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.rank-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--dur-normal), box-shadow var(--dur-normal);flex-direction:column;gap:14px;padding:20px;display:flex;position:relative;overflow:hidden}.rank-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lava)}.rank-card:before{content:"";pointer-events:none;background:linear-gradient(135deg,oklch(65% .22 20/.04) 0%,#0000 60%);position:absolute;inset:0}.rank-medal{font-family:IBM Plex Mono,monospace;font-size:28px;font-weight:700;line-height:1}.rank-medal.gold{color:gold}.rank-medal.silver{color:silver}.rank-medal.bronze{color:#cd7f32}.rank-medal.num{color:var(--text-muted);font-size:20px}.rank-name{color:var(--text-primary);font-size:17px;font-weight:700}.rank-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.rank-features{flex-direction:column;gap:6px;list-style:none;display:flex}.rank-features li{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.rank-features li:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:4px;height:4px}.rank-bonus{color:var(--accent);background:var(--accent-dim);border-radius:var(--radius-sm);padding:4px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;display:inline-block}.rank-cta{background:var(--accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:filter var(--dur-fast), transform var(--dur-fast);touch-action:manipulation;border:none;padding:9px 18px;font-size:13px;font-weight:600}.rank-cta:hover{filter:brightness(1.1);transform:translateY(-1px)}.rank-cta:active{transform:scale(.97)}.breadcrumb{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:20px;font-size:12px;display:flex}.breadcrumb a{color:var(--text-secondary);text-decoration:none}.breadcrumb a:hover{color:var(--accent)}.breadcrumb-sep{color:var(--border)}.post-header{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;padding:24px}.post-title{color:var(--text-primary);text-wrap:balance;margin-bottom:14px;font-size:22px;font-weight:700;line-height:1.35}.post-meta-row{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:16px;font-size:12px;display:flex}.post-meta-item{align-items:center;gap:5px;display:flex}.post-body{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-secondary);margin-bottom:16px;padding:28px;font-size:14px;line-height:1.75}.post-body p{margin-bottom:1em}.post-body h3{color:var(--text-primary);margin:1.5em 0 .5em;font-size:16px;font-weight:700}.post-body a{color:var(--accent);text-decoration:none}.post-body a:hover{text-decoration:underline}.file-section{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;padding:20px}.file-section-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:700;display:flex}.file-card{background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast);align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.file-card:hover{border-color:var(--accent);background:var(--bg-selected)}.file-icon{color:var(--accent);flex-shrink:0}.file-name{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}.file-size{color:var(--green);font-family:IBM Plex Mono,monospace;font-size:11px}.action-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.action-btn{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--dur-fast);touch-action:manipulation;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;display:flex}.action-btn:hover{border-color:var(--border-accent);color:var(--text-primary);background:var(--bg-hover)}.action-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.action-btn.primary:hover{filter:brightness(1.1)}.comment-section{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.comment-section-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:16px;font-size:14px;font-weight:700;display:flex}.comment-item{border-bottom:1px solid oklch(22% .03 20/.5);gap:12px;padding:12px 0;display:flex}.comment-item:last-child{border-bottom:none}.comment-avatar{background:var(--accent-dim);width:36px;height:36px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.comment-body{flex:1}.comment-author{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:600}.comment-date{color:var(--text-muted);margin-left:8px;font-family:IBM Plex Mono,monospace;font-size:11px}.comment-text{color:var(--text-secondary);font-size:13px;line-height:1.55}.comment-input-area{gap:10px;margin-top:16px;display:flex}.comment-input{background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);resize:none;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:13px}.comment-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--text-muted);z-index:1;margin-top:48px;padding:24px;font-size:12px;position:relative}@keyframes logoPulse{0%,to{opacity:.6;box-shadow:0 0 4px var(--accent-glow)}50%{opacity:1;box-shadow:0 0 12px var(--accent-glow)}}@keyframes cardShake{0%{transform:translateY(-4px)rotate(0)}20%{transform:translateY(-4px)rotate(-.8deg)}40%{transform:translateY(-4px)rotate(.8deg)}60%{transform:translateY(-4px)rotate(-.4deg)}80%{transform:translateY(-4px)rotate(.4deg)}to{transform:translateY(-4px)rotate(0)}}@keyframes cardReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (width<=1200px){.card-grid{grid-template-columns:repeat(3,1fr)}.card-grid .card-wide{grid-column:span 2}}@media (width<=900px){.card-grid{grid-template-columns:repeat(2,1fr)}.card-grid .card-wide{grid-column:span 2}.nav-links{display:none}.nav-toggle{display:flex}.mobile-nav{display:block}.nav-search input{width:160px}.nav-search input:focus{width:180px}}@media (width<=550px){.nav-search{flex:1;min-width:0}.nav-search input,.nav-search input:focus{width:100%}.card-grid{grid-template-columns:repeat(2,1fr);gap:10px}.card-grid .card-wide{grid-column:span 2}.site-main{padding:16px}.filter-bar{flex-direction:column;align-items:flex-start}.data-table{font-size:12px}.data-table .col-seller,.data-table .col-views{display:none}}@media (width<=360px){.card-grid{grid-template-columns:1fr}.card-grid .card-wide{grid-column:span 1}}:root{--mono:"IBM Plex Mono", monospace}.ti{vertical-align:middle}.nav-links a .ti,.mobile-nav-links a .ti{margin-right:5px;font-size:14px}.nav-links a.active,.nav-links a[aria-current=page]{color:var(--accent);background:var(--accent-dim)}.nav-links .nav-divider{background:var(--border);flex-shrink:0;width:1px;height:14px;margin:0 6px;display:inline-block}.nav-count{font-family:var(--mono);color:var(--text-muted);margin-left:3px;font-size:10px}.secondary-nav{border-top:1px solid var(--border);scrollbar-width:none;background:oklch(12% .02 18/.55);overflow-x:auto}.secondary-nav::-webkit-scrollbar{display:none}.secondary-nav-inner{white-space:nowrap;align-items:center;gap:2px;max-width:1440px;margin:0 auto;padding:6px 24px;display:flex}.secondary-nav a{color:var(--text-muted);border-radius:var(--radius-md);transition:background var(--dur-fast), color var(--dur-fast);align-items:center;gap:5px;padding:5px 11px;font-size:12px;text-decoration:none;display:inline-flex}.secondary-nav a:hover{color:var(--text-secondary);background:var(--bg-hover)}.secondary-nav a.active,.secondary-nav a[aria-current=page]{color:var(--accent);background:var(--accent-dim)}.secondary-nav .nav-divider{background:var(--border);flex-shrink:0;width:1px;height:12px;margin:0 6px}.scroll-section{margin-bottom:28px}.scroll-section-title{color:var(--text-primary);align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.cards-scroll{scrollbar-width:thin;grid-auto-columns:220px;grid-auto-flow:column;gap:12px;padding-bottom:8px;display:grid;overflow-x:auto}.cards-scroll::-webkit-scrollbar{height:6px}.cards-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.scroll-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--dur-fast), box-shadow var(--dur-fast), transform var(--dur-fast);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.scroll-card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lava);transform:translateY(-2px)}.scroll-card .card-thumb{aspect-ratio:16/9}.scroll-card .card-thumb-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);color:inherit;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.card:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lava)}.card .card-thumb{aspect-ratio:16/9;position:relative}.card-thumb-img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}.card-cat-tag{z-index:2;background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);border:1px solid oklch(65% .22 20/.3);padding:2px 8px;font-size:10px;font-weight:600;position:absolute;bottom:8px;right:8px}.section-title{color:var(--text-primary);align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex}.count-badge{font-family:var(--mono);background:var(--accent-dim);color:var(--accent);border-radius:var(--radius-sm);padding:3px 8px;font-size:11px;font-weight:600}.featured-card,.post-card,.article-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.meta-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.meta-tag{color:var(--text-secondary);background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--dur-fast), color var(--dur-fast);align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:500;text-decoration:none;display:inline-flex}.meta-tag:hover{border-color:var(--accent);color:var(--accent)}.tag-accent{background:var(--accent-dim);color:var(--accent);border-color:oklch(65% .22 20/.3)}.tag-default{background:var(--bg-hover);color:var(--text-secondary)}.btn-primary,.btn-secondary,.btn-icon{border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-fast);touch-action:manipulation;border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 0 #0000}.btn-primary:hover{filter:brightness(1.1);box-shadow:var(--shadow-glow)}.btn-primary:active{transform:scale(.97)}.btn-primary.is-liked{background:var(--lava-hot);border-color:var(--lava-hot)}.btn-secondary{background:var(--bg-panel);color:var(--text-secondary);border-color:var(--border)}.btn-secondary:hover{color:var(--text-primary);border-color:var(--border-accent);background:var(--bg-hover)}.btn-secondary.is-bookmarked{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.btn-icon{width:36px;height:36px;color:var(--text-secondary);background:0 0;border:1px solid #0000;justify-content:center;padding:0}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.breadcrumb a .ti,.breadcrumb span .ti{color:var(--border);font-size:12px}.view-layout>*{min-width:0}.view-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px;display:grid}@media (width<=900px){.view-layout{grid-template-columns:1fr}}.view-article{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.view-meta{padding:24px 24px 0}.view-body{color:var(--text-secondary);padding:24px;font-size:14px;line-height:1.75}.view-body p{margin-bottom:1em}.view-body h2,.view-body h3{color:var(--text-primary);margin:1.4em 0 .5em;font-size:16px;font-weight:700}.view-body a{color:var(--accent);text-decoration:none}.view-body a:hover{text-decoration:underline}.view-body img{border-radius:var(--radius-md);max-width:100%;height:auto}.file-card{color:inherit;text-decoration:none}.file-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.related-card{color:inherit;transition:background var(--dur-fast);border-bottom:1px solid oklch(22% .03 20/.4);align-items:center;gap:10px;padding:8px 0;text-decoration:none;display:flex}.related-card:last-child{border-bottom:none}.related-card:hover{background:var(--bg-hover)}.related-thumb{aspect-ratio:16/9;border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--accent-dim), oklch(18% .03 20));width:64px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.related-thumb-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.comment-box{background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:80px;color:var(--text-primary);resize:vertical;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);outline:none;padding:12px 14px;font-family:inherit;font-size:13px}.comment-box:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}@keyframes spin{to{transform:rotate(360deg)}}.table-wrap{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.table-scroll{overflow-x:auto}.data-table .num-col{font-family:var(--mono);color:var(--text-muted);text-align:center;font-size:11px}.data-table .size-col{font-family:var(--mono);color:var(--green);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.data-table .author-col{color:var(--text-secondary);font-size:12px}.data-table .views-col{font-family:var(--mono);color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.title-link{color:var(--text-primary);font-weight:500;text-decoration:none}.title-link:hover{color:var(--accent)}.row-tag{font-family:var(--mono);text-transform:uppercase;border-radius:var(--radius-sm);vertical-align:middle;margin-left:6px;padding:2px 6px;font-size:9px;font-weight:700;display:inline-block}.row-tag.hot{background:var(--red);color:#fff}.row-tag.new{background:var(--green);color:#000}@media (width<=640px){.data-table .author-col,.data-table .views-col,.data-table th:nth-child(4),.data-table th:nth-child(5){display:none}}.pagination a.page-btn{text-decoration:none}.page-btn.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.rank-card-full{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--dur-normal), box-shadow var(--dur-normal);margin-bottom:12px;padding:20px;display:block;position:relative;overflow:hidden}.rank-card-full:before{content:"";pointer-events:none;background:linear-gradient(135deg,oklch(65% .22 20/.05) 0%,#0000 60%);position:absolute;inset:0}.rank-card-full:hover{border-color:var(--border-accent);box-shadow:var(--shadow-lava)}.rank-card-full.top-1{border-color:oklch(65% .22 20/.5);box-shadow:0 0 24px oklch(65% .22 20/.15)}.rank-card-full.top-2{border-color:oklch(45% .05 250/.4)}.rank-card-full.top-3{border-color:oklch(45% .12 45/.4)}.rank-position{font-family:var(--mono);flex-shrink:0;min-width:50px;font-size:26px;font-weight:700;line-height:1}.rank-position.gold{color:gold;text-shadow:0 0 12px #ffd7004d}.rank-position.silver{color:silver}.rank-position.bronze{color:#cd7f32}.rank-position.num{color:var(--text-muted);font-size:18px}.bonus-badge{font-family:var(--mono);color:var(--accent);background:var(--accent-dim);border-radius:var(--radius-sm);margin-bottom:6px;padding:3px 9px;font-size:11px;display:inline-block}.features-list{flex-direction:column;gap:5px;margin:8px 0;padding:0;list-style:none;display:flex}.features-list li{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.features-list li:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:4px;height:4px}.btn-rank{background:var(--accent);color:#fff;border-radius:var(--radius-md);transition:filter var(--dur-fast), transform var(--dur-fast);align-items:center;gap:6px;margin-top:10px;padding:9px 18px;font-size:13px;font-weight:600;display:inline-flex}.btn-rank:hover{filter:brightness(1.1);transform:translateY(-1px)}.rank-more-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-panel);margin-top:24px;overflow:hidden}.rank-more-toggle{width:100%;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast);background:0 0;border:none;justify-content:space-between;align-items:center;padding:14px 20px;font-size:13px;font-weight:600;display:flex}.rank-more-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.rank-more-body{border-top:1px solid var(--border);color:var(--text-secondary);padding:20px;font-size:13px;line-height:1.7;display:none}.rank-more-wrap.is-open .rank-more-body{display:block}.rank-more-wrap.is-open .rank-more-icon{transform:rotate(180deg)}.rank-more-icon{transition:transform var(--dur-fast)}.doc-content{white-space:normal}.site-footer .footer-inner{max-width:1440px;margin:0 auto}.footer-links{justify-content:center;gap:10px;margin-bottom:6px;display:flex}.footer-links a{color:var(--text-secondary);font-size:12px;text-decoration:none}.footer-links a:hover{color:var(--accent)}.footer-sep{color:var(--border)}.footer-copy{color:var(--text-muted);font-size:11px;font-family:var(--mono)}.meta-row{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.meta-row .ti{margin-right:4px}.card-thumb.card-thumb--poster{aspect-ratio:2/3;background-position:50%;background-repeat:no-repeat;background-size:cover}.legal-page{max-width:760px;color:var(--text-secondary);word-break:keep-all;margin:0 auto;padding:8px 0 32px;font-size:14px;line-height:1.85}.legal-page h1{color:var(--text-primary);border-bottom:1px solid var(--border);margin:0 0 8px;padding-bottom:12px;font-family:Work Sans,Noto Sans KR,sans-serif;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700}.legal-page h2{color:var(--text-primary);margin:32px 0 12px;font-family:Work Sans,Noto Sans KR,sans-serif;font-size:1.1rem;font-weight:600}.legal-page p{margin:0 0 16px}.legal-page ul{margin:0 0 16px;padding-left:1.25rem;list-style:outside}.legal-page li{margin-bottom:6px}.legal-page strong{color:var(--lava-hot)}.legal-page a{color:var(--lava-hot);text-underline-offset:2px;text-decoration:underline}.legal-page a:hover{color:var(--accent)}.legal-updated{color:var(--text-muted);letter-spacing:.04em;margin:0 0 32px;font-family:IBM Plex Mono,monospace;font-size:12px}.legal-table{border-collapse:collapse;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;margin:12px 0 24px;font-size:13px;overflow:hidden}.legal-table th,.legal-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 14px}.legal-table tr:last-child th,.legal-table tr:last-child td{border-bottom:none}.legal-table th{background:var(--accent-dim);width:140px;color:var(--text-primary);letter-spacing:.06em;text-transform:uppercase;border-right:1px solid var(--border);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:600}.legal-table td{color:var(--text-secondary)}h1,h2,h3{overflow-wrap:anywhere}.view-body *{max-width:100%}.view-body video{height:auto}
