@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-latin-BwkfbSeq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-latin-ext-DpK-iCPk.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-latin-6fWv1k7M.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext-DIC32ArD.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--background: #0b0b0d;--raised: #0f0f12;--card: #151518;--inner: #1b1b1f;--elevated: #232328;--line: #222227;--line-strong: #34343b;--foreground: #f4f4f5;--muted: #a1a1aa;--faint: #66666f;--primary: #6b6bf7;--primary-foreground: #ffffff;--success: #34c46a;--warning: #f2b544;--danger: #ef5350;--accent: var(--primary);--shot-blue: #4f9cff;--shot-green: #3fb56f;--shot-orange: #f0962f;--shot-purple: #c46bdd;--shot-red: #e5605c;--shot-teal: #2fb8ad;--shot-yellow: #d9a821;--shot-pink: #e0679f;--flap-face-top: #1f1f25;--flap-face-bottom: #16161b;--flap-hinge: #060607;--flap-dur: 80ms;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--r-xs: 4px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--radius: var(--r-xl);--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "Cascadia Mono", Menlo, Consolas, monospace;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 28px;--fs-3xl: 40px;--fs-prose: 16px;--fs-rail: var(--fs-prose);--shadow-card: 0 1px 2px rgb(0 0 0 / .35);--shadow-pop: inset 0 1px 0 rgb(255 255 255 / .05), 0 12px 32px rgb(0 0 0 / .5), 0 2px 6px rgb(0 0 0 / .35);--shadow-sheet: inset 0 1px 0 rgb(255 255 255 / .05), 0 24px 64px rgb(0 0 0 / .55), 0 4px 12px rgb(0 0 0 / .4);--ease-out: cubic-bezier(.25, 1, .4, 1);--ease-spring: cubic-bezier(.34, 1.45, .64, 1);--dur-fast: .14s;--dur-base: .24s;color-scheme:dark}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}html,body,#root{height:100%;margin:0;overscroll-behavior:none}body{font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.45;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss03"}h1,h2,h3{font-family:var(--font-sans);font-weight:600;letter-spacing:-.02em;line-height:1.15}button{font:inherit;color:inherit;padding:0;border:0;background:none;cursor:pointer}button:disabled{cursor:default;opacity:.35}button:not(:disabled):active{scale:.97}input,textarea,select{font:inherit}button,input,textarea,select{transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),scale var(--dur-fast) var(--ease-out)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:color-mix(in srgb,var(--primary) 40%,transparent)}.muted{color:var(--muted)}.faint{color:var(--faint)}.row{display:flex;align-items:center;gap:var(--sp-2)}.spacer{flex:1}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.label{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);white-space:nowrap}.label-dot{color:var(--line-strong)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.flap,.tile{--h: var(--flap-h, 22px);--w: var(--flap-w, 16px);--fs: var(--flap-fs, 12px);--r: var(--flap-r, 4px);--gap: var(--flap-gap, 2px);display:inline-flex;gap:var(--gap);vertical-align:middle;font-family:var(--font-mono);font-weight:600;font-feature-settings:"zero" 1;text-transform:uppercase;line-height:1;color:var(--foreground);-webkit-user-select:none;user-select:none}.flap--xs,.tile--xs{--flap-h: 20px;--flap-w: 14px;--flap-fs: 11px;--flap-r: 3px;--flap-gap: 2px;--flap-hinge: rgb(0 0 0 / .35);font-weight:500}.flap--sm,.tile--sm{--flap-h: 24px;--flap-w: 17px;--flap-fs: 13px;--flap-r: 4px;--flap-gap: 2px;--flap-hinge: rgb(0 0 0 / .45);font-weight:500}.flap--md,.tile--md{--flap-h: 30px;--flap-w: 22px;--flap-fs: 16px;--flap-r: 5px;--flap-gap: 3px}.flap--lg,.tile--lg{--flap-h: 64px;--flap-w: 48px;--flap-fs: 34px;--flap-r: 7px;--flap-gap: 6px}.fc,.tile>span{position:relative;width:var(--w);height:var(--h);flex:none;border-radius:var(--r);perspective:240px;box-shadow:0 1px 1px #00000080,0 0 0 1px #ffffff0a}.tile>span{display:grid;place-items:center;font-size:var(--fs);background:linear-gradient(var(--flap-face-top) 50%,var(--flap-face-bottom) 50%)}.fc:after,.tile>span:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background:var(--flap-hinge);z-index:3;pointer-events:none}.fc-half{position:absolute;left:0;right:0;height:50%;overflow:hidden}.fc-half>span{position:absolute;left:0;width:100%;height:var(--h);line-height:var(--h);text-align:center;font-size:var(--fs)}.fc-top{top:0;border-radius:var(--r) var(--r) 0 0;background:var(--flap-face-top);box-shadow:inset 0 1px #ffffff12}.fc-top>span{top:0}.fc-bottom{bottom:0;border-radius:0 0 var(--r) var(--r);background:var(--flap-face-bottom)}.fc-bottom>span{bottom:0}.fc-leaf{position:absolute;left:0;right:0;top:0;height:50%;transform-origin:50% 100%;transform-style:preserve-3d;z-index:2;animation:flap-drop var(--flap-dur) cubic-bezier(.55,0,1,.45) forwards}.fc-leaf .fc-half{top:0;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.fc-leaf .fc-front{border-radius:var(--r) var(--r) 0 0;background:var(--flap-face-top);box-shadow:inset 0 1px #ffffff12}.fc-leaf .fc-front>span{top:0}.fc-leaf .fc-back{transform:rotateX(180deg);border-radius:0 0 var(--r) var(--r);background:var(--flap-face-bottom)}.fc-leaf .fc-back>span{bottom:0}.fc-leaf .fc-front:after,.fc--flipping .fc-bottom:before{content:"";position:absolute;inset:0;background:#00000073;pointer-events:none}.fc-leaf .fc-front:after{animation:flap-shade-in var(--flap-dur) linear forwards}.fc--flipping .fc-bottom:before{animation:flap-shade-out var(--flap-dur) linear forwards}@keyframes flap-drop{0%{transform:rotateX(0)}to{transform:rotateX(-180deg)}}@keyframes flap-shade-in{0%{opacity:0}to{opacity:1}}@keyframes flap-shade-out{0%{opacity:1}to{opacity:0}}.bit{--h: var(--flap-h, 22px);--w: var(--flap-w, 16px);--r: var(--flap-r, 4px);position:relative;display:inline-block;flex:none;width:var(--bit-w, 12px);height:var(--bit-h, 16px);border-radius:var(--bit-r, 3px);background:var(--bit, var(--elevated));vertical-align:middle;box-shadow:0 1px 1px #00000080,inset 0 1px #ffffff38}.bit:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background:#00000080}.bit--hollow{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-strong)}.bit--hollow:after{display:none}.bit--sm{--bit-w: 9px;--bit-h: 12px;--bit-r: 2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:32px;padding:0 var(--sp-3);border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);color:var(--foreground);font-size:var(--fs-sm);font-weight:500;white-space:nowrap;box-shadow:inset 0 1px #ffffff0a}.btn:not(:disabled):hover{background:var(--elevated);border-color:var(--line-strong)}.btn.primary{background:var(--primary);border-color:transparent;color:var(--primary-foreground);box-shadow:inset 0 1px #ffffff2e,0 1px 2px #0006}.btn.primary:not(:disabled):hover{background:color-mix(in srgb,var(--primary) 88%,white)}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted);box-shadow:none}.btn.ghost:not(:disabled):hover{background:var(--elevated);color:var(--foreground);border-color:transparent}.btn.sm{height:28px;padding:0 var(--sp-2);font-size:var(--fs-xs);border-radius:var(--r-sm)}.btn.danger:not(:disabled):hover{background:color-mix(in srgb,var(--danger) 18%,var(--card));border-color:color-mix(in srgb,var(--danger) 50%,var(--line));color:var(--danger)}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--r-md);color:var(--muted);background:transparent}.icon-btn:not(:disabled):hover{background:var(--elevated);color:var(--foreground)}.icon-btn.sm{width:26px;height:26px;border-radius:var(--r-sm)}.icon-chip{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:var(--r-md);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.icon-chip.sm{width:22px;height:22px;border-radius:var(--r-sm)}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);height:20px;padding:0 var(--sp-2);border-radius:var(--r-xs);background:var(--inner);border:1px solid var(--line);color:var(--faint);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase}.input,.profile-name,.kanban-rename,.bub-link-input{width:100%;height:32px;padding:0 var(--sp-3);border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--inner);color:var(--foreground);font-size:var(--fs-sm);box-shadow:inset 0 1px 2px #00000040}.input::placeholder,.profile-name::placeholder,.bub-link-input::placeholder{color:var(--faint)}.input:focus,.profile-name:focus,.kanban-rename:focus,.bub-link-input:focus{outline:none;border-color:var(--primary);box-shadow:inset 0 1px 2px #00000040,0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}select.share-role-select{height:32px;padding:0 var(--sp-2);border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--inner);color:var(--muted);font-size:var(--fs-xs)}.segmented{position:relative;display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-md);background:var(--raised);border:1px solid var(--line);box-shadow:inset 0 1px 2px #0000004d}.segmented button{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 var(--sp-3);border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);font-weight:500;transition:color var(--dur-fast) var(--ease-out)}.segmented button:not(:disabled):hover{color:var(--foreground)}.segmented button[aria-current=true],.segmented button[aria-pressed=true]{color:var(--foreground)}.segmented:not(:has(.segmented-thumb)) button[aria-current=true],.segmented:not(:has(.segmented-thumb)) button[aria-pressed=true]{background:var(--elevated);box-shadow:inset 0 1px #ffffff0f,0 1px 2px #0006}.segmented-thumb{position:absolute;top:3px;bottom:3px;left:0;z-index:0;border-radius:var(--r-sm);background:var(--elevated);box-shadow:inset 0 1px #ffffff0f,0 1px 2px #0006;pointer-events:none}.segmented.is-settled .segmented-thumb{transition:transform var(--dur-base) var(--ease-out),width var(--dur-base) var(--ease-out)}.segmented.sm button,.segmented--sm button{height:22px;padding:0 var(--sp-2);font-size:var(--fs-xs)}.blockmenu,.bubble,.shot-menu,.slash-menu,.profile-pop{background:var(--card);border:1px solid var(--line-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-pop)}.app{height:100%;display:grid;grid-template-rows:auto 1fr;min-height:0}.app>*{min-height:0}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--sp-4);height:52px;padding:0 var(--sp-4);border-bottom:1px solid var(--line);background:var(--raised);-webkit-app-region:drag}.topbar button,.topbar input,.topbar [role=dialog]{-webkit-app-region:no-drag}.app.mac .topbar{padding-left:84px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.topbar-right{justify-content:flex-end}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:var(--fs-md);letter-spacing:-.01em;color:var(--foreground)}.brand-mark{--bit: var(--primary);--bit-w: 14px;--bit-h: 18px;--bit-r: 4px}.crumb-sep{color:var(--line-strong);font-size:var(--fs-md);padding:0 2px}.topbar-title{font-size:var(--fs-md);color:var(--muted);max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-title--btn,.topbar-title--input{height:28px;padding:0 var(--sp-2);margin-left:calc(-1 * var(--sp-2));border-radius:var(--r-sm);text-align:left}.topbar-title--btn:hover{background:var(--elevated);color:var(--foreground)}.topbar-title--input{width:18rem;border:1px solid var(--primary);background:var(--inner);color:var(--foreground);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.topbar-title--input:focus{outline:none}.save-flap{margin:0 var(--sp-2);opacity:.85}.save-flap.saved{color:color-mix(in srgb,var(--success) 80%,var(--foreground))}.save-flap.error{color:var(--danger)}.save-flap.saving{color:var(--warning)}.profile-menu{position:relative;display:inline-flex}.profile-chip{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fffffff0;font-size:var(--fs-xs);font-weight:700;box-shadow:inset 0 1px #fff3;transition:box-shadow var(--dur-fast) var(--ease-out)}.profile-chip:hover,.profile-chip[aria-expanded=true]{box-shadow:inset 0 1px #fff3,0 0 0 2px var(--raised),0 0 0 4px color-mix(in srgb,var(--foreground) 25%,transparent)}.profile-pop{position:absolute;top:calc(100% + 10px);right:0;z-index:40;width:16rem;padding:var(--sp-4);display:grid;gap:var(--sp-3);animation:pop-in var(--dur-base) var(--ease-spring);transform-origin:top right}.profile-label{display:block}.profile-swatches{display:flex;gap:var(--sp-2)}.profile-swatch{--bit-w: 18px;--bit-h: 22px;--bit-r: 4px;outline:2px solid transparent;outline-offset:2px;transition:transform var(--dur-fast) var(--ease-out),outline-color var(--dur-fast) var(--ease-out)}.profile-swatch:hover{transform:translateY(-1px)}.profile-swatch[aria-pressed=true]{outline-color:var(--foreground)}.profile-prefs{display:grid;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--line)}.switch{display:inline-flex;align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--foreground)}.switch-track{position:relative;display:inline-block;width:34px;height:20px;border-radius:var(--r-sm);background:var(--raised);border:1px solid var(--line-strong);box-shadow:inset 0 1px 2px #00000059;transition:border-color var(--dur-fast) var(--ease-out)}.switch-thumb{--bit-w: 12px;--bit-h: 14px;--bit-r: 3px;--bit: var(--line-strong);position:absolute;top:2px;left:2px;transition:transform var(--dur-base) var(--ease-spring),background-color var(--dur-fast) var(--ease-out)}.switch[aria-checked=true] .switch-track{border-color:color-mix(in srgb,var(--primary) 60%,var(--line-strong))}.switch[aria-checked=true] .switch-thumb{--bit: var(--primary);transform:translate(14px)}.profile-account{padding-top:var(--sp-3);border-top:1px solid var(--line)}.profile-signin-row,.profile-account{display:flex;flex-direction:column;gap:var(--sp-2)}.profile-signin-row{flex-direction:row;align-items:center}.profile-account>.profile-email{font-size:var(--fs-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-link{align-self:flex-start;flex:none;height:28px;padding:0 var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:500;color:var(--foreground);background:var(--elevated);border:1px solid var(--line)}.profile-link:not(:disabled):hover{border-color:var(--line-strong)}.profile-notice{margin:0;font-size:var(--fs-xs);color:var(--faint)}.presence-stack{display:inline-flex;align-items:center;margin-right:var(--sp-1)}.presence-chip{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--raised);margin-left:-7px;color:#fffffff0;font-size:10px;font-weight:700}.presence-chip:first-child{margin-left:0}.presence-more{margin-left:var(--sp-1);font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--faint)}.unread-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--primary);box-shadow:0 0 6px color-mix(in srgb,var(--primary) 70%,transparent)}.comment-box--unread{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}.rail-toggle{display:inline-flex;align-items:center;gap:var(--sp-1);position:absolute;top:-2.4rem;right:0;z-index:5;height:24px;padding:0 var(--sp-2);border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--inner);border:1px solid var(--line)}.rail-toggle:hover,.rail-toggle.active{color:var(--foreground);background:var(--elevated)}.rail-resolved{display:flex;flex-direction:column;gap:.35rem}.rail-resolved .comment-box{opacity:.75}.mention{--mention-color: var(--primary);display:inline;color:color-mix(in srgb,var(--mention-color) 70%,white);background:color-mix(in srgb,var(--mention-color) 18%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--mention-color) 22%,transparent);border-radius:var(--r-xs);padding:0 4px;font-weight:600;white-space:nowrap}.comment-prose .mention{cursor:default}.mention-menu{min-width:14rem}.mention-item{gap:.55rem}.mention-item .comment-avatar{width:22px;height:22px;font-size:.66rem}.mention-item-name{flex:1;font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-item-email{font-size:.68rem;color:var(--faint);max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-box--compact{padding:.35rem .6rem .4rem}.comment-box--compact .comment-text{margin-top:.15rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.comment-box--compact .comment-more{display:none}.comment-replies-count{display:inline-flex;align-items:center;gap:.3rem;margin-top:.25rem;font-size:var(--fs-xs);color:var(--muted)}.dialog-scrim{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--dur-base) var(--ease-out)}.dialog{width:min(28rem,calc(100vw - 3rem));padding:var(--sp-5);border-radius:var(--r-xl);background:var(--card);border:1px solid var(--line-strong);box-shadow:var(--shadow-sheet);animation:pop-in var(--dur-base) var(--ease-spring)}.dialog-head{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4)}.dialog-head h2{margin:0;flex:1;font-size:var(--fs-lg);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-name{color:var(--muted);font-weight:500}.share-invite{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4)}.share-invite .profile-name{flex:1}.share-members{display:flex;flex-direction:column;gap:var(--sp-2);max-height:16rem;overflow-y:auto}.share-row{display:flex;align-items:center;gap:var(--sp-3);min-height:36px}.share-email{flex:1;font-size:var(--fs-sm);color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-row--pending .share-email{color:var(--muted)}.inbox{position:relative;display:inline-flex}.inbox-badge{position:absolute;top:2px;right:2px;min-width:15px;height:15px;padding:0 4px;border-radius:9999px;background:var(--primary);color:#fff;font-size:.6rem;font-weight:700;line-height:15px;text-align:center;pointer-events:none}.inbox-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:22rem;max-height:24rem;overflow-y:auto;padding:.4rem;border-radius:12px;background:var(--card);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop)}.inbox-head{display:flex;align-items:center;justify-content:space-between;padding:.3rem .5rem .4rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint)}.inbox-item{display:grid;grid-template-columns:auto 1fr;gap:.55rem;width:100%;padding:.5rem;border:0;border-radius:9px;background:transparent;color:var(--foreground);text-align:left;cursor:pointer}.inbox-item:hover{background:var(--elevated)}.inbox-item--unread{background:color-mix(in srgb,var(--primary) 7%,transparent)}.inbox-item .comment-avatar{width:24px;height:24px;font-size:.7rem;margin-top:1px}.inbox-line{font-size:var(--fs-sm);line-height:1.35}.inbox-line b{font-weight:600}.inbox-project{color:var(--muted)}.inbox-snippet{margin-top:.15rem;font-size:.75rem;color:var(--muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.inbox-time{margin-left:.4rem;font-size:.68rem;color:var(--faint)}.inbox-empty{padding:.9rem .5rem 1rem;font-size:var(--fs-sm);color:var(--faint);text-align:center}.share-sub{display:block;font-size:.68rem;color:var(--faint)}.share-avatar--pending{background:var(--elevated);color:var(--muted)}.role-badge{display:inline-flex;align-items:center;gap:var(--sp-1);height:22px;padding:0 var(--sp-2);border-radius:var(--r-xs);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--elevated);white-space:nowrap}.share-error{margin-top:var(--sp-3);color:var(--danger)}.shared-strip{display:grid;gap:var(--sp-3)}.shared-strip-title{display:flex;align-items:center;gap:var(--sp-2);margin:0}.shared-strip-row{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.shared-card{display:inline-flex;align-items:center;gap:var(--sp-3);height:40px;padding:0 var(--sp-3) 0 var(--sp-4);border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.shared-card:hover{border-color:var(--line-strong);background:var(--inner)}.shared-card-name{font-size:var(--fs-sm);font-weight:500;color:var(--foreground)}.board{overflow-y:auto;padding:var(--sp-10) var(--sp-8) var(--sp-12);animation:rung-in var(--dur-base) var(--ease-out)}.board-inner{display:grid;gap:var(--sp-8)}.board-header{display:flex;align-items:flex-end;gap:var(--sp-3)}.board-header h1{margin:0;font-size:var(--fs-2xl)}.board-header .label{margin-bottom:6px;margin-left:var(--sp-2)}.kanban{display:flex;align-items:flex-start;gap:var(--sp-4);overflow-x:auto;padding-bottom:var(--sp-4)}.kanban-column{flex:0 0 17rem;display:grid;gap:var(--sp-3);border-radius:var(--r-lg);padding:var(--sp-2);margin:calc(-1 * var(--sp-2)) 0;transition:background-color var(--dur-fast) var(--ease-out)}.kanban-column.drop{background:var(--raised);box-shadow:inset 0 0 0 1px var(--line)}.kanban-column-header{display:flex;align-items:center;gap:var(--sp-2);min-height:28px;padding:0 var(--sp-1) var(--sp-2);border-bottom:1px solid var(--line)}.kanban-title{font-size:var(--fs-sm);font-weight:600;color:var(--foreground);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--r-xs);padding:2px 4px;margin-left:-4px}.kanban-title:hover{background:var(--elevated)}.kanban-count{color:var(--faint)}.kanban-rename{height:26px;padding:0 6px;font-size:var(--fs-sm);font-weight:600;border-radius:var(--r-xs)}.kanban-remove{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:var(--r-xs);color:var(--faint);opacity:0;transition:opacity var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.kanban-column-header:hover .kanban-remove,.kanban-remove:focus-visible{opacity:1}.kanban-remove:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.kanban-cards{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-2);align-content:start;min-height:6rem}.kanban-cards li{cursor:grab;animation:card-in var(--dur-base) var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * 35ms)}.kanban-cards li.dragging .project-card{opacity:.35;transform:scale(.98)}.kanban-cards li:active{cursor:grabbing}.project-card{width:100%;display:grid;padding:0;overflow:hidden;text-align:left;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.project-card:hover{border-color:var(--line-strong);background:var(--inner);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff0a,0 6px 16px #00000059}.project-card strong{font-size:var(--fs-md);font-weight:600;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.project-card-cover{display:grid;place-items:center;width:100%;aspect-ratio:16 / 9;border-bottom:1px solid var(--line);background:var(--inner);color:var(--faint);overflow:hidden}.project-card-cover img{display:block;width:100%;height:100%;object-fit:cover}.project-card-body{display:grid;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4) var(--sp-4);min-width:0}.project-card-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.project-card-go{color:var(--faint);opacity:0;transform:translate(-4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.project-card:hover .project-card-go{opacity:1;transform:none}.kanban-add{flex:0 0 12rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:36px;border-radius:var(--r-md);border:1px dashed var(--line-strong);color:var(--faint);font-size:var(--fs-sm);font-weight:500}.kanban-add:hover{color:var(--muted);border-color:var(--faint);background:var(--raised)}.start{overflow-y:auto;display:grid;align-content:center;justify-items:center;padding:var(--sp-12) var(--sp-6);animation:rung-in var(--dur-base) var(--ease-out)}.start-inner{width:min(44rem,100%);display:grid;gap:var(--sp-10)}.start-hero{display:grid;justify-items:center;gap:var(--sp-5);text-align:center}.start-hero p{margin:0;max-width:28rem;color:var(--muted);font-size:var(--fs-lg);line-height:1.5;text-wrap:balance}.start-actions{display:grid;gap:var(--sp-3)}.start-featured{display:flex;align-items:center;gap:var(--sp-4);width:100%;padding:var(--sp-4) var(--sp-5);text-align:left;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--primary) 40%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,transparent),transparent 60%),var(--card);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.start-featured:hover{border-color:var(--primary);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff0d,0 8px 24px #0006}.start-featured .grow{flex:1;display:grid;gap:2px}.start-featured strong{font-size:var(--fs-md);font-weight:600}.start-featured small{color:var(--muted);font-size:var(--fs-sm)}.start-featured .arrow{color:var(--primary);transition:transform var(--dur-fast) var(--ease-out)}.start-featured:hover .arrow{transform:translate(3px)}.start-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--sp-3)}.start-card{display:grid;gap:var(--sp-2);justify-items:start;padding:var(--sp-4);text-align:left;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-card);transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.start-card:hover{border-color:var(--line-strong);background:var(--inner);transform:translateY(-1px)}.start-card strong{margin-top:var(--sp-1);font-size:var(--fs-md);font-weight:600}.start-card small{color:var(--muted);font-size:var(--fs-sm);line-height:1.45}.canvas-wrap{position:relative;overflow:hidden;background:linear-gradient(to right,rgb(255 255 255 / .022) 1px,transparent 1px) 0 0 / 24px 32px,linear-gradient(to bottom,rgb(255 255 255 / .022) 1px,transparent 1px) 0 0 / 24px 32px,var(--background);animation:rung-in var(--dur-base) var(--ease-out)}.canvas-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 30%,var(--background) 95%)}.canvas-scroll{position:absolute;inset:0;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);align-content:center;gap:var(--sp-5);padding:var(--sp-8);overflow-x:auto;overflow-y:hidden}.pipeline-head{position:sticky;left:0;display:flex;align-items:center;gap:var(--sp-3);justify-content:center;padding:0 var(--sp-1)}.pipeline{display:flex;align-items:stretch;justify-content:safe center;gap:var(--sp-3);min-width:max-content;padding:var(--sp-1) 0}.node{position:relative;animation:card-in var(--dur-base) var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * 35ms);flex:none;width:15.5rem;min-height:10rem;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);text-align:left;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow-card);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.node:hover{border-color:var(--line-strong);background:var(--inner);transform:translateY(-2px);box-shadow:inset 0 1px #ffffff0a,0 10px 28px #00000073}.node.selected{border-color:color-mix(in srgb,var(--primary) 70%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent),var(--shadow-card)}.node-head{display:flex;align-items:center;gap:var(--sp-3)}.node-title{flex:1;font-size:var(--fs-md);font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-go{flex:none;color:var(--faint);opacity:0;transform:translate(-4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.node:hover .node-go,.node:focus-visible .node-go{opacity:1;transform:none}.node-preview{flex:1;margin:0;font-size:var(--fs-sm);line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.node-preview.empty{color:var(--faint)}.node-meta{display:flex;align-items:center;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--line)}.node-meta .label{color:var(--muted)}.node[draggable=true]:active{cursor:grabbing}.node.dragging,.node.dragging:hover{opacity:.35;transform:scale(.98);border-color:var(--line);background:var(--card);box-shadow:var(--shadow-card)}.pipeline.is-reordering .node:not(.dragging):hover{transform:none;border-color:var(--line);background:var(--card);box-shadow:var(--shadow-card)}.pipeline.is-reordering .node .node-go{opacity:0}.node--add{min-height:0;align-items:center;justify-content:center;width:9rem;border-style:dashed;border-color:var(--line-strong);background:transparent;box-shadow:none;color:var(--faint);font-size:var(--fs-sm);font-weight:500}.node--add:hover{color:var(--muted);border-color:var(--faint);background:var(--raised);transform:none;box-shadow:none}.node--add .icon-chip{--accent: var(--muted)}.canvas-empty{position:absolute;inset:0;z-index:1;display:grid;place-content:center;justify-items:center;gap:var(--sp-5);color:var(--faint)}.canvas-empty .empty{color:var(--muted)}.focus-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:0;height:100%}.focus-bar-row{grid-column:1 / -1;padding:var(--sp-5) 0 0}.focus-shell--side{grid-template-columns:18rem minmax(0,1fr)}.focus{min-height:0;overflow-y:auto;container-type:inline-size;animation:rung-in var(--dur-base) var(--ease-out)}.draft-side{display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:var(--sp-5) var(--sp-4) var(--sp-6);background:var(--background);animation:side-in var(--dur-base) var(--ease-out)}@keyframes side-in{0%{opacity:0;transform:translate(-8px)}}.draft-side-head{display:flex;align-items:center;justify-content:space-between;height:32px;padding:0 var(--sp-1) 0 var(--sp-3);margin-bottom:var(--sp-3)}.draft-side-head .draft-side-hide{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.draft-side:hover .draft-side-hide,.draft-side-hide:focus-visible{opacity:1}.draft-tab-row{position:relative;display:flex;align-items:center}.draft-tab-row .draft-tab{flex:1;min-width:0}.draft-tab-more{position:absolute;right:5px;top:5px;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.draft-tab-row:hover .draft-tab-more,.draft-tab-more:focus-visible,.draft-tabs>li.active .draft-tab-more{opacity:1}.draft-tab-row:hover .draft-tab-title,.draft-tabs>li.active .draft-tab-title{padding-right:28px}.draft-rename{height:36px;padding:0 var(--sp-3);font-size:var(--fs-md);font-weight:500;border-radius:var(--r-lg)}.draft-menu{position:fixed;z-index:60;min-width:11rem}.draft-chip{margin-left:var(--sp-1);color:var(--muted)}.draft-tabs,.draft-outline{list-style:none;margin:0;padding:0;display:grid;gap:2px}.draft-tabs>li,.draft-outline>li{min-width:0}.draft-tab{display:flex;align-items:center;gap:var(--sp-2);width:100%;height:36px;padding:0 var(--sp-3);border-radius:var(--r-lg);color:var(--muted);font-size:var(--fs-md);font-weight:500;text-align:left}.draft-tab:hover{background:var(--elevated);color:var(--foreground)}.draft-tabs>li.active .draft-tab{background:var(--card);color:var(--foreground);box-shadow:inset 0 1px #ffffff0a,0 1px 2px #00000059}.draft-tab-num{flex:none;width:1.1rem;font-size:var(--fs-xs);color:var(--faint);text-align:right}.draft-tab-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-tab-kind{flex:none;color:var(--faint);opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.draft-tab:hover .draft-tab-kind,.draft-tabs>li.active .draft-tab-kind{opacity:1}.draft-outline{margin:var(--sp-1) 0 var(--sp-3) 1.4rem;padding-left:var(--sp-2);border-left:1px solid var(--line)}.draft-outline button{display:block;width:100%;padding:7px var(--sp-3);border-radius:var(--r-md);color:var(--muted);font-size:var(--fs-sm);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-outline button:hover{background:var(--elevated);color:var(--foreground)}.draft-outline-l2 button{padding-left:calc(var(--sp-3) + .9rem)}.draft-outline-l3 button{padding-left:calc(var(--sp-3) + 1.8rem);color:var(--faint)}.side-toggle{margin-right:var(--sp-1)}.focus-shell--side .focus-inner{margin-left:max(var(--sp-6),calc((100cqw - 43rem - var(--rail-seam) - var(--rail-col)) / 2));margin-right:0}@keyframes card-in{0%{opacity:0;transform:translateY(10px)}}@keyframes rung-in{0%{opacity:0;transform:translateY(6px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.96) translateY(-4px)}}@keyframes fade-in{0%{opacity:0}}.focus-inner{max-width:43rem;margin:0 auto;padding:var(--sp-4) var(--sp-6) 5rem;display:grid;gap:var(--sp-4)}.focus-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--sp-2);min-height:32px;max-width:43rem;margin:0 auto;padding:0 var(--sp-6)}.focus-bar-left,.focus-bar-right{display:flex;align-items:center;gap:var(--sp-1);min-width:0}.focus-bar-right{justify-content:flex-end}.side-toggle.is-ghost{visibility:hidden;pointer-events:none}.crumb-btn{display:inline-flex;align-items:center;gap:var(--sp-1);height:28px;padding:0 var(--sp-2) 0 var(--sp-1);margin-left:calc(-1 * var(--sp-1));border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);font-weight:500}.crumb-btn:hover{color:var(--foreground);background:var(--elevated)}.crumb{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:var(--fs-sm)}.step-flap{margin:0 var(--sp-1)}.focus-head{display:flex;align-items:center;gap:var(--sp-3);margin-top:var(--sp-2)}.head-tools{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.focus-head:hover .head-tools,.focus-head:focus-within .head-tools{opacity:1}.head-tools .icon-btn:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.focus-title{flex:1;min-width:0;font-family:var(--font-sans);font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--foreground);background:transparent;border:0;border-radius:var(--r-md);padding:var(--sp-1) var(--sp-2);margin-left:calc(-1 * var(--sp-2))}.focus-title::placeholder{color:var(--faint)}.focus-title:hover{background:color-mix(in srgb,var(--foreground) 4%,transparent)}.focus-title:focus{background:color-mix(in srgb,var(--foreground) 6%,transparent);outline:none}.focus-title:read-only:hover{background:transparent}.page-editor .ProseMirror{min-height:55vh;outline:none;line-height:1.7;font-size:var(--fs-prose);padding:.15rem .4rem 30vh;margin-left:-.4rem}.page-editor .ProseMirror>*+*{margin-top:.8em}.page-editor .ProseMirror p{margin:0}.page-editor .ProseMirror>*+p{margin-top:.8em}.editor--board .page-editor .ProseMirror>*+*{margin-top:1.9em}.editor--board .page-editor .ProseMirror>*+h1{margin-top:2.25em}.editor--board .page-editor .ProseMirror>*+h2{margin-top:2.1em}.editor--board .page-editor .ProseMirror>*+h3{margin-top:1.95em}.prose h1,.prose h2,.prose h3{font-family:var(--font-sans);font-weight:600;letter-spacing:-.02em;line-height:1.25;margin:0}.prose h1{font-size:1.75rem}.prose h2{font-size:1.375rem}.prose h3{font-size:1.125rem}.page-editor .ProseMirror>*+h1{margin-top:1.35em}.page-editor .ProseMirror>*+h2{margin-top:1.2em}.page-editor .ProseMirror>*+h3{margin-top:1.05em}.prose ul,.prose ol{margin:0;padding-left:1.4rem}.prose li{margin:.15em 0}.prose li::marker{color:var(--muted)}.prose ul[data-type=taskList]{list-style:none;padding-left:.1rem}.prose ul[data-type=taskList] li{display:flex;align-items:baseline;gap:.55rem}.prose ul[data-type=taskList] li>label{flex:0 0 auto;translate:0 .12rem}.prose ul[data-type=taskList] li>div{flex:1}.prose ul[data-type=taskList] input[type=checkbox]{appearance:none;width:.95rem;height:.95rem;border:1.5px solid var(--line-strong);border-radius:4px;background:transparent;cursor:pointer;display:grid;place-content:center;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.prose ul[data-type=taskList] input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.prose ul[data-type=taskList] input[type=checkbox]:checked:before{content:"";width:.55rem;height:.32rem;border-left:2px solid var(--background);border-bottom:2px solid var(--background);transform:rotate(-45deg) translate(1px,-1px)}.prose ul[data-type=taskList] li[data-checked=true]>div{color:var(--faint);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--faint) 60%,transparent)}.prose blockquote{margin:0;padding:.1rem 0 .1rem .9rem;border-left:2px solid var(--line-strong);color:var(--muted);font-style:italic}.prose code{font-family:var(--font-mono);font-size:.85em;background:var(--inner);border:1px solid var(--line);border-radius:var(--r-xs);padding:.1em .35em}.prose pre{margin:0;padding:.7rem .9rem;background:var(--inner);border:1px solid var(--line);border-radius:var(--r-md);overflow-x:auto}.prose pre code{background:transparent;border:0;padding:0;font-family:var(--font-mono);font-size:var(--fs-sm);line-height:1.55}.prose hr{border:0;border-top:1px solid var(--line-strong);margin:1.1rem 0}.prose a{color:var(--primary);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--primary) 40%,transparent);text-underline-offset:2px}.page-editor .ProseMirror>p[data-edit-note]{margin-left:1.6rem;font-style:italic;color:var(--muted)}.prose .is-empty:before{content:attr(data-placeholder);color:var(--faint);float:left;height:0;pointer-events:none}.doc-stats{display:flex;align-items:center;gap:var(--sp-4);padding-bottom:var(--sp-3);margin-bottom:var(--sp-2);border-bottom:1px solid var(--line)}.doc-stat{display:inline-flex;align-items:center;gap:var(--sp-2)}.doc-stat .label{color:var(--muted)}.gutter{display:flex;align-items:center;padding-right:28px}.gutter-btn{display:grid;place-items:center;width:24px;height:26px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--faint);cursor:pointer}.gutter-btn:hover{background:var(--elevated);color:var(--muted)}.gutter-grip{cursor:grab;background:var(--elevated);width:20px}.gutter-grip:hover{background:color-mix(in srgb,var(--elevated) 86%,var(--foreground) 14%);color:var(--foreground)}.gutter-grip:active{cursor:grabbing}.blockmenu{position:fixed;z-index:60;min-width:12rem;padding:.3rem;animation:pop-in var(--dur-base) var(--ease-spring);transform-origin:top left}.bm-section{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:.4rem .5rem .3rem}.bm-turn{display:flex;flex-wrap:wrap;gap:2px;padding:0 .25rem .25rem}.bm-icon{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.bm-icon:hover{background:var(--elevated);color:var(--foreground)}.bm-sep{height:1px;background:var(--line);margin:.25rem}.bm-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.42rem .5rem;border:0;border-radius:var(--r-sm);background:transparent;color:var(--foreground);font-size:var(--fs-sm);text-align:left;cursor:pointer}.bm-item:hover{background:var(--elevated)}.bm-item--danger{color:var(--danger)}.bm-item--danger:hover{background:color-mix(in srgb,var(--danger) 14%,transparent)}.bubble{display:flex;flex-direction:column;padding:4px;z-index:55}.bub-row{display:flex;align-items:center;gap:2px}.bub-sep{width:1px;align-self:stretch;margin:2px 3px;background:var(--line)}.bub-btn{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.bub-btn:hover{background:var(--elevated);color:var(--foreground)}.bub-btn.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 18%,transparent)}.bub-turn{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border:0;border-radius:7px;background:transparent;color:var(--foreground);font-size:var(--fs-sm);font-weight:500;cursor:pointer}.bub-turn:hover{background:var(--elevated)}.bub-sub{display:flex;flex-direction:column;gap:1px;margin-top:4px;padding-top:4px;border-top:1px solid var(--line);max-height:15rem;overflow-y:auto}.bub-subitem{display:flex;align-items:center;gap:.55rem;padding:.4rem .5rem;border:0;border-radius:7px;background:transparent;color:var(--foreground);font-size:var(--fs-sm);text-align:left;cursor:pointer}.bub-subitem:hover{background:var(--elevated)}.bub-subitem svg{color:var(--muted)}.bub-sub--link{flex-direction:row;align-items:center;gap:.3rem;padding:4px 2px 2px}.bub-link-input{flex:1;min-width:13rem;height:28px;font-size:var(--fs-xs)}.bub-link-set{height:28px;padding:0 .6rem;border:0;border-radius:var(--r-sm);background:var(--primary);color:var(--primary-foreground);font-size:var(--fs-xs);font-weight:600;cursor:pointer}.editor-columns{position:relative}.focus-inner{--rail-seam: 3.1rem;--rail-avail: calc((100cqw - 43rem) / 2 - var(--rail-seam) - 1.5rem);--rail-col: clamp(12rem, var(--rail-avail), 20.5rem)}.rail{position:absolute;top:0;left:calc(100% + var(--rail-seam));width:var(--rail-col)}.row-washes,.rail{transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out),visibility 0s linear var(--dur-base)}.editor--board .row-washes,.editor--board .rail{opacity:1;transform:translate(0);visibility:visible;transition-delay:0s}.editor:not(.editor--board) .row-washes,.editor:not(.editor--board) .rail{opacity:0;visibility:hidden;pointer-events:none}.editor:not(.editor--board) .rail{transform:translate(14px)}.note-peeks{position:absolute;top:0;left:0;width:100%;height:0}.editor--board .note-peeks{display:none}.note-peek{position:absolute;left:calc(100% + .55rem);display:flex;justify-content:flex-start;z-index:6;cursor:pointer}.note-peek-chip{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 4px;border-radius:var(--r-xs);border:1px solid color-mix(in srgb,var(--chip-accent, var(--line)) 35%,var(--line));background:color-mix(in srgb,var(--chip-accent, var(--inner)) 9%,var(--inner));color:var(--chip-accent, var(--faint));transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.note-peek:hover .note-peek-chip{background:color-mix(in srgb,var(--chip-accent, var(--elevated)) 16%,var(--elevated));border-color:color-mix(in srgb,var(--chip-accent, var(--line-strong)) 55%,var(--line-strong));color:var(--chip-accent, var(--foreground))}.mode-flip{position:absolute;top:0;bottom:0;left:calc(100% + .2rem);width:2.85rem;z-index:5;cursor:pointer}.mode-flip-btn{position:absolute;top:0;left:.26rem;transform:translateY(45vh);display:flex;align-items:center;justify-content:center;width:1.55rem;height:3.4rem;padding:0;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);pointer-events:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-out),transform .12s var(--ease-out),color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out)}.mode-flip:hover .mode-flip-btn,.mode-flip-btn:focus-visible{opacity:1;color:var(--foreground)}.mode-flip.mode-flip--yield .mode-flip-btn{opacity:0}.mode-flip:active .mode-flip-btn{background:var(--elevated);border-color:var(--line-strong)}.row-washes{position:absolute;top:0;left:0;width:100%;height:0;pointer-events:none}.row-wash{position:absolute;left:-1.3rem;width:3px;border-radius:999px;border-block:3px solid transparent;background-clip:padding-box}.cell-break{display:inline-block;width:0}.editor--board .cell-break{display:block;width:100%;height:0;margin:0 0 .55em}.break-zones{position:absolute;top:0;left:0;width:100%;height:0}.editor:not(.editor--board) .break-zones{display:none}.break-zone{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center}.break-zone:before,.break-zone:after{content:"";flex:1;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.break-zone--split:before,.break-zone--split:after{border-top:1px dashed var(--line-strong)}.break-zone--edge:before,.break-zone--edge:after{border-top:1px solid var(--line)}.break-zone--merged:before,.break-zone--merged:after{border-top:1px dotted var(--line-strong)}.break-remove{display:flex;align-items:center;gap:.3rem;height:1.45rem;margin:0 .5rem;padding:0 .5rem;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--muted);opacity:0;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.break-remove-label{font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:500;letter-spacing:.06em;line-height:1}.break-zone:hover:before,.break-zone:hover:after{opacity:1;transition-delay:.18s}.break-zone:hover .break-remove{opacity:1;transition-delay:.18s,0s,0s}.break-remove:focus-visible{opacity:1}.break-remove:hover{background:var(--elevated);color:var(--foreground)}.flip-flash{position:absolute;z-index:4;border-radius:10px;pointer-events:none;background:color-mix(in srgb,var(--primary) 14%,transparent);opacity:0;animation:flip-flash .85s}@keyframes flip-flash{0%{opacity:0;animation-timing-function:ease-out}12%{opacity:1;animation-timing-function:linear}45%{opacity:.85;animation-timing-function:ease-in-out}to{opacity:0}}.cell-hit{position:absolute;top:0;left:0;right:0;cursor:text;border-radius:12px}.cell-hit--empty{cursor:pointer}.cell-hit--empty:after{content:"+";position:absolute;top:7px;left:0;display:flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--muted);font-size:1.05rem;line-height:1;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);pointer-events:none}.cell-hit--empty:hover:after,.cell-hit--near:after{opacity:1}.shot-zones{position:absolute;top:0;left:0;width:100%;height:0}.editor:not(.editor--board) .shot-zones{display:none}.shot-zone{position:absolute;right:calc(100% + 5rem);width:5.5rem;display:flex;align-items:flex-start;justify-content:flex-end;cursor:pointer}.shot-tag{margin-top:.8rem;padding:0;border:0;background:none;font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--faint);opacity:0;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out)}.shot-zone:hover .shot-tag,.shot-zone--near .shot-tag:not(.shot-tag--unset),.shot-tag:focus-visible{opacity:1}.shot-tag--unset .shot-dot{width:10px;height:13px}.shot-zone:hover .shot-tag--unset .shot-dot{border-color:var(--muted)}.page-editor .ProseMirror .comment-hl{background:color-mix(in srgb,var(--warning) 15%,transparent);border-radius:4px;box-shadow:0 0 0 2px color-mix(in srgb,var(--warning) 15%,transparent);box-decoration-break:clone;-webkit-box-decoration-break:clone}.comment-box{padding:.7rem .85rem .75rem;border-radius:var(--r-lg);background:var(--inner);border:1px solid var(--line)}.comment-box{cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.comment-box+.comment-box{margin-top:.35rem}.page-editor .ProseMirror .comment-hl--flash{background:color-mix(in srgb,var(--warning) 32%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--warning) 32%,transparent)}.comment-box--peer{border-color:color-mix(in srgb,var(--peer-accent, var(--muted)) 45%,var(--line));box-shadow:-3px 0 color-mix(in srgb,var(--peer-accent, var(--muted)) 55%,transparent),0 6px 18px #0000004d;transform:translate(-4px)}.page-editor .ProseMirror .comment-hl--peer:not(.comment-hl--flash){background:color-mix(in srgb,var(--warning) 27%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--warning) 27%,transparent)}@media(prefers-reduced-motion:reduce){.comment-box--peer{transform:none}}.comment-head{display:flex;align-items:center;gap:.45rem;min-height:22px}.comment-avatar{display:grid;place-items:center;width:20px;height:20px;flex:none;border-radius:50%;color:#ffffffeb;font-size:.62rem;font-weight:700}.comment-author{font-size:var(--fs-rail);font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comment-time{flex:none;font-family:var(--font-mono);font-size:var(--fs-2xs);color:var(--faint);white-space:nowrap}.comment-chip{position:absolute;top:.75rem;right:.85rem;padding:.1rem .4rem;border-radius:var(--r-xs);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transition:opacity var(--dur-fast) var(--ease-out)}.comment-box{position:relative}.comment-box:has(>.comment-chip) .comment-head{padding-right:5rem}.comment-box:not(.comment-box--draft):not(.comment-box--compact):hover .comment-chip,.comment-box:not(.comment-box--draft):not(.comment-box--compact):focus-within .comment-chip{opacity:0}.comment-actions{position:absolute;top:.55rem;right:.7rem;display:flex;gap:1px;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.comment-reply{position:relative}.comment-reply .comment-actions{top:0;right:0}.comment-box:hover .comment-actions{opacity:1}.comment-actions .icon-btn{width:22px;height:22px}.comment-more{display:block;margin-top:.2em;padding:0;border:0;background:none;color:var(--faint);font-size:.85em;cursor:pointer}.comment-more:hover{color:var(--muted);text-decoration:underline}.comment-text{margin:.3rem 0 0;font-size:var(--fs-rail);line-height:1.5}.comment-text,.cell-static{white-space:break-spaces;overflow-wrap:break-word}.comment-text p,.comment-edit .ProseMirror p{margin:0}.comment-text p+p,.comment-text ul+p,.comment-text ol+p,.comment-edit .ProseMirror p+p{margin-top:.45em}.comment-text ul,.comment-text ol,.comment-edit .ProseMirror ul,.comment-edit .ProseMirror ol{margin:.3em 0 0;padding-left:1.2em}.comment-text li+li,.comment-edit .ProseMirror li+li{margin-top:.15em}.comment-text li>p,.comment-edit .ProseMirror li>p{margin:0}.comment-text code,.comment-edit .ProseMirror code{padding:.08em .3em;border-radius:4px;background:color-mix(in srgb,var(--foreground) 9%,transparent);font-family:var(--font-mono);font-size:.85em}.comment-text--clamp{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.comment-edit{display:block;margin-top:.3rem}.comment-edit .ProseMirror{outline:none;font-size:var(--fs-rail);line-height:1.5;color:var(--foreground)}.comment-reply .comment-edit .ProseMirror{font-size:var(--fs-md)}.comment-edit .is-empty:before{content:attr(data-placeholder);color:var(--faint);float:left;height:0;pointer-events:none}.comment-box--draft{cursor:default;border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}.comment-replies{display:grid;gap:.35rem}.comment-replies--root{margin-top:.45rem;padding-top:.4rem;border-top:1px solid var(--line)}.comment-thread-node>.comment-replies:not(.comment-replies--root){margin-top:.35rem;margin-left:.5rem;padding-left:.55rem;border-left:1px solid var(--line)}.comment-thread-node>.comment-replies--flat{margin-left:0;padding-left:0;border-left:0}.comment-thread-node+.comment-thread-node{margin-top:.35rem}.comment-avatar--sm{width:16px;height:16px;font-size:.54rem}.comment-reply .comment-text{margin-top:.15rem;font-size:var(--fs-md)}.comment-reply-input{display:none;width:100%;margin-top:.4rem;padding:.25rem 0;border:0;background:transparent;color:var(--foreground);font-size:var(--fs-sm)}.comment-box:focus-within:not(:has(.comment-reply:focus-within))>.comment-reply-input{display:block}.comment-reply:focus-within>.comment-reply-input{display:block}.comment-box:focus,.comment-reply:focus{outline:none}.comment-box:focus-within{border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}.comment-reply-input::placeholder{color:var(--faint)}.comment-reply-cta{text-align:left;color:var(--faint);cursor:text}.comment-reply-cta:hover{color:var(--muted)}.comment-reply-input--open{padding:0}.comment-reply-input--open .comment-edit{margin-top:.15rem}.comment-reply-input:focus{outline:none;border-bottom:1px solid var(--line-strong)}.comment-rail{position:absolute;top:0;left:calc(100% + var(--rail-seam));width:var(--rail-col);animation:comment-rail-in var(--dur-base) var(--ease-out)}@keyframes comment-rail-in{0%{opacity:0}}.comment-group{position:absolute;top:0;left:0;right:0;transition:transform var(--dur-base) var(--ease-out)}@media(prefers-reduced-motion:reduce){.comment-group{transition:none}}.shot-dot{position:relative;display:inline-block;width:9px;height:12px;border-radius:2px;background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-strong)}.shot-dot[style]{box-shadow:0 1px 1px #00000080,inset 0 1px #ffffff38}.shot-dot[style]:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background:#00000080}.shot-menu{position:fixed;z-index:60;min-width:9.5rem;padding:.3rem;display:grid;gap:1px;animation:pop-in var(--dur-base) var(--ease-spring);transform-origin:top left}.shot-item{display:flex;align-items:center;gap:.55rem;padding:.4rem .5rem;border:0;border-radius:var(--r-sm);background:transparent;color:var(--foreground);font-size:var(--fs-sm);text-align:left;cursor:pointer}.shot-item:hover{background:var(--elevated)}.shot-item.active{background:var(--inner)}.shot-item--quiet{color:var(--muted)}.shot-item--quiet svg{color:var(--faint)}.shot-menu-sep{height:1px;margin:.25rem .2rem;background:var(--line)}.shot-edit-row{display:flex;align-items:center;gap:.45rem;padding:.2rem .3rem .2rem .5rem}.shot-edit-row input{flex:1;min-width:8rem;height:26px;padding:0 .45rem;border:1px solid transparent;border-radius:var(--r-xs);background:transparent;color:var(--foreground);font-size:var(--fs-sm);outline:none}.shot-edit-row input:hover{background:var(--inner)}.shot-edit-row input:focus{background:var(--inner);border-color:var(--line-strong)}.shot-swatch{flex:none;width:15px;height:15px;border:0;border-radius:4px;cursor:pointer;box-shadow:0 1px 1px #00000080,inset 0 1px #ffffff38}.cell-card{position:absolute;top:0;left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr);gap:.45rem;padding:0}.cell-notes:has(.cell-static:not(.is-blank)),.cell-notes:has(.ProseMirror){padding:.55rem .7rem .6rem;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-card)}.cell-card--shot .cell-notes:has(.cell-static:not(.is-blank)),.cell-card--shot .cell-notes:has(.ProseMirror){background:color-mix(in srgb,var(--shot) 10%,var(--background))}.cell-prose,.cell-prose .ProseMirror{font-size:var(--fs-rail);line-height:1.5;color:var(--foreground);outline:none}.cell-prose p{margin:0}.cell-prose>*+*,.cell-prose .ProseMirror>*+*{margin-top:.35em}.cell-prose ul,.cell-prose ol{margin:0;padding-left:1.2rem}.cell-prose ul[data-type=taskList]{list-style:none;padding-left:.1rem}.cell-prose ul[data-type=taskList] li{display:flex;align-items:baseline;gap:.45rem}.cell-prose ul[data-type=taskList] li[data-checked=true]>div{color:var(--faint);text-decoration:line-through}.cell-prose code{font-family:var(--font-mono);font-size:.85em;background:var(--inner);border:1px solid var(--line);border-radius:4px;padding:.05em .3em}.cell-prose a:not(.blob-image-dl){display:inline-block;max-width:100%;white-space:nowrap;overflow:clip;text-overflow:ellipsis;vertical-align:bottom;padding:.08em .55em .08em .45em;margin:.12em .18em .12em 0;border-radius:var(--r-sm);background:var(--inner);border:1px solid var(--line);color:var(--muted);text-decoration:none}.cell-prose a:not(.blob-image-dl):before{content:"";display:inline-block;width:.85em;height:.85em;margin-right:.35em;vertical-align:-.08em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a4 4 0 0 0 6 .5l2-2a4 4 0 1 0-6-6l-1 1'/%3E%3Cpath d='M14 11a4 4 0 0 0-6-.5l-2 2a4 4 0 1 0 6 6l1-1'/%3E%3C/svg%3E") no-repeat center / contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a4 4 0 0 0 6 .5l2-2a4 4 0 1 0-6-6l-1 1'/%3E%3Cpath d='M14 11a4 4 0 0 0-6-.5l-2 2a4 4 0 1 0 6 6l1-1'/%3E%3C/svg%3E") no-repeat center / contain}.cell-prose a:not(.blob-image-dl):hover{color:var(--foreground);border-color:var(--line-strong)}.cell-static{cursor:text;min-height:1.2em}.cell-static.is-blank{display:none}.cell-prose .is-empty:before{content:attr(data-placeholder);color:var(--faint);float:left;height:0;pointer-events:none}.blob-image{display:block;position:relative}.blob-image img{display:block;width:100%;border-radius:var(--r-md);border:1px solid var(--line);cursor:zoom-in}.blob-image-dl{position:absolute;top:7px;right:7px;display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#0000008c;color:var(--foreground);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.blob-image:hover .blob-image-dl,.blob-image-dl:focus-visible{opacity:1}.blob-image-dl:hover{background:#000000c7}.lightbox{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:color-mix(in srgb,var(--background) 62%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:zoom-out;animation:lightbox-in var(--dur-base) var(--ease-out)}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox-frame{position:relative;cursor:default;animation:lightbox-pop var(--dur-base) var(--ease-out)}@keyframes lightbox-pop{0%{transform:scale(.97)}to{transform:scale(1)}}.lightbox-frame img{display:block;max-width:min(86vw,1400px);max-height:86vh;border-radius:var(--r-lg);border:1px solid var(--line-strong);box-shadow:0 24px 80px #0000008c}.lightbox-dl{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#0000008c;color:var(--foreground);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background var(--dur-fast) var(--ease-out)}.lightbox-dl:hover{background:#000000c7}.blob-image-loading{display:block;width:100%;aspect-ratio:16 / 9;border-radius:var(--r-md);background:var(--inner);border:1px solid var(--line)}.slash-popup{position:fixed;z-index:60}.slash-menu{min-width:15rem;max-height:20rem;overflow-y:auto;padding:.3rem;display:grid;gap:.1rem;animation:pop-in var(--dur-base) var(--ease-spring);transform-origin:top left}.slash-item{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;border:0;border-radius:var(--r-sm);background:transparent;color:var(--foreground);text-align:left;cursor:pointer}.slash-item.active{background:var(--elevated)}.slash-icon{display:grid;place-content:center;width:1.9rem;height:1.9rem;border-radius:var(--r-sm);background:var(--inner);border:1px solid var(--line);color:var(--muted)}.slash-text{display:grid;line-height:1.3}.slash-title{font-size:var(--fs-sm);font-weight:500}.slash-hint{font-size:var(--fs-xs);color:var(--faint)}.slash-empty{padding:.5rem .6rem;color:var(--faint);font-size:var(--fs-sm)}.crash{display:grid;place-content:center;gap:.6rem;height:100%;text-align:center;justify-items:center}.crash-title{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em;margin:0}.crash-detail{color:var(--muted);font-size:.85rem;margin:0;max-width:26rem}.crash-error{font-size:.72rem;color:var(--faint);background:var(--inner);border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-mono);padding:.5rem .8rem;max-width:34rem;overflow-x:auto}.empty{color:var(--faint);font-size:var(--fs-sm);margin:0}.error{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);padding:.55rem .9rem;border-radius:var(--r-md);box-shadow:var(--shadow-pop);background:color-mix(in srgb,var(--danger) 16%,var(--card));border:1px solid color-mix(in srgb,var(--danger) 45%,var(--line));color:var(--foreground);font-size:var(--fs-sm);animation:pop var(--dur-base) var(--ease-spring)}@keyframes pop{0%{opacity:0;transform:translate(-50%) scale(.94)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.focus-inner--wide{max-width:80rem}.kind-chip{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}.kind-chip:not(:disabled):hover{background:color-mix(in srgb,var(--accent) 28%,transparent)}.kind-chip:disabled{cursor:default}.kind-menu{min-width:16rem}.kind-menu-text{display:grid;flex:1}.kind-menu-text small{font-size:var(--fs-xs);color:var(--faint)}.kind-menu-check{color:var(--primary)}.canvas-empty-actions{display:flex;gap:var(--sp-2)}.node-kind{flex:none;color:var(--faint)}.pkg{display:grid;gap:1.6rem;padding-bottom:20vh}.pkg-bar{position:sticky;top:-1.25rem;z-index:5;display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;padding:.6rem 0 .7rem;margin:-.25rem 0 0;background:var(--background);border-bottom:1px solid var(--line)}.pkg-bar .spacer{flex:1}.pkg-channel{display:inline-flex;align-items:center;gap:.45rem;height:30px;padding:0 .7rem 0 .35rem;border-radius:var(--r-md);border:1px solid var(--line);background:var(--card)}.pkg-channel:focus-within{border-color:var(--line-strong)}.pkg-channel-avatar{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--elevated),var(--line-strong));flex:none}.pkg-channel input{width:9.5rem;background:transparent;border:0;color:var(--foreground);font-size:var(--fs-sm)}.pkg-channel input:focus{outline:none}.pkg-channel input::placeholder{color:var(--faint)}.pkg-toggle{display:inline-flex;align-items:center;gap:.35rem;height:28px;padding:0 .65rem;border-radius:var(--r-sm);border:1px solid var(--line);background:transparent;color:var(--muted);font-size:var(--fs-xs);font-weight:500;white-space:nowrap}.pkg-toggle:hover{color:var(--foreground);border-color:var(--line-strong)}.pkg-toggle[aria-pressed=true]{background:var(--elevated);border-color:var(--line-strong);color:var(--foreground)}.pkg-duration input{width:3.4rem;height:28px;padding:0 .5rem;border-radius:var(--r-sm);border:1px solid var(--line);background:transparent;color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;text-align:center}.pkg-duration input:focus{outline:none;border-color:var(--line-strong);color:var(--foreground)}.pkg-empty{display:grid;justify-items:center;gap:.8rem;max-width:26rem;margin:3rem auto;color:var(--faint);text-align:center}.pkg-empty p{margin:0;font-size:var(--fs-sm);line-height:1.5;color:var(--muted)}.pkg-block{display:grid;gap:1rem;padding:1.1rem .6rem .4rem;margin:0 -.6rem;border-radius:var(--r-lg);border-top:1px solid var(--line);transition:background-color var(--dur-fast) var(--ease-out)}.pkg-block:first-of-type{border-top-color:transparent}.pkg-block--over{background:color-mix(in srgb,var(--primary) 9%,transparent);outline:1.5px dashed color-mix(in srgb,var(--primary) 60%,transparent);outline-offset:-1px}.pkg-block-head{display:flex;align-items:center;gap:.6rem}.pkg-block-num{position:relative;display:grid;place-items:center;width:17px;height:24px;flex:none;border-radius:var(--r-xs);background:linear-gradient(var(--flap-face-top) 50%,var(--flap-face-bottom) 50%);color:var(--foreground);font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:500;font-feature-settings:"zero" 1;box-shadow:0 1px 1px #00000080,0 0 0 1px #ffffff0a}.pkg-block-num:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;margin-top:-.5px;background:#00000073}.pkg-block-name{flex:1;min-width:0;font-family:var(--font-sans);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em;color:var(--foreground);background:transparent;border:0;border-radius:var(--r-md);padding:.15rem .4rem;margin-left:-.4rem}.pkg-block-name:hover{background:color-mix(in srgb,var(--foreground) 5%,transparent)}.pkg-block-name:focus{background:color-mix(in srgb,var(--foreground) 7%,transparent);outline:none}.pkg-block-name::placeholder{color:var(--faint)}.pkg-block-meta{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);white-space:nowrap}.pkg-block-tools{display:flex;gap:.1rem;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.pkg-block:hover .pkg-block-tools,.pkg-block:focus-within .pkg-block-tools{opacity:1}.pkg-block-tools .icon-btn{width:26px;height:26px}.pkg-block-tools .icon-btn:disabled{opacity:.35}.pkg-block-tools .pkg-danger:not(:disabled):hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.pkg-work{display:grid;grid-template-columns:minmax(18rem,5fr) minmax(0,7fr);gap:1.4rem;align-items:start}@media(max-width:900px){.pkg-work{grid-template-columns:1fr}}.pkg-col{display:grid;gap:.45rem;min-width:0}.pkg-col-label{display:flex;align-items:baseline;gap:.6rem;font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--faint)}.pkg-col-hint{font-family:var(--font-sans);font-weight:400;text-transform:none;letter-spacing:0;font-size:var(--fs-xs);color:var(--faint)}.pkg-titles{display:grid;gap:.1rem}.pkg-title-row{display:flex;align-items:center;gap:.35rem;padding:.1rem .25rem .1rem 0;border-radius:var(--r-md);transition:background-color var(--dur-fast) var(--ease-out)}.pkg-title-row:hover,.pkg-title-row:focus-within{background:color-mix(in srgb,var(--foreground) 4%,transparent)}.pkg-grip{display:grid;place-items:center;width:16px;height:22px;margin-left:-.15rem;color:var(--faint);background:transparent;border:0;cursor:grab;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.pkg-title-row:hover .pkg-grip{opacity:1}.pkg-grip:active{cursor:grabbing}.pkg-pick{display:grid;place-items:center;width:22px;height:22px;flex:none;border:0;border-radius:50%;background:transparent;cursor:pointer}.pkg-pick-dot{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--line-strong);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.pkg-pick:hover .pkg-pick-dot{border-color:var(--muted)}.pkg-pick[aria-pressed=true] .pkg-pick-dot{background:var(--primary);border-color:var(--primary);transform:scale(1.15)}.pkg-title-input{flex:1;min-width:0;background:transparent;border:0;color:var(--foreground);font-size:var(--fs-md);line-height:1.5;padding:.2rem .1rem}.pkg-title-row--on .pkg-title-input{font-weight:550}.pkg-title-input:focus{outline:none}.pkg-title-input::placeholder{color:var(--faint)}.pkg-count{flex:none;min-width:1.6rem;text-align:right;font-family:var(--font-mono);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;color:var(--faint)}.pkg-count.warn{color:var(--warning)}.pkg-count.bad{color:var(--danger);font-weight:600}.pkg-x{display:grid;place-items:center;width:20px;height:20px;flex:none;border:0;border-radius:50%;background:transparent;color:var(--faint);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.pkg-title-row:hover .pkg-x,.pkg-title-row:focus-within .pkg-x{opacity:1}.pkg-x:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.pkg-add-row{display:inline-flex;align-items:center;gap:.3rem;justify-self:start;margin:.15rem 0 0 1.55rem;padding:.2rem .5rem .2rem .35rem;border:0;border-radius:var(--r-sm);background:transparent;color:var(--faint);font-size:var(--fs-sm);cursor:pointer}.pkg-add-row:hover{color:var(--foreground);background:color-mix(in srgb,var(--foreground) 5%,transparent)}.pkg-dragging{opacity:.4}.pkg-title-row.pkg-over{box-shadow:0 -2px 0 0 var(--primary)}.pkg-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.8rem .7rem}.pkg-thumb{position:relative;display:grid;gap:.3rem;min-width:0}.pkg-thumb-img{position:relative;display:block;width:100%;aspect-ratio:16 / 9;padding:0;border:0;border-radius:var(--r-md);overflow:hidden;background:var(--inner);cursor:pointer;outline:2px solid transparent;outline-offset:2px;transition:outline-color var(--dur-fast) var(--ease-out)}.pkg-thumb-img:hover{outline-color:var(--line-strong)}.pkg-thumb--on .pkg-thumb-img{outline-color:var(--primary)}.pkg-thumb-img img{display:block;width:100%;height:100%;object-fit:cover}.pkg-thumb-loading{display:block;width:100%;height:100%;background:linear-gradient(110deg,var(--inner),var(--elevated),var(--inner));background-size:200% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.pkg-thumb-num{position:absolute;top:6px;left:6px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-xs);background:#000000a6;color:#fff;font-family:var(--font-mono);font-size:var(--fs-2xs);font-weight:600;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}.pkg-thumb-badge{position:absolute;bottom:6px;left:6px;padding:1px 6px;border-radius:var(--r-xs);background:var(--primary);color:var(--primary-foreground);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.pkg-thumb-x{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:#000000a6;color:#fff;cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.pkg-thumb:hover .pkg-thumb-x{opacity:1}.pkg-thumb-x:hover{background:var(--danger)}.pkg-thumb-note{width:100%;background:transparent;border:0;padding:0 .15rem;color:var(--muted);font-size:var(--fs-xs)}.pkg-thumb-note:focus{outline:none;color:var(--foreground)}.pkg-thumb-note::placeholder{color:var(--faint);opacity:.7}.pkg-thumb.pkg-over .pkg-thumb-img{box-shadow:-4px 0 0 0 var(--primary)}.pkg-thumb-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;aspect-ratio:16 / 9;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:transparent;color:var(--muted);font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.pkg-thumb-add small{font-size:var(--fs-xs);font-weight:400;color:var(--faint)}.pkg-thumb-add:hover{border-color:var(--primary);color:var(--primary)}.pkg-add{display:inline-flex;align-items:center;gap:.4rem;justify-self:start;height:36px;padding:0 1rem 0 .8rem;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:transparent;color:var(--muted);font-size:var(--fs-sm);font-weight:500;cursor:pointer}.pkg-add:hover{border-color:var(--primary);color:var(--primary)}.pkg-stage{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.yt{--yt-font: Roboto, "YouTube Sans", "Segoe UI", Arial, Helvetica, sans-serif;--yt-bg: #0f0f0f;--yt-fg: #f1f1f1;--yt-muted: #aaa;--yt-chip: #272727;--yt-chip-on: #f1f1f1;--yt-chip-on-fg: #0f0f0f;--yt-ph: #272727;--yt-ph-fg: #8a8a8a;--yt-avatar: #3d3d3d;--yt-frame: #1c1c1c;font-family:var(--yt-font);background:var(--yt-bg);color:var(--yt-fg);padding:1.1rem 1.25rem 1.4rem;-webkit-font-smoothing:antialiased}.yt--light{--yt-bg: #fff;--yt-fg: #0f0f0f;--yt-muted: #606060;--yt-chip: #f2f2f2;--yt-chip-on: #0f0f0f;--yt-chip-on-fg: #fff;--yt-ph: #e5e5e5;--yt-ph-fg: #7a7a7a;--yt-avatar: #c9c9c9;--yt-frame: #e8e8e8}.yt-chips{display:flex;gap:.6rem;margin-bottom:1.2rem;overflow:hidden;white-space:nowrap}.yt-chip{padding:.3rem .75rem;border-radius:8px;background:var(--yt-chip);color:var(--yt-fg);font-size:.82rem;font-weight:500;flex:none}.yt-chip--on{background:var(--yt-chip-on);color:var(--yt-chip-on-fg)}.yt-title{font-size:1rem;font-weight:500;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.yt-title--empty{color:var(--yt-muted);font-style:italic;font-weight:400}.yt-byline{font-size:.78rem;line-height:1.35;color:var(--yt-muted)}.yt-avatar{display:block;width:36px;height:36px;flex:none;border-radius:50%;background:var(--yt-avatar)}.yt-avatar--sm{width:24px;height:24px}.yt-thumb{position:relative;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;background:var(--yt-ph)}.yt-thumb img{display:block;width:100%;height:100%;object-fit:cover}.yt-thumb-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--yt-ph-fg);font-size:.8rem}.yt-duration{position:absolute;right:6px;bottom:6px;padding:1px 4px;border-radius:4px;background:#000c;color:#fff;font-size:.72rem;font-weight:500;line-height:1.35;letter-spacing:.02em}.yt-thumb--decoy{display:grid;place-items:center;container-type:inline-size}.yt-decoy-blob{position:absolute;right:-12%;bottom:-30%;width:60%;aspect-ratio:1;border-radius:50%;filter:blur(18px)}.yt-decoy-word{position:relative;font-weight:900;font-size:clamp(1.1rem,12cqw,2.2rem);letter-spacing:-.02em;color:#fff;text-shadow:0 2px 12px rgb(0 0 0 / .55);padding:0 8%;text-align:center;line-height:1}.yt-safe{position:absolute;inset:0;pointer-events:none}.yt-safe-inner{position:absolute;inset:7%;border:1.5px dashed rgb(80 220 120 / .9);border-radius:4px}.yt-safe-badge{position:absolute;right:0;bottom:0;width:28%;height:22%;background:#ff505047;border:1px solid rgb(255 80 80 / .7)}.yt-card{min-width:0}.yt-card--pick{cursor:pointer}.yt-card--marked .yt-thumb{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.yt-card--marked.yt-card--picked .yt-thumb{outline-color:var(--primary)}.yt-card--pick:hover .yt-thumb{outline:2px solid var(--primary);outline-offset:2px}.yt-meta{display:flex;gap:.75rem;margin-top:.75rem}.yt-metatext{min-width:0}.yt-metatext .yt-byline:first-of-type{margin-top:.25rem}.yt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem 1rem}@media(max-width:1000px){.yt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.yt-searchbar{display:flex;max-width:34rem;margin:0 auto 1.4rem;height:40px}.yt-searchbox{flex:1;display:flex;align-items:center;padding:0 1rem;border:1px solid var(--yt-chip);border-right:0;border-radius:20px 0 0 20px;background:color-mix(in srgb,var(--yt-bg) 92%,var(--yt-fg));color:var(--yt-fg);font-size:.95rem}.yt-searchbtn{display:grid;place-items:center;width:64px;border-radius:0 20px 20px 0;background:var(--yt-chip);color:var(--yt-fg)}.yt-list{display:grid;gap:1.1rem;max-width:62rem}.yt-card--search{display:flex;gap:1rem}.yt-card--search .yt-thumb-col{flex:0 0 clamp(14rem,42%,22.5rem)}.yt-card--search .yt-title{font-size:1.15rem;font-weight:400}.yt-body{min-width:0;display:grid;align-content:start;gap:.25rem}.yt-chan{display:flex;align-items:center;gap:.5rem;margin:.35rem 0;font-size:.78rem;color:var(--yt-muted)}.yt-snippet{font-size:.78rem;color:var(--yt-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-watch{display:grid;grid-template-columns:minmax(0,1fr) 402px;gap:1.5rem}@media(max-width:1000px){.yt-watch{grid-template-columns:1fr}.yt-player{display:none}}.yt-player{display:grid;gap:.75rem;align-content:start}.yt-player-screen{aspect-ratio:16 / 9;border-radius:12px;background:var(--yt-frame)}.yt-player-title{height:1.1rem;width:70%;border-radius:4px;background:var(--yt-frame)}.yt-player-row{display:flex;align-items:center;gap:.75rem}.yt-player-line{height:.8rem;width:30%;border-radius:4px;background:var(--yt-frame)}.yt-upnext{display:grid;gap:.5rem;align-content:start}.yt-card--watch{display:flex;gap:.5rem}.yt-card--watch .yt-thumb-col{flex:0 0 168px}.yt-card--watch .yt-thumb{border-radius:8px}.yt-card--watch .yt-title{font-size:.88rem}.yt-card--watch .yt-byline{font-size:.75rem}.yt-card--watch .yt-body{gap:.1rem}.yt--mobile{display:grid;place-items:center}.yt-phone{width:390px;max-width:100%;border:8px solid var(--yt-frame);border-radius:34px;overflow:hidden;background:var(--yt-bg);padding:.6rem .75rem 1rem}.yt-phone-top{display:flex;align-items:center;height:40px;padding:0 .2rem}.yt-phone-logo{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;font-size:1.05rem;letter-spacing:-.04em}.yt-phone-play{display:inline-block;position:relative;width:26px;height:18px;border-radius:5px;background:#f03}.yt-phone-play:after{content:"";position:absolute;left:10px;top:4px;border-left:8px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}.yt-chips--phone{margin:.25rem -.75rem .9rem;padding:0 .75rem}.yt-phone-feed{display:grid;gap:1.5rem}.yt-card--mobile .yt-title{font-size:.95rem}.yt-card--mobile .yt-meta{margin-top:.6rem}.pkg-toggle--sm{height:24px;padding:0 .5rem;font-size:var(--fs-2xs)}.pkg-toggle--sm[aria-pressed=false]{color:var(--faint);border-style:dashed}.gate{min-height:100vh;display:grid;justify-items:center;align-content:start;padding:clamp(40px,16vh,160px) 20px 48px;background:var(--background);color:var(--foreground);font-family:var(--font-sans)}.gate-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px;padding:32px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-card)}.gate-brand{margin-bottom:6px}.gate-title{margin:0;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.02em;text-wrap:balance}.gate-lede{margin:0;font-size:var(--fs-md);line-height:1.55;color:var(--muted)}.gate-lede strong{color:var(--foreground);font-weight:500}.gate-form{display:flex;flex-direction:column;gap:8px;margin-top:4px}.gate-input{width:100%;padding:10px 12px;font-family:var(--font-sans);font-size:var(--fs-md);color:var(--foreground);background:var(--inner);border:1px solid var(--line-strong);border-radius:var(--r-md)}.gate-input::placeholder{color:var(--faint)}.gate-input:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-color:transparent}.gate-input-code{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:.04em}.gate-button{padding:10px 14px;font-family:var(--font-sans);font-size:var(--fs-md);font-weight:500;color:var(--primary-foreground);background:var(--primary);border:1px solid transparent;border-radius:var(--r-md);cursor:pointer;transition:filter var(--dur-fast) var(--ease-out)}.gate-button:hover:not(:disabled){filter:brightness(1.08)}.gate-button:disabled{opacity:.55;cursor:default}.gate-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.gate-button-quiet{color:var(--foreground);background:var(--elevated);border-color:var(--line-strong)}.gate-link{align-self:flex-start;padding:0;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--muted);background:none;border:none;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.gate-link:hover{color:var(--foreground)}.gate-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-xs)}.gate-error{margin:0;font-size:var(--fs-sm);line-height:1.5;color:var(--danger)}@media(prefers-reduced-motion:reduce){.gate-button{transition:none}}
