:root{color-scheme:dark;--tone-ink: 30 6% 5.5%;--tone-shell: 34 8% 9.5%;--tone-surface: 38 10% 13.5%;--tone-outline: 42 10% 21%;--tone-paper: 48 40% 96%;--tone-subtle: 40 9% 66%;--tone-gold: 53 88% 66%;--tone-gold-deep: 48 84% 55%;--tone-pond: 168 34% 22%;--background: var(--tone-ink);--shell: var(--tone-shell);--foreground: var(--tone-paper);--card: var(--tone-surface);--card-foreground: var(--tone-paper);--popover: var(--tone-surface);--popover-foreground: var(--tone-paper);--primary: var(--tone-gold);--primary-foreground: 30 20% 8%;--secondary: var(--tone-surface);--secondary-foreground: var(--tone-paper);--muted: var(--tone-surface);--muted-foreground: var(--tone-subtle);--accent: var(--tone-outline);--accent-foreground: var(--tone-paper);--destructive: 3 68% 55%;--destructive-foreground: 0 0% 100%;--border: var(--tone-outline);--input: var(--tone-outline);--ring: var(--tone-gold);--radius: .625rem;--canvas-deep: var(--tone-ink);--surface-raised: var(--tone-surface);--surface-overlay: var(--tone-outline);--media-canvas: 30 8% 6%;--text-strong: var(--tone-paper);--text-subtle: var(--tone-subtle);--focus: var(--tone-gold);--status-ready: 152 44% 60%;--status-active: 196 52% 62%;--status-warning: 44 88% 62%;--status-blocked: 5 68% 62%;--status-neutral: var(--tone-subtle);--progress-done: var(--status-ready);--progress-running: var(--status-active);--progress-failed: var(--status-blocked);--space-page: clamp(1rem, 2.4vw, 2.5rem);--space-panel: clamp(.875rem, 1.5vw, 1.5rem);--shadow-panel: 0 8px 24px rgb(0 0 0 / .14);--shadow-overlay: 0 20px 48px rgb(0 0 0 / .36);--motion-fast: .12s;--motion-standard: .18s;--glass-line: 48 60% 90%}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background-color:hsl(var(--background));color:hsl(var(--foreground));min-width:320px;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;letter-spacing:-.02em}p{margin:0}img{max-width:100%;display:block}::selection{background:hsl(var(--tone-gold) / .3)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--tone-outline));border-radius:999px;border:3px solid hsl(var(--background))}::-webkit-scrollbar-thumb:hover{background:hsl(var(--tone-subtle) / .6)}.u-eyebrow{color:hsl(var(--primary));font-size:.6875rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.u-muted{color:hsl(var(--muted-foreground))}.u-tabular{font-variant-numeric:tabular-nums;letter-spacing:.015em}.u-panel{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.u-panel-raised{background:hsl(var(--surface-raised));border:1px solid hsl(var(--border));border-radius:var(--radius)}.u-divider{height:1px;background:hsl(var(--border));border:0;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;border:1px solid transparent;font-size:.875rem;font-weight:500;line-height:1;padding:0 1rem;height:2.25rem;white-space:nowrap;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),opacity var(--motion-fast)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-primary:hover:not(:disabled){background:#f4ae4e}.btn-outline{background:transparent;color:hsl(var(--foreground));border-color:hsl(var(--border))}.btn-outline:hover:not(:disabled){background:hsl(var(--accent));border-color:hsl(var(--tone-subtle) / .4)}.btn-ghost{background:transparent;color:hsl(var(--muted-foreground))}.btn-ghost:hover:not(:disabled){background:hsl(var(--accent) / .6);color:hsl(var(--foreground))}.btn-danger{background:hsl(var(--destructive) / .15);color:hsl(var(--destructive));border-color:hsl(var(--destructive) / .4)}.btn-danger:hover:not(:disabled){background:hsl(var(--destructive) / .25)}.btn-sm{height:1.875rem;font-size:.8125rem;padding:0 .75rem}.btn-lg{height:2.75rem;font-size:.9375rem;padding:0 1.5rem}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:.375rem}.field-label{font-size:.8125rem;font-weight:500;color:hsl(var(--foreground))}.field-hint{font-size:.75rem;color:hsl(var(--muted-foreground))}.input,.select,.textarea{width:100%;background:hsl(var(--input) / .35);border:1px solid hsl(var(--border));border-radius:.5rem;color:hsl(var(--foreground));padding:.5rem .75rem;font-size:.875rem;outline:none;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.input::placeholder,.textarea::placeholder{color:hsl(var(--muted-foreground) / .75)}.input:focus,.select:focus,.textarea:focus{border-color:hsl(var(--focus) / .7);box-shadow:0 0 0 3px hsl(var(--focus) / .16)}.textarea{resize:vertical;min-height:5rem;line-height:1.6}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23B6A99A' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .625rem center;padding-right:2rem}.badge{display:inline-flex;align-items:center;gap:.25rem;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--accent) / .4);color:hsl(var(--foreground));font-size:.6875rem;font-weight:600;line-height:1;padding:.25rem .5rem;white-space:nowrap}.badge-gold{background:hsl(var(--primary) / .14);border-color:hsl(var(--primary) / .35);color:hsl(var(--primary))}.badge-ready{background:hsl(var(--status-ready) / .14);border-color:hsl(var(--status-ready) / .35);color:hsl(var(--status-ready))}.badge-active{background:hsl(var(--status-active) / .14);border-color:hsl(var(--status-active) / .35);color:hsl(var(--status-active))}.badge-warning{background:hsl(var(--status-warning) / .14);border-color:hsl(var(--status-warning) / .35);color:hsl(var(--status-warning))}.badge-blocked{background:hsl(var(--status-blocked) / .14);border-color:hsl(var(--status-blocked) / .35);color:hsl(var(--status-blocked))}.badge-muted{background:hsl(var(--muted) / .5);color:hsl(var(--muted-foreground))}.switch{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;padding:0;color:hsl(var(--foreground));cursor:pointer}.switch:disabled{cursor:not-allowed;opacity:.6}.switch-track{position:relative;width:2rem;height:1.125rem;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--muted));transition:background .15s ease;flex-shrink:0}.switch-track.switch-on{background:hsl(var(--primary))}.switch-knob{position:absolute;top:1px;left:.125rem;width:.8125rem;height:.8125rem;border-radius:50%;background:hsl(var(--muted-foreground));transition:left .15s ease,background .15s ease}.switch-track.switch-on .switch-knob{left:.9375rem;background:hsl(var(--foreground))}.table-wrap{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.875rem}.table thead th{text-align:left;font-size:.6875rem;font-weight:600;letter-spacing:.08em;color:hsl(var(--muted-foreground) / .85);padding:.625rem .875rem;background:hsl(var(--card) / .92);border-bottom:1px solid hsl(var(--border));white-space:nowrap}.table tbody td{padding:.75rem .875rem;border-bottom:1px solid hsl(var(--border) / .6);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:hsl(var(--accent) / .22)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.card-pad{padding:var(--space-panel)}.tabs{display:flex;gap:.25rem;border-bottom:1px solid hsl(var(--border));overflow-x:auto}.tab{position:relative;padding:.625rem .875rem;font-size:.875rem;font-weight:500;color:hsl(var(--muted-foreground));white-space:nowrap;border-bottom:2px solid transparent;transition:color var(--motion-fast),border-color var(--motion-fast)}.tab:hover{color:hsl(var(--foreground))}.tab-active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary))}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:3rem 1rem;color:hsl(var(--muted-foreground));text-align:center}.grid{display:grid;gap:1rem}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.grid-auto-lg{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:.5rem;height:3.5rem;padding:0 1rem;background:hsl(var(--shell) / .72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid hsl(var(--glass-line) / .09)}.topbar-brand{display:flex;align-items:center;gap:.5rem;margin-right:.75rem;flex-shrink:0}.topbar-logo{height:1.5rem;width:auto}.topbar-name{font-size:1.125rem;font-weight:700;letter-spacing:.02em;color:hsl(var(--foreground))}.topbar-nav{display:flex;align-items:center;gap:.25rem}.topbar-link{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:.5rem;font-size:.8125rem;font-weight:500;color:hsl(var(--muted-foreground));transition:background var(--motion-fast),color var(--motion-fast)}.topbar-link:hover{color:hsl(var(--foreground));background:hsl(var(--accent) / .35)}.topbar-link-active{color:hsl(var(--primary));background:hsl(var(--primary) / .12)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:.5rem}.topbar-pill{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:9999px;border:1px solid hsl(var(--border));font-size:.75rem;color:hsl(var(--foreground));background:hsl(var(--card) / .6)}.dot{width:6px;height:6px;border-radius:9999px;flex-shrink:0}.dot-ready{background:hsl(var(--status-ready));box-shadow:0 0 0 3px hsl(var(--status-ready) / .16)}.dot-gold{background:hsl(var(--primary))}.dot-muted{background:hsl(var(--muted-foreground) / .6)}.side-layout{display:flex;min-height:calc(100vh - 3.5rem)}.side-rail{width:15rem;flex-shrink:0;padding:1rem .75rem;border-right:1px solid hsl(var(--border) / .6);background:hsl(var(--shell) / .4);position:sticky;top:3.5rem;height:calc(100vh - 3.5rem);overflow-y:auto}.side-group{margin-bottom:1.25rem}.side-group-title{font-size:.625rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:hsl(var(--muted-foreground) / .8);padding:0 .625rem .5rem}.side-link{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.5rem;font-size:.8125rem;color:hsl(var(--muted-foreground));transition:background var(--motion-fast),color var(--motion-fast)}.side-link:hover{background:hsl(var(--accent) / .4);color:hsl(var(--foreground))}.side-link-active{background:linear-gradient(hsl(38 44% 92% / .03),transparent 30%),hsl(var(--card) / .72);color:hsl(var(--foreground));font-weight:500;box-shadow:var(--shadow-panel)}.market-nav-inline{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.market-nav-item{display:inline-flex;align-items:center;gap:.375rem;padding:.3125rem .625rem;border-radius:9999px;border:1px solid hsl(var(--border) / .7);font-size:.75rem;color:hsl(var(--muted-foreground));transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}.market-nav-item:hover{background:hsl(var(--accent) / .4);color:hsl(var(--foreground));border-color:hsl(var(--border))}.market-nav-item-active{background:hsl(var(--card) / .72);color:hsl(var(--foreground));font-weight:500;border-color:hsl(var(--primary) / .35)}.side-badge{margin-left:auto;font-size:.6875rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}.side-main{flex:1;min-width:0;padding:var(--space-page)}.page-head{margin-bottom:1.25rem}.page-title{font-size:1.875rem;font-weight:600;letter-spacing:-.03em}.page-sub{font-size:.875rem;color:hsl(var(--muted-foreground));margin-top:.25rem}.page-head-row{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.page-head-actions{margin-left:auto;display:flex;gap:.5rem;align-items:center}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.stat{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:.875rem 1rem}.stat-label{font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.stat-value{font-size:1.5rem;font-weight:600;margin-top:.25rem;font-variant-numeric:tabular-nums}.stat-foot{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(60rem 40rem at 50% -10%,hsl(var(--tone-gold) / .07),transparent 60%),hsl(var(--background))}.login-card{width:100%;max-width:26rem;border:1px solid hsl(var(--border));border-radius:.875rem;background:hsl(var(--card) / .9);padding:1.75rem;box-shadow:var(--shadow-overlay)}.login-title{font-size:1.25rem;text-align:center}.login-sub{font-size:.8125rem;text-align:center;color:hsl(var(--muted-foreground));margin-top:.25rem}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;padding:4rem 0 3rem}.hero-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700;line-height:1.12;letter-spacing:-.04em}.hero-title em{font-style:normal;color:hsl(var(--primary))}.hero-desc{margin-top:1rem;font-size:1rem;line-height:1.75;color:hsl(var(--muted-foreground));max-width:34rem}.hero-desc strong{color:hsl(var(--primary));font-weight:600}.hero-stats{display:flex;gap:2.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid hsl(var(--border))}.hero-stat-num{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums}.hero-stat-label{font-size:.75rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.demo-panel{border:1px solid hsl(var(--border));border-radius:.875rem;background:hsl(var(--card) / .85);overflow:hidden;box-shadow:var(--shadow-overlay)}.demo-bar{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--shell) / .6);font-size:.75rem;color:hsl(var(--muted-foreground))}.demo-dots{display:flex;gap:.375rem}.demo-dots span{width:8px;height:8px;border-radius:9999px;background:hsl(var(--tone-outline))}.demo-body{padding:1rem}.demo-step{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.8125rem}.demo-step-time{margin-left:auto;color:hsl(var(--primary));font-variant-numeric:tabular-nums;font-size:.75rem}.demo-hook-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.375rem;margin-top:.875rem}.demo-hook{border-radius:.5rem;padding:.5rem .375rem;text-align:center;font-size:.6875rem;border:1px solid hsl(var(--border))}.demo-hook-time{display:block;font-size:.625rem;color:hsl(var(--muted-foreground));margin-bottom:.25rem}.platform-strip{display:flex;flex-wrap:wrap;gap:.5rem}.platform-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--card) / .6);font-size:.8125rem}.quote-block{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border:1px solid hsl(var(--primary) / .3);border-radius:.75rem;background:hsl(var(--primary) / .05)}.quote-text{font-size:1.125rem;font-weight:600;letter-spacing:-.01em}.quote-text em{font-style:normal;color:hsl(var(--primary))}.quote-author{margin-left:auto;font-size:.8125rem;color:hsl(var(--muted-foreground));white-space:nowrap}.mode-card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:1.25rem;display:flex;flex-direction:column;gap:.625rem;transition:border-color var(--motion-standard),transform var(--motion-standard)}.mode-card:hover{border-color:hsl(var(--primary) / .4);transform:translateY(-2px)}.mode-icon{width:2.25rem;height:2.25rem;border-radius:.625rem;display:grid;place-items:center;background:hsl(var(--primary) / .14);color:hsl(var(--primary))}.mode-title{font-size:1.0625rem;font-weight:600}.mode-desc{font-size:.875rem;color:hsl(var(--muted-foreground));line-height:1.65;flex:1}.project-card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));overflow:hidden;display:flex;flex-direction:column;transition:border-color var(--motion-standard),transform var(--motion-standard)}.project-card:hover{border-color:hsl(var(--primary) / .45);transform:translateY(-2px)}.project-thumb{aspect-ratio:9 / 16;background:linear-gradient(160deg,hsl(var(--tone-surface)),hsl(var(--tone-ink)));display:grid;place-items:center;color:hsl(var(--muted-foreground) / .5);position:relative;overflow:hidden}.project-thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(20rem 14rem at 50% 0%,hsl(var(--tone-gold) / .1),transparent 65%)}.project-meta{padding:.875rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.project-name{font-size:.9375rem;font-weight:600}.project-id{font-size:.6875rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}.project-row{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:hsl(var(--muted-foreground))}.project-shell{display:grid;grid-template-columns:16rem 1fr;gap:1.25rem;align-items:start}.step-rail{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:1rem;position:sticky;top:4.5rem}.step-item{display:flex;gap:.75rem;padding:.625rem 0}.step-num{width:1.5rem;height:1.5rem;border-radius:9999px;border:1px solid hsl(var(--border));display:grid;place-items:center;font-size:.75rem;font-weight:600;flex-shrink:0;color:hsl(var(--muted-foreground))}.step-num-done{background:hsl(var(--status-ready) / .16);border-color:hsl(var(--status-ready) / .4);color:hsl(var(--status-ready))}.step-num-current{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.step-label{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.step-name{font-size:.875rem;font-weight:500;margin-top:.125rem}.view-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.view-tab{border:1px solid hsl(var(--border));border-radius:.625rem;background:hsl(var(--card) / .6);padding:.625rem .875rem;text-align:left;transition:border-color var(--motion-fast),background var(--motion-fast);min-width:9rem}.view-tab:hover{border-color:hsl(var(--tone-subtle) / .4)}.view-tab-active{border-color:hsl(var(--primary) / .55);background:hsl(var(--primary) / .08)}.view-tab-title{font-size:.8125rem;font-weight:600;display:flex;align-items:center;gap:.375rem}.view-tab-desc{font-size:.6875rem;color:hsl(var(--muted-foreground));margin-top:.125rem}.kv-list{display:grid;gap:.625rem}.kv-row{display:grid;grid-template-columns:8rem 1fr;gap:.75rem;align-items:start;font-size:.875rem}.kv-key{color:hsl(var(--muted-foreground));font-size:.8125rem}.kv-val{color:hsl(var(--foreground))}.chip-list{display:flex;flex-wrap:wrap;gap:.375rem}.chip{padding:.1875rem .5rem;border-radius:.375rem;background:hsl(var(--accent) / .5);border:1px solid hsl(var(--border) / .7);font-size:.75rem;color:hsl(var(--foreground) / .9)}.bar-track{height:6px;border-radius:9999px;background:hsl(var(--accent));overflow:hidden}.bar-fill{height:100%;border-radius:9999px;background:hsl(var(--primary))}.plat-douyin{color:#ee4f84}.plat-xiaohongshu{color:#e7405c}.plat-shipinhao{color:#41c885}.plat-kuaishou{color:#f3933f}.plat-default{color:hsl(var(--muted-foreground))}.picker{border:1px solid hsl(var(--border));border-radius:.5rem;padding:.625rem .75rem;cursor:pointer;transition:border-color var(--motion-fast),background var(--motion-fast);display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.picker:hover{border-color:hsl(var(--tone-subtle) / .45)}.picker-check{width:1rem;height:1rem;border-radius:.25rem;border:1px solid hsl(var(--border));display:grid;place-items:center;flex-shrink:0}.picker-check-on{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1.5rem}.modal{width:100%;max-width:40rem;max-height:85vh;overflow-y:auto;border:1px solid hsl(var(--border));border-radius:.875rem;background:hsl(var(--card));box-shadow:var(--shadow-overlay)}.modal-head{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border));position:sticky;top:0;background:hsl(var(--card))}.modal-title{font-size:1rem;font-weight:600}.modal-body{padding:1.25rem}.modal-foot{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid hsl(var(--border));position:sticky;bottom:0;background:hsl(var(--card))}.alert{display:flex;gap:.625rem;padding:.75rem .875rem;border-radius:.5rem;border:1px solid hsl(var(--border));background:hsl(var(--accent) / .3);font-size:.8125rem;line-height:1.6}.alert-gold{border-color:hsl(var(--primary) / .35);background:hsl(var(--primary) / .08)}.alert-danger{border-color:hsl(var(--destructive) / .4);background:hsl(var(--destructive) / .1)}.alert-success{border-color:hsl(var(--status-ready) / .4);background:hsl(var(--status-ready) / .1)}.alert-warning{border-color:hsl(var(--status-warning) / .4);background:hsl(var(--status-warning) / .1)}.spinner{width:1rem;height:1rem;border:2px solid hsl(var(--primary) / .25);border-top-color:hsl(var(--primary));border-radius:9999px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}@media (max-width: 1080px){.hero{grid-template-columns:1fr;gap:2rem}.project-shell{grid-template-columns:1fr}.step-rail{position:static;height:auto}}@media (max-width: 860px){.side-layout{flex-direction:column}.side-rail{width:100%;position:static;height:auto;border-right:0;border-bottom:1px solid hsl(var(--border) / .6);display:flex;flex-wrap:wrap;align-items:flex-start;gap:.375rem .5rem;overflow:visible}.side-group{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:0}.side-group-title{display:inline-block;padding:0 .25rem;margin:0;font-size:.5625rem;letter-spacing:.1em;color:hsl(var(--muted-foreground) / .7)}.side-link{padding:.375rem .5rem;font-size:.75rem;background:hsl(var(--card) / .5)}.topbar{padding:0 .75rem;gap:.375rem}.topbar-nav,.topbar-name,.topbar-right .topbar-pill[title="GPU Worker 状态"]{display:none}.topbar-link{padding:.375rem .5rem;font-size:.75rem;white-space:nowrap}.kv-row{grid-template-columns:1fr;gap:.125rem}}.vp{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius);overflow:hidden;background:var(--media-canvas);border:1px solid hsl(var(--border) / .55)}.vp-cover{cursor:pointer;transition:border-color var(--motion-standard) ease,transform var(--motion-standard) ease}.vp-cover:hover{border-color:hsl(var(--primary) / .55)}.vp-cover:focus-visible{outline:2px solid hsl(var(--focus));outline-offset:2px}.vp-poster{width:100%;height:100%;object-fit:cover;display:block}.vp-poster-fallback{background:radial-gradient(circle at 32% 34%,hsl(var(--primary) / .16),transparent 58%),linear-gradient(135deg,hsl(var(--tone-pond) / .35),hsl(var(--tone-ink)))}.vp-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none}.vp-play-btn{pointer-events:auto;width:2.75rem;height:2.75rem;border-radius:9999px;display:grid;place-items:center;background:hsl(var(--primary) / .92);color:hsl(var(--primary-foreground));border:none;cursor:pointer;box-shadow:var(--shadow-overlay);transition:transform var(--motion-standard) ease,background var(--motion-standard) ease}.vp-play-btn:hover{transform:scale(1.08);background:hsl(var(--primary))}.vp-play-btn:focus-visible{outline:2px solid hsl(var(--focus));outline-offset:2px}.vp-external-btn{pointer-events:auto;display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;border-radius:9999px;background:hsl(var(--primary) / .92);color:hsl(var(--primary-foreground));border:none;font-size:.6875rem;font-weight:600;white-space:nowrap;cursor:pointer;text-decoration:none;box-shadow:var(--shadow-overlay);transition:transform var(--motion-standard) ease,background var(--motion-standard) ease}.vp-external-btn:hover{transform:scale(1.05);background:hsl(var(--primary))}.vp-external-btn:focus-visible{outline:2px solid hsl(var(--focus));outline-offset:2px}.vp-video{width:100%;height:100%;object-fit:cover;display:block;background:hsl(var(--tone-ink))}.vp-badge{position:absolute;top:.5rem;left:.5rem;padding:.1875rem .5rem;border-radius:9999px;font-size:.6875rem;font-weight:500;background:hsl(var(--tone-ink) / .78);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .32);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vp-bar{position:absolute;left:0;right:0;bottom:2.25rem;padding:0 .625rem;cursor:pointer}.vp-bar-track{height:.25rem;border-radius:9999px;background:hsl(var(--tone-paper) / .22);overflow:hidden}.vp-bar-fill{height:100%;background:hsl(var(--primary));border-radius:9999px;transition:width .1s linear}.vp-tools{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.5rem;padding:.375rem .625rem;background:linear-gradient(to top,hsl(var(--tone-ink) / .88),transparent)}.vp-time{font-size:.6875rem;color:hsl(var(--tone-paper) / .85);font-variant-numeric:tabular-nums}.vp-tool{margin-left:auto;min-width:1.75rem;height:1.5rem;padding:0 .375rem;border-radius:.375rem;border:1px solid hsl(var(--tone-paper) / .18);background:hsl(var(--tone-ink) / .5);color:hsl(var(--tone-paper) / .9);font-size:.75rem;line-height:1;cursor:pointer}.vp-tool+.vp-tool{margin-left:0}.vp-tool:hover{background:hsl(var(--primary) / .22);color:hsl(var(--primary))}.vp-empty{display:grid;place-items:center;background:repeating-linear-gradient(45deg,hsl(var(--tone-ink)) 0,hsl(var(--tone-ink)) 10px,hsl(var(--tone-shell)) 10px,hsl(var(--tone-shell)) 20px);border-style:dashed}.vp-empty-text{font-size:.75rem;color:hsl(var(--muted-foreground))}.vp-error{position:absolute;inset:auto 0 .5rem 0;text-align:center;font-size:.6875rem;color:hsl(var(--destructive))}.tpl-grid{display:flex;gap:.75rem;align-items:flex-start}.tpl-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:.75rem}.tpl-card{display:flex;flex-direction:column;overflow:hidden}.tpl-card-media{padding:.5rem .5rem 0}.tpl-card-body{display:flex;flex-direction:column;gap:.4375rem;padding:.625rem .75rem .75rem}.tpl-card-badges{display:flex;flex-wrap:wrap;gap:.375rem;align-items:center}.tpl-card-title{margin:0;font-size:.875rem;font-weight:600;line-height:1.5}.tpl-card-metrics{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.6875rem;color:hsl(var(--muted-foreground))}.tpl-card-metrics b{color:hsl(var(--foreground));font-weight:600}.tpl-card-hook{padding:.5rem .625rem;border-radius:.375rem;background:hsl(var(--muted) / .4);font-size:.75rem;color:hsl(var(--muted-foreground));display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tpl-card-actions{display:flex;gap:.375rem;flex-wrap:wrap;margin-top:.125rem}.vp-portrait{aspect-ratio:9 / 16}.vp-square{aspect-ratio:1 / 1}.vp-portrait .vp-play-btn{width:2.25rem;height:2.25rem}.vp-playing .vp-overlay{pointer-events:none}.vp-playing .vp-play-btn{opacity:0;transition:opacity var(--motion-standard) ease}.vp-playing:hover .vp-play-btn{opacity:1}.hot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.875rem}@media (min-width: 1200px){.hot-grid{grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr))}}.hot-card{display:flex;flex-direction:column;gap:.5rem;padding:.5rem;border-radius:var(--radius);border:1px solid hsl(var(--border) / .6);background:hsl(var(--card));transition:border-color var(--motion-standard) ease,transform var(--motion-standard) ease}.hot-card:hover{border-color:hsl(var(--primary) / .45);transform:translateY(-1px)}.hot-card-media{position:relative}.hot-media-cover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.375rem;padding:.5rem;border-radius:inherit;background:linear-gradient(to top,hsl(0 0% 0% / .62),hsl(0 0% 0% / .12) 55%,transparent);pointer-events:none}.hot-media-cover>*{pointer-events:auto}.hot-portrait-flag{position:absolute;top:.375rem;left:.375rem;padding:.0625rem .3125rem;border-radius:.25rem;font-size:.625rem;font-weight:600;letter-spacing:.02em;background:hsl(var(--primary) / .9);color:hsl(var(--primary-foreground))}.hot-card-title{font-size:.8125rem;font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hot-card-sub{font-size:.6875rem;color:hsl(var(--muted-foreground));display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.hot-card-metrics{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.625rem;color:hsl(var(--muted-foreground))}.hot-card-metrics b{color:hsl(var(--foreground));font-weight:600}.hot-card-actions{display:flex;gap:.3125rem}.hot-card-actions>*{flex:1 1 0}.hot-timeline{position:relative;height:1.875rem;border-radius:.375rem;background:hsl(var(--muted) / .5);overflow:hidden}.hot-timeline-bar{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,hsl(var(--primary) / .28),hsl(var(--primary) / .08))}.hot-timeline-cut{position:absolute;top:0;bottom:0;width:1px;background:hsl(var(--primary));opacity:.85}.hot-timeline-mark{position:absolute;top:-.125rem;transform:translate(-50%);font-size:.5625rem;color:hsl(var(--muted-foreground));white-space:nowrap}.hot-timeline-mark.is-start{transform:translate(0)}.hot-timeline-mark.is-end{transform:translate(-100%)}.hot-frames{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.375rem}.hot-frame{position:relative;border-radius:.3125rem;overflow:hidden;background:var(--media-canvas);aspect-ratio:9 / 16;border:1px solid hsl(var(--border) / .5)}.hot-frame img{width:100%;height:100%;object-fit:cover;display:block}.hot-frame span{position:absolute;bottom:0;left:0;right:0;padding:.0625rem .25rem;font-size:.5625rem;color:#fff;background:#0000008c;font-variant-numeric:tabular-nums}.hot-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.5rem}.hot-metric{padding:.5rem .625rem;border-radius:.375rem;background:hsl(var(--muted) / .4)}.hot-metric-k{font-size:.625rem;color:hsl(var(--muted-foreground))}.hot-metric-v{font-size:.9375rem;font-weight:700;font-variant-numeric:tabular-nums}.hot-note{font-size:.6875rem;line-height:1.7;color:hsl(var(--muted-foreground));padding:.5rem .625rem;border-radius:.375rem;background:hsl(var(--muted) / .32);border-left:2px solid hsl(var(--primary) / .5)}.vp-fit-contain .vp-poster,.vp-fit-contain .vp-video{object-fit:contain}.vp-fit-contain{background:hsl(var(--tone-ink))}
