:root{--bg:#fafaf9;--canvas:#f5f5f4;--panel:#fff;--panel-2:#fafaf9;--hover:#f5f5f4;--line:#e7e5e4;--line-2:#d6d3d1;--text:#1c1917;--text-2:#44403c;--muted:#6b6560;--accent:#0b6bf2;--accent-2:#eef4ff;--accent-ink:#0657c9;--ink:#1c1917;--ink-hover:#3a3532;--ok:#15803d;--ok-bg:#ecf8f0;--warn:#8a5300;--warn-dot:#e39b26;--warn-bg:#fff6e5;--err:#c0262d;--err-bg:#fdeeee;--demo:#9a4a07;--demo-bg:#fff3e3;--demo-line:#f1d3a8;--radius:10px;--shadow:0 0 0 1px #1c19170f, 0 1px 2px #1c19170a, 0 4px 12px -2px #1c19170d;--shadow-lg:0 0 0 1px #1c191712, 0 8px 24px -4px #1c19171f, 0 24px 48px -12px #1c191729;--font:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--topbar-h:52px;--board:#fff;--board-dot:#e2dfdc;--board-gap:22px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:600}h2{font-size:16px}h3{font-size:14px}p{margin:0 0 8px}a{color:var(--accent-ink)}code,.mono{font-family:var(--mono);font-size:12px}pre.code{color:#e9e9ee;background:#16161a;border-radius:8px;margin:8px 0;padding:10px 12px;font-size:12px;overflow:auto}.muted{color:var(--muted)}.small{font-size:13px}.tiny{font-size:11.5px}.nowrap{white-space:nowrap}.clamp1{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.row{align-items:center;display:flex}.row.between{justify-content:space-between}.row.wrap,.wrap{flex-wrap:wrap}.row.gap{gap:12px}.row.gap-s,.gap-s{gap:6px}.min0{min-width:0}.center-row{justify-content:center;margin-top:8px}.center-pad{justify-content:center;padding:32px;display:flex}.push{margin-left:auto}.stack{flex-direction:column;gap:12px;display:flex}.stack-s{flex-direction:column;gap:6px;margin:8px 0;display:flex}.error-text{color:var(--err);margin:6px 0 0;font-size:13px}.ok-text{color:var(--ok)}.warn-text{color:var(--warn)}.danger{color:var(--err)!important}.btn{font:inherit;border:1px solid var(--line-2);background:var(--panel);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 13px;font-size:13px;font-weight:500;line-height:1.2;text-decoration:none;transition:background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-ink);border-color:var(--accent-ink)}.btn.primary .spinner{border-color:#fff #ffffff59 #ffffff59}.btn.dark{background:var(--text);border-color:var(--text);color:#fff}.btn.dark:hover:not(:disabled){background:#2f2f35}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:#0000000d;border-color:#0000}.btn.small{padding:5px 10px;font-size:12.5px}.btn.tiny{border-radius:6px;padding:3px 8px;font-size:11.5px}.btn.block{width:100%}.btn.back{color:var(--text-2);padding-left:8px}.icon-btn{font:inherit;cursor:pointer;width:32px;height:32px;color:var(--text-2);background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--text);background:#0000000f}.icon-btn:disabled{opacity:.3;cursor:not-allowed}.icon-btn.sm{border-radius:6px;width:24px;height:24px;font-size:14px}.icon-btn.inv{color:#fff}.icon-btn.inv:hover{color:#fff;background:#ffffff26}.link{color:var(--accent-ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.link:hover:not(:disabled){text-decoration:underline}.link.small{font-size:12.5px}.link:disabled{color:var(--muted);opacity:.6;cursor:not-allowed}input,textarea,select{font:inherit;color:var(--text);border:1px solid var(--line-2);background:#fff;border-radius:8px;min-width:0;padding:7px 10px;font-size:13px}input:focus,textarea:focus,select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0b6bf226}textarea{resize:vertical;width:100%}input[type=color]{flex:none;width:36px;height:32px;padding:2px}input.hex{width:104px;font-family:ui-monospace,monospace}.field{color:var(--muted);border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;font-size:12.5px;display:flex}.field>span:first-child,.field legend,.field-title{color:var(--text-2);padding:0;font-size:12.5px;font-weight:600}.field.inline{flex-direction:row;align-items:center;gap:8px}.field input,.field textarea,.field select{color:var(--text)}.check-row{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.radio-row{cursor:pointer;color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:inherit;border:1px solid var(--line-2);cursor:pointer;color:var(--text);background:#fff;border-radius:999px;padding:4px 11px;font-size:12px}.chip.sm{padding:3px 9px;font-size:11.5px}.chip:hover{border-color:#bdbdb6}.chip.on{background:var(--text);color:#fff;border-color:var(--text)}.seg{background:#ececea;border-radius:8px;gap:2px;padding:2px;display:inline-flex}.seg button{font:inherit;color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.seg button:hover{color:var(--text)}.seg button.on{color:var(--text);background:#fff;box-shadow:0 1px 2px #00000024}.seg.wide{display:flex}.seg.wide button{flex:1;justify-content:center;padding:7px 10px}.mini-tag{color:#4b4b50;background:#efefec;border-radius:4px;margin-left:4px;padding:1px 5px;font-size:10.5px;display:inline-block}.mini-tag.on{background:var(--accent-2);color:var(--accent-ink)}.badge{letter-spacing:.03em;white-space:nowrap;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:700}.badge.demo{background:var(--demo-bg);color:var(--demo);border:1px solid var(--demo-line)}.badge .badge-sub{letter-spacing:0;font-weight:500}.pill{white-space:nowrap;color:var(--text-2);background:#efefec;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.pill.connected,.pill.log-ok,.pill.log-done,.pill.log-ready,.pill.st-ready{background:var(--ok-bg);color:var(--ok)}.pill.needs-choice{background:var(--accent-2);color:var(--accent-ink)}.pill.bundle-only,.pill.log-needs-input,.pill.log-blocked,.pill.st-needs-input{background:var(--warn-bg);color:var(--warn)}.pill.missing,.pill.log-error,.pill.log-failed,.pill.st-unavailable{background:var(--err-bg);color:var(--err)}.notice{overflow-wrap:anywhere;border-radius:10px;margin:8px 0;padding:10px 12px;line-height:1.45}.notice.warn{background:var(--warn-bg);color:#6b4300}.notice.info{background:var(--accent-2);color:#1d3e78}.notice.error{background:var(--err-bg);color:var(--err)}.notice.success{background:var(--ok-bg);color:#0d5a31}.spinner{border:3px solid #0000001a;border-top-color:var(--accent);vertical-align:middle;border-radius:50%;flex:none;width:26px;height:26px;animation:.8s linear infinite spin;display:inline-block}.spinner.sm{border-width:2px;width:13px;height:13px}@keyframes spin{to{transform:rotate(360deg)}}.eyebrow{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:11px;font-weight:600}.dot{background:#bdbdb6;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot.ok{background:var(--ok)}.dot.warn{background:var(--warn-dot)}.warn-dot{background:var(--warn-dot);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block;box-shadow:0 0 0 3px #fdf0d6}.switch{cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:8px;font-size:12.5px;display:inline-flex;position:relative}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch-track{background:#cfcfca;border-radius:999px;flex:none;width:30px;height:18px;transition:background .15s;position:relative}.switch-knob{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track .switch-knob{transform:translate(12px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--accent);outline-offset:2px}.switch.disabled{opacity:.5;cursor:not-allowed}.progress{background:#e3e3df;border-radius:999px;width:100%;height:4px;position:relative;overflow:hidden}.progress>span{background:var(--accent);border-radius:999px;transition:width .4s;position:absolute;top:0;bottom:0;left:0}.progress.indeterminate>span{width:35%;animation:1.3s ease-in-out infinite indet}@keyframes indet{0%{left:-35%}to{left:100%}}.user-menu{position:relative}.avatar{font:inherit;background:var(--text);color:#fff;cursor:pointer;letter-spacing:.02em;border:0;border-radius:50%;width:30px;height:30px;font-size:11.5px;font-weight:600}.avatar:hover{background:#2f2f35}.menu,.popover{border:1px solid var(--line);box-shadow:var(--shadow-lg);z-index:30;background:#fff;border-radius:12px;position:absolute;top:calc(100% + 6px)}.menu{flex-direction:column;min-width:220px;padding:6px;display:flex;right:0}.menu-head{border-bottom:1px solid var(--line);flex-direction:column;gap:2px;margin-bottom:4px;padding:8px 10px 10px;display:flex}.menu-item{font:inherit;text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:8px;padding:8px 10px}.popover{flex-direction:column;gap:10px;padding:12px;display:flex}.pop-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pop-foot{justify-content:flex-end;gap:8px;display:flex}.chev{transition:transform .15s;display:inline-flex}.chev.open{transform:rotate(180deg)}.center-screen{justify-content:center;align-items:center;min-height:100%;padding:24px;display:flex}.center-fill-page{flex:1;justify-content:center;align-items:center;min-height:0;padding:40px 24px;display:flex}.signin-bg{background:radial-gradient(1200px 600px at 20% -10%, #e2ecff 0%, transparent 60%), var(--bg)}.card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:22px}.card.narrow{width:100%;max-width:460px}.card.center{text-align:center}.logo-mark{background:var(--text);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:14px;font-size:20px;font-weight:700;display:flex}.logo-mark.sm{border-radius:7px;width:26px;height:26px;margin:0;font-size:13px}.logo-btn{cursor:pointer;font:inherit;color:var(--text);background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:10px;padding:4px;display:inline-flex}.logo-word{font-size:15px;font-weight:600}.brand-title{margin-bottom:4px;font-size:22px}.dev-box{border:1px dashed var(--line-2);background:var(--panel-2);border-radius:10px;padding:10px}.page{flex-direction:column;min-height:100%;display:flex}.page-head{background:var(--panel);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:10px 20px;display:flex;position:sticky;top:0}.page-title{font-size:17px}.page-title-lg{letter-spacing:-.02em;margin-bottom:4px;font-size:26px}.empty{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:520px;margin:12vh auto 0;padding:0 24px;display:flex}.empty h2{font-size:20px}.denied .lock-mark{width:44px;height:44px;color:var(--text-2);background:#efefec;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 10px;display:flex}.denied h2{margin-bottom:6px}.projects{background:var(--panel)}.ph-bar{gap:16px}.ph-search{height:34px;color:var(--muted);cursor:text;background:#f0f0ee;border:1px solid #0000;border-radius:8px;flex:0 380px;align-items:center;gap:8px;margin-right:auto;padding:0 8px 0 10px;transition:background .12s,border-color .12s;display:flex}.ph-search:hover{background:#ebebe8}.ph-search:focus-within{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #0b6bf226}.ph-search input{background:0 0;border:0;flex:1;min-width:0;height:100%;padding:0;font-size:13px}.ph-search input:focus{box-shadow:none}.ph-kbd{font:500 11px/1 var(--font);color:var(--muted);border:1px solid var(--line-2);background:#fff;border-radius:4px;padding:2px 5px}.ph-right{margin-left:auto}.projects-main{flex-direction:column;gap:16px;width:100%;max-width:1200px;margin:0 auto;padding:32px 24px 80px;display:flex}.projects-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.projects-head .page-title-lg{font-size:24px}.projects-head p{margin:0}.projects-actions{align-items:center}.projects-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;padding:8px 0;display:flex}.ptabs{flex-wrap:wrap;gap:2px;display:flex}.ptabs button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:500;display:inline-flex}.ptabs button:hover{color:var(--text);background:#ececea}.ptabs button.on{color:var(--text);background:#e6e6e3}.ptab-n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.sort-btn{color:var(--text-2);gap:6px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:28px 20px;margin:0;padding:0;list-style:none;display:grid}.pc-item{min-width:0;display:flex;position:relative}.project-card{min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;padding:0;display:flex}.project-card:focus-visible{outline:2.5px solid var(--accent);outline-offset:4px}.project-card-thumb{aspect-ratio:16/10;background:hsl(var(--tile-h,40) 22% 93%);border-radius:10px;justify-content:center;align-items:center;transition:box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #00000012}.project-card-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.project-card:hover .project-card-thumb{box-shadow:0 0 0 1px #00000024,0 8px 22px #00000014}.project-card-letter{letter-spacing:-.02em;color:hsl(var(--tile-h,40) 18% 46%);font-size:44px;font-weight:600;line-height:1}.project-card-body{align-items:center;gap:10px;min-width:0;padding:10px 2px 0;display:flex}.pc-avatar{letter-spacing:.02em;color:#fff;background:hsl(var(--av-h,210) 38% 44%);border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:600;display:inline-flex}.pc-avatar.sm{width:22px;height:22px;font-size:9.5px}.pc-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.project-card-name{font-size:13px;font-weight:600}.pc-sub{color:var(--muted);font-size:12px}.pc-status{color:var(--muted);flex:none;align-items:center;gap:4px;display:inline-flex}.pc-ico{width:18px;height:18px;color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.pc-ico.fig{color:#b4b4ae}.pc-ico.fig.on{color:var(--ok)}.pc-badge{color:#6b4300;pointer-events:none;background:#fffffff5;border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 7px;font-size:11.5px;font-weight:500;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 1px 3px #00000024}.pc-badge.error{color:var(--err)}.pc-menu{opacity:0;transition:opacity .12s;position:absolute;top:8px;right:8px}.pc-item:hover .pc-menu,.pc-item:focus-within .pc-menu,.pl-item:hover .pc-menu,.pl-item:focus-within .pc-menu{opacity:1}.pc-menu:has([aria-expanded=true]){opacity:1}.pc-more{color:var(--text);background:#fffffff5;box-shadow:0 1px 3px #00000029}.pc-more:hover:not(:disabled){background:#fff}.pc-menu .menu{min-width:180px}.project-table{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.pl-head,.project-row{grid-template-columns:minmax(0,2.4fr) minmax(0,1.3fr) minmax(0,1fr) 72px minmax(0,1.5fr) 32px;align-items:center;gap:16px;padding:0 12px;display:grid}.pl-head{height:34px;color:var(--muted);border-bottom:1px solid var(--line);background:#fafaf9;font-size:11.5px;font-weight:500}.project-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pl-item{position:relative}.pl-item+.pl-item{border-top:1px solid var(--line)}.project-row{width:100%;min-height:56px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-size:13px}.project-row:hover{background:#fafaf8}.project-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.project-main{align-items:center;gap:12px;min-width:0;display:flex}.project-thumb{width:52px;height:34px;color:var(--muted);background:#efefec;border-radius:5px;flex:none;justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0000000f}.project-thumb img{object-fit:cover;object-position:top center;width:100%;height:100%}.project-owner{align-items:center;gap:8px;min-width:0;display:flex}.project-role{color:var(--text-2)}.pl-edited,.pl-designs{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12.5px}.project-conn{align-items:center;gap:10px;min-width:0;display:flex}.conn-dot{color:var(--text-2);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.pl-item .pc-menu{top:50%;right:10px;transform:translateY(-50%)}.pl-item .pc-more{box-shadow:none;background:0 0}.pl-item .pc-more:hover:not(:disabled){background:#0000000f}.projects-empty{text-align:center;border:1.5px dashed var(--line-2);border-radius:16px;flex-direction:column;align-items:center;gap:10px;margin-top:8px;padding:56px 24px 64px;display:flex}.projects-empty h2{font-size:18px}.projects-empty p{max-width:440px}.pe-art{width:120px;height:80px;margin-bottom:6px;position:relative}.pe-art span{width:72px;height:50px;box-shadow:0 0 0 1px var(--line-2), 0 4px 12px #0000000f;background:#fff;border-radius:6px;position:absolute;top:14px;left:24px}.pe-art span:first-child{transform:translate(-14px,6px)rotate(-8deg)}.pe-art span:nth-child(2){transform:translate(14px,4px)rotate(7deg)}.pe-art span:nth-child(3){background:var(--accent-2);box-shadow:0 0 0 1px #bcd3fb,0 6px 16px #0b6bf21f}.projects-none{text-align:center;color:var(--text-2);padding:48px 16px}.danger-btn{background:var(--err)!important;border-color:var(--err)!important}.sk-card{flex-direction:column;gap:10px;display:flex}.sk-thumb,.sk-line{background:linear-gradient(100deg,#ebebe8 30%,#f4f4f2 50%,#ebebe8 70%) 0 0/300% 100%;animation:1.6s linear infinite shimmer;display:block}.sk-thumb{aspect-ratio:16/10;border-radius:10px}.sk-line{border-radius:4px;width:70%;height:10px}.sk-line.short{width:40%}.sk-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px;display:flex}.sk-row .sk-thumb{aspect-ratio:auto;border-radius:5px;width:52px;height:34px}.sk-row .sk-line{width:30%}.steps{margin:0;padding-left:20px;line-height:1.65}@media (hover:none){.pc-menu{opacity:1}}@media (prefers-reduced-motion:reduce){.project-card-thumb,.pc-menu{transition:none}.sk-thumb,.sk-line{animation:none}}@media (width<=760px){.pl-head{display:none}.project-row{grid-template-columns:minmax(0,1fr) auto 32px;gap:4px 12px;padding:10px 12px}.project-owner,.pl-designs,.project-conn{display:none}}@media (width<=600px){.projects-main{padding:20px 16px 64px}.project-grid{grid-template-columns:minmax(0,1fr);gap:20px}.ph-bar{flex-wrap:wrap;padding:8px 16px}.ph-search{flex:100%;order:3}.projects-actions{width:100%}}.canvas-app{--section:#f6f6f4;--section-line:#e4e4e0;--section-tab:#ebebe8;--tile-w:400px;--float-shadow:0 1px 3px #00000014, 0 6px 18px #0000000f;background:var(--board);height:100dvh;position:relative;overflow:hidden}.canvas-scroll{position:absolute;inset:0;overflow:auto}.canvas-scroll.board,.canvas-viewport{background-color:var(--board);background-image:radial-gradient(circle, var(--board-dot) 1px, transparent 1.3px);background-size:var(--board-gap) var(--board-gap)}.canvas-app.free .canvas-viewport{overflow-anchor:none;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;scroll-padding:88px 56px 80px;overflow:hidden}.canvas-app.free .canvas-viewport :is(input,textarea,[contenteditable]){-webkit-user-select:text;user-select:text}.scroll-space{pointer-events:none;width:400000px;height:400000px;position:absolute;top:0;left:0}.canvas-app.free .world{transform-origin:0 0;position:absolute;top:200000px;left:200000px}.world.moving{will-change:transform}.canvas-viewport.grab,.canvas-viewport.grab *{cursor:grab!important}.canvas-viewport.panning,.canvas-viewport.panning *{cursor:grabbing!important}.canvas-scroll.list-scroll{background:var(--bg);padding:76px 24px 120px}.empty-board .empty{border:1px solid var(--line);box-shadow:var(--float-shadow);background:#fff;border-radius:16px;margin-top:18vh;padding:28px 28px 24px}.chrome-top{z-index:20;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute;top:12px;left:12px;right:12px}.chrome-top>*{pointer-events:auto}.chrome-top>.chrome-gap{pointer-events:none;flex:1}.file-pill,.gen-bar,.chrome-right,.canvas-controls{background:var(--panel);border:1px solid var(--line);box-shadow:var(--float-shadow);border-radius:12px}.file-pill{flex:0 auto;align-items:center;gap:2px;min-width:0;height:44px;padding:0 6px;display:flex}.fp-home{cursor:pointer;height:34px;font:inherit;color:var(--text-2);background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:8px;padding:0 8px 0 4px;display:inline-flex}.fp-home:hover{color:var(--text);background:#f1f1ef}.fp-back{align-items:center;gap:2px;font-size:13px;font-weight:500;display:inline-flex}.fp-sep{color:#c9c9c4;flex:none;margin:0 2px}.tb-name{min-width:0;max-width:260px;font-size:13px;font-weight:600}.tb-name-btn{font:inherit;cursor:text;color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:6px;max-width:100%;padding:6px;font-weight:600;display:block;overflow:hidden}.tb-name-btn:hover{background:#f1f1ef}.tb-name-input{width:220px;padding:5px 7px;font-size:13px;font-weight:600}.tb-tag{color:var(--text-2);white-space:nowrap;background:#efefec;border-radius:6px;flex:none;margin-left:4px;padding:3px 7px;font-size:11px;font-weight:500}.file-pill .badge.demo{flex:none;margin-left:4px;padding:2px 6px;font-size:10px}.fp-menu{color:var(--muted);margin-left:2px}.gen-bar{flex:0 540px;align-items:center;gap:4px;min-width:320px;height:44px;margin:0 auto;padding:0 5px;display:flex}.gen-bar:focus-within{box-shadow:0 0 0 3px #0b6bf21f, var(--float-shadow);border-color:#9cc0fb}.scope-picker{flex:none;position:relative}.scope-btn{font:inherit;max-width:168px;height:32px;color:var(--text-2);cursor:pointer;white-space:nowrap;background:#f1f1ef;border:0;border-radius:8px;align-items:center;gap:4px;padding:0 8px 0 10px;font-size:12.5px;font-weight:500;display:inline-flex}.scope-btn:hover{color:var(--text);background:#eaeae7}.scope-pop{width:320px;max-height:70vh;top:calc(100% + 10px);left:0;overflow:auto}.scope-skills,.scope-cats{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.scope-skill{align-items:center;gap:6px;padding:5px 2px;display:flex}.scope-skill .check-row{flex:1;font-size:13px}.scope-cats .check-row{padding:3px 0;font-size:12.5px}.tb-request{background:0 0;border:0;flex:1;min-width:80px;height:32px;padding:0 8px;font-size:13px}.tb-request:focus{box-shadow:none}.chrome-right{flex:none;align-items:center;gap:2px;height:44px;padding:0 6px;display:flex}.chrome-right .user-menu{margin-left:4px}.chip-btn{font:inherit;height:32px;color:var(--text-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;font-weight:500;display:inline-flex}.chip-btn:hover:not(:disabled){color:var(--text);background:#f1f1ef}.chip-btn:disabled{opacity:.4;cursor:not-allowed}.cb-count{min-width:18px;height:18px;color:var(--text-2);font-variant-numeric:tabular-nums;background:#ececea;border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.cb-count.has{background:var(--accent);color:#fff}.tb-share{height:32px;margin-left:4px;padding:0 14px}.figma-pop-wrap{position:relative}.figma-pill{font:inherit;height:32px;color:var(--text-2);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.figma-pill:hover{background:#f1f1ef}.figma-pill .dot{width:7px;height:7px}.figma-pill.ok .dot{background:var(--ok)}.figma-pill.busy .dot{background:var(--accent);animation:1.2s ease-in-out infinite pulse}.figma-pill.warn{color:#6b4300}.figma-pill.warn .dot{background:var(--warn-dot)}@keyframes pulse{50%{opacity:.35}}.figma-pop{width:340px;top:calc(100% + 10px);right:0}.fig-counts{grid-template-columns:1fr 1fr;gap:6px 14px;margin:0;padding:0;list-style:none;display:grid}.fig-counts li{justify-content:space-between;align-items:center;font-size:12.5px;display:flex}.import-chip{z-index:19;background:var(--panel);border:1px solid var(--line);box-shadow:var(--float-shadow);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:6px 14px;display:flex;position:absolute;top:66px;left:50%;transform:translate(-50%)}.import-chip .progress{width:120px}.canvas-controls{z-index:20;align-items:center;gap:2px;height:40px;padding:0 4px;display:flex;position:absolute;bottom:12px;right:12px}.cc-sep{background:var(--line);width:1px;height:20px;margin:0 4px}.seg.mini button{padding:4px 8px;font-size:12px}.zoom{align-items:center;gap:1px;display:inline-flex}.zoom-pct{font:inherit;cursor:pointer;min-width:50px;height:28px;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:6px;padding:0 4px;font-size:12px;font-weight:500}.zoom-pct:hover,.zoom-pct[aria-expanded=true]{background:#f1f1ef}.zoom-fit{font:inherit;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;margin-left:2px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.zoom-fit:hover{color:var(--text);background:#f1f1ef}.menu-wrap{display:inline-flex;position:relative}.menu.left{left:0;right:auto}.menu.up{top:auto;bottom:calc(100% + 8px)}.menu-item{align-items:center;gap:8px;width:100%;padding:7px 10px;font-size:13px;display:flex}.menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-2)}.menu-item:disabled{opacity:.45;cursor:not-allowed}.menu-item.danger{color:var(--err)}.mi-check{width:16px;color:var(--accent-ink);flex:none;display:inline-flex}.mi-label{text-align:left;white-space:nowrap;flex:1}.mi-kbd{font:inherit;color:var(--muted);background:0 0;border:0;padding:0;font-size:11.5px}.menu-sep{background:var(--line);height:1px;margin:4px 6px;display:block}.kbd-groups{gap:18px;display:grid}.kbd-groups .eyebrow{margin-bottom:4px}.kbd-list{margin:0}.kbd-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:7px 0;font-size:13px;display:flex}.kbd-list dd{margin:0}kbd{font-family:var(--font);border:1px solid var(--line-2);color:var(--text-2);white-space:nowrap;background:#f3f3f1;border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:11.5px}@media (width<=1400px){.fp-word{display:none}.tb-name{max-width:200px}}@media (width<=1280px){.chip-btn[aria-label^=Selected] .cb-label{display:none}.tb-name{max-width:170px}.gen-bar{min-width:280px}}@media (width<=1180px){.chrome-top{flex-wrap:wrap}.chrome-top>.chrome-gap{display:none}.gen-bar{flex:100%;order:3;max-width:620px;margin:0 auto}.import-chip{top:118px}}.canvas-app.narrow{flex-direction:column;display:flex}.canvas-app.narrow .chrome-top{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;flex:none;gap:8px;padding:8px;position:relative;top:0;left:0;right:0}.canvas-app.narrow :is(.file-pill,.gen-bar,.chrome-right){box-shadow:none}.canvas-app.narrow .file-pill{flex:auto}.canvas-app.narrow .gen-bar{flex:100%;order:3;min-width:0}.canvas-app.narrow .canvas-scroll{flex:1;min-height:0;position:relative;inset:auto}.canvas-app.narrow .canvas-scroll.list-scroll{padding:12px 8px 120px}.canvas-app.narrow .import-chip{margin:6px auto;position:relative;top:0;left:0;transform:none}.canvas-app.narrow .canvas-controls{position:fixed;bottom:12px;right:12px}.canvas-app.narrow .cb-label,.canvas-app.narrow .fp-short,.canvas-app.narrow .fp-back{display:none}.canvas-app.narrow .tb-name{max-width:46vw}.gallery{--zoom:1;padding:16px 16px 140px}.skill{margin-bottom:40px}.sec-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.sec-meta{color:var(--muted);font-size:12px}.cat{margin-bottom:36px}.cat-head{flex-wrap:wrap;align-items:flex-end;gap:16px 24px;margin-bottom:12px;display:flex}.cat-titles{align-items:baseline;gap:10px;min-width:0;display:flex}.cat-titles h2{font-size:18px;font-weight:600}.cat-status{flex-direction:column;gap:1px;display:flex}.state{color:var(--text-2);align-items:center;gap:6px;font-size:12.5px;font-weight:500;display:inline-flex}.state.st-ready{color:var(--ok)}.state.st-partial{color:var(--warn)}.state.st-failed{color:var(--err)}.state.st-cancelled{color:var(--muted)}.cat-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.cat-note{color:var(--text-2);border:1px solid var(--line);background:#f7f7f5;border-radius:8px;width:fit-content;max-width:100%;margin:0 0 12px;padding:6px 10px;font-size:12.5px}.cat-note.older{background:#fff8e8;border-color:#f1e0b5}.cat-note.err{background:var(--err-bg);color:var(--err);border-color:#f4c7c3}.opt-strip{position:relative}.cards{--row-min:calc(132px * var(--zoom));--row-max:calc(340px * var(--zoom));scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;align-items:flex-start;gap:16px;margin:-6px -8px -14px;padding:6px 8px 14px;scroll-padding:0 8px;display:flex;overflow:auto hidden}.cards>.ocard{--r:1.6;flex:var(--r) 1 0px;min-width:calc(var(--r) * var(--row-min));max-width:calc(var(--r) * var(--row-max));scroll-snap-align:start}.opt-strip.more-r .cards{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000)}.opt-strip.more-l .cards{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 48px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 48px),#0000)}.opt-strip.more-l.more-r .cards{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000);mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000)}.strip-nav{z-index:4;border:1px solid var(--line-2);cursor:pointer;width:34px;height:34px;color:var(--text);background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:0 0 2px;font-size:20px;line-height:1;display:flex;position:absolute;top:calc(50% - 16px);transform:translateY(-50%);box-shadow:0 2px 8px #00000024}.strip-nav:hover{background:#f7f7f5}.strip-nav.l{left:-10px}.strip-nav.r{right:-10px}.ocard{flex-direction:column;gap:8px;min-width:0;display:flex;container:ocard/inline-size}.card-media{background:#fff;border-radius:6px;width:100%;transition:box-shadow .12s;position:relative;overflow:hidden;box-shadow:0 0 0 1px #00000014}.card-open{cursor:zoom-in;background:#f4f4f2;border:0;width:100%;height:100%;padding:0;display:block;position:absolute;inset:0}.card-open img{object-fit:contain;width:100%;height:100%;display:block}.card-open:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px}.card-check{cursor:pointer;z-index:2;width:26px;height:26px;position:absolute;top:8px;left:8px}.card-check input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute;inset:0}.check-box{pointer-events:none;background:#fffffff0;border:1.5px solid #0000004d;border-radius:6px;justify-content:center;align-items:center;transition:background .1s,opacity .12s;display:flex;position:absolute;inset:0;box-shadow:0 1px 3px #00000026}.card-check input:checked+.check-box{background:var(--accent);border-color:var(--accent);opacity:1}.card-check input:checked+.check-box:after{content:"";border:2.5px solid #fff;border-width:0 2.5px 2.5px 0;width:7px;height:13px;transform:translateY(-2px)rotate(45deg)}.card-check input:focus-visible+.check-box{outline:2.5px solid var(--accent);outline-offset:2px;opacity:1}.card-demo{letter-spacing:.05em;color:var(--demo);border:1px solid var(--demo-line);pointer-events:none;background:#fff1dcf2;border-radius:4px;padding:1px 5px;font-size:9.5px;font-weight:700;position:absolute;bottom:8px;right:8px}.card-foot{align-items:center;gap:8px;min-width:0;padding:0 2px;font-size:12.5px;display:flex}.card-opt{white-space:nowrap;font-weight:600}.card-rev{color:var(--muted);white-space:nowrap}.card-foot .fig-chip{margin-left:auto}@container ocard (width<=300px){.card-foot{gap:6px}.card-foot .fig-chip .fig-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card-foot .fig-chip{padding:1px 5px}}@container ocard (width<=190px){.card-foot .card-rev{display:none}}.slot-retry{margin-top:2px}.fig-chip{white-space:nowrap;color:var(--text-2);background:#efefec;border-radius:999px;align-items:center;gap:4px;padding:1px 7px 1px 5px;font-size:11px;font-weight:500;display:inline-flex}.fig-glyph{text-align:center;width:12px;font-size:10px;font-weight:700}.fig-chip.f-matched{background:var(--ok-bg);color:var(--ok)}.fig-chip.f-syncing{background:var(--accent-2);color:var(--accent-ink)}.fig-chip.f-mismatch{background:var(--warn-bg);color:var(--warn)}.fig-chip.f-failed{background:var(--err-bg);color:var(--err)}.slot .card-media{background:#f7f7f5;box-shadow:inset 0 0 0 1px #0000000f}.slot.s-pending .card-media{background:linear-gradient(100deg,#f0f0ee 30%,#f8f8f6 50%,#f0f0ee 70%) 0 0/300% 100%;animation:1.6s linear infinite shimmer}@keyframes shimmer{to{background-position:-150% 0}}.slot.s-failed .card-media{background:#fdf3f2;box-shadow:inset 0 0 0 1px #f3c9c5}.slot.s-cancelled .card-media{background:#f2f2f0}.slot.s-failed.exhausted .card-media{background:#f2f2f0;box-shadow:inset 0 0 0 1px #0000000f}.slot.exhausted .slot-err{color:var(--muted)}.slot-inner{text-align:center;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:10px;display:flex;position:absolute;inset:0}.slot-err{color:var(--err);max-width:90%}.earlier{margin-top:14px}.earlier-batch{border:1px dashed var(--line-2);background:#fff6;border-radius:10px;margin-top:12px;padding:12px}.batch-label{margin-bottom:10px}.earlier-list{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:12px;display:flex}.earlier-list .earlier-batch{background:#ffffffd9;flex:100%;min-width:0;margin-top:0}.earlier-list .earlier-batch.stacked{width:min(100%, calc(var(--deck-w) * var(--zoom) + 60px));flex:0 auto}.qa-wrap{display:inline-flex;position:relative}.qa-badge{font:inherit;cursor:pointer;white-space:nowrap;color:var(--text-2);background:#efefec;border:0;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:500}.qa-badge.q-pass{background:var(--ok-bg);color:var(--ok)}.qa-badge.q-warn{background:var(--warn-bg);color:var(--warn)}.qa-badge.q-fail{background:var(--err-bg);color:var(--err)}.qa-pop{cursor:default;gap:8px;width:280px;top:auto;bottom:calc(100% + 6px);right:0}.qa-checks{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.qa-checks li{align-items:flex-start;gap:8px;display:flex}.qa-glyph{border-radius:50%;flex:none;justify-content:center;align-items:center;width:16px;height:16px;margin-top:1px;font-size:10px;font-weight:700;display:inline-flex}.qa-checks li.ok .qa-glyph{background:var(--ok-bg);color:var(--ok)}.qa-checks li.note .qa-glyph{background:var(--warn-bg);color:var(--warn)}.qa-text{flex-direction:column;gap:1px;min-width:0;display:flex}.skill-cats{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));grid-auto-flow:dense;align-items:start;gap:32px 24px;display:grid}.skill-cats>.cat{min-width:0;margin-bottom:0}.cat.cat-row{grid-column:1/-1}.tile-head{flex-flow:column;align-items:stretch;gap:2px;margin-bottom:2px}.tile-top{align-items:center;min-width:0;min-height:26px;display:flex;position:relative}.tile-top h2{flex:1;min-width:0;font-size:15px;line-height:1.3}.tile-head .cat-actions{background:linear-gradient(90deg, transparent, var(--section,var(--board)) 24px);flex-wrap:nowrap;gap:4px;margin:0;padding-left:28px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.tile-head .cat-actions:not(:has(>:not(.quiet))){background:0 0}.cat-actions .quiet{opacity:0;pointer-events:none;transition:opacity .12s}.cat:is(:hover,:focus-within) .cat-actions .quiet{opacity:1;pointer-events:auto}@media (hover:none){.cat-actions .quiet{opacity:1;pointer-events:auto}}.tile-head .cat-status{flex-flow:wrap;align-items:baseline;gap:0 8px}.tile-head .cat-status .state{font-size:12px}.cat.cat-tile .cat-note{margin:4px 0 2px;padding:4px 8px;font-size:11.5px}.cat.cat-tile .earlier{margin-top:8px}.stack-toggle{align-self:center}.stack-toggle svg,.deck-hint svg{flex:none}.batch-label .stack-toggle{vertical-align:middle;margin-left:4px}.deck{--spread:1;--lift:1;font:inherit;color:inherit;cursor:pointer;text-align:left;width:min(100%, calc(var(--deck-w) * var(--zoom) + 34px));background:0 0;border:0;border-radius:8px;flex-direction:column;gap:9px;margin:0;padding:0;display:flex}.deck-cards{width:calc(100% - 34px);margin-top:20px;display:block;position:relative}.deck-layer{display:block;position:absolute;inset:0}.deck-face{transform:translate(calc(var(--x) * var(--spread)), calc(var(--y) * var(--lift))) rotate(calc(var(--r) * var(--lift)));background:#f4f4f2;border-radius:6px;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .12s;display:block;position:absolute;inset:0;overflow:hidden;box-shadow:0 0 0 1px #00000017,0 1px 3px #0000000f}.deck-face img{object-fit:contain;width:100%;height:100%;display:block}.deck-layer:not(.top) .deck-face:after{content:"";background:#1c1c1f0a;position:absolute;inset:0}.deck-layer.top .deck-face{background:#fff;box-shadow:0 0 0 1px #0000001a,0 6px 18px #00000014}.deck-face.s-pending{background:linear-gradient(100deg,#f0f0ee 30%,#f8f8f6 50%,#f0f0ee 70%) 0 0/300% 100%;animation:1.6s linear infinite shimmer}.deck-face.s-failed{background:#fdf3f2;box-shadow:0 0 0 1px #f3c9c5}.deck-face.s-failed.exhausted,.deck-face.s-cancelled{background:#f2f2f0}.deck:hover,.deck:focus-visible{--spread:1.8;--lift:1.1}.deck:focus-visible{outline:none}.deck:focus-visible .deck-layer.top .deck-face{outline:2.5px solid var(--accent);outline-offset:3px}.deck-sel{z-index:7;color:#fff;background:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px 2px 7px;font-size:11px;font-weight:600;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 1px 3px #0003}.deck-run{z-index:7;background:#fffffff2;border-radius:6px;flex-direction:column;gap:5px;padding:6px 8px;display:flex;position:absolute;bottom:8px;left:8px;right:8px;box-shadow:0 1px 4px #0000001f}.deck-run-text{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:11.5px;font-weight:500;display:flex;overflow:hidden}.deck-run .progress{height:3px;display:block}.deck-run .progress>span{display:block}.deck-foot{width:calc(100% - 34px);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;padding:0 2px;font-size:12.5px;display:flex}.deck-foot svg{color:var(--muted);flex:none}.deck-hint{color:var(--accent-ink);white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-weight:500;display:inline-flex}.deck-foot .deck-hint svg{color:var(--accent-ink)}.deck:hover .deck-hint{text-decoration:underline}.deck.small{--spread:.75;--lift:.75;gap:7px}.deck.small:hover,.deck.small:focus-visible{--spread:1.3;--lift:.8}.deck.small .deck-cards{margin-top:15px}.deck.small .deck-foot{font-size:11.5px}.deck.small .deck-sel{padding:1px 6px 1px 5px;font-size:10.5px;top:5px;left:5px}.deck.small .deck-run{padding:4px 6px;bottom:5px;left:5px;right:5px}@media (prefers-reduced-motion:reduce){.deck-face{transition:none}.deck:hover,.deck:focus-visible{--spread:1;--lift:1}.deck.small:hover,.deck.small:focus-visible{--spread:.75;--lift:.75}}.blocked-box{border:1px solid var(--line);background:#fff;border-radius:10px;max-width:760px;margin-bottom:12px;padding:12px 14px}.blocked-box ul{margin:6px 0 0;padding-left:18px}.canvas-app.free .gallery{flex-direction:column;align-items:flex-start;gap:136px;width:max-content;margin:0;padding:56px 0 0;display:flex}.canvas-app.free .skill{background:var(--section);border:1px solid var(--section-line);border-radius:24px;width:max-content;margin:0;padding:32px 32px 36px;position:relative}.canvas-app.free .sec-head{white-space:nowrap;transform-origin:0 100%;transform:scale(var(--ls,1));flex-wrap:nowrap;margin:0;position:absolute;bottom:calc(100% + 10px);left:2px}.canvas-app.free .skill-cats{grid-template-columns:repeat(var(--cols,3), minmax(var(--tile-w), 1fr));gap:44px 32px;width:max-content}.canvas-app.free .cards{--row-min:220px;--row-max:420px;scroll-snap-type:none;overflow:visible}.canvas-app.free .cat.cat-row.is-open{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px 20px;box-shadow:0 1px 2px #0000000a,0 8px 24px #0000000d}.canvas-app.narrow .skill{--section:var(--board)}.need-card{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:min(100%,300px);margin-top:20px;padding:0;display:block}.need-card.static{cursor:default}.need-face{border:1.5px dashed var(--line-2);background:#ffffffb8;border-radius:8px;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;width:100%;min-height:188px;padding:16px 20px;transition:border-color .12s,background .12s;display:flex}.need-card:not(.static):hover .need-face{background:#fff;border-color:#b4b4ad}.need-card:focus-visible{outline:none}.need-card:focus-visible .need-face{outline:2.5px solid var(--accent);outline-offset:3px}.need-badge{color:#6b4300;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:inline-flex}.need-badge.off{color:var(--muted)}.need-list{color:var(--text-2);margin:0;padding:0 0 0 16px;font-size:12.5px;line-height:1.45}.need-note{color:var(--muted);font-size:12.5px}.need-cta{color:var(--accent-ink);align-items:center;gap:4px;margin-top:2px;font-size:12.5px;font-weight:500;display:inline-flex}.need-card:hover .need-cta{text-decoration:underline}.tile-head .state.st-ready{color:var(--text-2)}.cat-row .cat-head .cat-status{flex-direction:row;align-items:baseline;gap:8px}.needs-input{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;gap:14px;max-width:820px;margin-bottom:16px;padding:18px;display:flex}.needs-head{align-items:flex-start;gap:12px;display:flex}.needs-head .warn-dot{margin-top:6px}.needs-head h3{margin-bottom:4px;font-size:14.5px}.missing-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.missing-item{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;padding:12px 14px}.missing-item.done{background:#f5fbf7;border-color:#cdebd9}.missing-label{align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.missing-item.done .missing-label{margin-bottom:0}.missing-num{border:1.5px solid var(--line-2);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;display:inline-flex}.missing-item.done .missing-num{background:var(--ok);border-color:var(--ok)}.mini-form{flex-direction:column;gap:8px;display:flex}.form-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-row input:not([type=color]):not(.hex){flex:1;min-width:160px}.form-grid{align-items:center;gap:6px 8px;display:grid}.form-grid.phases{grid-template-columns:minmax(0,1fr) 100px 80px 24px}.form-grid.stats{grid-template-columns:110px minmax(0,1.6fr) minmax(0,1fr) 24px}.form-grid input{width:100%}.form-foot{align-items:center;gap:8px;margin-top:2px;display:flex}.needs-foot{align-items:center;gap:12px;display:flex}.dropzone{border:1.5px dashed var(--line-2);text-align:center;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:16px;display:flex}.dropzone.over{border-color:var(--accent);background:var(--accent-2)}.dropzone.big{gap:10px;margin:12px 0;padding:28px}.quad-stage{cursor:crosshair;-webkit-user-select:none;user-select:none;border-radius:8px;align-self:flex-start;max-width:100%;display:inline-block;position:relative;overflow:hidden}.quad-stage img{max-width:100%;max-height:56vh;display:block}.quad-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.quad-overlay polygon{fill:#0b6bf22e;stroke:var(--accent);stroke-width:2px}.quad-overlay circle{fill:#fff;stroke:var(--accent);stroke-width:3px}.quad-overlay text{fill:var(--accent-ink);paint-order:stroke;stroke:#fff;stroke-width:3px;font-size:13px;font-weight:700}.sel-bar{border:1px solid var(--line);z-index:25;background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:8px 8px 8px 16px;animation:.16s rise;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0000002e}@keyframes rise{0%{opacity:0;transform:translate(-50%,10px)}}.sel-count{white-space:nowrap;margin-right:8px;font-size:13.5px}.list-view{background:var(--panel);border:1px solid var(--line);max-width:1120px;box-shadow:var(--shadow);border-radius:14px;margin:0 auto;overflow:clip}.lv-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 12px 10px 16px;display:flex}.lv-title{font-size:13px;font-weight:600}.layers{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12.5px}.layers col.c-sel{width:40px}.layers col.c-state{width:22%}.layers col.c-qa{width:104px}.layers col.c-figma,.layers col.c-batch{width:128px}.layers thead th{z-index:1;text-align:left;color:var(--muted);border-bottom:1px solid var(--line);background:#fafaf9;padding:7px 10px;font-size:11px;font-weight:500;position:sticky;top:0}.layers td{vertical-align:middle;padding:0 10px}.lv-skill th{text-align:left;color:var(--text);padding:16px 12px 6px;font-size:12px;font-weight:600}.layers tbody:first-of-type .lv-skill th{padding-top:10px}.lv-skill-icon{color:var(--muted);margin-right:6px;font-weight:500}.lv-count{color:var(--muted);margin-left:6px;font-size:11px;font-weight:500}.lv-cat td{height:32px;padding:0 8px}.lv-cat-name{min-width:0;color:var(--text);align-items:center;gap:6px;font-size:12.5px;display:flex}.lv-cat-name>svg{color:var(--muted);flex:none}.lv-cat-name strong{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.lv-twist{width:20px;height:20px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.lv-twist:hover{color:var(--text);background:#0000000f}span.lv-twist{cursor:default}.lv-twist .chev{transform:rotate(-90deg)}.lv-twist .chev.open{transform:none}.lv-sum{margin-left:4px;font-size:11.5px}.lv-earlier{margin-left:6px;font-size:11.5px}.lv-why{margin-left:8px}.lv-cat.blocked td{background:#fffaf0;height:36px}.lv-opt td{border-top:1px solid #0000;height:40px}.lv-opt:hover td{background:#f6f6f4}.lv-opt.sel td{background:var(--accent-2)}.lv-opt.earlier td{opacity:.85}.lv-sel{text-align:center}.layers td.lv-name{padding-left:44px}.lv-open{max-width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:3px 8px 3px 3px;display:inline-flex}button.lv-open:hover .lv-label{text-decoration:underline}.lv-open.placeholder{cursor:default;color:var(--muted)}.list-thumb{background:#f0f0ee;border-radius:4px;flex:none;width:48px;height:32px;display:block;overflow:hidden;box-shadow:inset 0 0 0 1px #0000000f}.list-thumb img{object-fit:contain;width:100%;height:100%;display:block}.list-thumb.empty.s-failed{background:#fdf3f2;box-shadow:inset 0 0 0 1px #f3c9c5}.list-thumb.empty.s-pending{background:linear-gradient(100deg,#f0f0ee 30%,#f8f8f6 50%,#f0f0ee 70%) 0 0/300% 100%;animation:1.6s linear infinite shimmer}.lv-label{white-space:nowrap;font-weight:500}.lv-rev{color:var(--muted);white-space:nowrap}.lv-state{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:100%;display:inline-flex;overflow:hidden}.lv-state.err{color:var(--err)}.dot.err{background:var(--err)}@media (width<=760px){.layers col.c-qa,.layers col.c-batch{width:0}.layers td:last-child,.layers th:last-child,.layers td:nth-last-child(3),.layers th:nth-last-child(3){display:none}.layers td.lv-name{padding-left:20px}}.overlay{z-index:40;position:fixed;inset:0}.preview{background:#e8e8e5;outline:none;flex-direction:column;animation:.14s fade;display:flex}@keyframes fade{0%{opacity:0}}.pv-bar{border-bottom:1px solid var(--line);background:#fff;flex:none;justify-content:space-between;align-items:center;gap:16px;padding:8px 10px 8px 18px;display:flex}.pv-title{align-items:center;gap:10px;min-width:0;display:flex}.pv-title strong{white-space:nowrap;font-size:14.5px}.pv-tools{flex:none;align-items:center;gap:6px;display:flex}.pv-select{border:1px solid var(--line-2);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.pv-select.on{background:var(--accent-2);color:var(--accent-ink);border-color:#bcd3fb}.pv-body{flex:1;grid-template-columns:minmax(0,1fr) 320px;min-height:0;display:grid}.pv-stage{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.pv-stage.actual{overflow:auto}.pv-compare-bar{z-index:2;box-shadow:var(--shadow);background:#fffffff5;border-radius:999px;align-items:center;gap:8px;padding:5px 8px 5px 12px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.pv-compare-bar select{max-width:280px;padding:3px 6px;font-size:12px}.pv-images{flex:1;justify-content:center;align-items:center;gap:40px;min-height:100%;padding:40px;display:flex}.pv-stage.actual .pv-images{justify-content:safe center;align-items:flex-start;width:max-content;min-width:100%}.pv-figure{flex-direction:column;flex:none;align-items:center;gap:8px;margin:0;display:flex}.pv-canvas{background:#fff 50%/100% 100% no-repeat;flex:none;box-shadow:0 10px 40px #00000024}.pv-canvas img{width:100%;height:100%;display:block}.pv-nav{border:1px solid var(--line);width:40px;height:40px;box-shadow:var(--shadow);cursor:pointer;color:var(--text);z-index:2;background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;padding-bottom:3px;font-size:24px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.pv-nav:disabled{opacity:.3;cursor:default}.pv-nav.prev{left:12px}.pv-nav.next{right:12px}.pv-count{box-shadow:var(--shadow);color:var(--text-2);background:#fffffff2;border-radius:999px;padding:3px 10px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.pv-side{border-left:1px solid var(--line);background:#fff;padding:4px 16px 24px;overflow-y:auto}.pv-sec{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:14px 0;display:flex}.pv-sec:last-child{border-bottom:0}.pv-sec h3{font-size:13px}.lock-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.details{flex-direction:column;gap:6px;margin:0;display:flex}.details>div{grid-template-columns:96px minmax(0,1fr);gap:8px;font-size:12.5px;display:grid}.details dt{color:var(--muted)}.details dd{overflow-wrap:anywhere;margin:0}.pv-strip{border-top:1px solid var(--line);background:#fff;flex:none;align-items:center;gap:12px;padding:8px 14px;display:flex;overflow-x:auto}.pv-strip ul{gap:8px;margin:0;padding:0;list-style:none;display:flex}.rev-thumb{font:inherit;text-align:left;border:1px solid var(--line);cursor:pointer;width:118px;color:var(--text);background:#fff;border-radius:8px;flex-direction:column;gap:2px;padding:4px;display:flex}.rev-thumb.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rev-img{background:#f0f0ee;border-radius:4px;height:56px;display:block;overflow:hidden}.rev-img img{object-fit:contain;width:100%;height:100%}.tray-backdrop{z-index:35;background:#1414182e;justify-content:flex-end;display:flex}.tray{background:#fff;flex-direction:column;width:min(460px,100vw);height:100%;animation:.16s slide;display:flex;box-shadow:-10px 0 40px #0000001f}@keyframes slide{0%{opacity:0;transform:translate(24px)}}.tray-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 12px 12px 18px;display:flex}.tray-body{flex:1;min-height:0;padding:4px 18px 18px;overflow-y:auto}.tray-sec{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:14px 0;display:flex}.tray-sec:last-child{border-bottom:0}.tray-sel,.tray-seq{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tray-sel li,.seq-item{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:6px;display:flex}.tray-sel li[draggable=true],.seq-item[draggable=true]{cursor:grab}.tray-thumb{cursor:pointer;background:#f0f0ee;border:0;border-radius:4px;flex:none;width:64px;height:42px;padding:0;display:block;overflow:hidden}.tray-thumb img{object-fit:contain;width:100%;height:100%;display:block}.tray-meta{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.tray-acts,.seq-acts{flex:none;align-items:center;gap:2px;display:flex}.tray-seq{border-radius:10px;min-height:60px}.tray-seq.dragging{outline:1.5px dashed var(--accent);outline-offset:4px}.seq-empty{text-align:center;border:1.5px dashed var(--line-2);border-radius:10px;padding:18px}.seq-num{color:var(--muted);font-variant-numeric:tabular-nums;width:20px;font-size:12px;font-weight:700}.seq-grip{color:var(--muted);display:inline-flex}.seq-title{width:100%;padding:3px 6px;font-weight:500}.seq-item.over-above{box-shadow:0 -3px 0 var(--accent)}.seq-item.over-below{box-shadow:0 3px 0 var(--accent)}.tray-foot{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 18px;display:flex}.tray-foot .row{justify-content:flex-end}.modal-backdrop{z-index:50;background:#0f0f145c;justify-content:center;align-items:center;padding:24px;animation:.12s fade;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border-radius:14px;outline:none;flex-direction:column;width:100%;max-width:520px;max-height:calc(100vh - 48px);display:flex;box-shadow:0 24px 70px #00000040}.modal.wide{max-width:900px}.modal.full{width:calc(100vw - 48px);max-width:1280px;height:calc(100vh - 48px)}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.modal-head h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.modal-body{flex:1;min-height:0;padding:16px 18px;overflow:auto}.modal-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 18px;display:flex}.scope-body{flex-direction:column;gap:14px;display:flex}.scope-summary{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.big-num{letter-spacing:-.02em;font-size:28px;font-weight:700}.scope-groups{flex-direction:column;gap:14px;display:flex}.scope-group h3{margin-bottom:6px;font-size:13px}.scope-group ul{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;gap:6px;margin:0;padding:0;list-style:none;display:grid}.scope-cat{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px}.scope-cat.s-needs-input{background:#fffbf2}.scope-cat.s-unavailable{background:#fbf6f6}.scope-cat-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scope-cat-name{flex:1;min-width:0;font-size:13px;font-weight:500}.scope-missing{color:var(--warn);margin:4px 0 0;padding:0;font-size:12px;list-style:none}.scope-cat p{margin:4px 0 0}.out-size-ctl{gap:8px}.export-body{flex-direction:column;gap:14px;display:flex}.export-controls{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.export-items{border:1px solid var(--line);border-radius:10px;overflow:hidden}.xi-head,.xi-row{grid-template-columns:minmax(0,2.4fr) 1fr 1fr .7fr;align-items:center;gap:10px;padding:7px 12px;display:grid}.xi-head{border-bottom:1px solid var(--line);background:#fafaf9}.xi+.xi{border-top:1px solid var(--line)}.xi-file{display:block}.xi-warn{background:var(--warn-bg);color:#6b4300;border-radius:6px;margin:0 12px 8px;padding:4px 8px}.blocked-list{background:#fffbea;border:1px solid #f1dfa6;border-radius:10px;padding:10px 12px}.blocked-list ul{flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.blocked-list li{flex-direction:column;display:flex}.export-files{border:1px solid var(--line);border-radius:10px;margin:8px 0;padding:0;list-style:none;overflow:hidden}.xf{grid-template-columns:20px minmax(0,1fr) auto 70px;align-items:center;gap:10px;padding:7px 12px;display:grid}.xf+.xf{border-top:1px solid var(--line)}.xf-state{text-align:center;font-weight:700}.xf.s-done .xf-state{color:var(--ok)}.xf.s-failed .xf-state{color:var(--err)}.xf-err{color:var(--err);grid-column:2/-1}.more summary{cursor:pointer;color:var(--text-2);font-size:13px;font-weight:500}.more[open] summary{margin-bottom:10px}.presets{flex-direction:column;gap:8px;display:flex}.presets .row input{flex:1}.share-body{flex-direction:column;gap:18px;display:flex}.share-body select{padding:4px 8px}.share-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-add input[type=email]{flex:1;min-width:220px}.share-sel{margin:4px 0 0 24px;padding:0;list-style:none}.recips{flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.recips li{align-items:center;gap:10px;display:flex}.recips li.revoked,.links li.revoked{opacity:.55}.links{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.links>li{border:1px solid var(--line);border-radius:10px;padding:10px 12px}code.token{-webkit-user-select:all;user-select:all;word-break:break-all;background:#f1f1ee;border-radius:6px;padding:4px 8px}.src-body{flex-direction:column;gap:6px;display:flex}.src-sec{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:14px 0;display:flex}.src-sec h3{align-items:baseline;gap:8px;font-size:14px;display:flex}.src-links{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.src-links li{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.src-add input{flex:1;max-width:560px}.src-rejected{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.src-rejected li{align-items:baseline;gap:10px;display:flex}.src-page{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.src-frames{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.src-frame{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:6px;display:flex}.src-frame.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.src-frame select{padding:3px 6px;font-size:12px}.src-thumb{cursor:pointer;background:#f2f2f0;border-radius:6px;height:108px;display:block;position:relative;overflow:hidden}.src-thumb img{object-fit:contain;width:100%;height:100%;display:block}.src-thumb input{width:18px;height:18px;position:absolute;top:6px;left:6px}.src-brand{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.brand-item{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;padding:8px;display:flex}.brand-item.inferred{background:#fffcf4;border-style:dashed}.brand-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.brand-sw{background:#f3f3f0;border:1px solid #00000014;border-radius:8px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex;overflow:hidden}.brand-sw img{object-fit:contain;width:100%;height:100%}.src-docs{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.src-docs li{align-items:center;gap:10px;display:flex}.doc-icon{background:var(--err-bg);color:var(--err);border-radius:4px;padding:3px 5px;font-size:10px;font-weight:700}.handoff{background:#f5f9ff;border:1px solid #bcd3fb;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:8px;padding:14px 16px;display:flex}.handoff h3{margin-top:2px;font-size:16px}.handoff-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.handoff-grid ul{margin:4px 0 0;padding-left:18px}.settings-layout{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:32px;width:100%;max-width:1180px;margin:0 auto;padding:28px 24px 80px;display:grid}.settings-nav{flex-direction:column;gap:2px;display:flex;position:sticky;top:84px}.settings-nav a{color:var(--text-2);border-radius:8px;padding:7px 10px;font-size:13.5px;text-decoration:none}.settings-nav a:hover{color:var(--text);background:#0000000d}.settings{flex-direction:column;gap:20px;min-width:0;display:flex}.settings .card{flex-direction:column;gap:10px;scroll-margin-top:80px;display:flex}.settings h2{font-size:17px}.sub-sec{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.conn{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.conn.ok{background:#f5fbf7;border-color:#cdebd9}.conn-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.token-form input{flex:1;max-width:420px}.table-wrap{overflow-x:auto}.map-table{border-collapse:collapse;width:100%;font-size:13px}.map-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);padding:8px;font-size:11px;font-weight:600}.map-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 8px}.map-table td.actions{text-align:right}.map-table td.actions .btn{margin:0 0 4px 4px}.log-wrap{border:1px solid var(--line);border-radius:10px;max-height:520px;overflow-y:auto}.log-wrap .map-table th{z-index:1;background:#fff;position:sticky;top:0}.log-msg{overflow-wrap:anywhere;max-width:420px;color:var(--text-2)}.token-list{flex-direction:column;margin:4px 0 0;padding:0;list-style:none;display:flex}.token-list li{border-bottom:1px solid var(--line);gap:12px;padding:8px 0}.token-list li:last-child{border-bottom:0}.cat-admin{border-top:1px solid var(--line);padding:10px 0}.cat-admin h3{font-size:14px}.cat-admin-list{flex-direction:column;gap:4px;margin:8px 0 0;padding:0;list-style:none;display:flex}.cat-admin-list li{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0;display:flex}.cat-admin-list li.off{opacity:.55}.cat-name-input{width:220px;padding:4px 8px}.cat-min{flex-basis:100%;padding-left:92px}.usage-kv{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:0;display:grid}.usage-kv>div{border:1px solid var(--line);border-radius:8px;padding:8px 10px}.usage-kv dt{color:var(--muted);font-size:11.5px}.usage-kv dd{margin:2px 0 0;font-weight:600}.usage-tree{flex-direction:column;gap:12px;display:flex}.usage-node h3{margin-bottom:6px}.toasts{z-index:100;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:92px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;color:#fff;background:#1d1d22;border-radius:10px;align-items:center;gap:10px;max-width:560px;padding:9px 10px 9px 14px;font-size:13px;animation:.18s rise-t;display:flex;box-shadow:0 10px 30px #00000040}@keyframes rise-t{0%{opacity:0;transform:translateY(8px)}}.toast.error{background:#8f1d22}.toast.success{background:#155c36}.btn.ghost-inv{color:#fff;background:0 0;border-color:#ffffff59}@media (width<=1360px){.badge .badge-sub{display:none}}@media (width<=1180px){.pv-body{grid-template-columns:minmax(0,1fr) 280px}}@media (width<=900px){.pv-body{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.pv-side{border-left:0;border-top:1px solid var(--line);max-height:40vh}.settings-layout{grid-template-columns:1fr}.settings-nav{display:none}.handoff-grid{grid-template-columns:1fr}}.tb-share{gap:5px}.share-invite{flex-direction:column;gap:10px;display:flex}.share-to{border:1px solid var(--line-2);background:var(--panel);cursor:text;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;min-height:38px;padding:5px 8px;display:flex}.share-to:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-2)}.share-to input{min-width:200px;font:inherit;background:0 0;border:0;outline:0;flex:1;padding:4px 2px}.share-chip{background:var(--accent-2);color:var(--accent-ink);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 10px;font-size:12.5px;display:inline-flex}.share-chip button{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;width:18px;height:18px;font-size:14px;line-height:1}.share-chip button:hover{background:#0a58ca1f}.share-role{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.share-role select{padding:6px 8px;font-weight:500}.share-roles{min-width:260px;color:var(--muted);flex-direction:column;flex:1;gap:3px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.share-roles li.on{color:var(--text)}.share-roles strong{min-width:62px;display:inline-block}.share-msg{resize:vertical;width:100%;font:inherit;border:1px solid var(--line-2);border-radius:8px;padding:7px 9px;font-size:13px}.share-result code.token{max-width:100%}.share-role-tag{color:var(--text-2);white-space:nowrap;background:#efefec;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.share-role-tag.editor{background:var(--accent-2);color:var(--accent-ink)}.recips li{flex-wrap:wrap}.list-figma{text-decoration:none}.export-share{margin-right:4px}@media (width<=600px){.share-to input{min-width:140px}.share-roles{min-width:0}}.pv-origin{color:#6a3fc2;white-space:nowrap;background:#f2ecff;border:1px solid #ddd0fb;border-radius:999px;flex:none;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.pv-newer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.imp{gap:10px}.imp-opt{flex-direction:column;gap:8px;display:flex}.imp-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.imp-chips{flex-wrap:wrap;gap:5px;display:flex}.imp-chips .chip{text-align:left}.imp-or{color:var(--muted);align-items:center;gap:10px;margin:2px 0;font-size:11.5px;display:flex}.imp-or:before,.imp-or:after{content:"";border-top:1px solid var(--line);flex:1}.imp-claude{background:#faf8ff;border:1px solid #e6dcfb;border-radius:10px;padding:10px}.imp-claude-btn{color:#4b2a9a;background:#fff;border-color:#c9b6f5;justify-content:center;align-items:center;gap:6px;display:inline-flex}.imp-claude-btn:hover:not(:disabled){background:#f2ecff}.imp-wait{background:#fff;border:1px solid #e6dcfb;border-radius:8px;align-items:flex-start;gap:8px;padding:8px;display:flex}.imp-wait .spinner{flex:none;margin-top:2px}.imp-wait-text{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.imp-wait .link{flex:none}.imp-dialog .field textarea{font:inherit;font-size:13px}.imp-prompt{background:var(--panel-2);color:var(--text-2);line-height:1.5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:11.5px!important}.imp-dialog-foot{justify-content:flex-end;width:100%}.imp-dialog-foot a.btn{align-items:center;gap:6px;text-decoration:none;display:inline-flex}.imp-dialog-foot a.btn.disabled{opacity:.45;pointer-events:none}.rev-thumb.by-claude .clamp1{color:#6a3fc2}.card-claude{color:#6a3fc2;white-space:nowrap;font-size:11px;font-weight:600}.qa-badge.q-fail{background:var(--warn-bg);color:#6b4300;box-shadow:inset 0 0 0 1px var(--warn-dot)}.qa-badge.q-warn{color:#6b5a3a;background:#f4f2ec}.qa-pop{width:300px;max-height:min(60vh,440px);overflow:auto}.qa-pop .qa-rebuilt{display:block}.qa-checks li.qa-ok .qa-glyph{background:var(--ok-bg);color:var(--ok)}.qa-checks li.qa-fix .qa-glyph{background:var(--warn-bg);color:#6b4300;box-shadow:inset 0 0 0 1px var(--warn-dot)}.qa-checks li.qa-note .qa-glyph{color:#6b5a3a;background:#f4f2ec}.qa-checks li.qa-manual .qa-glyph{color:var(--text-2);box-shadow:inset 0 0 0 1px var(--line-2);background:0 0}.qa-more{margin-top:2px}.qa-more>summary{cursor:pointer;list-style:revert}.qa-more>.qa-checks{margin-top:6px}.qa-panel h3{align-items:center;gap:8px;display:flex}.qa-panel .qa-badge{cursor:default}.qa-panel .qa-checks{margin-top:8px}.card-foot .qa-wrap{flex:none}.share-link-row{border:1px solid var(--line);background:var(--panel,#fff);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.share-link-icon{background:#efefec;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:inline-flex}.share-link-who{flex-direction:column;flex:1;gap:1px;min-width:200px;display:flex}.share-link-row select{padding:6px 8px;font-weight:500}.links .share-role-tag{margin-left:8px}.detected-pick{border-bottom:1px dashed var(--line);flex-direction:column;gap:6px;margin-bottom:10px;padding-bottom:10px;display:flex}.detected-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.detected-item{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:6px 8px;display:flex}.detected-meta{flex-direction:column;flex:1;min-width:0;display:flex}.detected-thumb{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid;overflow:hidden}.detected-thumb.text{color:var(--ink,#101418);font-size:15px;font-weight:600}.detected-thumb.img img{object-fit:contain;max-width:100%;max-height:100%}body{letter-spacing:-.003em;font-feature-settings:"ss01", "cv11";text-rendering:optimizelegibility;font-size:14px;line-height:1.5}h1,h2,h3{letter-spacing:-.02em}::selection{background:#d8e6ff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{border-color:var(--line);border-radius:8px;height:34px;padding:0 14px;font-weight:500;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;box-shadow:0 1px 1px #1c191708}.btn:hover:not(:disabled){background:var(--hover);border-color:var(--line-2)}.btn.primary,.btn.dark{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 1px 2px #1c19172e,inset 0 1px #ffffff14}.btn.primary:hover:not(:disabled),.btn.dark:hover:not(:disabled){background:var(--ink-hover);border-color:var(--ink-hover)}.btn.ghost{box-shadow:none}.btn.ghost:hover:not(:disabled){background:var(--hover)}.btn.small{height:30px;padding:0 11px;font-size:13px}.btn.tiny{border-radius:6px;height:24px;padding:0 8px;font-size:12px}.btn.block{height:38px}.btn svg{flex:none}.btn.on{background:var(--accent-2);color:var(--accent-ink);border-color:#bcd3fb}.icon-btn{color:var(--muted);border-radius:8px}.icon-btn:hover:not(:disabled){background:var(--hover);color:var(--text)}.link{color:var(--accent-ink);text-underline-offset:2px}input,textarea,select{border-color:var(--line);border-radius:8px;transition:border-color .15s,box-shadow .15s}input:hover:not(:focus):not(:disabled),textarea:hover:not(:focus),select:hover:not(:focus){border-color:var(--line-2)}input:focus,textarea:focus,select:focus{border-color:#8fb4f6;box-shadow:0 0 0 3px #0b6bf224}select{appearance:none;cursor:pointer;background:#fff 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='%236b6560' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") right 9px center no-repeat;padding-right:28px}input[type=checkbox],input[type=radio]{accent-color:var(--ink)}.seg{background:var(--canvas);border-radius:9px;padding:3px;box-shadow:inset 0 0 0 1px #1c19170a}.seg button{color:var(--muted);border-radius:6px;padding:5px 11px}.seg button.on{color:var(--text);box-shadow:0 1px 2px #1c19171a,0 0 0 1px #1c19170f}.seg button:disabled{opacity:.45;cursor:not-allowed}.chip.on{background:var(--ink);border-color:var(--ink)}.pill,.mini-tag,.tb-tag{background:var(--canvas)}.notice{border:1px solid #0000;border-radius:10px}.notice.warn{border-color:#f6e0b4}.notice.info{border-color:#d6e4fd}.notice.error{border-color:#f6cfd0}.notice.success{border-color:#cdebd7}.card{border-color:var(--line);box-shadow:var(--shadow);border-radius:14px}.eyebrow{letter-spacing:.06em;font-size:11px}.avatar{background:var(--ink)}.logo-mark{background:var(--ink);border-radius:10px}.menu,.popover{border-color:var(--line);box-shadow:var(--shadow-lg);border-radius:12px}.menu-item{border-radius:7px;font-size:13px}.menu-item:hover{background:var(--hover)}.menu-item:focus-visible{background:var(--hover);box-shadow:inset 0 0 0 1.5px var(--accent);outline:none}.mi-check{color:var(--text)}.modal-backdrop{-webkit-backdrop-filter:blur(3px);background:#1c191747}.modal{box-shadow:var(--shadow-lg);border-radius:16px}.modal-head{border-bottom:0;gap:8px;padding:16px 16px 12px 20px}.modal-head h2{flex:1;min-width:0;font-size:15px;font-weight:600}.modal-head-extra{flex:none;display:inline-flex}.modal-x{width:30px;height:30px}.modal-body{padding:4px 20px 20px}.modal-foot{border-top:1px solid var(--line);background:var(--panel-2);border-radius:0 0 16px 16px;padding:12px 20px}.canvas-app{--section:transparent;--section-line:transparent;--tile-w:440px;--float-shadow:0 0 0 1px #1c19170f, 0 2px 4px #1c19170a, 0 8px 24px -6px #1c19171a}.file-pill,.gen-bar,.chrome-right,.canvas-controls{box-shadow:var(--float-shadow);-webkit-backdrop-filter:saturate(1.6)blur(10px);background:#ffffffeb;border:0;border-radius:12px}.fp-home:hover,.tb-name-btn:hover,.chip-btn:hover:not(:disabled),.figma-pill:hover,.zoom-pct:hover,.zoom-fit:hover{background:var(--hover)}.tb-name{font-size:13.5px}.gen-bar{border-radius:14px;height:46px;padding:0 6px}.gen-bar:focus-within{box-shadow:0 0 0 1px #8fb4f6, 0 0 0 4px #0b6bf21f, var(--float-shadow)}.tb-request{font-size:13.5px}.tb-request::placeholder{color:#a29d98}.gen-go{border-radius:9px;height:34px;padding:0 14px}.scope-btn{background:var(--canvas);height:34px;color:var(--text);border-radius:9px;padding:0 9px 0 12px;font-size:13px;font-weight:500}.scope-btn:hover{background:#eeedeb}.scope-btn.on{background:var(--ink);color:#fff}.scope-btn.on:hover{background:var(--ink-hover)}.cb-count.has{background:var(--ink)}.chip-btn.on{background:var(--canvas);color:var(--text)}.tb-share{border-radius:9px;height:34px}.canvas-controls{height:42px;padding:0 5px}.seg.mini{background:var(--canvas)}.scope-pop{flex-direction:column;gap:0;width:360px;max-height:min(70vh,620px);padding:0;display:flex;top:calc(100% + 8px);overflow:hidden}.scope-pop .pop-head{border-bottom:1px solid var(--line);align-items:center;padding:14px 16px 10px}.scope-pop .pop-head strong{font-size:13.5px;font-weight:600}.scope-pop .pop-sub{color:var(--muted);font-size:12px}.scope-skills{flex:1;gap:2px;padding:6px;overflow:auto}.scope-skills>li{border-radius:10px}.scope-skills>li.open{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line)}.scope-skill{border-radius:10px;gap:8px;min-height:40px;padding:4px 4px 4px 10px}.scope-skill:hover{background:var(--hover)}.scope-skills>li.open .scope-skill:hover{background:0 0}.scope-skill .check-row{gap:10px;font-size:13.5px}.scope-skill .check-row strong{font-weight:500}.scope-count{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;min-width:40px;font-size:12px}.scope-count.on{color:var(--text);font-weight:500}.scope-cats{gap:0;padding:0 8px 8px 36px}.scope-cats .check-row{border-radius:6px;gap:10px;width:100%;padding:6px 4px;font-size:13px}.scope-cats .check-row:hover{background:#1c191709}.scope-pop .pop-foot{border-top:1px solid var(--line);background:var(--panel-2);justify-content:space-between;align-items:center;padding:10px 12px}.scope-pop input[type=checkbox]{width:15px;height:15px}.canvas-app.free .gallery{gap:112px;padding:40px 0 0}.canvas-app.free .skill{background:0 0;border:0;border-radius:0;padding:0}.canvas-app.free .sec-head{white-space:normal;margin:0 0 36px;position:static;transform:none}.sec-head.skill-head{border-bottom:1px solid var(--line);flex-wrap:nowrap;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:18px;display:flex}.skill-titles{flex-direction:column;gap:6px;min-width:0;display:flex}.sec-tab{letter-spacing:-.035em;color:var(--text);background:0 0;border-radius:0;padding:0;font-size:40px;font-weight:600;line-height:1.05}.sec-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:15px;display:inline-flex}.mode-dot{color:var(--text-2);background:var(--canvas);border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 8px;font-size:13px;font-weight:500;display:inline-flex}.mode-dot:before{content:"";background:var(--ok);border-radius:50%;width:7px;height:7px}.mode-dot.m-demo:before{background:var(--warn-dot)}.mode-dot.m-off:before{background:#b5afa9}.canvas-app.flow .sec-tab{font-size:26px}.canvas-app.flow .sec-meta{font-size:13px}.canvas-app.flow .sec-head.skill-head{flex-wrap:wrap;align-items:flex-start}.group-check{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-2);border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:8px;flex:none;align-items:center;gap:8px;height:30px;padding:0 11px 0 9px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex;position:relative}.group-check:hover{background:var(--hover);border-color:var(--line-2)}.group-check input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.gc-box{background:#fff;border:1.5px solid #a8a29e;border-radius:5px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;transition:background .12s,border-color .12s;display:inline-flex}.group-check input:checked+.gc-box{background:var(--accent);border-color:var(--accent)}.group-check input:checked+.gc-box:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;transform:translateY(-1px)rotate(45deg)}.group-check input:indeterminate+.gc-box{background:var(--accent);border-color:var(--accent)}.group-check input:indeterminate+.gc-box:after{content:"";background:#fff;border-radius:1px;width:8px;height:2px}.group-check input:focus-visible+.gc-box{outline:2px solid var(--accent);outline-offset:2px}.group-check.on{color:var(--accent-ink);background:var(--accent-2);border-color:#bcd3fb}.skill-head .group-check{height:36px;padding:0 14px 0 12px;font-size:14px}.skill-head .gc-box{width:18px;height:18px}.canvas-app.free .skill-cats{gap:64px 48px}.cat-head,.cat-head.tile-head{flex-direction:column;align-items:stretch;gap:6px;margin-bottom:18px;display:flex}.cat-top{align-items:center;gap:12px;min-width:0;display:flex}.cat-top h2{letter-spacing:-.025em;flex:1;min-width:0;font-size:22px;font-weight:600;line-height:1.25}.cat-sub{align-items:center;gap:12px;min-width:0;min-height:30px;display:flex}.cat-sub .cat-status{flex-flow:wrap;flex:1;align-items:baseline;gap:10px;min-width:0;display:flex}.cat-sub>.cat-meta{flex:1}.cat-meta{color:var(--muted);white-space:nowrap;font-size:14px}.cat-status .state{color:var(--text-2);align-items:center;gap:6px;font-size:14px;font-weight:500;display:inline-flex}.cat-status .state.st-ready{color:var(--text-2)}.cat-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:6px;margin-left:auto;position:static;background:0 0!important}.cat-actions .btn.small{height:32px;font-size:13.5px}.cat:is(:hover,:focus-within) .tile-head .cat-actions{background:0 0}.stack-toggle{border-color:var(--line-2);min-width:96px;font-weight:500}.stack-toggle.is-open{background:var(--ink);border-color:var(--ink);color:#fff}.stack-toggle.is-open:hover:not(:disabled){background:var(--ink-hover);border-color:var(--ink-hover)}.cat-note{background:var(--panel-2);border-color:var(--line);border-radius:10px;padding:8px 12px;font-size:13px}.canvas-app.free .cat.cat-row.is-open{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.canvas-app.free .cat.cat-row.is-open .cat-head{margin-bottom:20px}.deck-face{background:var(--canvas);border-radius:8px}.deck-layer.top .deck-face{box-shadow:0 0 0 1px #1c191714,0 8px 24px -6px #1c191724}.deck:hover .deck-layer.top .deck-face{box-shadow:0 0 0 1px #1c191724,0 14px 32px -8px #1c191733}.deck-foot{color:var(--muted);padding-top:4px;font-size:13.5px}.deck-sel{background:var(--accent);color:#fff;border-radius:999px;padding:2px 9px 2px 7px;font-size:12px}.deck-run{background:#fffffff2;border-radius:10px;box-shadow:0 0 0 1px #1c19170f,0 4px 12px #1c191714}.cards{gap:20px}.card-media{border-radius:8px;box-shadow:0 0 0 1px #1c191714}.ocard:hover .card-media{box-shadow:0 0 0 1px #1c191724,0 10px 28px -8px #1c19172e}.ocard.selected .card-media{box-shadow:0 0 0 2.5px var(--accent), 0 10px 28px -8px #0b6bf247}.card-open{background:var(--canvas)}.check-box{border-radius:7px}.card-foot{gap:8px;padding:2px 2px 0;font-size:13.5px}.card-opt{color:var(--text);font-weight:600}.fig-chip{background:var(--canvas);font-size:11.5px}.fig-chip.f-not-sent{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.fig-chip.f-pending{background:var(--accent-2);color:var(--accent-ink)}.qa-badge{font-size:11.5px}.need-face{border-color:var(--line-2);background:#fff;border-radius:10px}.earlier-batch{border-color:var(--line);border-radius:12px}.blocked-box,.needs-input{border-color:var(--line);box-shadow:var(--shadow);border-radius:14px}.sel-bar{-webkit-backdrop-filter:blur(10px);background:#fffffff5;border:0;border-radius:14px;flex-wrap:nowrap;gap:6px;padding:6px;bottom:20px;box-shadow:0 0 0 1px #1c191714,0 12px 32px -8px #1c19173d,0 2px 6px #1c19170f}.sel-count{color:var(--text-2);margin:0 6px 0 2px;font-size:13.5px}.sel-count strong{color:var(--text);font-variant-numeric:tabular-nums}.sel-from{color:var(--muted)}.sel-sep{background:var(--line);flex:none;width:1px;height:22px;margin:0 4px}.sel-clear{color:var(--muted)}@media (width<=900px){.sel-bar{flex-wrap:wrap}.sel-from{display:none}}.modal.share-modal{max-width:520px}.share-modal .modal-head{padding-bottom:8px}.sh-copy{color:var(--accent-ink);gap:6px;font-weight:500}.sh-copy:hover:not(:disabled){background:var(--accent-2)!important}.sh-body{flex-direction:column;gap:14px;display:flex}.sh-scope{width:100%;display:flex}.sh-scope button{flex:1;justify-content:center}.sh-cat{width:100%}.sh-invite{align-items:flex-start;gap:8px;display:flex}.sh-to{border:1px solid var(--line);cursor:text;background:#fff;border-radius:10px;flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;min-height:40px;padding:4px 4px 4px 10px;transition:border-color .15s,box-shadow .15s;display:flex}.sh-to:focus-within{border-color:#8fb4f6;box-shadow:0 0 0 3px #0b6bf224}.sh-to input{background:0 0;border:0;flex:1;min-width:140px;padding:6px 2px;font-size:13.5px;box-shadow:none!important}.sh-to .sh-role{color:var(--text-2);background-color:#0000;border:0;border-radius:7px;height:30px;padding:6px 26px 6px 8px;font-size:13px;box-shadow:none!important}.sh-to .sh-role:hover{background-color:var(--hover)}.sh-send{border-radius:10px;height:40px;padding:0 18px}.share-chip{background:var(--canvas);border-radius:6px;align-items:center;gap:4px;padding:3px 4px 3px 8px;font-size:12.5px;display:inline-flex}.share-chip button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:4px;padding:0 3px;font-size:14px;line-height:1}.share-chip button:hover{color:var(--text);background:#1c191714}.sh-msg{border-radius:10px;min-height:64px;font-size:13.5px}.sh-access h3{color:var(--text-2);letter-spacing:-.005em;margin:4px 0 6px;font-size:13px;font-weight:600}.sh-list{flex-direction:column;margin:0 -8px;padding:0;list-style:none;display:flex}.sh-list>li{border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:7px 8px;display:flex}.sh-list>li:hover{background:var(--panel-2)}.sh-list.compact>li{min-height:40px}.sh-avatar,.sh-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:inline-flex}.sh-icon{background:var(--canvas);color:var(--text-2)}.sh-who{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.sh-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.sh-you{color:var(--muted);font-weight:400}.sh-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.sh-pick{color:var(--text-2);background-color:#0000;border:0;height:30px;padding:0 26px 0 8px;font-size:13px;box-shadow:none!important}.sh-pick:hover{background-color:var(--hover)}.sh-role-fixed{color:var(--muted);padding:0 10px;font-size:13px}.sh-others{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:10px;display:flex}.sh-foot{color:var(--muted);border-top:1px solid var(--line);margin:0;padding-top:10px;font-size:12.5px}.share-result{margin:0}.share-result p{margin:0 0 8px}.tile-head .cat-actions{margin-left:auto;padding-left:0;position:static;transform:none}.tile-head .cat-status .state,.cat-row .cat-head .cat-status .state{font-size:14px}.cat-status .state.st-partial{color:var(--warn)}.cat-status .state.st-failed{color:var(--err)}.earlier-toggle{color:var(--muted);margin-top:6px}.toast,.toast.success,.toast.error{background:var(--ink);border-radius:12px;padding:10px 10px 10px 14px;box-shadow:0 0 0 1px #ffffff0f,0 12px 32px -8px #1c191766}.toast:before{content:"";background:#a8a29e;border-radius:50%;flex:none;width:8px;height:8px}.toast.success:before{background:#4ade80}.toast.error:before{background:#f87171}.sh-pick{flex:none;width:116px}.canvas-app.free .skill-cats{grid-template-columns:repeat(var(--cols,3), var(--tile-w));justify-content:start}.canvas-app.free .skill-cats>.cat.cat-row{width:max-content;min-width:100%}.canvas-app.free .cards>.ocard{width:calc(var(--r) * var(--row-h,270px));flex:none;min-width:0;max-width:none}.tile-head .cat-top h2{font-size:20px}.cat-actions .btn.icon-only{justify-content:center;width:30px;padding:0}.card-media,.deck-face,.card-open,.pv-canvas,.list-thumb,.rev-img,.tray-thumb,.project-thumb,.project-card-thumb,.sk-thumb{border-radius:0}.deck-run{border-radius:0;bottom:0;left:0;right:0;box-shadow:0 -1px #1c191714}.deck.small .deck-run{bottom:0;left:0;right:0}.card-check{z-index:auto;flex:none;width:18px;height:18px;position:relative;top:auto;left:auto}.card-check .check-box{box-shadow:none;opacity:1;background:#fff;border:1.5px solid #a8a29e;border-radius:5px}.card-check:hover .check-box{border-color:var(--text-2)}.card-check input:checked+.check-box:after{border-width:0 2px 2px 0;width:5px;height:9px;transform:translateY(-1px)rotate(45deg)}.card-foot .card-demo,.deck-foot .card-demo{letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;font-size:10.5px;position:static}.deck-foot .deck-sel{padding:1px 8px 1px 6px;font-size:12px;position:static}.deck-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sh-lead{color:var(--text-2);margin:0;font-size:13.5px}.sh-help{color:var(--muted);margin:-6px 0 0;font-size:12.5px}.studio-share .sh-pick{width:132px}.ph-share{height:32px;padding:0 14px}.sh-to input{flex:110px;min-width:110px}.sh-to input::-webkit-calendar-picker-indicator{display:none!important}.sh-to .sh-role{flex:none;width:auto;margin-left:auto}.badge.paid{background:var(--warn-bg);color:var(--warn);border:1px solid #f0d49b}.conn.paid-on{background:var(--warn-bg);border-color:#f0d49b}.paid-confirm .notice{margin:0}.paid-confirm .danger-btn:disabled{opacity:.45}
