:root{--brand-600:#0f9d8f;--brand-700:#0b7d72;--brand-50:#ecfaf7;--ink-900:#111827;--ink-700:#374151;--ink-500:#6b7280;--ink-300:#d1d5db;--ink-100:#f3f4f6;--page-bg:#f6f7f5;--danger-600:#dc2626;--shadow-card:0 1px 2px rgba(17,24,39,0.05);--shadow-pop:0 8px 24px rgba(17,24,39,0.1);--background:var(--page-bg);--surface:#ffffff;--ink:var(--ink-900);--muted:var(--ink-500);--line:var(--ink-300);--teal:var(--brand-600);--teal-dark:var(--brand-700);--surface-tint:var(--brand-50);--coral:#f26f5b;--saffron:#f4b74a;--shadow:var(--shadow-card);--paper-bg:#eceff3;--paper-shadow:0 24px 60px rgba(15,23,42,0.1);--paper-border:#e6eaef}*{box-sizing:border-box}body,html{max-width:100vw;min-height:100vh;overflow-x:clip}body{margin:0;color:var(--ink-700);background:var(--page-bg);font-family:var(--font-geist-sans),"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;background:var(--page-bg)}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto auto;gap:16px;min-height:72px;padding:0 22px;border-bottom:1px solid var(--ink-300);background:#ffffff}.brand,.topbar{align-items:center}.brand{display:inline-flex;gap:10px;color:var(--ink);font-size:26px;font-weight:800;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px 10px 16px 16px;background:linear-gradient(145deg,var(--brand-600),var(--brand-700));color:white;font-size:18px;line-height:1}.nav{align-items:stretch;flex-wrap:nowrap;gap:22px;min-height:72px}.nav,.nav a{display:inline-flex}.nav a{align-items:center;white-space:nowrap;color:var(--ink-900);border-bottom:4px solid transparent;font-size:15px;font-weight:700}.nav a.active,.nav a:hover{color:var(--brand-600);border-bottom-color:var(--brand-600)}.search{justify-self:end;display:flex;align-items:center;width:min(320px,100%);height:40px;padding:0 13px;border:1px solid var(--ink-300);border-radius:8px;background:#fff;color:var(--ink-500);font-size:14px}.search input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}.auth-actions,.topbar>a[aria-label="打开个人中心"]{display:inline-flex;align-items:center;justify-content:center}.auth-actions{gap:8px}.auth-actions a,.topbar>a[aria-label="打开个人中心"]{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:14px;font-weight:800}.topbar img{width:28px;height:28px;margin-right:8px;border-radius:50%}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:0 17px;border:0;border-radius:8px;background:var(--brand-600);color:white;font-size:14px;font-weight:800;box-shadow:var(--shadow-card)}.primary-btn:hover{background:var(--brand-700)}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:0 17px;border:1px solid var(--brand-600);border-radius:8px;background:#ffffff;color:var(--brand-700);font-size:14px;font-weight:700;text-decoration:none}.secondary-btn:hover{background:var(--brand-50)}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:28px;max-width:1518px;margin:0 auto;padding:24px 20px 36px}.main-column{align-content:start;gap:18px}.main-column,.welcome{display:grid;min-width:0}.welcome{position:relative;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:stretch;min-height:200px;overflow:hidden;padding:28px 36px;border:1px solid var(--ink-300);border-radius:12px;background:#ffffff;box-shadow:var(--shadow-card)}.welcome h1{max-width:620px;margin:0 0 10px;color:var(--ink-900);font-size:clamp(26px,2.2vw,30px);font-weight:700;line-height:1.2;letter-spacing:0}.welcome p{margin:0;max-width:520px;color:var(--ink-500);font-size:15px;font-weight:400;line-height:1.7}.welcome img{position:absolute;right:0;bottom:0;width:50%;height:100%;max-height:none;object-fit:contain;object-position:right center;opacity:.9;mask-image:linear-gradient(90deg,transparent 0,#000 30%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%)}.hero-metrics-container{display:flex;align-items:center;gap:24px;margin-top:18px}.hero-metric-item{display:flex;align-items:center;gap:10px}.hero-metric-icon{color:var(--brand-600);opacity:.85}.hero-metric-text{display:flex;flex-direction:column;line-height:1.2}.hero-metric-num{font-size:17px;font-weight:700;color:var(--ink-900);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero-metric-label{font-size:12px;color:var(--ink-500);font-weight:600}.hero-metric-divider{width:1px;height:24px;background:var(--ink-300);opacity:.7}.home-shell{display:grid;align-content:start;gap:16px;max-width:1120px;min-height:100vh;margin:0 auto;padding:56px 24px}.home-hero,.home-panel{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.88)}.home-hero{padding:48px;background:linear-gradient(120deg,#eefaf6,#ffffff 58%,#e7f6f1)}.eyebrow{margin:0 0 10px;color:var(--teal);font-size:13px;font-weight:800}h1,h2,p{margin-top:0}h1{margin-bottom:12px;font-size:clamp(36px,6vw,64px);line-height:1.08;letter-spacing:0}h2{margin-bottom:8px;font-size:22px}.home-panel p,.slogan{max-width:680px;color:var(--muted);font-size:18px;line-height:1.7}.home-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.home-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:116px;height:42px;padding:0 18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-weight:700}.home-actions a:first-child{border-color:var(--teal);background:var(--teal);color:white}.home-actions a:first-child:hover{background:var(--teal-dark)}.home-panel{padding:28px}.side-column{display:grid;align-content:start;gap:18px}.side-card{padding:20px;border:1px solid var(--ink-300);border-radius:12px;background:#ffffff;box-shadow:var(--shadow-card)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h3{margin:0;color:var(--ink-900);font-size:17px;font-weight:650}.section-head a{color:var(--brand-700);font-size:13px;font-weight:600}.hot-item,.mini-work,.progress-item{display:grid;grid-template-columns:28px 1fr auto;align-items:center;width:100%;gap:12px;padding:11px 0;border-bottom:1px solid var(--ink-100)}.hot-item:last-child,.mini-work:last-child,.progress-item:last-child{border-bottom:0}.hot-item span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--ink-100);color:var(--ink-500);font-weight:900}.hot-item:nth-child(2) span{background:var(--coral);color:white}.hot-item:nth-child(3) span{background:var(--saffron);color:white}.hot-item p,.mini-work span{margin:0;overflow:hidden;color:var(--ink-900);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.progress-item{grid-template-columns:46px minmax(0,1fr) 72px 40px}.progress-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brand-50);color:var(--brand-700);font-weight:900}.progress-item span:nth-child(2){display:grid;min-width:0}.progress-item strong{color:var(--ink-900);font-size:14px}.progress-item small,.progress-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-item small{color:var(--ink-500)}.progress-item em{display:block;height:4px;max-width:72px;border-radius:999px;background:var(--brand-600);box-shadow:0 0 0 1px var(--brand-50)}.progress-item b{font-size:13px;font-weight:700}.hot-item strong,.mini-work small,.progress-item b{color:var(--ink-500)}.mini-work{grid-template-columns:52px 1fr auto}.mini-work img{width:48px;height:38px;border-radius:8px;object-fit:cover}.mini-work-text{display:grid;gap:2px;min-width:0}.mini-work-text>*{min-width:0}.mini-work-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.lb-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.lb-row{display:grid;grid-template-columns:22px 32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--ink-100)}.lb-row:last-child{border-bottom:0}.lb-medal{display:inline-flex;align-items:center;justify-content:center;color:var(--saffron);line-height:1}.lb-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.lb-avatar-placeholder{width:32px!important;height:32px!important;font-size:13px!important;line-height:32px!important}.lb-name{overflow:hidden;color:var(--ink-900);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.lb-name:hover{color:var(--brand-600)}.lb-counts{gap:6px;color:var(--ink-500);font-size:12px;font-weight:600;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lb-counts,.lb-stat{display:inline-flex;align-items:center}.lb-stat{gap:3px}.lb-stat+.lb-stat:before{content:"·";margin-right:3px;color:var(--ink-300)}.lb-recruit-text{margin:0 0 12px;color:var(--ink-500);font-size:14px;line-height:1.6}.lb-recruit-link{display:inline-flex;align-items:center;padding:8px 16px;border-radius:8px;background:var(--brand-600);color:white;font-size:13px;font-weight:700;text-decoration:none;box-shadow:var(--shadow-card)}.lb-recruit-link:hover{background:var(--brand-700)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.action-panel button,.auth-form button,.comment-form button,.section-heading button,.wish-form button,.work-form button{min-height:40px;padding:0 16px;border:1px solid var(--teal);border-radius:8px;background:var(--teal);color:white;font:inherit;font-weight:700}.wish-filters{display:flex;flex-wrap:wrap;gap:10px;margin:4px 8px 18px}.tag-row span,.wish-filters a{display:inline-flex;align-items:center;min-height:30px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#f8fcfa;color:var(--muted);font-size:13px;font-weight:700}.wish-filters a[data-active=true]{border-color:var(--brand-600);background:var(--brand-600);color:white}.filter-divider{width:1px;min-height:30px;background:var(--line)}.stack-list,.wish-list,.work-grid{display:grid;gap:14px}.mini-card,.wish-card,.work-card{border:1px solid var(--ink-300);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.wish-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:start;padding:18px 20px;border-radius:0;border-width:0 0 1px;border-color:var(--ink-300);background:transparent;box-shadow:none;transition:background .16s ease,transform .16s ease}.wish-card:hover{background:var(--brand-50)}.wish-list{gap:0;overflow:hidden;background:white}.login-prompt-banner,.wish-list{border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-card)}.login-prompt-banner{margin-top:24px;padding:32px;background:var(--brand-50);text-align:center}.login-prompt-banner h3{margin:0 0 8px;color:var(--brand-700);font-size:17px;font-weight:650}.login-prompt-banner p{margin:0 0 20px;color:var(--ink-500);font-size:14px;line-height:1.7}.login-prompt-banner>div{display:flex;gap:12px;justify-content:center}.wish-card:last-child{border-bottom:0}.wish-card__left{display:flex;justify-content:center;align-items:start}.wish-card__avatar-img{width:42px;height:42px;border-radius:50%;object-fit:cover}.wish-card__body{min-width:0}.row-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px}.wish-card__body h2{flex:1 1;min-width:0;margin:0;overflow:hidden;color:#142d2a;font-size:16px;line-height:1.35}.wish-card__body h2 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wish-card__body h2 a:hover{color:var(--teal)}.wish-card__desc{margin:6px 0 10px;color:#657672;font-size:13px;line-height:1.6}.wish-card__byline{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#78908b;font-size:12px}.byline-author{color:#263f3c}.byline-dot{color:#cbd5e1}.category-pill,.tag-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:var(--ink-100);color:var(--ink-700);font-weight:600;font-size:12px}.category-pill{background:var(--brand-50);color:var(--brand-700)}.wish-card__side{flex-direction:column;align-self:stretch;gap:12px;border-left:1px solid var(--line);padding-left:16px;min-height:60px}.wish-card__metrics,.wish-card__side{display:flex;justify-content:space-between}.wish-card__metrics{align-items:center;width:100%;color:#344b47}.metric-item{display:inline-flex;align-items:center;color:#2b4540;font-weight:700;font-size:13px}.wish-card__claim-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.claim-status-label{color:#78908b;font-size:13px}.avatar{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:50%;color:white;font-weight:800;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}.tone-1{background:linear-gradient(145deg,#f19a75,#b95f4b)}.tone-2{background:linear-gradient(145deg,#31b3a3,#096e64)}.tone-3{background:linear-gradient(145deg,#6aa6d8,#32638f)}.tone-4{background:linear-gradient(145deg,#dfbd62,#9c7524)}.wish-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.wish-card__meta span{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border-radius:8px;background:#e7f6f1;color:var(--teal-dark);font-size:12px;font-weight:800}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.wish-card__side{display:grid;grid-template-columns:1fr;justify-items:end;align-content:center;gap:10px;font-size:13px}.save-mark{color:#526762;font-size:19px;line-height:1}.wish-card__counts{display:flex;gap:22px;color:#233f3b;font-size:16px}.status-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:var(--brand-50);color:var(--brand-700);font-size:12px;font-weight:600}.status-pill--warm{background:#fff7ed;color:#c2410c}.status-pill--open{background:#fffbeb;color:#b45309}.status-pill--building{background:#f0f9ff;color:#0369a1}.status-pill--fulfilled{background:#fff7ed;color:#c2410c}.status-pill--closed{background:var(--ink-100);color:var(--ink-700)}.back-link,.link-row a,.mini-card h3 a,.wish-card__side a{color:var(--teal-dark);font-weight:800}.empty-state{margin:0;padding:28px 18px;border:1px dashed var(--ink-300);border-radius:12px;background:var(--surface);color:var(--ink-500);text-align:center;font-size:14px;line-height:1.7}.empty-state:before{content:"";display:block;width:26px;height:26px;margin:0 auto 12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d1d5db' stroke-width='1.5' stroke-dasharray='3 3' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:contain;opacity:.8}.detail-shell{display:grid;gap:18px;max-width:1120px;min-height:100vh;margin:0 auto;padding:40px 24px 64px}.detail-hero,.detail-section{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.9);padding:28px}.detail-hero h1{max-width:860px;font-size:clamp(30px,5vw,48px)}.detail-description{max-width:820px;color:var(--muted);font-size:18px;line-height:1.8}.action-panel,.detail-stats,.link-row{display:flex;flex-wrap:wrap;gap:10px}.detail-stats{margin-top:18px}.detail-stats span{padding:8px 12px;border-radius:8px;background:#eefaf6;color:var(--teal-dark);font-weight:800}.personal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.personal-tabs a{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-weight:800}.personal-tabs a[aria-current=page]{border-color:var(--teal);background:#eefaf6;color:var(--teal-dark)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.mini-card,.work-card{padding:16px}.work-card{display:grid;align-content:start;gap:10px}.claim-list{display:grid;gap:8px;margin-top:16px}.claim-list p{margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fbfefc;color:var(--muted)}.auth-form,.comment-form,.wish-form,.work-form{display:grid;gap:14px}.comment-form,.work-form{margin-top:18px}.auth-form label,.comment-form label,.wish-form .form-field,.wish-form label,.work-form label{display:grid;gap:8px;color:var(--ink);font-weight:800}.auth-form input,.comment-form textarea,.wish-form input,.wish-form select,.wish-form textarea,.work-form input,.work-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fbfefc;color:var(--ink);font:inherit}.auth-form input,.wish-form input,.wish-form select,.work-form input{min-height:42px;padding:0 12px}.wish-form select{appearance:none}.comment-form textarea,.wish-form textarea,.work-form textarea{min-height:116px;padding:12px;resize:vertical}.comment-form textarea{min-height:96px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.auth-form button,.comment-form button,.wish-form button,.work-form button{justify-self:start}.tag-field{min-width:0;margin:0;padding:0;border:0}.tag-field legend{margin-bottom:8px;color:var(--ink);font-weight:800}.post-composer-form{gap:0}.post-composer-shell{overflow:hidden;border:1px solid #e3e8e6;border-radius:8px;background:#f3f4f4}.post-composer-toolbar{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 14px;border-bottom:1px solid #e5e7eb;background:#f7f7f7}.post-composer-tool-group{display:inline-flex;align-items:center;gap:4px;padding-right:8px;border-right:1px solid #d9dedc}.post-composer-toolbar .post-composer-tool-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px;padding:0;border:0;border-radius:4px;background:transparent;color:#4b5563;font:inherit;font-size:13px;font-weight:800;cursor:pointer;box-shadow:none}.post-composer-toolbar .post-composer-tool-btn:hover{background:#e8ecea;color:var(--ink);transform:none}.post-composer-size-select{width:auto;min-height:28px;padding:0 22px 0 6px;border:0;background:transparent;color:#374151;font:inherit;font-size:13px}.post-composer-paper{max-width:768px;min-height:640px;margin:32px auto;padding:60px 94px 70px;border:1px solid #ebeef0;border-radius:4px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04)}.post-composer-title-field{position:relative;display:block;margin:0 0 10px}.post-composer-body-field>span,.post-composer-title-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip:rect(0 0 0 0)}.post-composer-title-field input{min-height:46px;padding:0;border:0;border-radius:0;background:transparent;color:#263733;font-size:24px;font-weight:800;line-height:1.25;box-shadow:none}.post-composer-author:focus,.post-composer-title-field input:focus{outline:none;box-shadow:none}.post-composer-title-field input::placeholder{color:#b4b9bb}.post-composer-paper .post-composer-author{width:100%;min-height:34px;margin-bottom:16px;padding:0;border:0;background:transparent;color:#41504d;font:inherit;font-size:14px;box-shadow:none}.post-composer-body-field{display:block}.post-composer-actions{display:flex;align-items:center;gap:12px;margin-top:24px}.post-composer-actions .back-link{display:inline-flex;align-items:center;text-decoration:none}@media (max-width:820px){.post-composer-toolbar{align-items:flex-start;flex-wrap:wrap}.post-composer-paper{min-height:520px;margin:16px;padding:34px 24px 44px}}.tag-options{display:flex;flex-wrap:wrap;gap:8px}.tag-options label{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fbfefc;color:var(--muted);font-size:13px;font-weight:800}.tag-options input{width:auto;min-height:auto;margin:0}.submit-panel{margin-top:18px;border:1px solid var(--line);border-radius:8px;background:#fbfefc}.submit-panel summary{cursor:pointer;padding:13px 16px;color:var(--teal-dark);font-weight:900}.submit-panel .work-form{padding:0 16px 16px}.profile-form-error,.work-form-error{color:#c53030;background:#fff1f1;border:1px solid #f3b4b4;border-radius:6px;padding:8px 12px;font-size:13px;line-height:1.5;justify-self:stretch}.auth-shell{display:grid;place-items:start center;min-height:calc(100vh - 64px);padding:56px 18px}.auth-card{width:min(560px,100%);padding:32px;border:1px solid var(--ink-300);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.auth-card h1{font-size:clamp(26px,4vw,32px);font-weight:700;color:var(--ink-900);line-height:1.25}.auth-card .detail-description{margin:8px 0 0;max-width:none;color:var(--ink-500);font-size:15px;font-weight:400;line-height:1.7}.auth-note{margin:20px 0 0;color:var(--ink-500);font-size:14px}.auth-note a{color:var(--brand-700);font-weight:700}.auth-github-cta{width:100%;margin-top:20px;min-height:44px;font-size:15px;font-weight:700}.auth-password-section{margin-top:24px;border-top:1px solid var(--ink-300);padding-top:20px}.auth-password-section>summary{cursor:pointer;font-weight:700;color:var(--ink-700);font-size:14px;list-style:none;display:inline-flex;align-items:center;gap:6px}.auth-password-section>summary::-webkit-details-marker{display:none}.auth-password-section>summary:before{content:"+";display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;border:1px solid var(--ink-300);color:var(--ink-500);font-size:13px;font-weight:700;line-height:1;transition:border-color .12s,color .12s,background .12s}.auth-password-section[open]>summary:before{content:"−";background:var(--brand-50)}.auth-password-section>summary:hover:before,.auth-password-section[open]>summary:before{border-color:var(--brand-600);color:var(--brand-700)}.auth-password-section[open]>summary{margin-bottom:8px}.auth-password-warning{margin:10px 0 14px;padding:10px 12px;border-radius:8px;background:#fffbeb;border:1px solid #fde68a;color:#b45309;font-size:13px;line-height:1.6}.auth-error{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:var(--danger-600);font-size:14px;line-height:1.5}.auth-error svg{flex-shrink:0;margin-top:1px}.auth-form input{background:var(--surface);border:1px solid var(--ink-300)}.auth-form input:focus{outline:none;border-color:var(--brand-600);box-shadow:0 0 0 3px rgba(15,157,143,.15)}@media (max-width:980px){.welcome{grid-template-columns:1fr;padding:24px}.welcome img{position:relative;inset:auto;width:100%;max-width:280px;height:auto;margin-top:18px;justify-self:center;object-position:center;mask-image:none;-webkit-mask-image:none}}@media (max-width:900px){.page-grid{grid-template-columns:1fr}}@media (max-width:760px){.topbar{grid-template-columns:auto 1fr auto;gap:10px;padding:10px 12px}.nav,.search{display:none}.brand span:last-child,.topbar .primary-btn{font-size:0;gap:0}.page-grid{grid-template-columns:1fr;padding:14px 12px 28px}.detail-shell,.home-shell{padding:28px 16px}.detail-hero,.detail-section,.home-hero,.home-panel{padding:22px}.detail-grid,.form-grid,.section-heading,.wish-card{display:grid;grid-template-columns:1fr}.wish-card__side{align-content:start}}.detail-layout,.me-content-grid,.works-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;max-width:1400px;margin:0 auto;padding:24px 20px}.breadcrumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-500);margin-bottom:16px}.breadcrumbs a{color:var(--ink-500);text-decoration:none}.breadcrumbs a:hover{color:var(--brand-600)}.breadcrumbs-sep{color:var(--ink-300)}.wish-detail-card{background:#fff;border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-card);padding:24px;margin-bottom:24px}.wish-detail-card__header{display:flex;align-items:start;gap:20px}.detail-vote-box button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:72px;border-radius:8px;border:1px solid var(--ink-300);background:#fff;color:var(--ink-700);cursor:pointer;transition:all .16s ease}.detail-vote-box button.is-active,.detail-vote-box button:hover{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.detail-vote-box button.is-active .vote-label{color:var(--brand-700)}.detail-vote-box .vote-num{font-size:16px;font-weight:800;margin:3px 0 1px;color:var(--ink-900);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.detail-vote-box button.is-active .vote-num{color:var(--brand-700)}.detail-vote-box .vote-label{font-size:10px;color:var(--ink-500)}.detail-vote-box--like button.is-active{background:#fef2f2;border-color:var(--danger-600);color:var(--danger-600)}.detail-vote-box--like button.is-active .vote-label,.detail-vote-box--like button.is-active .vote-num{color:var(--danger-600)}.detail-vote-box--anchor{display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:72px;border-radius:8px;border:1px solid var(--ink-300);background:#fff;color:var(--ink-700);text-decoration:none;transition:all .16s ease}.detail-vote-box--anchor:hover{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.detail-header-center{flex:1 1;min-width:0}.detail-header-top-row{display:flex;justify-content:space-between;align-items:start;gap:16px}.detail-header-center h1{font-size:24px;color:var(--ink-900);margin:0;font-weight:700;line-height:1.35}.detail-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.detail-action-btn{display:inline-flex;align-items:center;padding:6px 12px;border-radius:8px;border:1px solid var(--ink-300);background:#fff;color:var(--ink-700);font-size:13px;cursor:pointer}.detail-action-btn:hover{background:var(--ink-100);border-color:var(--ink-300)}.detail-action-btn--active{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.detail-action-btn--active:hover{background:var(--brand-50);border-color:var(--brand-700)}.detail-action-btn--danger{color:var(--danger-600);cursor:pointer}.detail-action-btn--danger:hover{background:#fef2f2;border-color:#fecaca}.detail-action-link{text-decoration:none}.detail-action-btn--more{padding:6px 8px;font-weight:700}.inline-action-form{display:inline}.share-action-wrapper{position:relative;display:inline-flex}.share-copy-tip{position:absolute;top:calc(100% + 8px);left:50%;z-index:5;transform:translateX(-50%);white-space:nowrap;padding:5px 9px;border-radius:999px;background:var(--ink-900);color:white;font-size:12px;box-shadow:var(--shadow-pop)}.detail-byline-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--ink-500);margin:10px 0 12px}.byline-avatar-img{width:22px;height:22px;border-radius:50%}.byline-avatar-placeholder{width:22px!important;height:22px!important;font-size:11px!important;line-height:22px!important}.byline-author{font-weight:700;color:var(--ink-900)}.byline-author:hover{color:var(--brand-600)}.byline-badge{font-size:11px;background:var(--ink-100);color:var(--ink-500);padding:1px 6px;border-radius:4px;font-weight:600}.detail-status-pills{display:flex;align-items:center;gap:8px;margin-bottom:12px}.detail-counts-row{font-size:13px;color:var(--ink-500)}.detail-count{display:inline-flex;align-items:center;gap:6px}.detail-divider{border:0;border-top:1px solid var(--ink-100);margin:20px 0}.wish-detail-card__content{display:grid;gap:20px}.content-section h3{font-size:15px;color:var(--ink-900);margin:0 0 8px;font-weight:650}.content-section p,.content-section ul{font-size:15px;color:var(--ink-700);line-height:1.7;margin:0}.content-section ul{padding-left:20px}.attachment-box{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;max-width:320px}.attachment-icon{font-size:24px}.attachment-info{display:flex;flex-direction:column}.attachment-info strong{font-size:13px;color:#334155}.attachment-info span{font-size:11px;color:#64748b}.detail-action-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid var(--ink-100)}.footer-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 17px;border-radius:8px;font-weight:700;font-size:14px;text-decoration:none;cursor:pointer;transition:all .16s ease}.footer-btn--want{border:1px solid var(--ink-300);background:#fff;color:var(--ink-700)}.footer-btn--want:hover{background:var(--ink-100)}.footer-btn--want-active{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.footer-btn--want-active:hover{background:var(--brand-50);border-color:var(--brand-700)}.footer-btn--claim{background:#fff;border:1px solid var(--brand-600);color:var(--brand-700);font-weight:700}.footer-btn--claim:hover{background:var(--brand-50);border-color:var(--brand-700)}.footer-btn--filled{background:var(--brand-600);color:white;border:1px solid var(--brand-600);box-shadow:var(--shadow-card)}.footer-btn--filled:hover{background:var(--brand-700);border-color:var(--brand-700)}.discussion-section{background:#fff;border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-card);padding:24px}.discussion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.discussion-header h2{font-size:17px;margin:0;color:var(--ink-900);font-weight:650}.sort-dropdown{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-500);cursor:pointer}.comments-list{display:grid;gap:20px;margin-bottom:24px}.add-comment-card{border-top:1px solid var(--ink-100);padding-top:20px;margin-top:8px}.add-comment-card h3{font-size:15px;color:var(--ink-900);margin:0 0 12px;font-weight:650;display:flex;align-items:center;gap:6px}.comment-item{display:flex;gap:12px;border-bottom:1px solid var(--ink-100);padding-bottom:16px}.comment-item:last-child{border-bottom:none;padding-bottom:0}.comment-avatar .avatar,.comment-avatar img{width:36px;height:36px;border-radius:50%;object-fit:cover}.comment-avatar .avatar{display:flex;align-items:center;justify-content:center;font-weight:700}.comment-main{flex:1 1}.comment-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px}.comment-author-name{font-size:13px;font-weight:700;color:var(--ink-900)}.comment-author-badge{font-size:10px;background:var(--brand-50);color:var(--brand-700);padding:0 5px;border-radius:3px;font-weight:600}.comment-time{font-size:12px;color:var(--ink-500)}.comment-body-text{font-size:13.5px;color:var(--ink-700);line-height:1.7;margin:0 0 8px}.comment-actions{display:flex;align-items:center;gap:14px}.comment-manage-actions{display:contents}.comment-act-btn{display:inline-flex;align-items:center;border:none;background:none;font-size:12px;color:var(--ink-500);cursor:pointer;padding:0}.comment-act-btn:hover{color:var(--brand-600)}.comment-act-btn--active{color:var(--brand-700);font-weight:700}.comment-reply-link{text-decoration:none}.comment-share-wrap{position:relative;display:inline-flex}.comment-copy-tip{position:absolute;left:50%;top:calc(100% + 6px);z-index:4;transform:translateX(-50%);white-space:nowrap;padding:4px 8px;border-radius:999px;background:var(--ink-900);color:white;font-size:11px;box-shadow:var(--shadow-pop)}.comment-replies{margin-top:12px;padding:12px 12px 12px 16px;border-left:2px solid var(--ink-300);background:var(--ink-100);border-radius:8px;display:grid;gap:12px}.comment-reply-item{display:grid;grid-template-columns:26px 1fr;gap:8px}.comment-avatar--compact .avatar,.comment-avatar--compact img{width:26px;height:26px;font-size:12px}.comment-inline-reply{margin-top:2px}.comment-form--compact{gap:8px}.comment-inline-reply-actions{display:flex;justify-content:flex-end;gap:8px}.comment-cancel-btn,.comment-expand-replies{border:none;background:transparent;color:var(--ink-500);cursor:pointer;font-size:12px;padding:0}.comment-cancel-btn:hover,.comment-expand-replies:hover{color:var(--brand-600)}.markdown-composer-editor--compact{border-radius:8px;background:var(--ink-100)}.detail-comment-form{display:flex;flex-direction:column;gap:12px}.detail-comment-form textarea{width:100%;height:80px;padding:12px;border-radius:8px;border:1px solid var(--ink-300);font-size:13px;resize:vertical;background:#fff}.comment-submit-btn{align-self:flex-end;padding:0 17px;min-height:36px;background:var(--brand-600);color:white;border:1px solid var(--brand-600);border-radius:8px;font-weight:700;cursor:pointer;transition:background .12s}.comment-submit-btn:hover{background:var(--brand-700);border-color:var(--brand-700)}.detail-sidebar,.me-sidebar,.works-sidebar{display:flex;flex-direction:column;gap:20px}.sidebar-card{background:#fff;border:1px solid var(--ink-300);border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}.sidebar-card h3{font-size:15px;color:var(--ink-900);margin:0 0 16px;font-weight:650}.sidebar-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sidebar-card-header h3{margin:0}.view-all-link{font-size:12px;color:var(--brand-600);text-decoration:none;font-weight:700}.view-all-link:hover{color:var(--brand-700);text-decoration:underline}.sidebar-status-links{display:flex;flex-direction:column;gap:16px}.sidebar-status-item{display:flex;align-items:start;gap:10px}.status-icon{font-size:20px}.sidebar-status-item .status-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--brand-600)}.sidebar-status-item strong{display:block;font-size:13px;color:var(--ink-900)}.sidebar-status-item a,.sidebar-status-item button{font-size:12px;color:var(--brand-600);text-decoration:none;font-weight:700;padding:0}.sidebar-status-item a:hover,.sidebar-status-item button:hover{color:var(--brand-700)}.text-link-btn{border:none;background:none;cursor:pointer}.sidebar-works-list{display:flex;flex-direction:column;gap:14px}.sidebar-work-item{display:flex;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--ink-100)}.sidebar-work-item:last-child{border-bottom:none;padding-bottom:0}.sidebar-work-img{width:60px;height:45px;border-radius:4px;background:var(--ink-100);overflow:hidden;display:flex;align-items:center;justify-content:center}.sidebar-work-img img{width:100%;height:100%;object-fit:cover}.work-placeholder-img{font-size:16px;color:var(--ink-500)}.sidebar-work-info{flex:1 1;min-width:0}.sidebar-work-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.sidebar-work-title-row h4{font-size:13px;margin:0;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-work-badge{font-size:10px;background:var(--ink-100);color:var(--ink-700);padding:0 4px;border-radius:4px;font-weight:600}.sidebar-work-summary{font-size:11px;color:var(--ink-500);margin:2px 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-work-author-row{font-size:11px;color:var(--ink-500);display:flex;align-items:center;gap:4px}.sidebar-claims-list{display:flex;flex-direction:column;gap:12px}.sidebar-claim-item{display:flex;align-items:center;gap:10px}.claim-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.claim-avatar-placeholder{width:32px!important;height:32px!important;font-size:12px!important;line-height:32px!important}.claim-item-info{display:flex;flex-direction:column}.claim-item-info strong{font-size:12px;color:var(--ink-900)}.claim-item-info span{font-size:10px;color:var(--ink-500)}.sidebar-claim-note{margin:4px 0 0;padding:6px 8px;font-size:11px;line-height:1.5;color:var(--ink-700);background:var(--ink-100);border-radius:6px}.sidebar-claim-note-time{display:block;margin-top:2px;font-size:10px;color:var(--ink-500)}.claim-progress-toggle{margin-top:4px;font-size:11px}.claim-progress-form{display:flex;flex-direction:column;gap:6px;margin-top:6px}.claim-progress-form textarea{width:100%;font-size:12px;line-height:1.5;padding:6px 8px;border:1px solid var(--ink-300);border-radius:6px;resize:vertical}.claim-progress-actions{display:flex;align-items:center;gap:8px}.mini-card-note{font-size:12px;color:var(--ink-700)}.mini-card-note-time{display:block;margin-top:2px;font-size:11px;color:var(--ink-500)}.sidebar-attr-list{gap:14px}.attr-row,.sidebar-attr-list{display:flex;flex-direction:column}.attr-row{gap:4px}.attr-label{font-size:11px;color:var(--ink-500);font-weight:700;text-transform:uppercase}.attr-val-pill{display:inline-flex;align-items:center;align-self:start;min-height:24px;font-size:12px;font-weight:600;background:var(--brand-50);color:var(--brand-700);padding:0 10px;border-radius:999px}.attr-val-text{font-size:12px;color:var(--ink-700);line-height:1.5}.attr-tags{display:flex;flex-wrap:wrap;gap:6px}.attr-tag-item{font-size:11px;background:var(--ink-100);color:var(--ink-700);padding:2px 8px;border-radius:999px}.works-layout{max-width:1400px;margin:0 auto;padding:24px 20px}.works-header-section{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:24px 28px;background:#fff;border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-card)}.works-header-left h1{font-size:24px;color:var(--ink-900);margin:0 0 6px;font-weight:700;line-height:1.35}.works-header-left p{font-size:15px;color:var(--ink-500);margin:0}.works-top-recommendations{display:flex;gap:12px;flex-wrap:wrap}.recommend-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--ink-300);padding:12px 16px;border-radius:12px;min-width:188px;box-shadow:var(--shadow-card);transition:border-color .16s ease,box-shadow .16s ease}.recommend-card:hover{border-color:var(--brand-600);box-shadow:var(--shadow-pop)}.recommend-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--ink-100);color:var(--ink-700);flex-shrink:0}.recommend-icon--gold{background:#fffbeb;color:#b45309}.recommend-icon--green{background:var(--brand-50);color:var(--brand-700)}.recommend-icon--blue{background:#f0f9ff;color:#0369a1}.recommend-card strong{display:block;font-size:13px;color:var(--ink-900);font-weight:650}.recommend-card span{font-size:12px;color:var(--ink-500)}.works-main-col{min-width:0}.works-filters-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.works-category-chips{display:flex;flex-wrap:wrap;gap:8px}.works-category-chips .category-chip{padding:6px 14px;border-radius:999px;font-size:13px;background:var(--ink-100);color:var(--ink-700);text-decoration:none;font-weight:600;border:1px solid transparent;transition:background .12s ease,color .12s ease,border-color .12s ease}.works-category-chips .category-chip:hover{background:var(--brand-50);color:var(--brand-700)}.works-category-chips .category-chip.active{background:var(--brand-600);color:#fff}.works-sort-dropdown .sort-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1px solid var(--ink-300);background:#fff;color:var(--ink-700);font-size:13px;text-decoration:none;font-weight:600}.works-sort-dropdown .sort-btn:hover{border-color:var(--brand-600);color:var(--brand-700)}.works-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:20px}.work-card-rich{background:white;border:1px solid var(--ink-300);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-card);transition:all .16s ease}.work-card-rich:hover{transform:translateY(-2px);border-color:var(--brand-600);box-shadow:var(--shadow-pop)}.work-card-cover{position:relative;width:100%;aspect-ratio:16/10;background:var(--brand-50);display:flex;align-items:center;justify-content:center;overflow:hidden;text-decoration:none}.work-card-cover .cover-img{width:100%;height:100%;object-fit:cover}.cover-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%;padding:20px;text-align:center;color:var(--brand-700)}.cover-placeholder svg{opacity:.65}.cover-placeholder span{font-size:13px;font-weight:650;color:var(--ink-700);line-height:1.4;word-break:break-word}.work-badge{position:absolute;top:10px;left:10px;background:rgba(255,255,255,.92);color:var(--brand-700);font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;border:1px solid var(--ink-300);box-shadow:var(--shadow-card)}.work-card-body{padding:16px;flex:1 1;display:flex;flex-direction:column;gap:8px}.work-card-body h3{font-size:17px;color:var(--ink-900);margin:0;font-weight:650;line-height:1.4}.work-card-body h3 a{color:inherit;text-decoration:none}.work-card-body h3 a:hover{color:var(--brand-700)}.work-summary{font-size:13px;color:var(--ink-500);line-height:1.6;margin:0;flex:1 1}.work-parent-wish{font-size:12px;color:var(--ink-500)}.work-parent-wish .wish-link{color:var(--brand-700);font-weight:600}.work-author-row{display:flex;align-items:center;gap:8px;margin-top:6px}.dev-avatar{width:20px;height:20px;border-radius:50%}.dev-avatar-placeholder{width:20px!important;height:20px!important;font-size:10px!important;line-height:20px!important}.dev-name{font-size:12px;color:var(--ink-700);font-weight:600}.work-card-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--ink-100);background:var(--ink-100)}.footer-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.footer-link-btn{display:inline-flex;align-items:center;font-size:11px;font-weight:600;text-decoration:none;color:var(--ink-700);padding:5px 10px;border-radius:8px;border:1px solid var(--ink-300);background:#fff;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.footer-link-btn--demo,.footer-link-btn:hover{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.footer-link-btn--demo:hover{background:var(--brand-50);border-color:var(--brand-700);color:var(--brand-700)}.footer-link-btn--disabled{opacity:.5;cursor:not-allowed}.footer-link-btn--disabled:hover{background:#fff;border-color:var(--ink-300);color:var(--ink-700)}.footer-metrics{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-500);font-weight:700}.footer-like-form{margin:0}.footer-like-btn{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:#64748b;font:inherit;font-weight:700;padding:0;text-decoration:none;cursor:pointer}.footer-like-btn svg{flex-shrink:0}.footer-like-btn--active,.footer-like-btn:hover{color:#e11d48}.sidebar-hot-tags{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.sidebar-hot-tags .tag-item{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink-700)}.sidebar-hot-tags .tag-item .count{font-size:11px;background:var(--ink-100);color:var(--ink-700);padding:2px 8px;border-radius:999px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.view-more-devs,.view-more-tags{display:block;font-size:12px;color:var(--brand-600);text-decoration:none;font-weight:700;margin-top:10px;text-align:center}.sidebar-developers{display:flex;flex-direction:column;gap:12px}.dev-row{gap:10px}.dev-row,.dev-row .avatar{display:flex;align-items:center}.dev-row .avatar{width:32px;height:32px;border-radius:50%;justify-content:center;font-weight:700;font-size:12px}.dev-row strong{display:block;font-size:13px;color:var(--ink-900);font-weight:650}.dev-row span{font-size:12px;color:var(--ink-500)}.invite-card{background:var(--brand-50);border:1px solid var(--ink-300)}.invite-card h3{color:var(--brand-700)}.invite-card p{font-size:13px;color:var(--ink-700);line-height:1.6;margin:8px 0 16px}.submit-work-btn{display:block;text-align:center;background:var(--brand-600);color:#fff;text-decoration:none;font-weight:700;font-size:13px;padding:9px 12px;border-radius:8px;transition:background .12s ease}.submit-work-btn:hover{background:var(--brand-700)}.me-layout{max-width:1400px;margin:0 auto;padding:24px 20px}.me-hero-card{background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;padding:28px;justify-content:space-between;gap:40px;margin-bottom:24px;box-shadow:var(--shadow-card)}.me-hero-card,.me-hero-left{display:flex;align-items:center}.me-hero-left{gap:20px}.me-profile-avatar .me-avatar-placeholder,.me-profile-avatar img{width:80px;height:80px;border-radius:50%;object-fit:cover}.me-avatar-placeholder{display:flex;align-items:center;justify-content:center;font-size:28px!important;font-weight:700}.me-profile-info{display:flex;flex-direction:column}.me-name-row{display:flex;align-items:center;gap:10px}.me-name-row h2{font-size:20px;margin:0;color:var(--ink-900);font-weight:700}.me-badge{font-size:11px;background:var(--brand-50);color:var(--brand-700);padding:2px 8px;border-radius:999px;font-weight:600}.me-bio{font-size:13px;color:var(--ink-500);margin:6px 0 8px}.me-meta-row{font-size:12px;color:var(--ink-500);display:flex;align-items:center;gap:6px}.me-hero-stats{display:flex;gap:24px;background:var(--ink-100);padding:16px 24px;border-radius:12px;border:1px solid var(--ink-300)}.stat-box{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:11px;color:var(--ink-500);margin-bottom:4px}.stat-val{font-size:18px;font-weight:700;color:var(--ink-900);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.admin-stat-grid .stat-box{align-items:flex-start;padding:14px 16px;border:1px solid var(--ink-300);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-card)}.admin-stat-grid .stat-recent{margin-top:4px;font-size:12px;font-weight:600;color:var(--brand-700);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.me-tabs-nav{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--ink-300);gap:20px 24px;margin-bottom:24px}.me-tabs-nav .tab-link{display:inline-flex;align-items:center;padding:12px 4px;font-size:14.5px;font-weight:600;color:var(--ink-500);text-decoration:none;border-bottom:2px solid transparent;transition:color .12s,border-color .12s}.me-tabs-nav .tab-link:hover{color:var(--brand-600)}.me-tabs-nav .tab-link.active{color:var(--brand-700);border-bottom-color:var(--brand-600)}.me-panel{background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;padding:24px;box-shadow:var(--shadow-card)}.me-subfilters-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.subfilter-chip{padding:6px 14px;border-radius:999px;font-size:12.5px;background:var(--ink-100);color:var(--ink-700);text-decoration:none;font-weight:600;border:1px solid transparent;transition:background .12s,color .12s,border-color .12s}.subfilter-chip:hover{border-color:var(--ink-300)}.subfilter-chip.active{background:var(--brand-600);color:white}.me-wishes-table-container{overflow-x:auto}.me-wishes-table{width:100%;border-collapse:collapse;text-align:left}.me-wishes-table th{padding:12px;font-size:12px;color:var(--ink-500);font-weight:700;border-bottom:1px solid var(--ink-100);text-transform:uppercase}.me-wishes-table td{padding:16px 12px;border-bottom:1px solid var(--ink-100);vertical-align:middle}.me-wishes-table tr:last-child td{border-bottom:none}.me-wish-title-col{display:flex;flex-direction:column;gap:4px}.wish-title-link{font-size:14.5px;font-weight:700;color:var(--ink-900);text-decoration:none}.wish-title-link:hover{color:var(--brand-600)}.wish-desc-summary{font-size:12px;color:var(--ink-500);margin:0;line-height:1.5}.wish-tags-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:4px}.me-wish-stats-col{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-700);font-weight:600}.me-wish-stats-col span{display:inline-flex;align-items:center;gap:4px}.me-wish-timeline{display:flex;flex-direction:column;position:relative;padding:8px 0}.timeline-nodes{display:flex;justify-content:space-between;position:relative;z-index:2;width:100%}.timeline-nodes .node{display:flex;flex-direction:column;align-items:center;width:20%}.timeline-nodes .node .dot{width:8px;height:8px;border-radius:50%;background:var(--ink-300);transition:background .16s,box-shadow .16s}.timeline-nodes .node.active .dot{background:var(--brand-600);box-shadow:0 0 0 4px rgba(15,157,143,.18)}.node-label{font-size:9.5px;color:var(--ink-500);margin-top:4px;text-align:center;font-weight:600}.timeline-nodes .node.active .node-label{color:var(--brand-700)}.timeline-bar{position:absolute;top:12px;left:10%;right:10%;height:2px;background:var(--ink-300);z-index:1}.timeline-bar-fill{height:100%;background:var(--brand-600);transition:width .16s}.me-wish-actions-col{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.action-buttons-row{display:flex;align-items:center;gap:8px}.me-cta-btn{font-size:12px;background:var(--ink-100);color:var(--ink-700);border:1px solid var(--ink-300);padding:5px 12px;border-radius:8px;text-decoration:none;font-weight:600;transition:background .12s,color .12s,border-color .12s}.me-cta-btn:hover{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.delete-icon-btn,.edit-icon-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--ink-500);transition:background .12s,color .12s,border-color .12s}.delete-icon-btn:hover,.edit-icon-btn:hover{background:var(--ink-100);color:var(--brand-700);border-color:var(--ink-300)}.profile-checklist-card .checklist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.checklist-percentage{font-size:11.5px;font-weight:600;color:var(--brand-700)}.checklist-progress-bar{width:100%;height:6px;background:var(--ink-100);border-radius:999px;overflow:hidden;margin-bottom:16px}.checklist-progress-bar .bar-fill{height:100%;background:var(--brand-600)}.checklist-items{display:flex;flex-direction:column;gap:10px}.checklist-items label{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--ink-700)}.checklist-items label.checked span{text-decoration:line-through;color:var(--ink-500)}.sidebar-activity-stream{display:flex;flex-direction:column;gap:12px}.activity-row{display:flex;align-items:start;gap:10px;font-size:11.5px;color:var(--ink-700);line-height:1.4}.activity-row .avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px}.activity-row .time{font-size:10px;color:var(--ink-500);display:block;margin-top:2px}.me-developer-footer{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;background:var(--surface);border:1px solid var(--ink-300);padding:24px;border-radius:12px;box-shadow:var(--shadow-card)}.me-developer-footer h3{font-size:14px;color:var(--ink-900);margin:0 0 14px;font-weight:700}.footer-list{display:flex;flex-direction:column;gap:10px}.footer-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:var(--ink-100);border-radius:8px;border:1px solid var(--ink-300)}.footer-list-item .item-title{font-size:12.5px;color:var(--ink-700);text-decoration:none;font-weight:600}.footer-list-item .item-title:hover{color:var(--brand-600)}.status-badge{font-size:10.5px;padding:2px 8px;border-radius:999px;background:#fef3c7;color:#b45309;font-weight:600}.status-badge--green{background:var(--brand-50);color:var(--brand-700)}.notifications-list{display:flex;flex-direction:column;gap:12px}.notification-item{display:flex;align-items:start;gap:12px;padding:12px;background:var(--ink-100);border-radius:8px;border:1px solid var(--ink-300)}.notif-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--ink-100);color:var(--ink-700)}.notif-badge--green{background:var(--brand-50);color:var(--brand-700)}.notif-badge--gold{background:#fef3c7;color:#b45309}.notif-body{display:flex;flex-direction:column;gap:2px}.notif-body strong{font-size:13px;color:var(--ink-900)}.notif-body span{font-size:12px;color:var(--ink-500)}@media (max-width:900px){.detail-layout,.me-content-grid,.works-content-grid{grid-template-columns:1fr}.me-hero-card,.works-header-section{flex-direction:column;align-items:flex-start}.me-hero-stats{width:100%;justify-content:space-around}.me-developer-footer{grid-template-columns:1fr}}.comment-form-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.markdown-composer{width:100%}.markdown-composer-editor{width:100%;padding:12px 14px;border:1px solid #d8e5de;border-radius:10px;background:#fff;color:var(--ink);font:inherit;line-height:1.65;white-space:pre-wrap;overflow-y:auto;outline:none}.post-composer-paper .markdown-composer-editor{min-height:420px;padding:0;border:0;border-radius:0;background:transparent;color:#2b3d39;font-size:15px;line-height:1.75;box-shadow:none}.markdown-composer-editor:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(23,160,122,.12)}.post-composer-paper .markdown-composer-editor:focus{border-color:transparent;box-shadow:none}.markdown-composer-editor[data-empty=true]:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none}.post-composer-paper .markdown-composer-editor[data-empty=true]:before{color:#9ea4a6}.post-composer-paper .markdown-composer-editor h1,.post-composer-paper .markdown-composer-editor h2{margin:10px 0 12px;color:#1c332f;line-height:1.25}.post-composer-paper .markdown-composer-editor h1{font-size:28px;font-weight:900}.post-composer-paper .markdown-composer-editor h2{font-size:22px;font-weight:850}.post-composer-paper .markdown-composer-editor blockquote{margin:14px 0;padding:8px 14px;border-left:4px solid #b9d4cc;color:#526763;background:#f7fbfa}.post-composer-paper .markdown-composer-editor pre{margin:14px 0;padding:12px;border-radius:8px;background:#0f172a;color:#f8fafc;font-family:var(--font-geist-mono),monospace;white-space:pre-wrap}.post-composer-paper .markdown-composer-editor code{padding:2px 5px;border-radius:4px;background:#edf2ef;font-family:var(--font-geist-mono),monospace}.post-composer-paper .markdown-composer-editor pre code{padding:0;background:transparent}.post-composer-paper .markdown-composer-editor table{width:100%;margin:14px 0;border-collapse:collapse}.post-composer-paper .markdown-composer-editor td,.post-composer-paper .markdown-composer-editor th{padding:8px 10px;border:1px solid #d8e5de;text-align:left}.markdown-composer-image{display:block;max-width:min(100%,520px);max-height:360px;margin:10px 0;border-radius:8px;border:1px solid var(--line);object-fit:contain}.markdown-composer-image-placeholder{display:flex;align-items:center;min-height:72px;max-width:min(100%,520px);margin:10px 0;padding:12px 14px;border:1px dashed #b9d4cc;border-radius:8px;background:#f6fbf9;color:#55706a;font-size:13px;font-weight:800;word-break:break-all}.markdown-composer-source{position:absolute;width:1px;height:1px;padding:0;margin:-1px;border:0;overflow:hidden;clip:rect(0 0 0 0)}.markdown-composer-toolbar{flex-wrap:wrap;justify-content:flex-start;gap:10px}.post-composer-paper .markdown-composer-toolbar{margin-top:18px;padding-top:12px;border-top:1px solid #eef2f0}.markdown-composer-hint{display:flex;align-items:center;flex:1 1 220px;font-size:12px;color:var(--muted)}.markdown-composer-image-controls{display:flex;flex-wrap:wrap;align-items:center;flex:1 1 300px;gap:8px}.markdown-composer-image-controls label{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.markdown-composer-image-controls select{width:auto;min-height:32px;padding:0 26px 0 9px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit;font-size:12px}.markdown-composer-image-controls button{min-height:32px;padding:0 11px;border:1px solid var(--teal);border-radius:6px;background:var(--teal);color:#fff;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.markdown-composer-image-controls button:hover{background:var(--teal-dark)}.post-workbench{min-height:100vh;margin:-24px;background:var(--paper-bg);color:#1f2933}.post-workbench-topbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;min-height:56px;padding:0 24px;border-bottom:1px solid var(--paper-border);background:rgba(255,255,255,.9);-webkit-backdrop-filter:saturate(140%) blur(8px);backdrop-filter:saturate(140%) blur(8px)}.post-workbench-grid{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:24px;justify-content:center;align-items:start;max-width:1160px;margin:0 auto;padding:32px 24px 56px}.post-workbench-canvas,.post-workbench-paper{min-height:760px;max-width:760px;padding:56px 64px;border:1px solid var(--paper-border);border-radius:12px;background:#fff;box-shadow:var(--paper-shadow)}.post-workbench-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.post-workbench-title-input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#111827;font:inherit;font-size:30px;font-weight:800;letter-spacing:-.01em;line-height:1.3}.post-workbench-title-input::placeholder{color:#c4cad2;font-weight:700}.post-workbench-author,.post-workbench-status,.post-workbench-title-count{color:#9ca3af;font-size:13px}.post-workbench-title-count{min-width:44px;font-size:12px;font-weight:600;text-align:right;white-space:nowrap}.post-workbench-author{margin:10px 0 18px;font-size:12px}.post-workbench-title-divider{height:1px;margin:0 0 28px;border:0;background:linear-gradient(to right,var(--paper-border),rgba(230,234,239,.4))}.post-workbench-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-workbench-rail{position:sticky;top:80px;display:grid;gap:12px;padding:18px;border:1px solid var(--paper-border);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}.post-workbench-rail strong{color:#1f2933;font-size:14px}.post-workbench-rail span{color:#6b7280;font-size:13px}.post-workbench-back,.post-workbench-ghost,.post-workbench-primary{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 14px;border-radius:4px;font:inherit;font-size:14px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer}.post-workbench-primary{border:1px solid #0f766e;background:#0f766e;color:#fff}.post-workbench-primary:hover{background:#115e59}.post-workbench-back,.post-workbench-ghost{border:1px solid #d1d5db;background:#fff;color:#374151;text-decoration:none}.post-workbench-back:hover,.post-workbench-ghost:hover{border-color:#9ca3af;background:#f9fafb}.rich-post-editor{display:flex;flex-direction:column;gap:0;width:100%}.rich-post-editor__toolbar{position:sticky;top:56px;z-index:20;margin:0 -64px 24px;padding:8px 64px;border:1px solid #e5e7eb;border-right:0;border-left:0;border-radius:0;background:#fff}.rich-post-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rich-post-toolbar [role=group]{display:inline-flex;gap:2px;align-items:center;min-height:32px}.rpt-divider{width:1px;align-self:stretch;margin:4px 2px;background:#e5e7eb}.rpt-button{display:inline-flex;align-items:center;justify-content:center}.rpt-icon{display:block}.rpt-select{min-height:30px;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#1f2933;font:inherit;font-size:13px;padding:0 24px 0 8px}.rpt-paragraph-select{max-width:124px;font-weight:600}.rpt-field{display:inline-flex;gap:6px;align-items:center;color:#64748b;font-size:12px;font-weight:700;white-space:nowrap}.rich-image-menu button,.rich-link-panel button,.rich-post-editor__toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:30px;padding:0 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:#334155;font:inherit;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer}.rich-post-editor__toolbar button.rpt-active,.rich-post-editor__toolbar button:hover{border-color:#cbd5e1;background:#f8fafc;color:#0f766e}.rich-post-editor__toolbar button:disabled{cursor:not-allowed;opacity:.45}.rich-image-menu label,.rich-link-panel label{display:inline-flex;gap:6px;align-items:center;color:#64748b;font-size:12px;font-weight:700;white-space:nowrap}.rich-image-menu select,.rich-link-panel input{min-height:30px;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#1f2933;font:inherit;font-size:13px}.rich-image-menu select{max-width:92px;padding:0 24px 0 8px}.rich-image-menu,.rich-link-panel{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 14px;padding:10px;border:1px solid #dbe4ee;border-radius:6px;background:#f8fafc}.rich-link-panel input{width:min(320px,52vw);padding:0 9px}.rich-link-panel button:first-of-type{border-color:#0f766e;background:#0f766e;color:#fff}.rich-image-menu button{border-color:#fecaca;background:#fff;color:#b91c1c}.rich-editor-error{flex:1 1 100%;margin:0;color:#b91c1c;font-size:12px}.post-preview-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:rgba(15,23,42,.38)}.post-preview-dialog{width:min(760px,100%);max-height:min(860px,90vh);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 80px rgba(15,23,42,.28);outline:none}.post-preview-header{position:sticky;top:0;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e5e7eb;background:#fff}.post-preview-header button{min-height:32px;padding:0 12px;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#374151;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.post-preview-article{padding:42px 56px}.post-preview-article h1{margin:0 0 24px;color:#111827;font-size:30px;line-height:1.35}.rich-post-editor__upload-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rich-post-editor__content{min-height:460px;padding:22px 0;outline:none;color:var(--ink);font-size:16px;line-height:1.85}.rich-post-editor__content p{margin:0 0 1em}.post-rich-content h1,.rich-post-editor__content h1{margin:1.4em 0 .7em;color:#142d2a;font-size:28px;line-height:1.35;font-weight:900}.post-rich-content h2,.rich-post-editor__content h2{margin:1.25em 0 .65em;color:#142d2a;font-size:22px;line-height:1.4;font-weight:850}.post-rich-content blockquote,.rich-post-editor__content blockquote{margin:1.1em 0;padding:10px 16px;border-left:4px solid var(--teal);background:#f8fcfa;color:#475569}.post-rich-content table,.rich-post-editor__content table{width:100%;margin:1em 0;border-collapse:collapse}.post-rich-content td,.post-rich-content th,.rich-post-editor__content td,.rich-post-editor__content th{padding:8px 10px;border:1px solid #dbe4ee;vertical-align:top}.post-rich-content th,.rich-post-editor__content th{background:#f8fcfa;color:#142d2a;font-weight:800;text-align:left}.post-rich-content img,.rich-post-editor__content img{max-width:100%;height:auto;border-radius:8px}.post-rich-content a,.rich-post-editor__content a{color:var(--teal-dark);font-weight:800;text-decoration:underline;text-underline-offset:3px}@media (max-width:900px){.post-workbench{margin:-16px}.post-workbench-topbar{grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;padding:0 14px}.post-workbench-grid{grid-template-columns:1fr;gap:14px;padding:14px}.post-workbench-canvas{min-height:620px;padding:32px 22px}.post-workbench-title-row{gap:10px}.post-workbench-title-input{font-size:24px}.post-workbench-rail{position:static}.post-workbench-back,.post-workbench-ghost,.post-workbench-primary{min-height:34px;padding:0 10px;font-size:13px}.rich-post-editor__toolbar{margin:0 -22px 24px;padding:8px 22px}.rich-link-panel input{width:min(100%,260px)}.post-preview-backdrop{padding:14px}.post-preview-article{padding:32px 22px}}.comment-upload-btn-label{display:inline-flex;align-items:center;font-size:13px;font-weight:700;color:var(--teal);cursor:pointer;padding:6px 12px;border-radius:6px;background:#edf2ef;transition:all .16s ease}.comment-upload-btn-label:hover{background:var(--brand-50)}.comment-upload-btn-label.uploading{opacity:.6;cursor:not-allowed}.me-edit-profile-btn{display:inline-flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--brand-600);color:var(--brand-700);padding:5px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;margin-left:10px;transition:background .16s ease,border-color .16s ease}.me-edit-profile-btn:hover{background:var(--brand-50);border-color:var(--brand-700)}.me-logout-btn{display:inline-flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--ink-300);color:var(--danger-600);padding:5px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;margin-left:10px;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease}.me-logout-btn:hover{background:#fef2f2;border-color:var(--danger-600)}.auth-dropdown-menu{position:absolute;right:0;top:100%;margin-top:8px;background:#121215;border:1px solid #27272a;border-radius:8px;box-shadow:0 10px 15px -3px rgba(0,0,0,.5),0 4px 6px -2px rgba(0,0,0,.5);padding:6px;min-width:140px;z-index:100;display:flex;flex-direction:column;gap:2px}.auth-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;color:#f4f4f5;text-decoration:none;font-size:13px;border-radius:6px;transition:all .15s ease}.auth-dropdown-item:hover{background:rgba(255,255,255,.08)}.auth-dropdown-item.logout{color:#f87171}.auth-dropdown-item.logout:hover{background:rgba(239,68,68,.12);color:#ef4444}.profile-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,23,42,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:1000;animation:fadeIn .2s ease-out}.profile-modal-card{background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-pop);width:90%;max-width:440px;overflow:hidden;animation:slideUp .25s cubic-bezier(.16,1,.3,1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--ink-100)}.modal-header h3{margin:0;font-size:16px;font-weight:650;color:var(--ink-900)}.modal-header .close-btn{background:none;border:none;font-size:24px;color:var(--ink-500);cursor:pointer;line-height:1;padding:0}.modal-header .close-btn:hover{color:var(--ink-700)}.modal-form{padding:20px}.avatar-edit-section{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px}.avatar-preview-wrapper{position:relative;width:80px;height:80px;border-radius:50%;overflow:hidden;cursor:pointer;border:3px solid var(--ink-100);transition:border-color .2s ease}.avatar-preview-wrapper:hover{border-color:var(--brand-600)}.avatar-preview-img{width:100%;height:100%;object-fit:cover}.avatar-preview-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:32px;font-weight:700}.avatar-overlay-camera{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(15,23,42,.4);display:grid;place-items:center;opacity:0;transition:opacity .2s ease}.avatar-preview-wrapper:hover .avatar-overlay-camera{opacity:1}.upload-avatar-txt-btn{background:none;border:none;color:var(--brand-600);font-size:13px;font-weight:600;cursor:pointer}.upload-avatar-txt-btn:hover{color:var(--brand-700);text-decoration:underline}.form-fields-section{display:grid;gap:16px;margin-bottom:24px}.modal-label{display:flex;flex-direction:column;gap:6px;text-align:left}.modal-label span{font-size:13px;font-weight:600;color:var(--ink-700)}.modal-label input,.modal-label textarea{border:1px solid var(--ink-300);border-radius:8px;padding:8px 12px;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease;width:100%;box-sizing:border-box}.modal-label input:focus,.modal-label textarea:focus{outline:none;border-color:var(--brand-600);box-shadow:0 0 0 3px var(--brand-50)}.modal-footer-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--ink-100);padding-top:16px}.modal-footer-actions button{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.modal-footer-actions .cancel-btn{background:var(--surface);border:1px solid var(--ink-300);color:var(--ink-700)}.modal-footer-actions .cancel-btn:hover{background:var(--brand-50);border-color:var(--brand-600);color:var(--brand-700)}.modal-footer-actions .save-btn{background:var(--brand-600);border:1px solid var(--brand-700);color:white}.modal-footer-actions .save-btn:hover{background:var(--brand-700)}.modal-footer-actions button:disabled{opacity:.6;cursor:not-allowed}.public-profile-shell{display:grid;gap:24px;max-width:1180px;min-height:100vh;margin:0 auto;padding:32px 20px 56px}.public-profile-hero,.public-profile-section{border:1px solid var(--ink-300);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.public-profile-hero{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:28px}.generated-avatar,.public-profile-avatar img{display:grid;place-items:center;border-radius:24px;object-fit:cover;font-size:36px;font-weight:900;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}.public-profile-avatar img{width:88px;height:88px}.public-profile-collab-row,.public-profile-title-row,.public-work-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.public-profile-title-row h1{margin:0;font-size:clamp(32px,5vw,48px)}.public-profile-bio,.public-profile-collab,.public-profile-username{margin:0}.public-profile-username{font-weight:700}.public-profile-bio{max-width:720px;margin-top:12px;font-size:18px;line-height:1.7}.public-profile-collab{display:inline-flex;align-items:center;min-height:34px;margin-top:14px;padding:0 12px;border-radius:999px;font-size:14px;font-weight:600}.public-profile-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.public-profile-facts span{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid var(--ink-300);border-radius:8px;color:var(--ink-700);font-size:13px;font-weight:600}.profile-owner-link,.public-work-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid var(--brand-600);border-radius:8px;background:var(--surface);color:var(--brand-700);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .16s ease,color .16s ease}.profile-owner-link:hover,.public-work-actions button:hover{background:var(--brand-50)}.public-profile-section{padding:24px}.public-profile-works{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}.public-work-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;min-height:150px;padding:16px;border:1px solid var(--ink-300);background:var(--surface)}.public-work-cover{display:grid;place-items:center;width:82px;height:82px;overflow:hidden;border-radius:10px;background:var(--ink-100);color:var(--brand-700);font-size:30px;font-weight:900}.public-work-cover img{width:100%;height:100%;object-fit:cover}.public-work-card h3{margin:0 0 6px;font-size:18px}.public-work-card p{margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.6}.public-empty-cta,.public-work-card a{color:var(--brand-700);font-weight:600}.public-work-actions{justify-content:flex-start;margin-top:10px;color:var(--muted);font-size:13px;font-weight:800}.public-empty-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px dashed var(--brand-600);border-radius:8px;background:var(--brand-50)}.public-claim-list{display:grid;gap:10px}.public-claim-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--ink-300);border-radius:8px;background:var(--surface)}.public-claim-row strong{color:var(--brand-700)}@media (max-width:760px){.public-profile-shell{padding:18px 12px 36px}.public-profile-hero,.public-work-card{grid-template-columns:1fr}.generated-avatar,.public-profile-avatar img{width:76px!important;height:76px!important;border-radius:20px}}.public-profile-shell{gap:18px;max-width:1390px;padding:22px 22px 56px}.public-profile-hero{position:relative;grid-template-columns:170px minmax(360px,1fr) minmax(360px,.82fr);gap:26px;min-height:275px;overflow:hidden;padding:30px 36px}.public-profile-avatar .generated-avatar,.public-profile-avatar img{width:136px!important;height:136px!important;font-size:48px}.public-profile-title-row h1{font-size:clamp(36px,5vw,52px);line-height:1.05}.public-profile-username{font-size:15px}.public-profile-bio{max-width:650px;font-size:17px}.public-profile-facts{margin-top:26px}.public-profile-facts span{min-width:142px;min-height:54px;padding:0 22px;border:0;border-right:1px solid var(--ink-100);border-radius:0;background:transparent;color:var(--ink-900);font-size:15px}.public-profile-facts span:first-child{padding-left:0}.public-profile-facts span:last-child{border-right:0}.public-profile-hero-art{align-self:stretch;min-height:230px;overflow:hidden;border-left:1px solid var(--ink-100);mask-image:linear-gradient(90deg,transparent 0,black 16%);-webkit-mask-image:linear-gradient(90deg,transparent 0,black 16%)}.public-profile-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.9}.public-profile-body{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:18px;align-items:start}.public-profile-works{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-work-card{grid-template-columns:190px minmax(0,1fr);gap:18px;min-height:190px;padding:14px;border-radius:12px}.public-work-card--featured{grid-column:1/-1;grid-template-columns:minmax(360px,.58fr) minmax(0,.42fr);min-height:255px}.public-work-cover{width:100%;height:100%;min-height:168px}.public-work-card--featured .public-work-cover{min-height:226px}.public-work-content{display:grid;align-content:start;gap:8px;padding:12px 6px}.public-work-kicker{display:inline-flex;align-items:center;justify-content:center;width:34px;height:26px;border-radius:999px;background:var(--brand-50);color:var(--brand-700);font-size:12px;font-weight:700}.public-work-card h3{margin:0;font-size:21px;line-height:1.3}.public-work-card p{margin:0;font-size:15px}.public-work-wish{margin-top:4px;color:var(--ink-500)!important}.public-work-actions{margin-top:8px}.public-profile-rail{display:grid;gap:18px}.public-claim-row{padding:15px 0;border:0;border-bottom:1px solid var(--ink-100);border-radius:0;background:transparent;color:var(--ink-700);font-size:14px}.public-claim-row:last-child{border-bottom:0}.public-profile-action-panel{display:grid;gap:18px;min-height:170px;padding:26px;border:1px solid var(--ink-300);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card)}.public-profile-action-panel h2{margin:0 0 8px;color:var(--ink-900);font-size:22px}.public-profile-action-panel p{margin:0;color:var(--ink-500);line-height:1.7}.public-profile-action-panel a,.public-profile-action-panel span{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:44px;padding:0 18px;border-radius:8px;background:var(--brand-600);color:white;font-size:14px;font-weight:600}@media (max-width:900px){.public-profile-body,.public-profile-hero,.public-profile-works,.public-work-card--featured{grid-template-columns:1fr}.public-profile-hero-art{display:none}.public-profile-avatar .generated-avatar,.public-profile-avatar img{width:88px!important;height:88px!important;border-radius:22px}.public-profile-facts{display:grid;gap:10px}.public-profile-facts span{justify-content:flex-start;min-width:0;min-height:34px;padding:0;border-right:0}.public-profile-collab-row,.public-profile-title-row{align-items:flex-start}.public-profile-section .section-heading{gap:8px}.public-work-card{min-height:0}}.generated-avatar{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0;overflow:hidden;background:var(--avatar-base)}.generated-avatar__facet{width:100%;height:100%;clip-path:polygon(0 0,100% 0,78% 100%,0 82%)}.generated-avatar__facet--1{background:color-mix(in srgb,var(--avatar-base) 82%,white)}.generated-avatar__facet--2{background:color-mix(in srgb,var(--avatar-mid) 74%,var(--avatar-base))}.generated-avatar__facet--3{background:var(--avatar-light)}.generated-avatar__facet--4{background:linear-gradient(135deg,var(--avatar-mid),var(--avatar-base))}.public-profile-hero{grid-template-columns:145px minmax(390px,1fr) minmax(340px,.72fr);gap:22px;min-height:248px;padding:26px 34px}.public-profile-avatar .generated-avatar,.public-profile-avatar img{width:126px!important;height:126px!important;border-radius:28px}.public-profile-facts{margin-top:20px}.public-profile-hero-art{min-height:205px}.public-profile-section-slogan{margin:6px 0 0;color:var(--ink-500);font-size:14px;line-height:1.6}.public-profile-works{grid-template-columns:1fr;gap:18px}.public-work-card,.public-work-card--featured{grid-column:auto;grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr);gap:22px;min-height:238px;padding:16px}.public-work-card--featured .public-work-cover,.public-work-cover{min-height:206px}.public-work-wish{display:flex;align-items:center;gap:8px;margin-top:6px;padding:10px 12px;border-radius:8px;background:var(--brand-50);color:var(--ink-900)!important;font-size:13px;font-weight:700!important}.public-work-wish strong{overflow:hidden;color:var(--brand-700);text-overflow:ellipsis;white-space:nowrap}.public-claim-row strong{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:12px;white-space:nowrap}.public-claim-status--done{background:var(--brand-50);color:var(--brand-700)!important}.public-claim-status--building{background:#fff0df;color:#c45122!important}.public-claim-status--claimed{background:#e8f1ff;color:#245ca8!important}@media (max-width:900px){.public-work-card,.public-work-card--featured{grid-template-columns:1fr}}.public-profile-hero{isolation:isolate;grid-template-columns:150px minmax(0,1fr);gap:28px;min-height:218px;padding:28px 38px 24px;align-items:center}.public-profile-hero-main{position:relative;z-index:1;display:grid;align-content:center;max-width:720px}.public-profile-avatar{position:relative;z-index:1;display:grid;place-items:center}.public-profile-avatar .generated-avatar,.public-profile-avatar img{width:132px!important;height:132px!important;border-radius:30px}.public-profile-title-row{display:grid;grid-template-columns:minmax(0,max-content) auto;justify-content:start;gap:14px}.public-profile-title-row h1{font-size:clamp(38px,4.2vw,50px);line-height:.98;letter-spacing:0}.public-profile-username{margin-top:6px;color:var(--ink-500);font-size:14px;line-height:1.2}.public-profile-bio{max-width:620px;margin-top:14px;color:var(--ink-700);font-size:15px;line-height:1.55}.public-profile-collab-row{justify-content:flex-start}.public-profile-collab{min-height:30px;margin-top:12px;padding:0 16px;border:1px solid var(--brand-50);background:var(--brand-50);color:var(--brand-700);font-size:13px}.public-profile-collab:before{content:"";width:7px;height:7px;margin-right:10px;border-radius:999px;background:var(--brand-600)}.public-profile-facts{display:grid;grid-template-columns:repeat(3,190px);gap:0;width:min(100%,570px);margin-top:22px}.public-profile-facts .public-profile-fact{display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;align-items:center;min-width:0;min-height:42px;padding:0 26px;border-right:1px solid var(--ink-100);color:var(--ink-900);font-size:14px;font-weight:700}.public-profile-facts .public-profile-fact:first-child{padding-left:0}.public-profile-facts .public-profile-fact:last-child{border-right:0}.public-profile-fact-icon{display:grid;place-items:center;width:24px;height:24px;color:var(--brand-700);line-height:1}.public-profile-facts .public-profile-fact .public-profile-fact-icon,.public-profile-facts .public-profile-fact .public-profile-fact-label,.public-profile-facts .public-profile-fact>span:not(.public-profile-fact-icon){display:block;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent}.public-profile-facts .public-profile-fact .public-profile-fact-icon{display:grid;width:24px;height:24px;color:var(--brand-700)}.public-profile-facts .public-profile-fact>span:not(.public-profile-fact-icon){display:block;color:var(--ink-900)}.public-profile-fact-label{display:block;margin-bottom:1px;color:#78908b;font-size:12px;font-weight:800;line-height:1.1;white-space:nowrap}.public-profile-fact strong{margin-right:4px;font-size:24px;line-height:1}.public-profile-fact>span:last-child{white-space:nowrap}.public-profile-hero-art{position:absolute;inset:0 0 0 auto;z-index:0;width:46%;min-height:0;border-left:0;opacity:.28;mask-image:linear-gradient(90deg,transparent 0,black 28%);-webkit-mask-image:linear-gradient(90deg,transparent 0,black 28%);pointer-events:none}.public-profile-hero-art img{object-position:center right}@media (max-width:900px){.public-profile-hero{grid-template-columns:96px minmax(0,1fr);gap:18px;min-height:0;padding:22px}.public-profile-avatar .generated-avatar,.public-profile-avatar img{width:88px!important;height:88px!important;border-radius:22px}.public-profile-title-row{grid-template-columns:1fr}.public-profile-title-row h1{font-size:34px}.public-profile-facts{grid-template-columns:1fr;width:100%;margin-top:18px}.public-profile-facts .public-profile-fact{min-width:0;padding:10px 0;border-right:0;border-bottom:1px solid #e6f0ec}.public-profile-facts .public-profile-fact:last-child{border-bottom:0}.public-profile-hero-art{display:none}}.public-profile-body{grid-template-columns:minmax(0,1fr) 370px;gap:22px}.public-profile-section--works{padding:24px 24px 18px}.public-archive-heading{align-items:start;padding-bottom:18px}.public-archive-heading h2{display:inline-flex;align-items:center;gap:14px;margin:0 0 6px;color:var(--ink-900);font-size:20px}.public-archive-heading .public-profile-section-slogan{display:inline;margin-left:14px;color:var(--ink-500);font-weight:700}.public-archive-heading p:last-child{margin:10px 0 0;color:var(--ink-500);font-size:14px}.public-contribution-overview{display:grid;gap:14px}.public-contribution-overview a{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;color:var(--ink-900);font-weight:700}.public-claim-dot,.public-contribution-overview a>span:first-child{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:var(--brand-50);color:var(--brand-700)}.public-contribution-overview strong{color:var(--ink-900);font-size:17px}.public-claim-list{position:relative;gap:0;padding-left:0}.public-claim-row{display:grid;grid-template-columns:24px auto minmax(0,1fr);justify-content:start;gap:10px;padding:10px 0;border-bottom:0}.public-claim-row span:last-child{overflow:hidden;color:var(--ink-700);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.public-claim-more{display:inline-flex;margin-top:18px;color:var(--brand-600);font-size:14px;font-weight:600}@media (max-width:1120px){.public-profile-body{grid-template-columns:1fr}}@media (max-width:820px){.public-work-card.public-archive-row{grid-template-columns:1fr;gap:20px;padding:20px 16px 20px 36px}.public-work-card.public-archive-row:before{left:17px}.public-archive-status{left:6px}.public-archive-connector{display:none}.public-archive-result{padding-left:0;border-left:0}.public-archive-cover{max-width:none;height:140px}}.public-archive-heading{align-items:center;padding-bottom:20px;border-bottom:1px solid var(--ink-100)}.public-archive-header-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:6px}.public-archive-header-title h2{margin:0;color:var(--ink-900);font-size:22px;font-weight:700}.public-archive-header-divider{color:var(--ink-300);font-size:18px;font-weight:300}.public-archive-header-title .public-profile-section-slogan{margin:0;color:var(--ink-500);font-size:14px;font-weight:700}.public-archive-header-desc{margin:0;color:var(--ink-500);font-size:14px}.public-archive-view-all{color:var(--brand-600);font-weight:700;font-size:14px;transition:color .2s ease}.public-archive-view-all:hover{color:var(--brand-700)}.public-profile-works{display:flex;flex-direction:column;gap:20px}.public-work-card.public-archive-row{position:relative;display:grid;grid-template-columns:minmax(200px,1.2fr) 34px minmax(180px,1fr) minmax(160px,.9fr);gap:20px;min-height:0;padding:24px 20px 24px 44px;border:1px solid var(--ink-300);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-card);transition:border-color .16s ease,box-shadow .16s ease}.public-work-card.public-archive-row:hover{border-color:var(--brand-600);box-shadow:var(--shadow-pop)}.public-work-card.public-archive-row:before{content:"";position:absolute;left:21px;top:-12px;bottom:-12px;width:2px;background:var(--brand-50);z-index:1}.public-work-card.public-archive-row:first-of-type:before{top:40px}.public-work-card.public-archive-row:last-of-type:before{bottom:24px}.public-archive-status{position:absolute;left:10px;top:28px;z-index:2;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brand-600);color:white;font-size:13px;font-weight:700;box-shadow:0 0 0 3px #ffffff,0 4px 10px rgba(15,157,143,.15)}.public-archive-result,.public-archive-wish,.public-archive-work{min-width:0;display:flex;flex-direction:column}.public-archive-kicker{display:block;margin-bottom:10px;color:var(--ink-500);font-size:12px;font-weight:600;letter-spacing:.5px}.public-archive-title{display:inline-block;margin:0;color:var(--ink-900);font-size:17px;font-weight:650;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-archive-title:hover{color:var(--brand-600)}.public-archive-wish p{margin:10px 0 16px;color:var(--ink-500);font-size:13px;line-height:1.6;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;height:42px}.public-archive-author{display:flex;align-items:center;gap:10px;margin-top:auto}.public-archive-author .generated-avatar,.public-archive-author img{width:32px!important;height:32px!important;border-radius:50%;flex-shrink:0}.public-archive-author-info{display:flex;flex-direction:column;gap:1px;min-width:0}.public-archive-author-name{color:var(--ink);font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-archive-author-date{color:var(--muted);font-size:11px;white-space:nowrap}.public-archive-connector{display:grid;place-items:center;align-self:center}.connector-arrow{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--ink-300);border-radius:50%;background:var(--surface);box-shadow:var(--shadow-card);color:var(--brand-600)}.connector-arrow svg{width:14px;height:14px;stroke:currentColor}.public-archive-work{display:flex;flex-direction:column}.public-archive-work-title{max-width:100%}.public-archive-work-link{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:var(--ink-900);transition:color .2s ease}.public-archive-work-link:hover{color:var(--brand-600)}.public-archive-work-link h3{margin:0;font-size:17px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-archive-work-link .external-link-icon{width:14px;height:14px;stroke:currentColor;flex-shrink:0}.public-archive-cover{display:grid;place-items:center;width:100%;height:92px;margin-top:12px;overflow:hidden;border:1px solid var(--ink-300);border-radius:8px;background:var(--ink-100);color:var(--brand-700);font-weight:900}.public-archive-cover img{width:100%;height:100%;object-fit:cover}.public-archive-date{display:flex;align-items:center;gap:6px;margin-top:auto;color:var(--muted);font-size:12px}.public-archive-date .calendar-icon{width:13px;height:13px;stroke:currentColor}.public-archive-result{display:flex;flex-direction:column;gap:12px;padding-left:20px;border-left:1px solid var(--ink-100)}.public-archive-result-head{display:flex;align-items:center;gap:10px;margin-bottom:4px}.public-archive-result-head .public-archive-kicker{margin-bottom:0}.result-status-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border:1px solid var(--brand-50);border-radius:999px;background:var(--brand-50);color:var(--brand-700);font-size:11px;font-weight:600}.public-archive-result-item{display:flex;align-items:flex-start;gap:8px}.result-item-icon{width:16px;height:16px;margin-top:2px;stroke:var(--brand-600);flex-shrink:0}.result-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:12px}.result-item-info span{color:var(--ink-500);font-weight:500}.result-item-info a{color:var(--brand-600);font-weight:700;word-break:break-all;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.result-item-info a:hover{color:var(--brand-700);text-decoration:underline}.result-item-info strong{color:var(--ink-900);font-weight:700}.public-work-card-owner-actions{margin-top:auto;padding-top:6px}.owner-pin-btn{display:inline-flex;align-items:center;justify-content:center;height:26px;padding:0 8px;border:1px solid var(--ink-300);border-radius:6px;background:var(--surface);color:var(--ink-500);font-family:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.owner-pin-btn:hover{border-color:var(--brand-600);background:var(--brand-50);color:var(--brand-700)}.owner-pin-btn.pinned{border-color:var(--saffron);background:#fffbeb;color:#b45309}.owner-pin-btn.pinned:hover{background:#fef3c7}.public-archive-more{justify-self:center;padding:16px 24px;border:1px solid var(--ink-300);border-radius:999px;background:var(--surface);color:var(--ink-900);font-size:13px;font-weight:600;box-shadow:var(--shadow-card);transition:border-color .16s ease,box-shadow .16s ease,color .16s ease}.public-archive-more:hover{border-color:var(--brand-600);color:var(--brand-700);box-shadow:var(--shadow-pop)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.wish-card__side-rich{display:flex;align-items:center;align-self:stretch;gap:16px;min-height:60px}.wish-card__side-pills{display:flex;flex-direction:column;gap:8px;align-items:flex-end;min-width:100px}.suggested-form-pill-rich{background:var(--brand-50);color:var(--brand-600)}.status-pill-rich,.suggested-form-pill-rich{display:inline-flex;align-items:center;font-size:12px;font-weight:600;min-height:24px;padding:0 10px;border-radius:999px;white-space:nowrap}.status-pill-rich--open{background:#fffbeb;color:#b45309}.status-pill-rich--building{background:#f0f9ff;color:#0369a1}.status-pill-rich--fulfilled{background:#fff7ed;color:#c2410c}.status-pill-rich--closed{background:var(--ink-100);color:var(--ink-700)}.wish-card__side-divider{width:1px;height:38px;background:var(--line);margin:0 4px}.wish-card__metrics-grid{display:flex;flex-direction:column;gap:8px;min-width:110px}.metric-row{display:flex;gap:16px;justify-content:space-between}.metric-cell{display:inline-flex;align-items:center;font-size:12px;font-weight:700;color:#64748b;width:48px}.metric-cell svg{color:#94a3b8;transition:color .16s ease}.metric-cell:hover svg{color:var(--teal)}.filter-toggle-btn{display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-weight:800;font-size:13px;padding:0 14px;height:30px;border-radius:999px;cursor:pointer;transition:all .16s ease}.filter-toggle-btn:hover,.filter-toggle-btn[data-active=true]{border-color:var(--teal);color:var(--teal-dark);background:#eefaf6}.filter-expanded-panel{position:absolute;top:100%;left:0;right:0;margin-top:10px;background:#ffffff;border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-pop);padding:20px;z-index:100;animation:slideUp .2s cubic-bezier(.16,1,.3,1)}.filter-section-grid{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group h4{margin:0;font-size:12px;font-weight:600;color:var(--ink-500);text-transform:uppercase;letter-spacing:.05em}.filter-options-row{display:flex;flex-wrap:wrap;gap:8px}.filter-pill-btn{background:var(--ink-100);border:1px solid var(--ink-300);color:var(--ink-700);font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;cursor:pointer;transition:all .16s ease}.filter-pill-btn:hover{border-color:var(--ink-300)}.filter-pill-btn.active,.filter-pill-btn:hover{background:var(--brand-50);color:var(--brand-700)}.filter-pill-btn.active{border-color:var(--brand-600)}.filter-panel-footer{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--ink-100);padding-top:16px}.filter-panel-footer button{font-size:12px;font-weight:700;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .16s ease}.filter-panel-footer .reset-btn{background:#ffffff;border:1px solid var(--ink-300);color:var(--ink-700)}.filter-panel-footer .reset-btn:hover{background:var(--ink-100)}.filter-panel-footer .apply-btn{background:var(--brand-600);border:1px solid var(--brand-600);color:white}.filter-panel-footer .apply-btn:hover{background:var(--brand-700);border-color:var(--brand-700)}.wish-filters-container{justify-content:space-between;gap:12px 16px;width:100%}.wish-categories-nav,.wish-filters-container{display:flex;flex-wrap:wrap;align-items:center}.wish-categories-nav{gap:8px}.wish-categories-nav a{display:inline-flex;align-items:center;min-height:30px;padding:0 14px;border:1px solid transparent;border-radius:999px;background:var(--ink-100);color:var(--ink-700);font-weight:700;font-size:13px;transition:all .16s ease}.wish-categories-nav a:hover,.wish-categories-nav a[data-active=true]{background:var(--brand-50);color:var(--brand-700)}.wish-categories-nav a[data-active=true]{border-color:var(--brand-600)}.wish-filters-dropdowns{display:flex;align-items:center;gap:10px}.filter-select-pill{appearance:none;background-color:#ffffff;border:1px solid var(--ink-300);color:var(--ink-500);font-weight:800;font-size:13px;padding:0 28px 0 14px;height:30px;border-radius:999px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:all .16s ease}.filter-select-pill:hover{border-color:var(--brand-600);color:var(--brand-700);background-color:var(--brand-50)}.filter-toggle-btn-new{display:inline-flex;align-items:center;border:1px solid var(--ink-300);background:#ffffff;color:var(--ink-500);font-weight:800;font-size:13px;padding:0 14px;height:30px;border-radius:999px;cursor:pointer;transition:all .16s ease}.filter-toggle-btn-new:hover,.filter-toggle-btn-new[data-active=true]{border-color:var(--brand-600);color:var(--brand-700);background:var(--brand-50)}.salon-layout{display:flex;flex-direction:column;gap:24px;max-width:1200px;margin:0 auto;padding:24px 20px}.salon-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;padding:24px 28px;box-shadow:var(--shadow-card)}.salon-hero-content{max-width:65%}.salon-hero h1{font-size:24px;margin:8px 0 10px;color:var(--ink-900);font-weight:700;line-height:1.35}.salon-hero p.detail-description{color:var(--ink-500);font-size:15px;line-height:1.7;margin:0}.publish-post-btn{flex-shrink:0}.salon-grid{display:grid;grid-template-columns:1fr 300px;gap:24px}.salon-main-column,.salon-posts-list{display:flex;flex-direction:column;gap:16px}.salon-post-card{background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;padding:24px;box-shadow:var(--shadow-card);transition:border-color .16s ease,box-shadow .16s ease;display:flex;flex-direction:column;gap:12px}.salon-post-card:hover{border-color:var(--brand-600);box-shadow:var(--shadow-pop)}.post-card-header{display:flex;justify-content:space-between;align-items:center}.post-author-info{display:flex;align-items:center;gap:10px}.post-author-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.post-author-avatar-placeholder{width:24px;height:24px;font-size:11px;line-height:24px}.post-author-name{font-size:13px;font-weight:600;color:var(--ink-900)}.post-time-label{font-size:12px;color:var(--ink-500)}.post-card-title{font-size:17px;font-weight:650;margin:0;line-height:1.4}.post-card-title a{color:var(--ink-900);text-decoration:none;transition:color .15s ease}.post-card-title a:hover{color:var(--brand-600)}.post-card-excerpt{color:var(--ink-500);font-size:14px;line-height:1.6;margin:0}.post-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:13px;border-top:1px solid var(--ink-100);padding-top:12px}.post-metrics{display:flex;gap:16px;color:var(--ink-500)}.post-metrics span{display:inline-flex;align-items:center;gap:4px}.read-more-link{color:var(--brand-600);text-decoration:none;font-weight:600}.read-more-link:hover{color:var(--brand-700)}.salon-empty-state{text-align:center;padding:48px;background:var(--surface);border:1px dashed var(--ink-300);border-radius:12px;color:var(--ink-500)}.salon-empty-state .primary-btn{margin-top:16px}.salon-sidebar{display:flex;flex-direction:column;gap:20px}.salon-widget-card{background:var(--surface);border:1px solid var(--ink-300);border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}.salon-widget-card h3{font-size:15px;color:var(--ink-900);margin:0 0 12px;font-weight:650;display:flex;align-items:center;gap:6px}.salon-guide-text{font-size:13px;color:var(--ink-500);line-height:1.7;margin:10px 0 0}.courses-layout{display:grid;gap:22px;max-width:1240px;margin:0 auto;padding:24px 18px 64px}.courses-hero{display:block;padding:10px 4px 4px}.courses-hero h1{margin:0 0 8px;color:#1a3430;font-size:clamp(28px,3vw,38px);font-weight:900;letter-spacing:0}.courses-hero .detail-description{margin:0;max-width:780px;color:#52605c;font-size:15px;line-height:1.7}.course-shelves{display:grid;gap:20px}.course-shelf{display:grid;gap:22px;padding:26px;border:1px solid #eef2f0;border-radius:18px;background:#ffffff;box-shadow:0 10px 32px rgba(31,58,52,.05)}.course-shelf-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.course-shelf-header h2{margin:0;color:#252c2a;font-size:clamp(21px,2vw,28px);font-weight:900;letter-spacing:0}.course-shelf-header span{display:inline-flex;align-items:center;color:#8a9290;font-size:14px;font-weight:900}.course-shelf-header span:after{content:">";margin-left:8px;font-size:20px;line-height:1;color:#a3aaa7}.course-shelf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px}.course-card{display:grid;grid-template-rows:1fr auto;min-height:430px;overflow:hidden;border:1px solid #e7ecea;border-radius:14px;background:#ffffff;box-shadow:0 6px 18px rgba(22,50,45,.05);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.course-card:hover{transform:translateY(-3px);border-color:#d6e4df;box-shadow:0 16px 30px rgba(22,50,45,.1)}.course-card-link{display:grid;grid-template-rows:auto 1fr;color:inherit;text-decoration:none}.course-card-cover{position:relative;display:grid;align-content:start;gap:10px;min-height:0;aspect-ratio:16/9;padding:18px;overflow:hidden;background:linear-gradient(135deg,#dff8f0,#f4fffb 54%,#c6eee5)}.course-card-loop .course-card-cover{background:linear-gradient(135deg,#e6e7ff,#f6f7ff 52%,#d8f0ff)}.course-card-context .course-card-cover{background:linear-gradient(135deg,#fff0d4,#fffaf0 50%,#ffe0ab)}.course-cover-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#27312f;font-size:12px;font-weight:900}.course-cover-topline span:first-child{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:6px;background:rgba(255,255,255,.72)}.course-card-cover strong{position:relative;z-index:1;max-width:78%;margin:0;color:#182622;font-size:clamp(24px,2.6vw,36px);font-weight:950;line-height:1.08;letter-spacing:0}.course-card-cover small{position:relative;z-index:1;max-width:76%;color:#31514a;font-size:13px;font-weight:900}.course-card-cover i{position:absolute;right:22px;bottom:18px;display:block;width:78px;height:78px;border-radius:24px;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.95) 0 18%,transparent 19%),linear-gradient(135deg,rgba(255,255,255,.8),rgba(31,176,151,.22));box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 18px 34px rgba(35,72,65,.12);transform:rotate(-8deg)}.course-card-loop .course-card-cover i{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.95) 0 18%,transparent 19%),linear-gradient(135deg,rgba(255,255,255,.85),rgba(95,100,218,.25))}.course-card-context .course-card-cover i{background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.95) 0 18%,transparent 19%),linear-gradient(135deg,rgba(255,255,255,.86),rgba(221,140,22,.24))}.course-card-body{display:grid;gap:10px;padding:16px 18px 18px}.course-card-body h3{margin:0;color:#252c2a;font-size:18px;font-weight:900;letter-spacing:0}.course-card-body p{display:-webkit-box;min-height:44px;margin:0;overflow:hidden;color:#5d6b67;font-size:14px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.course-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#8a9491;font-size:14px;font-weight:900}.course-card-side-link{margin:-4px 18px 16px;color:var(--teal-dark);font-size:13px;font-weight:900;text-decoration:none}.course-card-side-link:hover{color:var(--teal);text-decoration:underline}@media (max-width:1024px){.course-shelf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.course-detail-layout{display:grid;gap:18px;max-width:1120px;margin:0 auto;padding:30px 20px 64px}.course-detail-hero,.course-detail-section{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.course-detail-hero{display:grid;grid-template-columns:96px minmax(0,1fr);gap:22px;align-items:start;padding:28px;background:linear-gradient(105deg,#e8f7f3,#ffffff 54%,#f4fbf8)}.course-detail-mark{display:grid;place-items:center;width:76px;height:76px;border-radius:18px;background:var(--teal);color:white;font-size:34px;font-weight:900;box-shadow:0 14px 28px rgba(7,140,124,.18)}.course-detail-hero h1{margin:0 0 12px;color:#142d2a;font-size:clamp(30px,5vw,48px);letter-spacing:0}.course-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.course-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.course-detail-section{padding:22px}.course-detail-section h2{margin:0;color:#142d2a;font-size:20px}.lesson-list{display:grid;gap:12px}.lesson-row{display:grid;grid-template-columns:66px minmax(0,1fr);gap:14px;padding:14px;border:1px solid #edf3f0;border-radius:10px;background:#fbfefc}.lesson-code{display:grid;place-items:center;min-height:38px;border-radius:8px;background:#e7f6f1;color:var(--teal-dark);font-size:13px;font-weight:900}.lesson-row h3{margin:0 0 6px;color:#142d2a;font-size:16px}.course-side-panel p,.lesson-row p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}.course-side-panel{align-self:start;display:grid;gap:14px}.course-side-panel ul{display:grid;gap:10px;margin:0;padding-left:18px;color:#405853;font-size:14px;line-height:1.65}@media (max-width:768px){.salon-grid{grid-template-columns:1fr}.salon-sidebar{margin-top:0}.salon-hero{flex-direction:column;align-items:flex-start;gap:20px;padding:24px}.salon-hero-content{max-width:100%}.courses-hero{padding:6px 2px 0}.course-shelf{padding:18px;border-radius:14px}.course-shelf-grid{grid-template-columns:1fr}.course-card-cover strong{font-size:28px}.course-detail-grid,.course-detail-hero,.lesson-row{grid-template-columns:1fr}.course-detail-mark{width:64px;height:64px}}.author-card__header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.author-avatar{object-fit:cover}.author-avatar,.author-avatar-placeholder{width:48px;height:48px;border-radius:50%;flex-shrink:0}.author-avatar-placeholder{display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.author-bio{font-size:13px;color:var(--muted);line-height:1.6;margin:14px 0 0;border-top:1px dashed var(--line);padding-top:12px}.role-label{font-size:12px;color:var(--ink-500);margin:2px 0 0;font-weight:600}.markdown-rendered-body{font-size:15px;line-height:1.7;color:var(--ink-700)}.markdown-rendered-body p.md-p{margin-top:0;margin-bottom:16px;line-height:1.7}.markdown-rendered-body h1,.markdown-rendered-body h2,.markdown-rendered-body h3,.markdown-rendered-body h4{color:var(--ink-900);margin-top:24px;margin-bottom:12px;font-weight:700;line-height:1.4}.markdown-rendered-body h1{font-size:20px}.markdown-rendered-body h2{font-size:18px}.markdown-rendered-body h3{font-size:16px}.markdown-rendered-body ol,.markdown-rendered-body ul{margin-top:0;margin-bottom:16px;padding-left:24px}.markdown-rendered-body li{margin-bottom:6px;line-height:1.6}.markdown-rendered-body strong{color:var(--ink-900);font-weight:700}.markdown-rendered-body code.md-inline-code{font-family:var(--font-geist-mono),monospace;font-size:13px;background:var(--ink-100);color:var(--brand-700);padding:2px 6px;border-radius:4px;font-weight:600}.markdown-rendered-body pre.md-code-block{font-family:var(--font-geist-mono),monospace;font-size:13.5px;background:#0f172a;color:#f8fafc;padding:16px;border-radius:8px;overflow-x:auto;margin:16px 0;line-height:1.5}.markdown-rendered-body--post{color:var(--ink-700);font-size:15px;line-height:1.7}.markdown-rendered-body--post p.md-p{margin-bottom:18px}.markdown-rendered-body--post h1,.markdown-rendered-body--post h2,.markdown-rendered-body--post h3{color:var(--ink-900);line-height:1.3}.post-rich-content{color:var(--ink-700);font-size:15px;line-height:1.7}.post-rich-content p{margin:0 0 18px}.post-rich-content h1:first-child,.post-rich-content h2:first-child{margin-top:0}.post-rich-content h3{margin:1.2em 0 .6em;color:var(--ink-900);font-size:19px;line-height:1.4}.post-rich-content ol,.post-rich-content ul{margin:0 0 18px;padding-left:24px}.post-rich-content li{margin-bottom:6px}.post-rich-content strong{color:#0f172a;font-weight:800}.post-rich-content code{padding:2px 6px;border-radius:4px;background:#edf2ef;color:var(--brand-700);font-family:var(--font-geist-mono),monospace;font-size:.9em;font-weight:700}.post-rich-content pre{margin:18px 0;padding:16px;overflow-x:auto;border-radius:8px;background:#0f172a;color:#f8fafc;font-family:var(--font-geist-mono),monospace;font-size:13.5px;line-height:1.5}.post-rich-content pre code{padding:0;background:transparent;color:inherit;font-size:inherit}.copyable-code-block{overflow:hidden;margin:18px 0;border:1px solid #203047;border-radius:8px;background:#0f172a}.copyable-code-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:0 12px;border-bottom:1px solid rgba(226,232,240,.14)}.copyable-code-language{color:#b7c6d8;font-family:var(--font-geist-mono),monospace;font-size:12px;font-weight:800}.copyable-code-button{min-height:30px;padding:0 10px;border:1px solid rgba(226,232,240,.22);border-radius:6px;background:rgba(255,255,255,.08);color:#f8fafc;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.copyable-code-button:hover{background:rgba(255,255,255,.14)}.markdown-rendered-body pre.copyable-code-pre{margin:0;border-radius:0;border:0;box-shadow:none}.markdown-image-figure{max-width:100%;margin:18px 0}.markdown-image-figure--left{margin-left:0;margin-right:auto}.markdown-image-figure--center{margin-left:auto;margin-right:auto}.markdown-image-figure--right{margin-left:auto;margin-right:0}.markdown-image-figure img.comment-embedded-image{display:block;width:100%;max-width:100%;height:auto;max-height:none;margin:0;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 18px rgba(32,82,74,.08)}.works-showcase-section{scroll-margin-top:96px}.works-showcase-list{display:grid;gap:14px}.work-showcase-card{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:16px;border:1px solid var(--ink-300);border-radius:12px;background:#fff;box-shadow:var(--shadow-card)}.work-showcase-cover{position:relative;display:block;overflow:hidden;aspect-ratio:16/10;border-radius:8px;background:var(--ink-100);color:var(--ink-500);text-decoration:none}.work-detail-cover img,.work-showcase-cover img{width:100%;height:100%;object-fit:cover}.work-showcase-body{display:grid;align-content:start;gap:10px}.work-showcase-body h3{margin:0;font-size:17px;font-weight:650}.work-showcase-body h3 a{color:var(--ink-900);text-decoration:none}.work-showcase-body h3 a:hover{color:var(--brand-600)}.work-showcase-body p{margin:0;color:var(--ink-700);font-size:15px;line-height:1.7}.work-pending-state{display:grid;gap:10px;padding:22px;border:1px dashed var(--ink-300);border-radius:12px;background:var(--ink-100);color:var(--ink-500)}.work-pending-state strong{color:var(--ink-900);font-size:17px;font-weight:650}.work-pending-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.work-submit-inline{margin-top:16px}.work-detail-layout{max-width:1120px;margin:0 auto;padding:30px 24px 64px}.work-detail-hero{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:28px;padding:24px;border:1px solid var(--ink-300);border-radius:12px;background:#fff;box-shadow:var(--shadow-card)}.work-detail-cover{position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:12px;background:var(--brand-50);border:1px solid var(--ink-300)}.work-detail-main{display:grid;align-content:start;gap:14px}.work-detail-main h1{margin:0;font-size:24px;font-weight:700;line-height:1.35;color:var(--ink-900);letter-spacing:0}.work-detail-actions,.work-detail-author{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.work-detail-author{font-size:13px;color:var(--ink-500)}.work-detail-author a{color:var(--ink-900);font-weight:650;text-decoration:none}.work-detail-author a:hover{color:var(--brand-700)}.byline-sep{color:var(--ink-300)}.work-detail-section{margin-top:18px;padding:24px;background:#fff;border:1px solid var(--ink-300);border-radius:12px;box-shadow:var(--shadow-card)}.work-detail-section h2{font-size:17px;font-weight:650;color:var(--ink-900);margin:0 0 12px}.work-detail-section p{margin:0;color:var(--ink-700);font-size:15px;line-height:1.7}.work-source-wish{display:grid;gap:8px;padding:16px;border:1px solid var(--ink-300);border-radius:12px;background:var(--ink-100);color:inherit;text-decoration:none;transition:border-color .16s ease,background .16s ease}.work-source-wish:hover{border-color:var(--brand-600);background:var(--brand-50)}.work-source-wish:hover strong{color:var(--brand-700)}.work-source-wish strong{font-size:15px;color:var(--ink-900);font-weight:650}.work-source-wish span{color:var(--ink-500);font-size:13px;line-height:1.65}.work-source-wish em{color:var(--brand-700);font-style:normal;font-weight:600;font-size:12px}@media (max-width:760px){.work-detail-hero,.work-showcase-card{grid-template-columns:1fr}}.course-workspace{--course-accent:#0f8f7f;--course-accent-soft:#e6f6f2;display:grid;grid-template-columns:280px minmax(0,1fr) 280px;min-height:calc(100vh - 78px);background:#f5f8f7;border-top:1px solid var(--line)}.course-workspace-loop{--course-accent:#5558c9;--course-accent-soft:#eceeff}.course-workspace-context{--course-accent:#b56b00;--course-accent-soft:#fff4dc}.workspace-right,.workspace-sidebar{position:sticky;top:78px;align-self:start;height:calc(100vh - 78px);overflow-y:auto;background:rgba(255,255,255,.86);border-right:1px solid var(--line);padding:20px}.workspace-right{border-right:0;border-left:1px solid var(--line)}.sidebar-header{display:grid;gap:18px}.back-home{color:var(--muted);font-weight:700;text-decoration:none}.back-home:hover{color:var(--primary)}.course-brand{display:flex;gap:12px;align-items:center}.course-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--course-accent-soft);color:var(--course-accent);font-weight:900}.course-brand h1{margin:0;font-size:19px;line-height:1.2;letter-spacing:0}.progress-text-small,.sub-text{color:var(--muted);font-size:12px}.progress-pill-wrap{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc}.progress-info{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:var(--ink)}.levels-nav{display:grid;gap:8px;margin-top:22px}.level-btn{display:flex;justify-content:space-between;gap:10px;width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer;text-align:left}.level-btn.active,.level-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--course-accent) 45%,white);background:var(--course-accent-soft)}.level-btn:disabled{cursor:not-allowed;opacity:.52}.level-btn.completed .status-icon{color:var(--course-accent);font-weight:900}.btn-left{display:grid;gap:4px}.level-code{color:var(--course-accent);font-size:12px;font-weight:900}.level-title{font-size:13px;font-weight:700;line-height:1.35}.reset-btn{width:100%;margin-top:18px;padding:9px 10px;border:1px dashed var(--line);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.workspace-main{width:100%;max-width:920px;padding:30px 34px 70px}.level-header{display:grid;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}.meta-row{display:flex;flex-wrap:wrap;gap:8px}.code-tag,.defect-tag{padding:3px 8px;border-radius:6px;font-size:12px;font-weight:800}.code-tag{background:var(--course-accent);color:#fff}.defect-tag{background:var(--course-accent-soft);color:var(--course-accent)}.level-header h2{margin:0;font-size:28px;letter-spacing:0}.level-header p{margin:0;color:var(--muted);line-height:1.65}.tab-headers{display:flex;gap:10px;margin:24px 0;border-bottom:1px solid var(--line)}.tab-btn{padding:10px 12px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);cursor:pointer;font-weight:800}.tab-btn.active{color:var(--course-accent);border-bottom-color:var(--course-accent)}.theory-content{padding:22px;border:1px solid var(--line);border-radius:12px;background:#fff}.theory-content .markdown-rendered-body h1{display:none}.theory-footer{margin-top:24px;padding-top:18px;border-top:1px dashed var(--line)}.lesson-card{display:grid;gap:22px}.ascii-block,.concept-card,.panel,.quiz-box,.takeaway{border:1px solid var(--line);border-radius:12px;background:#fff}.takeaway{padding:16px}.takeaway span{color:var(--course-accent);font-size:12px;font-weight:900}.takeaway p{margin:6px 0 0;line-height:1.65}.course-section-title{margin:0;font-size:18px}.concept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.concept-card{position:relative;min-height:138px;padding:16px;text-align:left;cursor:pointer}.concept-card .concept-back,.concept-card.flipped .concept-front{display:none}.concept-card.flipped .concept-back{display:grid}.concept-back,.concept-front{gap:8px}.concept-card strong{color:var(--course-accent)}.concept-card small,.concept-card span{display:block;line-height:1.55}.concept-card small{color:var(--muted);margin-top:10px}.ascii-block{padding:16px;overflow-x:auto;color:var(--course-accent);font-family:var(--font-geist-mono),monospace;font-size:12px;line-height:1.45}.quiz-box{overflow:hidden}.quiz-actions,.quiz-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;background:#fbfdfc;border-bottom:1px solid var(--line)}.quiz-actions{border-top:1px solid var(--line);border-bottom:0}.quiz-head h3{margin:0;font-size:17px}.quiz-head span,.quiz-status.ok{color:var(--course-accent);font-weight:800}.quiz-container{display:grid;gap:28px;padding:20px}.q-block{display:grid;gap:12px;padding-bottom:22px;border-bottom:1px dashed var(--line)}.q-block:last-child{border-bottom:0;padding-bottom:0}.q-num{color:var(--muted);font-size:12px;font-weight:800}.q-text{margin:0;color:var(--ink);font-weight:700;line-height:1.6}.drop-grid,.match-box,.q-options{display:grid;gap:10px}.drag-chip,.drop-target,.q-option{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}.q-option{display:flex;gap:10px;align-items:flex-start;padding:12px;text-align:left}.drop-target.correct,.q-option.correct{border-color:color-mix(in srgb,var(--course-accent) 45%,white);background:var(--course-accent-soft)}.q-option.wrong-muted{opacity:.62}.marker{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:6px;background:#eef5f3;color:var(--course-accent);font-size:12px;font-weight:900}.drag-pool{display:flex;flex-wrap:wrap;gap:10px}.drag-chip{padding:8px 10px;font-weight:700}.drop-row{display:grid;grid-template-columns:190px 1fr;gap:10px;align-items:center}.drop-target{padding:10px 12px;color:var(--muted)}.drop-target.filled{color:var(--ink)}.q-feedback{display:grid;gap:4px;padding:12px;border-radius:8px;background:#f8fbfa;line-height:1.6}.q-feedback.ok strong{color:var(--course-accent)}.q-feedback.err strong{color:#b91c1c}.action-buttons{display:flex;flex-wrap:wrap;gap:10px}.quiz-actions .primary-btn:disabled{cursor:not-allowed;opacity:.5}.panel{display:grid;gap:10px;padding:16px;margin-bottom:14px}.panel h2{margin:0;font-size:16px}.panel p{margin:0;color:var(--muted);line-height:1.6;font-size:13px}.panel-accent{color:var(--course-accent)}.defect-list{display:grid;gap:10px;padding:0;margin:0;list-style:none}.defect-list li{display:flex;gap:10px;opacity:.45}.defect-list li.covered{opacity:1}.defect-list li>span{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#eef5f3;color:var(--course-accent);font-size:12px;font-weight:900}.defect-list small,.defect-list strong{display:block}.defect-list small{color:var(--muted);line-height:1.45}.course-map-page{max-width:1040px;margin:0 auto;padding:32px 24px 72px}.course-map-hero{display:grid;gap:14px;padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff}.course-map-hero h1{margin:0;font-size:clamp(32px,5vw,52px);letter-spacing:0}.map-anchor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px}.map-anchor-grid span{padding:12px;border-radius:10px;background:#eceeff;color:#4548b8;font-weight:800;text-align:center}.course-map-body{margin-top:18px;padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}@media (max-width:1120px){.course-workspace{grid-template-columns:240px minmax(0,1fr)}.workspace-right{position:static;grid-column:1/-1;width:auto;height:auto;border-left:0;border-top:1px solid var(--line)}}@media (max-width:820px){.course-workspace{grid-template-columns:1fr}.workspace-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.workspace-main{padding:22px 18px 42px}.concept-grid,.drop-row,.map-anchor-grid{grid-template-columns:1fr}.quiz-actions,.quiz-head{align-items:stretch;flex-direction:column}}.adoption-badge{display:inline-flex;align-self:flex-start;width:fit-content;align-items:center;padding:2px 10px;border-radius:999px;background:linear-gradient(135deg,#f7d774,#e8b931);color:#5c4400;font-size:12px;font-weight:600}.me-layout .dev-stats{margin-bottom:24px}.dev-stats-band{display:flex;flex-wrap:wrap;gap:16px}.dev-stats-item{flex:1 1 25%;min-width:84px;display:flex;flex-direction:column;align-items:center;gap:4px}.dev-stats-value{font-size:20px;font-weight:700;color:var(--ink-900);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dev-stats-label{font-size:12px;color:var(--ink-500)}.dev-stats-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--ink-100)}.dev-stats-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;background:var(--ink-100);border:1px solid var(--ink-300);font-size:12px;font-weight:600;color:var(--ink-700)}.dev-stats-badge-icon{font-size:14px;line-height:1}.dev-stats-badge-label{white-space:nowrap}.pgn-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:32px}.pgn-link{display:inline-flex;align-items:center;padding:8px 18px;border-radius:999px;border:1px solid var(--line);background:#ffffff;color:var(--primary,var(--brand-600));font-size:14px;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}.pgn-link:hover{background:var(--primary,var(--brand-600));color:#ffffff;border-color:var(--primary,var(--brand-600))}