:root{--bg: #ffffff;--canvas: #f7f7f8;--surface: #ffffff;--ink: #101113;--ink-2: #3a3f4b;--muted: #6f7279;--line: rgba(11, 13, 18, .08);--line-strong: rgba(11, 13, 18, .14);--red: #ff4b3a;--dark-hover: #232833;--radius-xl: 22px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 12px;--shadow-1: 0 1px 2px rgba(11, 13, 18, .04), 0 8px 24px rgba(11, 13, 18, .05);--shadow-2: 0 2px 6px rgba(11, 13, 18, .06), 0 18px 44px rgba(11, 13, 18, .1);--ease: cubic-bezier(.16, 1, .3, 1);--font: Inter, "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", sans-serif;--mono: "SF Mono", Menlo, Consolas, "Courier New", monospace;--header-h: 68px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body::selection,body *::selection{background:var(--red);color:#fff}h1,h2,h3,h4,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{max-width:100%}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}.od-icon{display:inline-block;width:var(--od-icon-size, 1em);height:var(--od-icon-size, 1em);flex:none;vertical-align:-.125em;overflow:visible}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:200;transform:translateY(-160%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;font-size:12px;font-weight:600}.skip-link:focus{transform:translateY(0)}#site-header{height:calc(var(--header-h) + 1px)}.site-header{position:sticky;top:0;z-index:60;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{height:var(--header-h);display:flex;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:8px;min-height:44px;flex:none}.brand-mark{width:27px;height:27px;flex:none}.brand-logo{display:block;width:auto;height:26px;flex:none}.brand-wordmark{display:none;width:auto;height:24px;flex:none}.footer-brand .brand-logo{height:28px}.auth-top-brand .brand-logo{height:26px}.auth-logo .brand-logo{height:30px}.brand-word{font-size:16.5px;font-weight:750;letter-spacing:.16em;line-height:1}.brand-cn{font-size:10.5px;color:var(--muted);letter-spacing:.08em;padding-top:3px}.primary-nav{display:flex;align-items:center;gap:24px;margin-left:4px}.nav-link{position:relative;display:inline-flex;align-items:center;height:var(--header-h);font-size:14px;color:var(--ink-2);transition:color .2s var(--ease)}.nav-link:hover{color:var(--ink)}.nav-link.is-active{color:var(--ink);font-weight:600}.nav-link.is-active:after{content:"";position:absolute;left:50%;bottom:12px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--red)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.header-upload{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;font-weight:600;transition:background .2s var(--ease)}.header-upload:hover{background:var(--dark-hover)}.header-upload.is-active{background:var(--dark-hover);box-shadow:inset 0 0 0 1px #ffffff3d}.header-admin{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink);font-size:12px;font-weight:600;white-space:nowrap;transition:border-color .2s var(--ease),background .2s var(--ease)}.header-admin:hover{border-color:var(--ink);background:var(--canvas)}.header-user{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13.5px;color:var(--ink-2)}.header-user:hover{color:var(--ink)}.header-user[aria-current=page] .user-label{color:var(--ink);font-weight:600}.header-user[aria-current=page] .avatar{border-color:var(--ink)}.avatar{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;background:var(--canvas);border:1px solid var(--line);color:var(--ink);font-size:12px;font-weight:650;line-height:1}img.avatar{object-fit:cover;display:inline-block}.avatar--lg{width:44px;height:44px;font-size:15px}.avatar--xl{width:64px;height:64px;font-size:20px}.site-footer{border-top:1px solid var(--line);margin-top:72px;padding:48px 0 28px}.footer-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr) minmax(0,.7fr);gap:32px}.footer-brand{display:flex;align-items:center;gap:8px}.footer-tagline{margin-top:12px;max-width:360px;font-size:12.5px;line-height:1.8;color:var(--muted)}.footer-coord{margin-top:16px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--muted)}.footer-col h3{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.footer-col a{display:block;font-size:12.5px;color:var(--ink-2);padding:6px 0;transition:color .2s}.footer-col a:hover{color:var(--ink)}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;font-size:10.5px;color:var(--muted);letter-spacing:.03em}.tabbar{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 20px;border:1px solid transparent;border-radius:999px;font-size:13.5px;font-weight:600;line-height:1;cursor:pointer;white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:var(--dark-hover)}.btn-light{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.btn-light:hover{border-color:var(--ink)}.btn-sm{min-height:40px;padding:0 16px;font-size:12.5px}.btn-block{width:100%}.btn:disabled{background:var(--canvas);border-color:var(--line);color:var(--muted);cursor:not-allowed}.btn.is-registered{color:var(--ink);background:var(--canvas);border-color:transparent}.eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.eyebrow .dot{width:5px;height:5px;border-radius:50%;background:var(--red);flex:none}.tag{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:var(--canvas);color:var(--ink-2);font-size:10.5px;line-height:1;white-space:nowrap}.tag--outline{background:transparent;border:1px solid var(--line);color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:12.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.text-link:hover{color:var(--ink)}.home-hero{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:48px;align-items:end;padding:64px 0 40px;border-bottom:1px solid var(--line)}.home-hero h1{margin:20px 0 16px;max-width:720px;font-size:clamp(34px,4.6vw,52px);line-height:1.16;letter-spacing:-.035em;font-weight:750}.hero-sub{max-width:480px;font-size:14px;line-height:1.8;color:var(--muted)}.hero-aside{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding-bottom:8px}.hero-mark-slot{width:140px;height:140px}.hero-mark{width:140px;height:140px;display:block}.coord{font-family:var(--mono);font-size:10.5px;line-height:1.8;letter-spacing:.06em;color:var(--ink-2)}.hero-loc{font-size:9.5px;line-height:1.8;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.home-layout{display:grid;grid-template-columns:minmax(0,1fr) 272px;column-gap:40px;row-gap:48px;padding-top:48px;align-items:start}.section+.section{margin-top:48px}.home-featured{grid-column:1;grid-row:1}.home-trend{grid-column:2;grid-row:1}.home-events{grid-column:1;grid-row:2}.home-calendar{grid-column:2;grid-row:2}.home-articles{grid-column:1;grid-row:3}.home-creators{grid-column:2;grid-row:3}.home-layout.no-creators .home-articles{grid-column:1 / -1}.home-layout>section.section{margin-top:0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.section-kicker{font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.more-note{margin-top:6px;font-size:11px;line-height:1.6;color:var(--muted)}.more-note.is-center{margin-top:20px;font-size:12px;text-align:center;letter-spacing:.02em}.section-head h2{font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.02em}.side-card{background:var(--canvas);border-radius:var(--radius-lg);padding:20px}.side-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}.side-kicker{font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.side-head h2{font-size:15px;font-weight:700;letter-spacing:-.01em}.side-meta{font-size:9.5px;color:var(--muted);letter-spacing:.06em;padding-bottom:2px}.trend-item{display:block;padding:8px 0}.trend-item:hover .trend-name{color:var(--ink)}.trend-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.trend-name{display:flex;align-items:baseline;gap:8px;font-size:12.5px;color:var(--ink-2);transition:color .2s}.trend-rank{font-family:var(--mono);font-size:9px;color:var(--muted)}.trend-count{font-size:10px;color:var(--muted);white-space:nowrap}.trend-bar{display:block;height:3px;margin-top:7px;border-radius:2px;background:#10111314;overflow:hidden}.trend-bar span{display:block;height:100%;border-radius:2px;background:var(--ink)}.trend-item:first-child .trend-bar span{background:var(--red)}.creator-item{display:flex;align-items:center;gap:10px;padding:7px 0}.creator-item .avatar{width:34px;height:34px;font-size:12.5px;background:var(--surface)}.creator-info{display:flex;flex-direction:column;min-width:0}.creator-name{font-size:12.5px;font-weight:550;color:var(--ink-2)}.creator-count{font-size:10px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.product-card{display:flex;flex-direction:column;min-width:0;padding:12px 12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:18px;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}.product-card:hover{transform:translateY(-3px);border-color:transparent;box-shadow:var(--shadow-1)}.product-cover{aspect-ratio:16 / 9;border-radius:var(--radius-sm);overflow:hidden;background:var(--canvas)}.product-cover svg{display:block;width:100%;height:100%}.cover-stack{position:relative;display:block;width:100%;height:100%;overflow:hidden}.cover-stack>img{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:cover}.product-body{display:flex;flex-direction:column;flex:1;padding:12px 2px 0}.product-title{min-height:40px;font-size:14.5px;line-height:1.4;font-weight:650;letter-spacing:-.01em;overflow-wrap:anywhere}.product-tag-row{margin-top:8px}.product-meta{display:flex;align-items:center;justify-content:space-between;gap:2px;min-width:0;margin-top:auto;padding-top:12px;font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}.meta-item{display:inline-flex;align-items:center;flex:0 1 auto;min-width:0;gap:2px;white-space:nowrap}.meta-item .od-icon{flex:none}.meta-item .od-icon{--od-icon-size: 11px}.event-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.event-mini{display:block;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.event-mini:hover{transform:translateY(-3px);box-shadow:var(--shadow-1)}.event-cover{aspect-ratio:16 / 9;overflow:hidden;margin:8px 8px 0;border-radius:var(--radius-sm);background:var(--canvas)}.event-cover svg{display:block;width:100%;height:100%}.event-mini-body{padding:12px 14px 16px}.event-mini-title{font-size:14px;line-height:1.4;font-weight:650;letter-spacing:-.01em}.event-mini-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:10px;color:var(--muted)}.article-list{border-top:1px solid var(--line)}.article-row{display:flex;align-items:center;gap:8px;padding:14px 0;border-bottom:1px solid var(--line)}.article-main{flex:1;min-width:0;display:flex;align-items:baseline;gap:12px;text-decoration:none;color:inherit}.article-main:hover .article-title{color:var(--ink)}.article-title{flex:1 1 auto;min-width:0}.article-copy{flex:none;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--paper, #fff);color:var(--muted);border-radius:999px;padding:5px 10px;font-size:12px;line-height:1;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.article-copy:hover{color:var(--ink);border-color:var(--ink)}.article-copy.is-copied{color:#1a8a4a;border-color:#1a8a4a;background:#1a8a4a0f}.article-copy-label{letter-spacing:.02em}.article-rank{font-family:var(--mono);font-size:9.5px;color:var(--muted)}.article-title{font-size:14px;line-height:1.6;color:var(--ink-2);overflow-wrap:anywhere}.article-meta{display:flex;gap:16px;font-size:10px;color:var(--muted);white-space:nowrap}.page-head{padding:56px 0 32px}.page-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-head h1{margin:16px 0 12px;font-size:clamp(32px,3.8vw,46px);line-height:1.15;letter-spacing:-.035em;font-weight:750}.page-sub{max-width:600px;font-size:14px;line-height:1.8;color:var(--muted)}.page-count{padding-bottom:4px;font-size:11px;color:var(--muted);white-space:nowrap}.filter-bar{position:sticky;top:var(--header-h);z-index:30;background:#fffffff7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filter-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;padding-bottom:8px}.chip-row{display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.chip-row::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--ink-2);font-size:13px;line-height:1;cursor:pointer;white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease)}.chip:hover{background:var(--canvas)}.chip.is-active{background:var(--ink);color:#fff}.segmented{display:inline-flex;flex:none;padding:3px;border-radius:999px;background:var(--canvas)}.segmented button{min-height:38px;padding:0 15px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.segmented button.is-active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0b0d1214}.products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:28px}.empty-state{margin-top:24px;padding:56px 24px;border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);text-align:center}.empty-art{width:96px;margin:0 auto 16px}.empty-title{font-size:16px;font-weight:650}.empty-text{max-width:380px;margin:6px auto 0;font-size:12.5px;line-height:1.8;color:var(--muted)}.empty-state .btn{margin-top:20px}.events-layout{display:grid;grid-template-columns:minmax(0,1fr) 312px;gap:32px;align-items:start;padding-top:8px}.event-filters{display:flex;align-items:center;gap:4px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none}.event-filters::-webkit-scrollbar{display:none}.event-list{display:flex;flex-direction:column;gap:12px}.event-card{display:grid;grid-template-columns:minmax(224px,38%) minmax(0,1fr);gap:0;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.event-media{align-self:center;aspect-ratio:16 / 9;border-radius:var(--radius-sm);overflow:hidden;background:var(--canvas)}.event-media svg{display:block;width:100%;height:100%}.event-body{display:flex;flex-direction:column;min-width:0;padding:8px 16px}.event-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}.badge{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:10px;font-weight:600;line-height:1;white-space:nowrap}.badge .dot{width:5px;height:5px;border-radius:50%;background:var(--ink)}.badge--open .dot{background:var(--red)}.badge--live{background:var(--ink);border-color:var(--ink);color:#fff}.badge--live .dot{background:var(--red)}.badge--ended{background:var(--canvas);color:var(--muted)}.badge--ended .dot{background:var(--muted)}.event-type{font-size:10px;color:var(--muted)}.event-body h3{font-size:18px;line-height:1.35;font-weight:650;letter-spacing:-.015em}.event-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px;font-size:12.5px;line-height:1.7;color:var(--muted)}.event-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:10px;font-size:10.5px;color:var(--ink-2)}.event-meta>span{display:inline-flex;align-items:center;gap:4px}.event-meta .od-icon{color:var(--muted)}.event-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px}.event-coord{font-family:var(--mono);font-size:8.5px;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.calendar-card{position:sticky;top:calc(var(--header-h) + 24px);padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:12px}.calendar-title{display:block;font-size:14px;line-height:1.4;font-weight:700;letter-spacing:-.01em}.calendar-sub{display:block;margin-top:2px;font-size:9px;letter-spacing:.14em;color:var(--muted)}.calendar-nav{display:flex;gap:4px}.cal-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);cursor:pointer;transition:background .2s,border-color .2s}.cal-btn:hover{background:var(--canvas);border-color:var(--line-strong)}.calendar{width:100%;border-collapse:collapse;table-layout:fixed}.calendar th{padding:4px 0 8px;font-size:9.5px;font-weight:500;color:var(--muted);text-align:center}.calendar td{position:relative;height:40px;padding:0;text-align:center;vertical-align:middle}.cal-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-family:var(--mono);font-size:11px;color:var(--ink-2)}.calendar td.is-today .cal-num{background:var(--ink);color:#fff}.cal-dot{position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--red)}.calendar-legend{display:flex;align-items:center;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:9.5px;color:var(--muted)}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:4px;height:4px;border-radius:50%;background:var(--red)}.legend-today{width:14px;height:14px;border-radius:50%;background:var(--ink)}.calendar-card.home-calendar{position:static;padding:16px}.home-calendar .side-kicker{margin-bottom:1px}.home-calendar .calendar-head{margin-bottom:8px}.home-calendar .calendar-title{font-size:13px}.home-calendar .calendar-sub{font-size:8.5px;letter-spacing:.12em}.home-calendar .calendar th{padding:3px 0 6px;font-size:9px}.home-calendar .calendar td{height:32px}.home-calendar .cal-num{width:24px;height:24px;font-size:10px}.home-calendar .cal-dot{bottom:1px;width:3.5px;height:3.5px;margin-left:-1.75px}.home-calendar .calendar-legend{gap:12px;margin-top:8px;padding-top:10px;font-size:9px}.home-calendar .legend-today{width:12px;height:12px}.home-calendar .legend-dot{width:3.5px;height:3.5px}.detail-page{padding-top:32px;padding-bottom:16px}.detail-wrap{max-width:880px;margin:0 auto}.breadcrumb{display:flex;align-items:center;gap:6px;margin-bottom:16px;font-size:10.5px;color:var(--muted)}.breadcrumb a{min-height:44px;display:inline-flex;align-items:center}.breadcrumb a:hover{color:var(--ink)}.breadcrumb .od-icon{color:var(--muted)}.detail-cover{aspect-ratio:16 / 9;border:1px solid var(--line);border-radius:var(--radius-xl);overflow:hidden;background:var(--canvas)}.detail-cover svg{display:block;width:100%;height:100%}.detail-head{padding:28px 0 22px;border-bottom:1px solid var(--line)}.detail-head h1{font-size:clamp(30px,4.2vw,42px);line-height:1.2;letter-spacing:-.03em;font-weight:750;overflow-wrap:anywhere}.detail-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.detail-byline{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:10.5px;color:var(--muted);flex-wrap:wrap}.detail-byline .avatar{width:26px;height:26px;font-size:10.5px}.detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px}.action-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:11.5px;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.action-btn:hover{border-color:var(--ink);color:var(--ink)}.action-btn.is-active{border-color:var(--ink);color:var(--ink);background:var(--canvas)}.like-btn.is-active .od-icon{fill:var(--red);stroke:var(--red)}.save-btn.is-active .od-icon{fill:var(--ink)}.action-count{font-variant-numeric:tabular-nums}.report-btn{margin-left:auto;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 4px;border:0;background:transparent;color:var(--muted);font-size:10.5px;cursor:pointer}.report-btn:hover{color:var(--ink)}.detail-section{padding-top:28px}.detail-section h2,.comments h2{font-size:15px;font-weight:700;letter-spacing:-.01em;margin-bottom:12px}.detail-lead{max-width:700px;margin-bottom:12px;font-size:16px;line-height:1.75;color:var(--ink);letter-spacing:-.01em}.detail-desc p{max-width:700px;margin-bottom:10px;font-size:14px;line-height:1.9;color:var(--ink-2)}.comments{margin-top:36px;padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 16px)}.comments-head{display:flex;align-items:baseline;gap:8px;margin-bottom:16px}.comment-count{font-size:11px;color:var(--muted)}.comment-form{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px}.comment-form .avatar{margin-top:4px}.comment-input-wrap{flex:1;min-width:0}.comment-input{display:block;width:100%;min-height:88px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:13px;line-height:1.7;resize:vertical}.comment-input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #ff4b3a1f}.comment-form-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.comment-counter{font-size:10px;color:var(--muted)}.comment-error{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;color:var(--ink)}.comment-error:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--red);flex:none}.comment-list{display:flex;flex-direction:column}.comment-item{display:flex;align-items:flex-start;gap:10px;padding:16px 0;border-top:1px solid var(--line)}.comment-body{flex:1;min-width:0}.comment-top{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.comment-name{font-size:12px;font-weight:600}.comment-time{font-size:10px;color:var(--muted)}.comment-text{margin-top:3px;font-size:12.5px;line-height:1.75;color:var(--ink-2);overflow-wrap:anywhere;white-space:pre-wrap}.comment-empty{padding:20px 0;font-size:12px;color:var(--muted)}dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;padding:0;border:0;border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-2)}dialog:not([open]){display:none}dialog::backdrop{background:#1011136b}.dialog-inner{padding:24px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.dialog-head h2{font-size:18px;font-weight:700;letter-spacing:-.01em}.dialog-close{width:44px;height:44px;margin:-10px -10px 0 0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.dialog-close:hover{background:var(--canvas);color:var(--ink)}.report-options{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.radio-row{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;color:var(--ink-2);cursor:pointer}.radio-row input{width:16px;height:16px;accent-color:var(--ink);margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.form-card{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.form-title{font-size:20px;font-weight:700;letter-spacing:-.02em}.form-sub{margin-top:4px;font-size:12px;line-height:1.7;color:var(--muted)}.form-grid{display:grid;gap:20px;margin-top:24px}.field{min-width:0}.field label,.field-label{display:block;margin-bottom:6px;font-size:12px;font-weight:600;color:var(--ink)}.req{margin-left:4px;font-size:10px;font-weight:400;color:var(--muted)}.input,.textarea,.select{display:block;width:100%;min-height:46px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:13.5px;transition:border-color .2s,box-shadow .2s}.textarea{min-height:132px;padding:12px 14px;line-height:1.7;resize:vertical}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236F7279' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;cursor:pointer}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #ff4b3a1f}.input::placeholder,.textarea::placeholder{color:var(--muted);opacity:1}.field.is-invalid .input,.field.is-invalid .textarea,.field.is-invalid .select{border-color:var(--red)}.field-help{font-size:10.5px;line-height:1.6;color:var(--muted)}.field-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:6px}.counter{font-size:10px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.field-error{display:none;align-items:flex-start;gap:6px;margin-top:7px;font-size:11px;line-height:1.6;color:var(--ink)}.field-error:before{content:"";width:5px;height:5px;margin-top:6px;border-radius:50%;background:var(--red);flex:none}.field.is-invalid .field-error,.field-error.is-visible{display:flex}.form-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.form-note{font-size:10.5px;line-height:1.7;color:var(--muted)}.upload-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start;padding-top:8px}.cover-drop{position:relative;border:1.5px dashed var(--line);border-radius:var(--radius-lg);background:var(--surface-2, var(--surface));min-height:132px;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;transition:border-color .15s ease,background .15s ease}.cover-drop:hover{border-color:var(--accent)}.cover-drop-empty{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);font-size:13px;padding:18px;text-align:center}.cover-pick{color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.cover-drop-img{width:100%;max-height:240px;object-fit:cover;display:block}.cover-uploading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;color:#fff;font-size:13px}.field-row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.adm-meta-note{font-size:12px;color:var(--muted);white-space:nowrap}.article-page{padding:40px 0 64px}.article-wrap{max-width:760px}.article-head{margin-bottom:22px}.article-head h1{font-size:30px;line-height:1.22;margin:8px 0 10px}.article-meta{font-size:13px;color:var(--muted)}.article-cover{width:100%;border-radius:var(--radius-lg);margin-bottom:20px;display:block}.article-cover-default{margin-bottom:20px;border-radius:var(--radius-lg);overflow:hidden}.article-lead{font-size:16px;color:var(--text-soft, var(--muted));margin:0 0 18px}.article-body{font-size:16px;line-height:1.8;white-space:pre-wrap;color:var(--text, #1a1a1a)}.upload-aside{position:sticky;top:calc(var(--header-h) + 24px)}.preview-card{padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.preview-media{aspect-ratio:16 / 9;border-radius:var(--radius-sm);overflow:hidden;background:var(--canvas)}.preview-media svg,.preview-media img{display:block;width:100%;height:100%}.preview-media img{object-fit:cover}.preview-meta{padding:12px 4px 4px}.preview-label{font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.preview-title{margin-top:4px;font-size:14px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.preview-note{margin-top:4px;font-size:10px;line-height:1.6;color:var(--muted)}.tips{margin-top:16px;padding:18px;background:var(--canvas);border-radius:var(--radius-lg)}.tips h3{margin-bottom:8px;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.tips li{display:flex;gap:8px;padding:5px 0;font-size:11.5px;line-height:1.7;color:var(--ink-2)}.tips li:before{content:"";width:4px;height:4px;margin-top:8px;border-radius:50%;background:var(--red);flex:none}.success-card{padding:8px 0 4px}.success-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--canvas);color:var(--ink);margin-bottom:16px}.success-card h2{font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.02em}.success-card p{max-width:420px;margin-top:8px;font-size:12.5px;line-height:1.8;color:var(--muted)}.success-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.auth-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:100vh}.auth-art{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px;overflow:hidden;background:var(--canvas);border-right:1px solid var(--line)}.auth-art-svg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.auth-art-svg svg{display:block;width:100%;height:100%}.auth-art-top,.auth-art-copy,.auth-art-foot{position:relative;z-index:1}.auth-art-copy{max-width:440px;margin-top:auto;margin-bottom:32px}.auth-art-copy h2{margin-top:16px;font-size:clamp(32px,3.4vw,46px);line-height:1.2;letter-spacing:-.035em;font-weight:750}.auth-art-copy p{margin-top:12px;max-width:380px;font-size:12px;line-height:1.8;color:var(--muted)}.auth-art-foot{display:flex;justify-content:space-between;gap:16px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;color:var(--muted)}.auth-top-brand{display:inline-flex;align-items:center;gap:8px;min-height:44px}.auth-panel{position:relative;display:flex;align-items:center;justify-content:center;padding:64px 24px}.auth-back{position:absolute;top:24px;right:24px;display:inline-flex;align-items:center;gap:5px;min-height:44px;font-size:11.5px;color:var(--muted)}.auth-back:hover{color:var(--ink)}.auth-box{width:100%;max-width:380px}.auth-logo{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:36px}.auth-title{font-size:30px;line-height:1.2;font-weight:750;letter-spacing:-.03em}.auth-sub{margin-top:8px;font-size:12.5px;line-height:1.7;color:var(--muted)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:24px 0;padding:3px;border-radius:999px;background:var(--canvas)}.auth-tab{min-height:42px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:12.5px;cursor:pointer}.auth-tab.is-active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0b0d1214}.form-grid--auth{gap:16px;margin-top:0}.password-wrap{position:relative}.password-wrap .input{padding-right:52px}.password-toggle{position:absolute;top:1px;right:1px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:transparent;color:var(--muted);cursor:pointer}.password-toggle:hover{color:var(--ink)}.code-row{display:flex;align-items:stretch;gap:8px}.code-row .input{flex:1;min-width:0}.code-send{flex:none;min-height:46px;padding:0 14px;font-size:11.5px}.input--code{font-family:var(--mono);font-size:14px;letter-spacing:.14em}.input--invite{text-transform:uppercase;letter-spacing:.08em}.auth-code-status{display:flex;align-items:flex-start;gap:6px;margin-top:6px;padding:8px 10px;border-radius:10px;background:var(--canvas);color:var(--ink-2);font-size:10.5px;line-height:1.6}.auth-code-status:before{content:"";width:5px;height:5px;margin-top:5px;border-radius:50%;background:var(--red);flex:none}.auth-code-status strong{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--ink)}.auth-note strong{color:var(--ink);font-weight:600;font-family:var(--mono);letter-spacing:.04em}.auth-submit{width:100%;margin-top:4px}.auth-note{margin-top:24px;padding-top:16px;border-top:1px solid var(--line);font-size:10px;line-height:1.8;color:var(--muted)}.auth-admin-note{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);font-size:11.5px;line-height:1.6;color:var(--ink-2)}.auth-admin-note:before{content:"";width:5px;height:5px;margin-top:6px;border-radius:50%;background:var(--red);flex:none}.auth-admin-note strong{font-weight:600;color:var(--ink)}.auth-note a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.auth-success{margin-top:12px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--canvas);font-size:11.5px;line-height:1.7;color:var(--ink-2)}.auth-success a{font-weight:600;text-decoration:underline;text-underline-offset:2px}.terms-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px;align-items:start;max-width:980px;padding-top:8px}.terms-toc{position:sticky;top:calc(var(--header-h) + 24px)}.terms-toc-title{margin-bottom:10px;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.terms-toc a{display:block;padding:6px 0;font-size:11.5px;line-height:1.6;color:var(--muted)}.terms-toc a:hover{color:var(--ink)}.doc-tabs{display:flex;gap:4px;margin-bottom:24px}.doc-tab{min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:12px;cursor:pointer}.doc-tab.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.doc h2{font-size:26px;line-height:1.3;font-weight:750;letter-spacing:-.03em}.doc-meta{margin:8px 0 24px;font-size:10.5px;color:var(--muted)}.doc h3{margin:28px 0 8px;font-size:15px;font-weight:650;letter-spacing:-.01em;scroll-margin-top:calc(var(--header-h) + 24px)}.doc p{margin:8px 0;max-width:680px;font-size:13.5px;line-height:1.95;color:var(--ink-2)}.doc ul{margin:8px 0 8px 18px;list-style:disc}.doc li{margin:4px 0;font-size:13.5px;line-height:1.9;color:var(--ink-2)}.works-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start;padding-top:8px}.panel{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px}.panel-head h2{font-size:15px;font-weight:700}.panel-note{font-size:9.5px;color:var(--muted)}.banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:12px 16px;border-radius:var(--radius-md);background:var(--canvas);font-size:11.5px;line-height:1.6;color:var(--ink-2)}.banner a{font-weight:600;color:var(--ink);white-space:nowrap}.works-list{border-top:1px solid var(--line)}.work-row{display:grid;grid-template-columns:132px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.work-row:last-child{border-bottom:0}.work-cover{aspect-ratio:16 / 9;border-radius:var(--radius-sm);overflow:hidden;background:var(--canvas)}.work-cover svg{display:block;width:100%;height:100%}.work-info{min-width:0}.work-title{font-size:13.5px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.work-meta{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:4px;font-size:10px;color:var(--muted)}.work-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.work-stats{font-size:9.5px;color:var(--muted);white-space:nowrap}.status{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;color:var(--ink-2);white-space:nowrap}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--ink);flex:none}.status--pending .status-dot{background:var(--red)}.status--rejected{color:var(--muted)}.status--rejected .status-dot{background:var(--muted)}.link-btn{display:inline-flex;align-items:center;min-height:36px;font-size:10.5px;font-weight:600;color:var(--ink)}.link-btn:hover{text-decoration:underline;text-underline-offset:3px}.profile-head{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.profile-name{font-size:15px;font-weight:700;line-height:1.4}.profile-email{margin-top:2px;font-size:10.5px;color:var(--muted);overflow-wrap:anywhere}.profile-form{display:grid;gap:16px;margin-top:16px}.quick-links{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.quick-links h3{margin-bottom:8px;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.quick-links a{display:inline-flex;align-items:center;min-height:36px;margin-right:14px;font-size:10.5px;color:var(--ink-2)}.quick-links a:hover{color:var(--ink)}.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}.stat-card{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}.stat-num{font-family:var(--mono);font-size:28px;line-height:1.2;font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.stat-label{margin-top:4px;font-size:9.5px;letter-spacing:.08em;color:var(--muted)}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.table-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.table-head h2{font-size:14px;font-weight:700}.table-head a{display:inline-flex;align-items:center;min-height:36px;font-size:10.5px;font-weight:600;color:var(--ink-2)}.table-wrap{overflow-x:auto}.data-table{width:100%;min-width:660px;border-collapse:collapse}.data-table th{padding:10px 16px;background:var(--canvas);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;white-space:nowrap}.data-table td{padding:12px 16px;border-top:1px solid var(--line);font-size:11.5px;color:var(--ink-2);vertical-align:middle}.data-table tbody tr:first-child td{border-top:0}.product-cell{display:flex;align-items:center;gap:10px;min-width:0}.mini-cover{width:56px;aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;flex:none;background:var(--canvas)}.mini-cover svg{display:block;width:100%;height:100%}.product-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:5px;font-size:9.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.status-pill .status-dot{width:4px;height:4px}.status-pill.is-off{color:var(--muted)}.status-pill.is-off .status-dot{background:var(--muted)}.toggle-btn{min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:10px;color:var(--ink-2);cursor:pointer}.toggle-btn:hover{border-color:var(--ink);color:var(--ink)}.side-form{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.side-form h2{font-size:14px;font-weight:700}.side-form .form-grid{margin-top:16px;gap:16px}.announcement-list{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.announcement-list h3{margin-bottom:8px;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.announcement-item{padding:10px 0;border-bottom:1px solid var(--line)}.announcement-item:last-child{border-bottom:0}.announcement-item h4{font-size:11.5px;font-weight:600;line-height:1.5}.announcement-item p{margin-top:2px;font-size:10.5px;line-height:1.7;color:var(--muted)}.announcement-item time{display:block;margin-top:3px;font-size:9px;color:var(--muted)}.review-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px;align-items:start;padding-top:8px}.queue-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.queue-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 16px 12px}.queue-head h2{font-size:14px;font-weight:700}.queue-count{font-size:9.5px;color:var(--muted)}.queue-list{padding:0 8px 8px}.queue-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;width:100%;padding:8px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;text-align:left;cursor:pointer}.queue-item.is-active{background:var(--surface);border-color:var(--ink)}.queue-cover{aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:var(--canvas)}.queue-cover svg{display:block;width:100%;height:100%}.queue-info{min-width:0}.queue-title{display:block;font-size:11.5px;font-weight:650;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-meta{display:block;margin-top:3px;font-size:9px;color:var(--muted)}.review-panel{min-height:360px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.review-cover{aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;background:var(--canvas);margin-bottom:20px}.review-cover svg{display:block;width:100%;height:100%}.review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.review-head h2{margin-top:6px;font-size:24px;line-height:1.3;font-weight:700;letter-spacing:-.025em}.review-meta{margin-top:6px;font-size:10.5px;color:var(--muted)}.review-desc{max-width:640px;margin-top:14px;font-size:12.5px;line-height:1.85;color:var(--ink-2)}.review-form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;flex-wrap:wrap}.review-empty{padding:48px 24px;text-align:center}.review-empty h2{font-size:18px;font-weight:700}.review-empty p{margin:6px auto 0;max-width:360px;font-size:12px;line-height:1.8;color:var(--muted)}.toast{position:fixed;left:50%;bottom:32px;z-index:120;transform:translate(-50%,12px);max-width:calc(100vw - 32px);padding:10px 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:12px;line-height:1.5;text-align:center;opacity:0;pointer-events:none;transition:opacity .2s var(--ease),transform .2s var(--ease)}.toast.is-visible{opacity:1;transform:translate(-50%)}@media (max-width: 1200px){.home-layout{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:32px}.home-featured,.home-events,.home-articles{grid-column:1 / -1;grid-row:auto}.home-calendar{grid-column:1 / -1;grid-row:auto;justify-self:center;width:100%;max-width:480px}.home-trend{grid-column:1;grid-row:auto}.home-creators{grid-column:2;grid-row:auto}}@media (max-width: 1080px){.works-layout,.admin-layout{grid-template-columns:minmax(0,1fr)}.works-layout{gap:24px}.works-layout>.panel:last-child,.admin-layout>.side-form{width:100%;max-width:560px}}@media (max-width: 1024px){.events-layout{grid-template-columns:minmax(0,1fr)}.calendar-card{position:static;width:100%;max-width:480px}}@media (max-width: 900px){.terms-layout{grid-template-columns:minmax(0,1fr);gap:24px}.terms-toc{display:none}.review-layout,.auth-shell{grid-template-columns:minmax(0,1fr)}.auth-art{display:none}.auth-panel{min-height:100vh;padding:80px 24px 48px}}@media (max-width: 768px){:root{--header-h: 60px}.container{padding:0 16px}body.has-tabbar{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.header-inner{gap:12px}.brand-cn,.primary-nav,.header-upload,.header-user .user-label{display:none}.header-admin{width:40px;height:40px;padding:0;justify-content:center}.header-admin-label{display:none}.brand-word{font-size:15.5px}.brand-mark{width:25px;height:25px}.brand-logo{height:24px}.brand>.brand-logo{display:none}.brand>.brand-wordmark{display:block}.header-user{justify-content:flex-end;min-width:44px;min-height:44px}.header-user .avatar{width:32px;height:32px}.btn-sm,.auth-tab,.link-btn,.toggle-btn,.quick-links a,.table-head a,.footer-brand,.footer-col a,.banner a{min-height:44px}.footer-col a{display:flex;align-items:center;padding:0}.banner a{display:inline-flex;align-items:center}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:repeat(5,1fr);padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;font-size:10px;color:var(--muted)}.tab.is-active{color:var(--ink);font-weight:600}.tab.is-active:before{content:"";position:absolute;top:0;width:4px;height:4px;border-radius:50%;background:var(--red)}.tab .od-icon{--od-icon-size: 21px}.home-hero{grid-template-columns:minmax(0,1fr);padding:36px 0 28px}.hero-aside{display:none}.home-hero h1{font-size:clamp(30px,8.4vw,38px);margin:16px 0 12px}.home-layout{grid-template-columns:minmax(0,1fr);padding-top:32px;gap:32px}.home-trend,.home-creators{grid-column:1 / -1}.section+.section{margin-top:40px}.section-head h2{font-size:20px}.product-grid,.products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{padding:8px 8px 10px;border-radius:16px}.product-cover{border-radius:10px}.product-body{padding:10px 2px 0}.product-title{min-height:38px;font-size:13.5px}.product-meta{font-size:9.5px;padding-top:10px}.meta-item .od-icon{--od-icon-size: 10px}.event-rail{display:flex;gap:12px;margin-right:-16px;padding-right:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.event-rail::-webkit-scrollbar{display:none}.event-mini{flex:none;width:248px;scroll-snap-align:start}.article-main{flex-wrap:wrap;gap:4px 10px}.article-meta{flex-basis:100%;margin-left:40px;gap:12px;margin-top:2px}.article-copy{padding:5px 8px}.page-head{padding:36px 0 24px}.page-head-row{align-items:flex-start;flex-direction:column;gap:8px}.page-head h1{margin:12px 0 8px;font-size:32px}.page-count{padding-bottom:0}.filter-inner{gap:8px;min-height:60px}.chip-row{flex:1;min-width:0}.chip{padding:0 14px;font-size:12.5px}.segmented button{min-height:44px;padding:0 13px}.products-grid{padding-top:20px}.event-card{grid-template-columns:240px minmax(0,1fr)}.event-body{padding:6px 12px}.event-body h3{font-size:16px}.event-desc{-webkit-line-clamp:2;font-size:11.5px}.event-coord{display:none}.event-foot .btn{min-height:44px}.detail-page{padding-top:20px}.detail-head{padding:20px 0 18px}.detail-head h1{font-size:30px}.report-btn{margin-left:0}.form-card{padding:20px}.upload-layout{grid-template-columns:minmax(0,1fr);gap:20px}.upload-aside{position:static;order:-1;width:100%;max-width:480px}.preview-card{max-width:none}.auth-panel{padding:72px 20px 40px}.auth-back{top:12px;right:16px}.auth-title{font-size:26px}.doc h2{font-size:23px}.work-row{grid-template-columns:104px minmax(0,1fr);gap:12px}.work-side{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-num{font-size:24px}.review-head h2{font-size:21px}.review-panel{padding:20px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div:first-child{grid-column:1 / -1}.footer-bottom{flex-direction:column;gap:4px}.toast{bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width: 640px){.event-card{grid-template-columns:minmax(0,1fr);padding:8px}.event-media{align-self:stretch}.event-body{padding:10px 6px 6px}.event-desc{-webkit-line-clamp:3}.event-meta{gap:4px 12px}.event-foot{padding-top:10px}.calendar-card{padding:16px}.calendar td{height:40px}.review-layout{gap:16px}.queue-card{border-radius:var(--radius-md)}.queue-list{display:flex;gap:8px;overflow-x:auto;padding:0 8px 8px;scrollbar-width:none}.queue-list::-webkit-scrollbar{display:none}.queue-item{flex:none;width:236px;grid-template-columns:64px minmax(0,1fr)}.review-actions{justify-content:stretch}.review-actions .btn{flex:1}}@media (max-width: 480px){.admin-stats{gap:8px}.stat-card{padding:12px}.banner{align-items:flex-start;flex-direction:column;gap:6px}.detail-actions .action-btn{padding:0 12px}}.admin-page{background:var(--canvas)}.adm-bar{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line)}.adm-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:1280px;min-height:64px;margin:0 auto;padding:10px 24px}.adm-brand{display:inline-flex;align-items:center;gap:12px;min-width:0;color:var(--ink);text-decoration:none}.adm-brand-logo{display:block;width:auto;height:22px;flex:none}.adm-brand-word{display:none;width:auto;height:19px;flex:none}.adm-brand-divider{width:1px;height:16px;background:var(--line-strong);flex:none}.adm-brand-label{font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--muted);white-space:nowrap}.adm-account{display:flex;align-items:center;gap:12px;min-width:0}.adm-account-email{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--ink-2)}.adm-logout{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;transition:border-color .2s var(--ease),background .2s var(--ease)}.adm-logout:hover{border-color:var(--ink)}.adm-main{width:100%;max-width:1280px;margin:0 auto;padding:32px 24px 80px}.adm-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap}.adm-intro .eyebrow{margin-bottom:10px}.adm-intro h1{font-size:30px;font-weight:750;line-height:1.15;letter-spacing:-.02em}.adm-intro-sub{max-width:460px;margin-top:8px;font-size:13.5px;line-height:1.6;color:var(--muted)}.adm-metrics{display:grid;grid-template-columns:repeat(3,minmax(96px,auto));gap:1px;margin:0;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.adm-metric{padding:12px 18px;background:var(--surface)}.adm-metric dt{font-size:10px;font-weight:600;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.adm-metric dd{margin:4px 0 0;font-size:22px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.adm-gate{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 176px);padding:32px 0}.adm-gate-card{width:100%;max-width:440px;padding:36px 32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.adm-gate-mark{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:18px;border:1px solid var(--line-strong);border-radius:50%;color:var(--ink)}.adm-gate-card .eyebrow{margin-bottom:8px}.adm-gate-card h1{font-size:22px;font-weight:750;letter-spacing:-.01em}.adm-gate-lede{margin-top:10px;font-size:13px;line-height:1.7;color:var(--muted)}.adm-gate-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.adm-gate-actions .btn{flex:1 1 140px}.adm-gate-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:11.5px;line-height:1.6;color:var(--muted)}.adm-login-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap}.adm-login-link:hover{border-color:var(--ink)}.adm-tabs{display:flex;gap:2px;margin-top:28px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.adm-tabs::-webkit-scrollbar{display:none}.adm-tab{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;transition:color .2s var(--ease)}.adm-tab:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:center;transition:transform .24s var(--ease)}.adm-tab:hover{color:var(--ink-2)}.adm-tab.is-active{color:var(--ink)}.adm-tab:focus-visible{outline-offset:-4px;border-radius:8px}.adm-tab.is-active:after{transform:scaleX(1)}.adm-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--canvas);color:var(--muted);font-size:10.5px;font-weight:700;font-variant-numeric:tabular-nums}.adm-tab.is-active .adm-count{background:var(--ink);color:#fff}.adm-count.is-alert,.adm-tab.is-active .adm-count.is-alert{background:transparent;color:var(--red)}.adm-panel{padding-top:28px;outline:none}.adm-panel:focus-visible{outline:2px solid var(--red);outline-offset:8px;border-radius:var(--radius-sm)}.adm-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:18px}.adm-panel-head h2{font-size:17px;font-weight:700;letter-spacing:-.01em}.adm-panel-head p{max-width:560px;margin-top:5px;font-size:12.5px;line-height:1.6;color:var(--muted)}.adm-search{position:relative;display:flex;align-items:center}.adm-search .od-icon{position:absolute;top:50%;left:13px;transform:translateY(-50%);color:var(--muted);pointer-events:none}.adm-search-input{width:236px;min-height:40px;padding:0 14px 0 36px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-size:12.5px}.adm-search-input::placeholder{color:var(--muted)}.adm-search-input:focus{border-color:var(--ink)}.adm-filters{display:flex;flex-wrap:wrap;gap:6px}.adm-chip{min-height:36px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:transparent;color:var(--ink-2);font:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}.adm-chip:hover{border-color:var(--ink);color:var(--ink)}.adm-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.adm-root{display:flex;flex-direction:column;gap:12px}.adm-card{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.adm-card--flush{padding:0;overflow:hidden}.adm-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.adm-card:not(.adm-card--flush) .adm-card-head{margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.adm-card--flush .adm-card-head{padding:16px 20px;border-bottom:1px solid var(--line)}.adm-card-head h3{font-size:13.5px;font-weight:700}.adm-card-note{font-size:11px;color:var(--muted);white-space:nowrap}.adm-invite-layout{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:20px;align-items:start}.share-link-box{display:flex;gap:8px;margin-top:12px;align-items:stretch}.share-link-box .input{font-size:12px;color:var(--muted)}.verify-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin-bottom:18px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:var(--radius-lg)}.verify-banner-copy{display:flex;flex-direction:column;gap:2px}.verify-banner-copy strong{font-size:14px}.verify-banner-copy span{font-size:12.5px;color:var(--muted)}.adm-form{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.adm-row{display:grid;grid-template-columns:168px minmax(0,1fr) auto;gap:18px;align-items:start;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.adm-row-cover{aspect-ratio:16 / 9;border-radius:var(--radius-sm);overflow:hidden;background:var(--canvas)}.adm-row-cover svg,.adm-row-cover img{display:block;width:100%;height:100%}.adm-row-main{min-width:0}.adm-row-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.adm-row-time{font-size:11px;color:var(--muted)}.adm-row h3{margin-top:8px;font-size:15px;font-weight:700;line-height:1.35;letter-spacing:-.01em}.adm-row-desc{margin-top:6px;font-size:12.5px;line-height:1.65;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.adm-row-meta{margin-top:8px;font-size:11.5px;color:var(--muted)}.adm-row-actions{display:flex;flex-direction:column;gap:8px;flex:none}.adm-status{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:600;color:var(--ink-2);white-space:nowrap}.adm-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}.adm-status.is-pending{color:var(--red)}.adm-status.is-done{color:var(--muted)}.adm-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow-x:auto}.adm-table{width:100%;border-collapse:collapse}.adm-table th{padding:10px 16px;background:var(--canvas);text-align:left;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--muted);white-space:nowrap}.adm-table td{padding:12px 16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-2);vertical-align:middle}.adm-table tbody tr:hover{background:var(--canvas)}.adm-table .adm-cell-actions{text-align:right;white-space:nowrap}.adm-item{display:flex;align-items:center;gap:10px;min-width:0}.adm-item-cover{width:56px;aspect-ratio:16 / 9;flex:none;border-radius:6px;overflow:hidden;background:var(--canvas)}.adm-item-cover svg{display:block;width:100%;height:100%}.adm-item-copy{min-width:0}.adm-item-title{display:block;font-size:12.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adm-item-author{display:block;margin-top:2px;font-size:10.5px;color:var(--muted)}.adm-inline-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:0 12px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-size:11.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:border-color .2s var(--ease),color .2s var(--ease)}.adm-inline-btn:hover{border-color:var(--ink)}.adm-cell-actions .adm-inline-btn+.adm-inline-btn{margin-left:6px}.adm-inline-btn.is-danger{color:var(--red)}.adm-inline-btn.is-danger:hover{border-color:var(--red)}.adm-inline-btn:disabled{color:var(--muted);border-color:var(--line);cursor:not-allowed}.adm-code{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink)}.adm-subhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 10px}.adm-subhead h3{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--muted)}.adm-subhead span{font-size:11px;color:var(--muted)}.adm-skel{display:grid;grid-template-columns:168px minmax(0,1fr);gap:18px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.adm-skel-media{aspect-ratio:16 / 9;border-radius:var(--radius-sm);background:var(--canvas);animation:adm-pulse 1.4s ease-in-out infinite}.adm-skel-body{display:flex;flex-direction:column;gap:10px;padding-top:4px}.adm-skel-line{height:10px;border-radius:999px;background:var(--canvas);animation:adm-pulse 1.4s ease-in-out infinite}.adm-skel-line:nth-child(1){width:32%}.adm-skel-line:nth-child(2){width:68%}.adm-skel-line:nth-child(3){width:48%}@keyframes adm-pulse{0%,to{opacity:.55}50%{opacity:1}}.adm-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:center}.adm-state-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line-strong);border-radius:50%;color:var(--muted)}.adm-state h3{font-size:14px;font-weight:700}.adm-state p{max-width:380px;font-size:12.5px;line-height:1.65;color:var(--muted)}.adm-state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:6px}.adm-state.is-error .adm-state-mark{color:var(--red);border-color:var(--red)}.adm-dialog{width:min(480px,calc(100vw - 32px))}.adm-dialog--wide{width:min(600px,calc(100vw - 32px))}.adm-dialog-sub{margin-top:6px;font-size:12.5px;line-height:1.6;color:var(--muted)}.adm-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px}.adm-dialog-actions .btn{min-width:96px}.adm-dialog-actions .btn.is-danger{background:var(--surface);border-color:var(--red);color:var(--red)}.adm-dialog-actions .btn.is-danger:hover{background:var(--canvas);border-color:var(--ink);color:var(--ink)}.adm-dialog .field{margin-top:4px}.adm-dialog textarea{min-height:96px}.adm-evidence-media{aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden;background:var(--canvas)}.adm-evidence-media svg{display:block;width:100%;height:100%}.adm-evidence-caption{margin-top:8px;font-size:11px;color:var(--muted)}.adm-evidence-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}.adm-evidence-list dt{font-size:10px;font-weight:600;letter-spacing:.06em;color:var(--muted)}.adm-evidence-list dd{margin:4px 0 0;font-size:12.5px;color:var(--ink)}.adm-evidence-note{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.adm-evidence-note h3{font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--muted)}.adm-evidence-note p{margin-top:6px;font-size:13px;line-height:1.7;color:var(--ink-2)}@media (max-width: 1024px){.adm-row{grid-template-columns:148px minmax(0,1fr)}.adm-row-actions{grid-column:1 / -1;flex-direction:row;justify-content:flex-end;padding-top:2px}.adm-invite-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width: 768px){.adm-bar-inner{min-height:56px;padding:8px 16px;gap:10px}.adm-brand{gap:8px}.adm-brand-logo{display:none}.adm-brand-word{display:block;height:18px}.adm-brand-divider,.adm-brand-label{display:none}.adm-account{gap:8px}.adm-account-email{max-width:128px;font-size:11px}.adm-logout{min-height:40px;padding:0 12px}.adm-main{padding:20px 16px 72px}.adm-gate{min-height:calc(100vh - 148px);padding:24px 0}.adm-gate-card{padding:28px 22px}.adm-intro{gap:18px}.adm-intro h1{font-size:24px}.adm-intro-sub{font-size:12.5px}.adm-metrics{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.adm-metric{padding:10px 12px}.adm-metric dt{font-size:9.5px;letter-spacing:0}.adm-metric dd{font-size:19px}.adm-tabs{margin-top:20px}.adm-tab{min-height:44px;padding:0 12px;font-size:12.5px}.adm-panel{padding-top:20px}.adm-panel-head{flex-direction:column;align-items:stretch;gap:12px}.adm-search,.adm-search-input{width:100%}.adm-card{padding:16px}.adm-row{grid-template-columns:104px minmax(0,1fr);gap:12px;padding:12px}.adm-row h3{font-size:14px}.adm-row-actions{grid-column:1 / -1;flex-wrap:wrap;gap:8px}.adm-row-actions .btn,.adm-row-actions .adm-inline-btn{flex:1 1 auto;min-height:40px}.adm-table-wrap{background:transparent;border:0;border-radius:0;overflow:visible}.adm-table,.adm-table tbody,.adm-table tr,.adm-table td{display:block;width:100%}.adm-table thead{display:none}.adm-table tr{margin-bottom:10px;padding:4px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.adm-table td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);text-align:right}.adm-table td:first-child{display:block;padding-top:12px;border-top:0;text-align:left}.adm-table td:before{content:attr(data-label);flex:none;font-size:10.5px;letter-spacing:.04em;color:var(--muted)}.adm-table td:first-child:before{display:none}.adm-table .adm-cell-actions{justify-content:flex-end}.adm-inline-btn{min-height:40px}.adm-evidence-list{grid-template-columns:minmax(0,1fr);gap:10px}.adm-dialog-actions .btn{flex:1 1 0}}@media (max-width: 380px){.adm-brand-word{height:16px}.adm-account-email{max-width:92px;font-size:10.5px}.adm-logout{padding:0 10px;font-size:11px}.adm-metric{padding:8px 10px}.adm-metric dt{font-size:9px}.adm-metric dd{font-size:17px}.adm-tab{padding:0 10px;font-size:12px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.queue-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:0;border-radius:var(--radius-md);background:transparent;cursor:pointer;text-align:left;transition:background .2s var(--ease)}.queue-item:hover{background:var(--canvas)}.queue-item.is-active{background:var(--canvas);box-shadow:inset 0 0 0 1px var(--line-strong)}.queue-item .queue-cover{width:96px;flex:none}.queue-meta{display:flex;flex-direction:column;min-width:0;gap:3px}.queue-name{font-size:13px;font-weight:600;color:var(--ink)}.queue-sub{font-size:11px;color:var(--muted)}.review-detail{max-width:720px}.review-title{font-size:22px;line-height:1.3;letter-spacing:-.01em;margin:0 0 12px}.review-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.review-lead{max-width:640px;font-size:15px;line-height:1.7;color:var(--ink);letter-spacing:-.01em;margin:0 0 6px}.review-reject{margin-top:18px;display:flex;flex-direction:column;gap:8px}.review-reject label{font-size:12px;color:var(--ink-2)}.adm-row{grid-template-columns:minmax(0,1fr) auto}.adm-row-title{font-size:13.5px;font-weight:600;color:var(--ink)}.adm-row-sub{display:block;margin-top:3px;font-size:11.5px;color:var(--muted)}.avatar-wrap{display:inline-flex;flex-direction:column;align-items:center;gap:6px;flex:none}.avatar-btn{position:relative;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;line-height:0;-webkit-tap-highlight-color:transparent}.avatar-btn:disabled{cursor:progress}.avatar-btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.avatar-img{object-fit:cover;display:block}.avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:50%;background:#1111119e;color:#fff;font-size:9px;letter-spacing:.1em;opacity:0;transition:opacity .18s ease;pointer-events:none}.avatar-overlay em{font-style:normal}.avatar-overlay svg{width:16px;height:16px}@media (hover: hover) and (pointer: fine){.avatar-btn:hover .avatar-overlay,.avatar-btn:focus-visible .avatar-overlay{opacity:1}}@media (pointer: coarse){.avatar-overlay{inset:auto 0 0 auto;width:22px;height:22px;background:#111111d1;border:2px solid var(--paper, #fff);opacity:1}.avatar-overlay em{display:none}}.avatar-clear{border:0;background:none;padding:0;font-size:10.5px;color:var(--muted);text-decoration:underline;cursor:pointer}.avatar-clear:hover{color:var(--ink)}.profile-id{min-width:0}.profile-name{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;font-family:inherit;color:inherit;cursor:text;text-align:left;max-width:100%}.profile-name .pencil{opacity:0;transition:opacity .15s ease;color:var(--muted)}@media (hover: hover) and (pointer: fine){.profile-name:hover .pencil{opacity:1}}@media (pointer: coarse){.profile-name .pencil{opacity:.4}}.profile-name:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:2px}.profile-name-input{width:9em;max-width:100%;padding:0 0 2px;border:0;border-bottom:1px solid var(--ink);background:transparent;font-family:inherit;font-size:15px;font-weight:700;color:var(--ink);line-height:1.4}.profile-name-input:focus{outline:none}.profile-bio{margin-top:4px;font-size:11px;line-height:1.55;color:var(--ink-2, #444);overflow-wrap:anywhere}.profile-bio.is-empty{color:var(--muted)}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:#11111175;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overflow-y:auto}.modal-card{width:min(440px,100%);max-height:calc(100vh - 48px);overflow-y:auto;background:var(--paper, #fff);border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;box-shadow:0 24px 60px #1111112e;display:grid;gap:14px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:17px;line-height:1.4;margin:0}.modal-sub{margin-top:4px;font-size:11.5px;color:var(--muted)}.modal-note{font-size:12px;line-height:1.7;color:var(--ink-2, #444)}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.modal-danger{border:1px solid var(--line);background:transparent;color:var(--red, #c0392b)}.modal-danger:hover{border-color:var(--red, #c0392b)}.icon-btn{width:30px;height:30px;flex:none;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.icon-btn:hover{background:var(--canvas)}@media (max-width: 480px){.modal-actions{grid-template-columns:1fr}}.review-tabs{display:flex;gap:8px;margin:2px 0 18px}.tab-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:transparent;font-size:12px;color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.tab-btn:hover{color:var(--ink);border-color:var(--ink)}.tab-btn.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.tab-count{font-size:10.5px;padding:1px 6px;border-radius:999px;background:#11111114}.tab-btn.is-active .tab-count{background:#ffffff38}.signup-panel{padding:18px}.signup-list{display:grid;gap:10px}.signup-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px}.signup-main{min-width:0}.signup-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;font-weight:650;color:var(--ink)}.signup-mail{font-size:11.5px;font-weight:400;color:var(--muted);text-decoration:underline;overflow-wrap:anywhere}.signup-sub{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;font-size:11px;color:var(--muted)}.signup-sub span{display:inline-flex;align-items:center;gap:4px}.signup-note{margin-top:8px;font-size:12px;line-height:1.6;color:var(--ink-2, #444);overflow-wrap:anywhere}.signup-actions{display:flex;gap:8px;flex:none}@media (max-width: 560px){.signup-row{flex-direction:column}.signup-actions{width:100%}.signup-actions .btn{flex:1}}.event-detail{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:32px;align-items:start;padding:8px 0 4px}.event-detail-poster{margin:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line)}.event-detail-poster svg{display:block;width:100%;height:auto}.event-detail-main{min-width:0}.event-detail-title{font-size:clamp(26px,3.4vw,38px);line-height:1.16;letter-spacing:-.02em;margin:14px 0 10px}.event-detail-lead{font-size:14.5px;line-height:1.75;color:var(--ink-2);margin:0 0 20px}.event-facts{display:grid;gap:0;margin:0 0 22px;border-top:1px solid var(--line)}.event-facts>div{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.event-facts dt{display:inline-flex;align-items:center;gap:6px;flex:none;width:76px;font-size:12px;color:var(--muted)}.event-facts dd{margin:0;font-size:13.5px;color:var(--ink)}.event-facts .od-icon{color:var(--muted)}.event-detail-actions{display:flex;gap:10px;flex-wrap:wrap}.event-detail-actions .btn{min-width:132px}.tag--signup{background:#1111110f;color:var(--ink)}.tag--signup.is-approved{background:#15803d1f;color:#14663a}.tag--signup.is-rejected{background:#ff4b3a1a;color:#b3261a}.event-rules{margin:0;padding-left:18px;display:grid;gap:10px;list-style:disc}.event-rules li::marker{color:var(--muted)}.event-rules li{font-size:13.5px;line-height:1.75;color:var(--ink-2)}.detail-back{padding:28px 0 8px}.event-title-link{color:inherit;text-decoration:none}.event-title-link:hover{text-decoration:underline;text-underline-offset:3px}.event-more{font-size:11.5px;color:var(--muted);text-decoration:none;border-bottom:1px solid transparent}.event-more:hover{color:var(--ink);border-color:var(--ink)}.auth-forgot{float:right;background:none;border:0;padding:0;font-size:11.5px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.auth-forgot:hover{color:var(--ink)}.auth-back-inline{background:none;border:0;padding:4px 0;margin-bottom:8px;font-size:12.5px;color:var(--muted);cursor:pointer}.auth-back-inline:hover{color:var(--ink)}.account-security{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.security-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:0;padding:6px 0;font-size:13px;font-weight:620;color:var(--ink);cursor:pointer}.security-mail{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:400;color:var(--muted);overflow-wrap:anywhere;text-align:right}.security-body{display:grid;gap:12px;padding:6px 0 2px}@media (max-width: 860px){.event-detail{grid-template-columns:minmax(0,1fr);gap:20px}.event-detail-poster{max-width:420px}}.btn-xs{min-height:30px;padding:0 12px;font-size:11.5px;letter-spacing:0}.invite-badge{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;border:1px solid var(--line);font-size:10px;font-weight:500;color:var(--muted);vertical-align:1px}.invite-badge.is-on{border-color:#15803d47;background:#15803d1a;color:#14663a}@media (max-width: 720px){.adm-row-actions{flex-direction:row}.adm-row-actions .btn{flex:1;min-height:34px}}.publish-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:12px 16px;border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius-md, 10px);background:var(--paper, #fbfaf7);font-size:13px;line-height:1.6;color:var(--ink-2)}.publish-banner.is-review{border-left-color:#b8860b}.publish-banner.is-rejected{border-left-color:#b3261a}.publish-banner-tag{flex:none;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em}.publish-banner.is-review .publish-banner-tag{background:#b8860b1f;color:#8a6508}.publish-banner.is-rejected .publish-banner-tag{background:#b3261a1a;color:#b3261a}.publish-banner-note{min-width:0;overflow-wrap:anywhere}.work-reason{margin:-2px 0 6px;font-size:12px;line-height:1.55;color:#b3261a;overflow-wrap:anywhere}@media (max-width: 380px){.product-meta{flex-wrap:wrap;justify-content:flex-start;gap:2px 10px;font-size:10px}.chip-row{margin-right:-16px;padding-right:16px}}.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.featured-card{display:block;width:100%;padding:0;text-align:left;border:1px solid var(--line);border-radius:var(--radius-lg, 16px);background:var(--paper, #fff);overflow:hidden;cursor:pointer;font:inherit;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.featured-card:hover{transform:translateY(-2px);border-color:var(--ink, #1a1a1a);box-shadow:0 12px 28px #00000014}.featured-cover{display:block;aspect-ratio:16 / 9;overflow:hidden;background:#f2f0ec;border-bottom:1px solid var(--line)}.featured-cover img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}.featured-body{display:flex;align-items:baseline;gap:10px;padding:16px 18px 4px}.featured-name{font-size:18px;font-weight:600;letter-spacing:.01em}.featured-tagline{font-size:13px;color:var(--muted)}.featured-cta{display:block;padding:0 18px 18px;font-size:12px;letter-spacing:.04em;color:var(--muted)}.curated-modal{width:min(520px,100%)}.curated-cover{width:100%;display:block;margin:4px 0 16px;border-radius:var(--radius, 12px);border:1px solid var(--line)}.curated-intro{font-size:15px;line-height:1.8;color:var(--ink, #1a1a1a);margin:0 0 18px}@media (max-width: 720px){.featured-grid{grid-template-columns:1fr;gap:16px}}.article-ext{margin-left:auto;color:var(--muted);font-size:14px;padding-left:12px}.page-loading,.page-empty,.empty,.hint{color:var(--muted);padding:24px 0}.error{color:#c0392b}@media (max-width: 768px){body.has-tabbar{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}
