.access-badge{float:right;position:relative;margin:4px 0 8px 16px;z-index:15}.access-pill{display:inline-flex;align-items:center;gap:8px;padding:3px 11px 3px 4px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface-raised);color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;white-space:nowrap}.access-pill:hover{background:var(--hover);color:var(--ink)}.access-stack{display:inline-flex}.access-stack{gap:3px}.access-stack .avatar{width:24px;height:24px;box-shadow:0 0 0 2px var(--surface-raised)}.access-stack .access-more{background:var(--hover);color:var(--ink)}.access-panel{position:absolute;right:0;top:calc(100% + 8px);width:330px;max-width:calc(100vw - 32px);background:var(--surface-raised);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:14px;font-size:var(--text-md);color:var(--ink)}.access-panel-title{font-weight:600;font-size:var(--text-lg);margin:0 0 4px}.access-group h3{display:flex;justify-content:space-between;gap:12px;margin:12px 0 6px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}.access-group h3 span:last-child{text-align:right;font-weight:500}.access-group ul{list-style:none;margin:0;padding:0}.access-group li{display:flex;align-items:center;gap:9px;padding:4px 0}.access-group li .avatar{width:24px;height:24px;flex-shrink:0}.access-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-note{color:var(--ink-faint);font-size:var(--text-sm)}.access-role{font-size:var(--text-xs);padding:1px 8px;border-radius:999px;white-space:nowrap}.access-role.role-admin{background:var(--accent-soft);color:var(--accent)}.access-role.role-developer{background:var(--warning-soft);color:var(--warning)}.access-role.role-client{background:var(--success-soft);color:var(--success)}.access-manage{display:block;width:100%;text-align:left;margin-top:10px;padding:9px 0 0;border:none;border-top:1px solid var(--line);background:none;cursor:pointer;color:var(--accent);font-size:var(--text-sm);font-weight:500}.access-manage:hover{text-decoration:underline}@media(max-width:640px){.access-badge{float:none;display:inline-block;margin:0 0 10px}.access-panel{right:auto;left:0}}:root{--ink: #4a3524;--ink-soft: #6b4d31;--ink-faint: #82613f;--line: #efe2c8;--line-strong: #c9b088;--surface: #fdf8ee;--surface-alt: #f9efdd;--surface-raised: #fffdf6;--hover: #f1e2c6;--accent: #b23a0c;--accent-soft: #f9e3d4;--danger: #b62a10;--danger-soft: #f8ded3;--warning: #8a5f0d;--warning-soft: #fbedcf;--success: #16794c;--success-soft: #e2eedd;--on-solid: #ffffff;--on-solid-rgb: 255, 255, 255;--on-tint: #4a3524;--tint-lift: #f9efdd;--marque-nom: #4a3524;--marque-baseline: #8a6a4c;--ink-rgb: 74, 53, 36;--accent-rgb: 178, 58, 12;--danger-rgb: 182, 42, 16;--success-rgb: 22, 121, 76;--scrim-rgb: 15, 15, 15;--shadow: 0 1px 2px rgba(var(--scrim-rgb), .06), 0 4px 12px rgba(var(--scrim-rgb), .06);--radius: 8px;--text-xs: 11px;--text-sm: 12px;--text-md: 13px;--text-lg: 14px;--text-xl: 16px;--text-2xl: 20px;--text-3xl: 28px;--text-4xl: 34px;--font-sans: "Inter", ui-sans-serif, -apple-system, "Segoe UI", system-ui, sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-brand: "Nunito", "Inter", sans-serif;--mono: ui-monospace, "Cascadia Mono", Consolas, monospace;font-family:var(--font-sans);color:var(--ink)}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-var.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:Fraunces;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/fraunces-latin-var.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:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/fonts/nunito-latin-var.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}:root[data-theme=dark]{color-scheme:dark;--ink: #f2f0ec;--ink-soft: #b9b7b2;--ink-faint: #a09e99;--line: #2c2c31;--line-strong: #4a4a50;--surface: #1b1b1e;--surface-alt: #141416;--surface-raised: #242428;--hover: #2d2d32;--accent: #f0703c;--accent-soft: #3a2418;--danger: #f5715f;--danger-soft: #3b201b;--warning: #dfa23a;--warning-soft: #3a2c12;--success: #4fbd85;--success-soft: #16301f;--on-solid: #141416;--on-solid-rgb: 20, 20, 22;--on-tint: #141416;--marque-nom: #f2f0ec;--marque-baseline: #c9c2b6;--ink-rgb: 242, 240, 236;--accent-rgb: 240, 112, 60;--danger-rgb: 245, 113, 95;--success-rgb: 79, 189, 133;--scrim-rgb: 0, 0, 0;--shadow: 0 1px 2px rgba(var(--scrim-rgb), .5), 0 8px 24px rgba(var(--scrim-rgb), .45)}:root[data-theme=dark] .column-dot,:root[data-theme=dark] .row-dot,:root[data-theme=dark] .group-swatch,:root[data-theme=dark] .card-accent,:root[data-theme=dark] .progress-fill,:root[data-theme=dark] .avatar-colored{background:color-mix(in srgb,var(--tint) 55%,var(--tint-lift))}:root[data-theme=dark] .project-icon,:root[data-theme=dark] .card-icon{color:color-mix(in srgb,var(--tint) 55%,var(--tint-lift))}:root[data-theme=dark] .chip.priority{color:color-mix(in srgb,var(--tint) 55%,var(--tint-lift));border-color:color-mix(in srgb,var(--tint) 55%,var(--tint-lift))}:root[data-theme=dark] .avatar-colored{color:var(--on-tint)}:root[data-theme=dark] .task-card.blocked{background:rgba(var(--danger-rgb),.1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--surface);font-size:var(--text-lg);line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}.app{display:flex;height:calc(100vh - var(--env-banner-h));height:calc(100dvh - var(--env-banner-h));overflow:hidden}:root{--env-banner-h: 0px}:root.env-preprod{--env-banner-h: 28px}.env-banner{height:var(--env-banner-h);line-height:var(--env-banner-h);background:#c2410c;color:#fff;text-align:center;font-size:var(--text-sm);font-weight:700;letter-spacing:.04em}.main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:auto;background:var(--surface)}.page{padding:40px 48px 64px;max-width:1500px}.page.loading{color:var(--ink-faint)}.page-board-fill{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:20px;max-width:none}.page-board-fill>.page-header,.page-board-fill>.filter-bar,.page-board-fill>.card-options{flex-shrink:0}.page-board-fill>.kanban,.page-board-fill>.gantt{flex:1 1 auto;min-height:0}.sidebar{width:250px;flex-shrink:0;border-right:1px solid var(--line);background:var(--surface-alt);padding:14px 10px 10px;display:flex;flex-direction:column;gap:10px;overflow:visible;min-height:0}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.sidebar-foot{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid var(--line)}.project-filter{display:flex;align-items:center;gap:6px;margin:0 2px 4px;padding:3px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink-faint)}.project-filter input{flex:1;min-width:0;border:0;background:none;padding:2px 0;font-size:var(--text-sm);outline:none}.project-filter:focus-within{border-color:var(--accent)}.sidebar.collapsed .project-filter{display:none}.account-menu{position:relative}.account-card{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;text-align:left}.account-card:hover,.account-card[aria-expanded=true]{border-color:var(--line-strong)}.account-card-who{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.account-card-who strong{font-size:var(--text-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-card-who span{font-size:var(--text-xs);color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-card-chevron{color:var(--ink-faint);flex-shrink:0}.account-popover{position:absolute;left:0;bottom:calc(100% + 6px);z-index:35;width:290px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 120px);overflow-y:auto;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow);padding:6px}.account-panel{display:flex;flex-direction:column;gap:2px}.account-head{display:flex;align-items:center;gap:10px;padding:6px 8px 10px;margin-bottom:4px;border-bottom:1px solid var(--line)}.account-who{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}.account-who span{font-size:var(--text-sm);color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);padding:8px 8px 2px}.account-theme{margin:2px 8px 4px;align-self:flex-start}.account-theme .segment{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;font-size:var(--text-sm)}.account-panel .view-as{padding:6px 8px 2px}.nav-item.account-logout{border:0;background:none;cursor:pointer;text-align:left;width:100%;margin-top:4px;color:var(--danger);font-size:inherit}.nav-item.account-logout .nav-icon{color:var(--danger)}.nav-item.account-logout:hover{background:var(--danger-soft);color:var(--danger)}.sidebar.collapsed .account-card{justify-content:center;padding:6px 0;border-color:transparent;background:none}.sidebar.collapsed .account-card-who,.sidebar.collapsed .account-card-chevron{display:none}.sidebar.collapsed .account-popover{left:calc(100% + 10px);bottom:0}.sidebar-head{display:flex;align-items:center;gap:2px}.sidebar-head .brand{flex:1;min-width:0}.topbar{display:none;position:sticky;top:0;z-index:20;flex-shrink:0;align-items:center;gap:10px;padding:8px 12px;min-height:44px;background:var(--surface);border-bottom:1px solid var(--line)}.topbar-title{font-weight:600;font-size:var(--text-lg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:inherit;padding:4px 6px;min-width:0}.brand-logo{width:100%;height:auto;display:block}.brand-ball{display:none;width:34px;height:34px;flex-shrink:0}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{position:relative;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;color:var(--ink-soft);text-decoration:none;font-weight:500;min-height:32px}.nav-item:hover,.project-item:hover,.nav-item.active{background:var(--hover);color:var(--ink)}.nav-icon{width:18px;display:inline-flex;justify-content:center;flex-shrink:0}.nav-icon{color:var(--accent)}.sidebar-title.sidebar-title-accent>span{color:var(--accent)}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-section{display:flex;flex-direction:column;gap:4px}.sidebar-title{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.project-item{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:6px;color:var(--ink-soft);text-decoration:none}.project-item.active{background:rgba(var(--ink-rgb),.12);color:var(--ink);font-weight:500}.project-item.active .project-count{color:var(--ink-soft)}.project-icon{width:18px;display:inline-flex;justify-content:center;flex-shrink:0;color:var(--tint, var(--ink-faint))}.project-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-count{font-size:var(--text-xs);color:var(--ink-faint)}.empty-hint{color:var(--ink-faint);font-size:var(--text-sm);padding:6px 8px}.new-project input{width:100%;padding:6px 8px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.me-select{flex:1;min-width:0;padding:4px 6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink-soft);font-size:var(--text-md);cursor:pointer}.me-select:hover:not(:disabled){background:var(--hover);color:var(--ink)}.me-select:disabled{cursor:not-allowed;opacity:.6}.avatar.me-empty,.mini-avatar.me-empty{background:var(--hover);color:var(--ink-faint)}.page-header{margin-bottom:24px}.eyebrow{color:var(--ink-faint);font-size:var(--text-sm);margin:0}.eyebrow:first-letter{text-transform:uppercase}h1{font-family:var(--font-display);font-size:var(--text-3xl);margin:4px 0 6px;font-weight:650;letter-spacing:-.01em}.page-subtitle{color:var(--ink-soft);margin:0 0 16px}.header-actions{display:flex;gap:10px;align-items:center}.search{flex:1;max-width:320px;padding:7px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface-alt)}.search:focus:not(:focus-visible){outline:none;border-color:var(--accent);background:var(--surface)}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}.filter-bar select{border:1px solid var(--line-strong);border-radius:6px;padding:6px 8px;background:var(--surface);font:inherit;color:inherit}.filter-query{position:relative;display:flex;align-items:center;flex:1;min-width:190px;max-width:320px}.filter-query input{width:100%;padding:7px 10px 7px 30px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface-alt);font:inherit}.filter-query input:focus:not(:focus-visible){outline:none;border-color:var(--accent);background:var(--surface)}.filter-icon{position:absolute;left:9px;display:flex;color:var(--ink-faint);pointer-events:none}.filter-count{color:var(--ink-faint);font-size:var(--text-sm);margin-left:auto;white-space:nowrap}.primary{background:var(--accent);color:var(--on-solid);border:none;padding:7px 13px;border-radius:6px;font-weight:500;cursor:pointer}.primary:hover{filter:brightness(.94)}.primary:disabled{opacity:.5;cursor:not-allowed;filter:none}.primary.compact{padding:6px 11px;font-size:var(--text-md)}.ghost{background:transparent;border:1px solid var(--line-strong);padding:6px 11px;border-radius:6px;cursor:pointer;color:var(--ink-soft)}.ghost:hover{background:var(--surface-alt)}.ghost.active{border-color:var(--accent);color:var(--accent)}.ghost:disabled{opacity:.45;cursor:default}.icon-button{background:transparent;border:none;color:var(--ink-faint);cursor:pointer;width:22px;height:22px;border-radius:4px;line-height:1;display:inline-grid;place-items:center;flex-shrink:0}.icon-button:hover{background:var(--hover);color:var(--ink)}.link-danger{background:none;border:none;color:var(--danger);cursor:pointer;font-size:var(--text-sm);padding:0}.empty-state{color:var(--ink-faint);font-style:italic}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.card{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);padding:16px 16px 14px;text-align:left;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;gap:8px;transition:box-shadow .15s,transform .15s}.card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.card-accent{position:absolute;inset:0 auto 0 0;width:3px;background:var(--tint)}.card-head{display:flex;align-items:center;gap:9px}.card-emoji{font-size:var(--text-2xl)}.card-emoji.large{font-size:var(--text-4xl)}.card-icon{display:inline-flex;flex-shrink:0;color:var(--tint, var(--ink-faint))}.card-icon.muted{opacity:.45}.card-title{font-weight:600;font-size:var(--text-xl)}.card-desc{color:var(--ink-soft);font-size:var(--text-md);min-height:18px}.progress-track{height:5px;border-radius:3px;background:var(--line);overflow:hidden}.progress-fill{display:block;height:100%;border-radius:3px;background:var(--tint);transition:width .25s}.card-meta{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--ink-faint)}.composer{border:1px solid var(--line-strong);border-radius:var(--radius);padding:16px;margin-bottom:22px;display:flex;flex-direction:column;gap:10px;background:var(--surface-alt)}.composer-title{border:none;background:transparent;font-size:var(--text-2xl);font-weight:600;padding:2px 0}.composer-desc{border:none;background:transparent;padding:2px 0;color:var(--ink-soft)}.composer-title:focus:not(:focus-visible),.composer-desc:focus:not(:focus-visible){outline:none}.composer-options{display:flex;flex-direction:column;gap:8px}.icon-picker{display:flex;gap:4px;flex-wrap:wrap}.icon-choice{display:inline-flex;align-items:center;gap:4px;border:1px solid transparent;background:var(--surface);border-radius:6px;padding:4px 7px;cursor:pointer;font-size:var(--text-sm);color:var(--ink-soft)}.icon-choice .icon{color:var(--ink)}.icon-choice.active{border-color:var(--accent);background:var(--surface-alt)}.color-picker{display:flex;gap:6px}.color-choice{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer}.color-choice.active{border-color:var(--ink)}.composer-actions{display:flex;justify-content:flex-end;gap:8px}.project-header{margin-bottom:18px}.project-title-row{display:flex;align-items:center;gap:12px}.title-input{font-size:var(--text-3xl);font-weight:700;letter-spacing:-.02em;border:none;background:transparent;padding:2px 4px;border-radius:5px;width:100%;max-width:640px}.title-input:hover{background:var(--surface-alt)}.page-title{font-family:inherit;font-size:var(--text-3xl);font-weight:700;letter-spacing:-.02em;margin:0;padding:2px 4px;line-height:1.25}.page-icon{color:var(--accent)}.title-input:focus:not(:focus-visible){outline:none;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong)}.subtitle-input{border:none;background:transparent;color:var(--ink-soft);font-size:var(--text-lg);width:100%;max-width:640px;padding:2px 4px;border-radius:5px;margin-top:2px}.subtitle-input:hover{background:var(--surface-alt)}.subtitle-input:focus:not(:focus-visible){outline:none;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-strong)}.view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;flex-wrap:wrap}.tabs{display:flex;gap:4px}.tab{display:flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;padding:6px 11px;border-radius:6px;color:var(--ink-soft);font-weight:500}.tab:hover{background:var(--surface-alt)}.tab.active{background:var(--hover);color:var(--ink)}.icon{flex-shrink:0;vertical-align:-2px}.kanban{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding-bottom:18px}.column{flex:1 0 220px;max-width:300px;background:var(--surface-alt);border-radius:var(--radius);padding:8px;display:flex;flex-direction:column;gap:6px;max-height:100%}.column.over{background:var(--accent-soft)}.column-head{display:flex;align-items:center;gap:6px;padding:2px 2px 4px;flex-shrink:0}.column-tools{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .12s}.column .column-head{position:relative}.column .column-name{flex:1 1 auto}.column .column-tools{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--surface-alt);padding-left:6px;border-radius:6px}.column:hover .column-tools,.column:focus-within .column-tools,.column-tools:focus-within{opacity:1}.column-tools .chip.tiny{opacity:.55}.column-tools .chip.done{opacity:1!important}.column-name{flex:0 1 auto;min-width:40px;font-weight:600;font-size:var(--text-md);background:none;border:1px solid transparent;border-radius:5px;padding:2px 4px}.column-name:hover{background:var(--surface-raised)}.column-name:focus:not(:focus-visible){outline:none;background:var(--surface-raised);border-color:var(--accent)}.column-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--tint)}.column-count{font-size:var(--text-xs);color:var(--ink-faint);font-weight:400}.column-blocked{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);color:var(--danger);background:var(--danger-soft);border-radius:4px;padding:1px 5px;white-space:nowrap}.column-body{display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0;padding-bottom:4px}.column-empty{color:var(--ink-faint);font-size:var(--text-sm);text-align:center;padding:10px 0;margin:0}.mark-done{display:none}.add-column{width:200px;flex-shrink:0;border:1px dashed var(--line-strong);background:transparent;border-radius:var(--radius);padding:12px;color:var(--ink-faint);cursor:pointer;text-align:left;display:flex;align-items:center;gap:6px}.add-column:hover{background:var(--surface-alt);color:var(--ink)}.add-column.open{padding:6px}.add-column.open input{width:100%;border:none;background:var(--surface);padding:6px;border-radius:5px}.task-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;overflow:hidden;flex-shrink:0;cursor:pointer;box-shadow:0 1px 1px rgba(var(--scrim-rgb),.04);display:grid;grid-template-columns:18px minmax(0,1fr)}.task-card:hover{border-color:var(--line-strong)}.card-strip{background:var(--tint, var(--line-strong));color:var(--on-solid);display:flex;justify-content:center;padding-top:10px}.card-strip.none{background:var(--line);color:var(--ink-faint)}.card-body{padding:8px 10px 9px;display:flex;flex-direction:column;gap:6px;min-width:0}.card-overline{align-self:flex-start;font-size:var(--text-xs);font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:0 5px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.card-blocked{margin:0;display:flex;gap:5px;align-items:flex-start;font-size:var(--text-xs);color:var(--danger);background:var(--danger-soft);border-radius:5px;padding:4px 6px}.card-blocked .icon{margin-top:2px}.card-blocked span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-blocked.fix{color:var(--warning);background:var(--warning-soft)}.card-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--ink-soft)}.card-foot:empty{display:none}.card-assignee{display:inline-flex;align-items:center;gap:5px;min-width:0}.card-assignee-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}.card-count{display:inline-flex;align-items:center;gap:3px;color:var(--ink-faint);white-space:nowrap}.card-due{margin-left:auto;border-radius:999px;padding:0 7px;font-weight:600;white-space:nowrap;background:var(--surface-alt);color:var(--ink-soft)}.card-due.late{background:var(--danger-soft);color:var(--danger)}.card-due.soon{background:var(--warning-soft);color:var(--warning)}.card-due.ok{background:var(--success-soft);color:var(--success)}.task-card.dragging{cursor:grabbing;box-shadow:var(--shadow);transform:rotate(-1deg)}.task-card.blocked{background:rgba(var(--danger-rgb),.04)}.kanban[data-more-right],.stories-board[data-more-right]{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent)}.kanban[data-more-left],.stories-board[data-more-left]{-webkit-mask-image:linear-gradient(to left,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(to left,#000 calc(100% - 48px),transparent)}.kanban[data-more-left][data-more-right],.stories-board[data-more-left][data-more-right]{-webkit-mask-image:linear-gradient(to right,transparent,#000 48px,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(to right,transparent,#000 48px,#000 calc(100% - 48px),transparent)}.sortable.hidden{opacity:1}.sortable.hidden>*{visibility:hidden}.sortable.hidden,.drop-slot{border:2px dashed var(--accent);border-radius:6px;background:rgba(var(--accent-rgb),.07)}.drop-slot{flex-shrink:0;animation:slot-open .18s ease-out}.column.over{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.45)}:is(.task-card,.story-card,.note-card){position:relative}:is(.task-card,.story-card,.note-card).menu-open{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.card-overline.link{display:inline-flex;align-items:center;gap:3px;border:1px solid transparent;font-family:inherit;line-height:1.6;cursor:pointer}.card-overline.link:hover,.card-overline.link:focus-visible{border-color:var(--accent);text-decoration:underline;text-underline-offset:2px}.card-overline.link .icon{opacity:.7}.card-more{position:absolute;top:5px;right:5px;width:24px;height:24px;border-radius:5px;border:0;background:var(--surface-raised);color:var(--ink-soft);cursor:pointer;display:grid;place-items:center;opacity:0;transition:opacity .12s}.card-more:hover{background:var(--hover);color:var(--ink)}:is(.task-card,.story-card,.note-card):is(:hover,:focus-within,.menu-open) .card-more{opacity:1}@media(hover:none){.card-more{opacity:1;width:32px;height:32px;top:2px;right:2px}}.task-card:has(.card-more) .task-card-top{padding-right:22px}.story-card:has(.card-more) .card-overline{padding-right:22px}.note-card .card-more{top:9px;right:38px;background:transparent}.note-card .card-more:hover{background:rgba(var(--ink-rgb),.08)}.note-card:has(.card-more) .note-title{padding-right:60px}.card-count.link{border:1px solid transparent;border-radius:4px;background:none;font:inherit;padding:0 3px;cursor:pointer}.card-count.link:hover,.card-count.link:focus-visible{border-color:var(--accent);color:var(--accent)}.linked-task-wait{width:min(420px,100%);padding:18px 20px;gap:12px}.linked-task-wait p{margin:0}.card-menu-priority.colors{flex-wrap:wrap;row-gap:6px}.card-menu-priority.colors .card-menu-priority-label{flex-basis:100%}.card-menu-priority.colors .card-menu-priority-choices{gap:6px}.card-menu-priority.colors .card-menu-priority-choice{border-radius:50%;background:var(--note-bg);border-color:var(--line-strong)}.card-menu-priority.colors .card-menu-priority-choice[aria-checked=true]{box-shadow:0 0 0 2px var(--accent);border-color:var(--surface)}.card-menu{position:fixed;z-index:120;background:var(--surface-raised);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow),0 12px 32px rgba(var(--scrim-rgb),.16);padding:4px;font-size:var(--text-md);max-height:calc(100vh - 16px);overflow-y:auto}.card-menu-head{padding:6px 8px;border-bottom:1px solid var(--line);margin-bottom:4px;display:grid;gap:2px;min-width:0}.card-menu-head .card-overline{justify-self:start}.card-menu-title{font-weight:600;font-size:var(--text-sm);color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-menu-item{display:flex;align-items:center;gap:9px;width:100%;min-height:30px;padding:6px 8px;border:0;border-radius:5px;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.card-menu-item:hover,.card-menu-item:focus,.card-menu-item.open{background:var(--hover);outline:none}.card-menu-item:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.card-menu-item[aria-checked=true]{font-weight:600}.card-menu-icon{width:16px;display:grid;place-items:center;color:var(--ink-soft);flex-shrink:0}.card-menu-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-menu-sub{display:block;font-size:var(--text-xs);font-weight:400;color:var(--ink-faint)}.card-menu-hint{font-size:var(--text-xs);color:var(--ink-faint);white-space:nowrap;max-width:90px;overflow:hidden;text-overflow:ellipsis}.card-menu-chevron{color:var(--ink-faint)}.card-menu-sep{height:1px;background:var(--line);margin:4px 6px}.card-menu-item.danger,.card-menu-item.danger .card-menu-icon{color:var(--danger)}.card-menu-item.danger:hover,.card-menu-item.danger:focus,.card-menu-item.danger.open{background:var(--danger-soft)}.card-menu-item.block{color:var(--danger);font-weight:600}.card-menu-icon.block{width:22px;height:22px;border-radius:5px;background:var(--danger-soft);color:var(--danger)}.card-menu-item.block:hover,.card-menu-item.block:focus,.card-menu-item.block.open{background:var(--danger-soft)}.card-menu-blocked{margin:2px 2px 4px;border:1px solid var(--danger);background:var(--danger-soft);border-radius:6px;padding:8px 8px 6px;display:grid;gap:6px}.card-menu-blocked-title{display:flex;align-items:center;gap:6px;color:var(--danger);font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.card-menu-blocked p{margin:0;font-size:var(--text-sm);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-menu-blocked-actions{display:flex;gap:4px;flex-wrap:wrap}.card-menu-blocked-actions .card-menu-item{width:auto;min-height:26px;padding:3px 8px;gap:5px;font-size:var(--text-sm);font-weight:600;border:1px solid var(--line-strong);background:var(--surface-raised)}.card-menu-blocked-actions .card-menu-chevron{display:none}.card-menu-blocked-actions .card-menu-item.unblock{border-color:var(--success);color:var(--success)}.card-menu-blocked-actions .card-menu-item.unblock:hover,.card-menu-blocked-actions .card-menu-item.unblock:focus{background:var(--success-soft)}.card-menu-priority{display:flex;align-items:center;gap:6px;padding:4px 8px 6px}.card-menu-priority-label{flex:1;font-size:var(--text-sm);color:var(--ink-soft);white-space:nowrap}.card-menu-priority-label b{color:var(--tint, var(--ink))}.card-menu-priority-choices{display:flex;gap:4px}.card-menu-priority-choice{position:relative;width:28px;height:28px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--tint);display:grid;place-items:center;cursor:pointer}.card-menu-priority-choice.none{color:var(--ink-faint)}.card-menu-priority-choice:hover,.card-menu-priority-choice:focus{border-color:var(--tint);outline:none}.card-menu-priority-choice:focus-visible{box-shadow:0 0 0 2px var(--accent)}.card-menu-priority-choice[aria-checked=true]{background:var(--tint);border-color:var(--tint);color:var(--on-solid)}.card-menu-priority-choice.none[aria-checked=true]{background:var(--ink-faint);border-color:var(--ink-faint)}.card-menu-priority-choice:after{content:attr(data-label);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--ink);color:var(--surface);font-size:var(--text-xs);font-weight:600;padding:2px 7px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .1s;z-index:2}.card-menu-priority-choice:hover:after,.card-menu-priority-choice:focus-visible:after{opacity:1}.card-menu-form,.card-menu-date{padding:6px 8px 8px;display:grid;gap:8px}.card-menu-date{grid-template-columns:1fr auto;align-items:end}.card-menu-field{display:grid;gap:4px;font-size:var(--text-sm);color:var(--ink-soft)}.card-menu-field input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:5px;padding:6px 8px;width:100%}.card-menu-note{margin:0 8px 6px;font-size:var(--text-sm);color:var(--ink-soft)}.card-menu-form .card-menu-note{margin:0}.card-menu-note.error{color:var(--danger)}.card-menu-question{margin:0;font-weight:600}.card-menu-actions{display:flex;justify-content:flex-end;gap:6px}.card-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:119;background:rgba(var(--scrim-rgb),.35)}.card-menu.sheet{left:0;right:0;bottom:0;top:auto;border-radius:16px 16px 0 0;border-width:1px 0 0;max-height:80vh;padding:6px 8px calc(14px + env(safe-area-inset-bottom,0px));font-size:var(--text-xl)}.card-menu-grab{width:36px;height:4px;border-radius:2px;background:var(--line-strong);margin:4px auto 6px}.card-menu.sheet .card-menu-item{min-height:44px}.card-menu.sheet .card-menu-hint{display:none}.card-menu.sheet .card-menu-priority{flex-wrap:wrap}.card-menu.sheet .card-menu-priority-label{flex-basis:100%}.card-menu.sheet .card-menu-priority-choices{width:100%;justify-content:space-between}.card-menu.sheet .card-menu-priority-choice{width:58px;height:52px;gap:2px}.card-menu.sheet .card-menu-priority-choice:after{position:static;transform:none;opacity:1;background:none;color:inherit;padding:0}.card-menu-panel{margin:0 4px 6px 30px;border-left:2px solid var(--line-strong);padding-left:6px}:is(.task-card,.story-card).move-saving{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.25);cursor:progress}:is(.task-card,.story-card).move-confirmed{animation:move-confirmed 1.8s ease-out}:is(.task-card,.story-card).move-rejected{border-color:var(--danger);box-shadow:0 0 0 3px rgba(var(--danger-rgb),.25);animation:move-rejected .45s ease-in-out}@keyframes slot-open{0%{opacity:0}to{opacity:1}}@keyframes move-confirmed{0%,10%{box-shadow:0 0 0 4px rgba(var(--success-rgb),.45)}to{box-shadow:0 1px 1px rgba(var(--scrim-rgb),.04)}}@keyframes move-rejected{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.drop-slot,:is(.task-card,.story-card).move-confirmed,:is(.task-card,.story-card).move-rejected{animation:none}:is(.task-card,.story-card).move-confirmed{box-shadow:0 0 0 2px rgba(var(--success-rgb),.45)}}.toast.notice{background:var(--surface-raised);color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--success)}.task-card-top{display:flex;align-items:flex-start;gap:8px;justify-content:space-between}.task-title{font-weight:500;flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.task-emoji{flex-shrink:0;line-height:1.4}.task-emoji.large{font-size:var(--text-2xl)}.card-chips{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:-2px}.card-chips .chip{font-size:var(--text-xs);padding:0 6px;border-radius:4px;font-weight:500;background:var(--surface)}.chip.blocked{border:1px solid var(--danger);color:var(--danger);background:var(--surface)}.chip.priority{color:color-mix(in srgb,var(--tint, var(--ink-soft)) 78%,var(--ink));border-color:var(--tint)}.chip.blocked:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--danger);display:inline-block;margin-right:5px;vertical-align:1px}.chip.blocked.plain{padding:2px 5px;display:inline-flex;align-items:center}.chip.blocked.plain:before{display:none}.card-blocked-reason{margin:-3px 0 0;font-size:var(--text-xs);color:var(--danger);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.column-blocked{font-size:var(--text-xs);color:var(--danger);background:var(--danger-soft);border-radius:4px;padding:1px 6px}.task-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.date-chip,.effort-chip{font-size:var(--text-xs);color:var(--ink-soft);background:var(--surface-alt);border-radius:4px;padding:1px 6px}.date-chip.soon{background:var(--warning-soft);color:var(--warning)}.date-chip.overdue{background:var(--danger-soft);color:var(--danger)}.task-card-foot{display:flex;align-items:center;gap:6px}.avatar,.mini-avatar{width:20px;height:20px;border-radius:50%;background:rgba(var(--ink-rgb),.15);color:var(--ink-soft);display:inline-grid;place-items:center;font-size:var(--text-xs);font-weight:600}.desc-hint{color:var(--ink-faint);display:inline-flex;align-items:center}.quick-add{width:100%;border:1px solid var(--accent);border-radius:6px;padding:8px;resize:vertical;background:var(--surface);font-family:inherit}.quick-add:focus:not(:focus-visible){outline:none}.add-in-column{background:transparent;border:none;color:var(--ink-faint);text-align:left;padding:6px 4px;cursor:pointer;border-radius:5px;font-size:var(--text-md);display:flex;align-items:center;gap:6px}.add-in-column:hover{background:var(--hover);color:var(--ink)}.table-view{display:flex;flex-direction:column;gap:12px;overflow-x:auto}.table{display:grid;min-width:min-content;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table-head{background:var(--surface-alt);border-bottom:1px solid var(--line);padding:8px 10px;font-size:var(--text-sm);font-weight:600;color:var(--ink-soft);cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:4px}.cell{border-bottom:1px solid var(--line);padding:5px 8px;display:flex;align-items:center;gap:6px;min-height:36px;background:var(--surface)}.cell select,.cell-input{border:1px solid transparent;background:transparent;border-radius:5px;padding:4px 6px;width:100%}.cell select:hover,.cell-input:hover{background:var(--surface-alt)}.cell select:focus:not(:focus-visible),.cell-input:focus:not(:focus-visible){outline:none;border-color:var(--accent);background:var(--surface)}.cell-title{cursor:pointer;gap:9px}.cell-title:hover{background:var(--surface-alt)}.row-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0;background:var(--tint, var(--line))}.row-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-title.done{text-decoration:line-through;color:var(--ink-faint)}.cell-actions{justify-content:flex-end;gap:8px}.cell-input.overdue{color:var(--danger)}.priority-select{text-transform:capitalize}.cell select{-moz-appearance:none;appearance:none;-webkit-appearance:none;text-overflow:ellipsis}.cell select:hover:not(:disabled),.cell select:focus-visible{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto}.cell select:disabled{opacity:1;color:inherit;cursor:default}.cell-text{font:inherit;color:inherit;padding:4px 6px;border:1px solid transparent;border-radius:5px;background:none;text-align:left;width:100%}.cell-text.overdue{color:var(--danger);font-weight:600}.cell-edit{cursor:pointer}.cell-edit:hover{background:var(--surface-alt)}.gantt{display:flex;flex-direction:column;gap:12px}.gantt-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex-shrink:0}.segmented{display:inline-flex;border:1px solid var(--line-strong);border-radius:6px;overflow:hidden}.segment{background:var(--surface);border:none;padding:5px 11px;cursor:pointer;color:var(--ink-soft);font-size:var(--text-md)}.segment.active{background:var(--ink);color:var(--on-solid)}.check{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-md);color:var(--ink-soft);cursor:pointer}.gantt-hint{color:var(--ink-faint);font-size:var(--text-sm);margin-left:auto}.gantt-shell{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:0 1 auto;min-height:0;position:relative}.gantt-inner{position:relative;min-width:100%}.gantt-header{display:flex;position:sticky;top:0;z-index:4;background:var(--surface)}.gantt-corner{width:280px;flex-shrink:0;position:sticky;left:0;background:var(--surface);z-index:5;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:flex-end;padding:0 10px 8px;font-size:var(--text-sm);font-weight:600;color:var(--ink-faint)}.gantt-header-svg{border-bottom:1px solid var(--line);flex-shrink:0}.gantt-month{font-size:var(--text-xs);font-weight:600;fill:var(--ink);text-transform:capitalize}.gantt-week{font-size:var(--text-xs);fill:var(--ink-faint)}.gantt-week-line,.gantt-rule{stroke:var(--line);stroke-width:1}.gantt-body{display:flex;position:relative}.gantt-labels{flex-shrink:0;position:sticky;left:0;background:var(--surface);z-index:3;border-right:1px solid var(--line)}.gantt-label{border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 8px;overflow:hidden}.gantt-label.group{background:var(--surface-alt)}.group-toggle{display:flex;align-items:center;gap:7px;background:none;border:none;cursor:pointer;font-weight:600;font-size:var(--text-sm);width:100%;text-align:left;color:var(--ink)}.caret{width:12px;color:var(--ink-faint);display:inline-flex;align-items:center}.group-swatch{width:8px;height:8px;border-radius:2px;background:var(--tint)}.label-inner{display:flex;align-items:center;gap:6px;width:100%;overflow:hidden}.chain-button{border:none;background:none;color:var(--line-strong);cursor:pointer;font-size:var(--text-sm);padding:2px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.gantt-label:hover .chain-button{color:var(--ink-faint)}.chain-button:hover{color:var(--accent)!important}.label-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;font-size:var(--text-md)}.label-text:hover{text-decoration:underline}.gantt-canvas{position:relative}.gantt-svg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.weekend{fill:rgba(var(--ink-rgb),.02)}.gantt-grid-line{stroke:var(--line);stroke-width:1}.group-band{fill:var(--surface-alt)}.today-line{stroke:var(--danger);stroke-width:1.5;stroke-dasharray:4 3;opacity:.8}.arrow{pointer-events:auto;cursor:pointer}.arrow-path{stroke:var(--ink-faint);stroke-width:1.5;fill:none}.arrow-hit{stroke:transparent;stroke-width:12;fill:none}.arrow:hover .arrow-path,.arrow:hover .arrow-head{stroke:var(--danger);fill:var(--danger)}.arrow-head{fill:var(--ink-faint)}.gantt-bar{position:absolute;border-radius:5px;background:rgba(var(--accent-rgb),.16);border:1px solid rgba(var(--accent-rgb),.42);cursor:grab;display:flex;align-items:center;overflow:hidden;padding:0 8px;touch-action:none}.gantt-bar:hover{filter:brightness(.97)}.gantt-bar.done{background:rgba(var(--success-rgb),.12);border-color:rgba(var(--success-rgb),.45)}.gantt-bar.done .bar-label{text-decoration:line-through;color:var(--ink-soft)}.gantt-bar.overdue{border-color:rgba(var(--danger-rgb),.5)}.gantt-bar.critical{box-shadow:inset 0 0 0 2px var(--danger)}.gantt-bar.unscheduled{border-style:dashed;background:var(--surface-alt)}.gantt-bar.dragging{cursor:grabbing;opacity:.9}.gantt-bar.linkable{cursor:crosshair}.gantt-bar.blocked{border-color:var(--danger);background-image:repeating-linear-gradient(135deg,rgba(var(--danger-rgb),.22) 0 4px,transparent 4px 9px)}.gantt-milestone.blocked{border-color:var(--danger);box-shadow:0 0 0 2px rgba(var(--danger-rgb),.25)}.bar-label{font-size:var(--text-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;z-index:2}.bar-progress{position:absolute;left:0;top:0;bottom:0;background:rgba(var(--accent-rgb),.35);z-index:1}.bar-elapsed{position:absolute;top:0;bottom:0;width:0;border-left:1.5px dashed rgba(var(--danger-rgb),.7);z-index:2}.gantt-bar.done .bar-progress{background:rgba(var(--success-rgb),.3)}.resize{position:absolute;top:0;bottom:0;width:7px;cursor:ew-resize;z-index:3}.resize.left{left:0}.resize.right{right:0}.resize:hover{background:rgba(var(--scrim-rgb),.08)}.gantt-milestone{position:absolute;width:15px;height:15px;transform:rotate(45deg);background:var(--ink);border:none;cursor:pointer;border-radius:2px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(var(--scrim-rgb),.55);display:grid;place-items:center;z-index:20;padding:20px;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.modal{background:var(--surface-raised);border-radius:10px;width:min(680px,100%);max-height:88vh;overflow:auto;box-shadow:0 12px 48px rgba(var(--scrim-rgb),.24);display:flex;flex-direction:column}.modal-top{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px 6px;gap:10px}.modal-title{font-size:var(--text-2xl);font-weight:600;border:none;background:transparent;width:100%;padding:2px 0;resize:none;overflow:hidden;line-height:1.3;font-family:inherit;display:block}.modal-title:focus:not(:focus-visible){outline:none;border-bottom:1px solid var(--line-strong)}.modal-body{padding:8px 20px 14px;display:flex;flex-direction:column;gap:14px}.field-row{display:flex;gap:12px;flex-wrap:wrap}.modal .field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.modal .field-row .field{min-width:0}.modal .field-row select,.modal .field-row input{min-width:0;max-width:100%}.assignee-field select{flex:1;min-width:0}.modal .field-row .priority-field{grid-column:1 / -1}.form-section{margin:4px 0 -6px;padding-bottom:4px;border-bottom:1px solid var(--line);font-size:var(--text-sm);font-weight:700;color:var(--ink-soft)}.priority-field{border:none;padding:0;margin:0}.priority-field legend{padding:0;margin-bottom:4px;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-weight:600}.priority-choices{display:flex;gap:6px;flex-wrap:wrap}.priority-choice{display:inline-flex;align-items:center;gap:5px;cursor:pointer;border:1px solid var(--line-strong);border-radius:6px;padding:4px 8px;font-size:var(--text-sm);color:var(--ink-soft);background:var(--surface)}.priority-choice input{position:absolute;opacity:0;width:1px;height:1px}.priority-choice .icon{color:color-mix(in srgb,var(--tint) 78%,var(--ink))}.priority-choice.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.1);color:var(--ink);font-weight:600}.priority-choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.priority-choice:has(input:disabled){cursor:default;opacity:.7}.field{display:flex;flex-direction:column;gap:4px;min-width:150px;flex:1}.field.stack{width:100%}.field>span,.field-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:6px;padding:6px 8px;background:var(--surface);font-family:inherit}.field input:focus:not(:focus-visible),.field select:focus:not(:focus-visible),.field textarea:focus:not(:focus-visible){outline:none;border-color:var(--accent)}.field input:disabled,.field select:disabled,.field textarea:disabled,.field input[readonly],.field textarea[readonly]{background:var(--surface-alt);color:var(--ink-soft);border-style:dashed;cursor:not-allowed;opacity:1}.deps ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.deps li{display:flex;align-items:center;gap:8px;font-size:var(--text-md)}.dep-badge{font-size:var(--text-xs);padding:1px 6px;border-radius:4px;background:var(--surface-alt);color:var(--ink-soft)}.dep-badge.out{background:var(--warning-soft);color:var(--warning)}.dep-name{flex:1}.modal-footer{display:flex;justify-content:space-between;padding:12px 20px 18px;border-top:1px solid var(--line)}.toast{position:fixed;bottom:22px;right:22px;background:var(--ink);color:var(--on-solid);padding:10px 14px;border-radius:8px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow);z-index:40;font-size:var(--text-md)}.toast button{background:rgba(var(--on-solid-rgb),.15);border:none;color:var(--on-solid);border-radius:5px;padding:4px 8px;cursor:pointer}.api-banner{position:sticky;top:0;z-index:30;flex-shrink:0;display:flex;align-items:flex-start;gap:10px;padding:12px 20px;background:rgba(var(--danger-rgb),.05);border-bottom:1px solid rgba(var(--danger-rgb),.35);color:var(--danger);font-size:var(--text-md)}.api-banner-icon{line-height:1.4}.api-banner-text{flex:1}.api-banner-text p{margin:2px 0 0;color:var(--ink)}.api-banner button{background:var(--surface);border:1px solid rgba(var(--danger-rgb),.35);color:var(--danger);border-radius:6px;padding:4px 10px;cursor:pointer;flex-shrink:0}.api-banner button:hover{background:var(--surface)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:6px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.sidebar.collapsed{width:60px;padding-left:8px;padding-right:8px}.sidebar.collapsed .brand-logo,.sidebar.collapsed .nav-label,.sidebar.collapsed .project-name,.sidebar.collapsed .project-count,.sidebar.collapsed .sidebar-title span{display:none}.sidebar.collapsed .nav-item,.sidebar.collapsed .project-item{justify-content:center;padding:6px 0}.sidebar.collapsed .nav-badge{position:absolute;top:1px;right:2px;margin-left:0;font-size:var(--text-xs);line-height:13px;padding:0 3px}.sidebar.collapsed .sidebar-title{justify-content:center}.sidebar.collapsed .sidebar-head{flex-direction:column;gap:2px}.sidebar.collapsed .brand{padding:4px 0;justify-content:center}.sidebar.collapsed .brand-logo{display:none}.sidebar.collapsed .brand-ball{display:block}.sidebar.collapsed .project-list{align-items:center}.sidebar.collapsed .empty-hint,.sidebar.collapsed .me-select{display:none}@media(max-width:860px){.topbar{display:flex}.app{flex-direction:column}.sidebar{display:none}.page,.stories,.settings{padding:24px 18px 48px}}.card-options{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}.card-options-label{font-size:var(--text-sm);color:var(--ink-faint);font-weight:600}.chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);border-radius:20px;padding:3px 11px;cursor:pointer;font-size:var(--text-sm)}.chip:hover{background:var(--surface-alt)}.chip.active{background:var(--ink);border-color:var(--ink);color:var(--on-solid)}.kanban{margin-top:0}.card-subtasks{display:flex;gap:8px;align-items:flex-start}.card-subtasks-list{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.card-subtask{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--ink-soft);min-width:0}.card-subtask span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-subtask input{width:12px;height:12px;accent-color:var(--accent);pointer-events:none}.card-subtask.more{color:var(--ink-faint)}.strikethrough{text-decoration:line-through;opacity:.6}.card-subtasks-ratio{font-size:var(--text-xs);color:var(--ink-faint);background:var(--surface-alt);border-radius:4px;padding:1px 5px;flex-shrink:0}.card-desc-rich,.rich-content.card-desc-rich{font-family:var(--font-sans);font-size:var(--text-sm);line-height:1.5;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-desc-rich p,.rich-content.card-desc-rich p{margin:0 0 2px}.card-desc-rich ul,.card-desc-rich ol{margin:0 0 2px;padding-left:16px}.card-desc-rich li{margin:0}.card-desc-rich a{color:var(--accent);text-decoration:underline}.card-desc-rich input[type=checkbox]{pointer-events:none;margin:0 2px 0 0}.card-desc-rich li[data-checked=true]{opacity:.6}.card-desc-rich li[data-checked=true] div,.card-desc-rich li[data-checked=true] p{text-decoration:line-through}.card-images{display:flex;gap:4px;align-items:center}.card-image{width:56px;height:40px;object-fit:cover;border-radius:4px;border:1px solid var(--line)}.card-image-more{font-size:var(--text-xs);color:var(--ink-faint)}.card-counters{display:inline-flex;gap:6px;font-size:var(--text-xs);color:var(--ink-faint);margin-left:auto}.card-counters span{display:inline-flex;align-items:center;gap:3px}.subtasks{display:flex;flex-direction:column;gap:6px}.subtask-head{display:flex;align-items:center;gap:10px}.subtask-progress{flex:1;height:4px;background:var(--line);border-radius:3px;overflow:hidden}.subtask-progress-fill{display:block;height:100%;background:var(--accent)}.subtasks ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.subtask{display:flex;align-items:center;gap:8px}.subtask input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px;flex-shrink:0}.subtask-title{flex:1;border:1px solid transparent;background:transparent;border-radius:5px;padding:4px 6px}.subtask-title:hover{background:var(--surface-alt)}.subtask-title:focus:not(:focus-visible){outline:none;border-color:var(--accent);background:var(--surface)}.subtask.done .subtask-title{text-decoration:line-through;color:var(--ink-faint)}.subtask-add{border:1px dashed var(--line-strong);background:transparent;border-radius:6px;padding:6px 8px;color:var(--ink-soft)}.subtask-add:focus:not(:focus-visible){outline:none;border-style:solid;border-color:var(--accent);background:var(--surface)}.attachments{display:flex;flex-direction:column;gap:8px}.attachment-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.drop-zone{display:flex;align-items:flex-start;gap:10px;text-align:left;cursor:pointer;border:2px dashed var(--line-strong);border-radius:8px;padding:12px 14px;background:var(--surface-alt);font-size:var(--text-sm);color:var(--ink-soft);transition:background .15s,border-color .15s}.drop-zone:hover{border-color:var(--accent)}.drop-zone:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drop-zone-icon{color:var(--accent);flex-shrink:0;display:inline-flex;margin-top:1px}.drop-zone.active{border-color:var(--accent);background:rgba(var(--accent-rgb),.12);color:var(--accent)}.attachment-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.attachment{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:6px;background:var(--surface)}.attachment-thumb{width:40px;height:40px;object-fit:cover;border-radius:4px;flex-shrink:0}.attachment-icon{width:40px;height:40px;border-radius:4px;background:var(--surface-alt);color:var(--ink-soft);display:grid;place-items:center;font-size:var(--text-xs);font-weight:700;flex-shrink:0}.attachment-info{flex:1;min-width:0;display:flex;flex-direction:column}.attachment-info a{font-size:var(--text-sm);color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-info a:hover{text-decoration:underline;color:var(--accent)}.attachment-info small{color:var(--ink-faint);font-size:var(--text-xs)}.upload-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.upload-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 40px;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:5px 8px;font-size:var(--text-sm)}.upload-row.error{border-color:rgba(var(--danger-rgb),.35);background:rgba(var(--danger-rgb),.05);grid-template-columns:minmax(0,1fr) auto 24px}.upload-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft)}.upload-error{color:var(--danger);font-size:var(--text-xs)}.upload-track{height:4px;border-radius:3px;background:var(--line);overflow:hidden}.upload-fill{display:block;height:100%;background:var(--accent);transition:width .15s linear}.upload-percent{font-size:var(--text-xs);color:var(--ink-faint);text-align:right;font-variant-numeric:tabular-nums}.refresh-hint{font-size:var(--text-sm);color:var(--ink-faint);display:inline-flex;align-items:center;gap:6px}.refresh-hint:before{content:"";width:10px;height:10px;border-radius:50%;border:1.5px solid var(--line-strong);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.refresh-hint:before{animation-duration:2s}.upload-fill,.progress-fill{transition:none}}.avatar-colored{color:var(--on-solid);background:color-mix(in srgb,var(--tint, var(--line-strong)) 82%,var(--ink))}.assignee-field{display:flex;align-items:center;gap:8px}.inline-create{display:flex;align-items:center;gap:8px;margin-bottom:14px}.inline-create input{flex:1;border:1px solid var(--line-strong);border-radius:6px;padding:7px 9px;font-family:inherit}.inline-create input:focus:not(:focus-visible){outline:none;border-color:var(--accent)}.settings{max-width:928px;padding:40px 48px 64px}.settings-toc{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:6px;padding:8px 0 10px;margin-bottom:8px;background:var(--surface)}.settings-grid>div{scroll-margin-top:56px}.done-check{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--ink-soft);white-space:nowrap;cursor:pointer}.done-check input{width:16px;height:16px;accent-color:var(--accent);margin:0}.settings-grid{display:flex;flex-direction:column;gap:18px}.settings-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:10px;padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px}.settings-card-head h2{margin:0;font-size:var(--text-xl)}.settings-card-head p{margin:4px 0 0;color:var(--ink-faint);font-size:var(--text-sm)}.settings-hint{margin:0;color:var(--ink-soft);font-size:var(--text-sm)}.inline-field{max-width:320px}.user-list,.column-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.user-row,.column-row{display:flex;align-items:center;gap:10px;padding:5px 6px;border-radius:7px;border:1px solid transparent}.user-row:hover,.column-row:hover{background:var(--surface-alt);border-color:var(--line)}.user-row .cell-input,.column-row .cell-input{max-width:220px;font-size:var(--text-lg)}.column-order{width:20px;height:20px;border-radius:5px;background:var(--surface-alt);color:var(--ink-soft);display:grid;place-items:center;font-size:var(--text-xs);font-weight:600;flex-shrink:0}.column-tools-group{display:flex;gap:2px;margin-left:auto}.icon-button:disabled{opacity:.3;cursor:default}.confirm-delete{display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:var(--text-sm);color:var(--ink-soft);margin-left:auto;flex-wrap:wrap}.confirm-ask{display:flex;flex-direction:column;gap:1px;text-align:right}.confirm-question{font-weight:600;color:var(--ink)}.confirm-detail{font-size:var(--text-xs);color:var(--ink-faint);max-width:36ch}.confirm-error{font-size:var(--text-xs);color:var(--danger)}.cell-actions{position:relative}.confirm-delete.overlay{position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:4;margin-left:0;width:max-content;max-width:92vw;padding:5px 8px;background:var(--surface-raised);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 18px rgba(var(--scrim-rgb),.14)}.confirm-delete.overlay .confirm-ask{flex-direction:row;align-items:baseline;gap:6px}.confirm-delete.overlay .confirm-detail{max-width:none}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.project-row{position:relative;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.project-row:hover{background:var(--surface-alt)}.project-row.trashed{background:var(--surface-alt);border-style:dashed}.project-row-head{display:flex;align-items:center;gap:8px}.project-row-name{font-weight:600;font-size:var(--text-lg)}.project-style-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.project-style-row .icon-picker-wrap{flex:1 1 auto;min-width:0}.project-row>.icon-button,.project-row>.confirm-delete,.project-row>.project-actions{align-self:flex-end}.project-metrics{list-style:none;display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;padding:0}.project-metrics li{display:flex;align-items:baseline;gap:4px;font-size:var(--text-sm)}.metric-value{font-weight:600;color:var(--ink)}.metric-label{color:var(--ink-faint)}.project-foot{display:flex;align-items:center;gap:10px}.project-foot .progress-track{flex:1}.project-activity{font-size:var(--text-xs);color:var(--ink-faint);white-space:nowrap}.project-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;flex-wrap:wrap}.chip.tiny{font-size:var(--text-xs);padding:1px 7px;border-radius:999px;font-weight:500}.chip.tiny.done{background:var(--success-soft);border-color:rgba(var(--success-rgb),.45);color:var(--success)}.chip.tiny.done:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--success);display:inline-block;margin-right:5px;vertical-align:1px}.card-emoji.muted{opacity:.45;filter:grayscale(1)}.color-field{display:flex;align-items:center;gap:4px}.swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.swatch:hover{border-color:var(--line-strong)}.swatch.active{border-color:var(--ink)}.color-input{width:26px;height:24px;padding:0;border:none;background:none;cursor:pointer}.user-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;border-top:1px dashed var(--line-strong);padding-top:14px}.user-add input{flex:1;min-width:160px;border:1px solid var(--line-strong);border-radius:6px;padding:7px 9px;font-family:inherit}.user-add input:focus:not(:focus-visible){outline:none;border-color:var(--accent)}.rich-editor{border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.rich-editor:focus-within{border-color:var(--accent)}.rich-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:4px 6px;border-bottom:1px solid var(--line);background:var(--surface-alt);border-radius:6px 6px 0 0}.rich-tool{min-width:26px;height:24px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;gap:4px}.rich-tool:hover{background:var(--surface-raised);border-color:var(--line)}.rich-tool.active{background:var(--ink);color:var(--on-solid)}.rich-link-form{display:flex;gap:6px;padding:6px;border-bottom:1px solid var(--line)}.rich-link-form input{flex:1;border:1px solid var(--line-strong);border-radius:5px;padding:5px 7px;font-family:inherit}.rich-error{margin:0;padding:4px 8px;font-size:var(--text-sm);color:var(--danger)}.rich-loading{padding:10px;font-size:var(--text-md);color:var(--ink-faint)}.rich-content{font-size:var(--text-lg);line-height:1.5;color:var(--ink);overflow-wrap:anywhere}.rich-content p{margin:0 0 6px}.rich-content p:last-child{margin-bottom:0}.rich-content ul,.rich-content ol{margin:0 0 6px;padding-left:22px}.rich-content li{margin:1px 0}.rich-content code{font-family:var(--mono, ui-monospace, monospace);font-size:.9em;background:var(--surface-alt);border-radius:3px;padding:1px 4px}.rich-content a{color:var(--accent);text-decoration:underline;cursor:pointer}.rich-input{padding:8px 10px;min-height:92px;max-height:260px;overflow-y:auto;outline:none}.rich-input p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;color:var(--ink-faint)}.rich-content ul[data-type=taskList]{list-style:none;padding-left:4px}.rich-content ul[data-type=taskList] li{display:flex;gap:7px;align-items:flex-start}.rich-content ul[data-type=taskList] li>label{flex-shrink:0;margin-top:2px}.rich-content ul[data-type=taskList] li>label input[type=checkbox]{accent-color:var(--accent)}.rich-content ul[data-type=taskList] li>div{flex:1;min-width:0}.rich-content ul[data-type=taskList] li[data-checked=true]>div{opacity:.6;text-decoration:line-through}.story-fix-note{margin:0 0 14px;padding:10px 12px;border-radius:var(--radius);background:var(--warning-soft);color:var(--ink);border:1px solid var(--warning);white-space:pre-wrap}.field-error{display:block;color:var(--danger);font-size:var(--text-sm);margin-top:4px}.blocked-reason{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.blocked-reason input{width:100%}.blocked-actions{display:flex;gap:8px}.chip.blocked.on{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.metric-value.danger{color:var(--danger)}.nav-badge{margin-left:auto;background:var(--accent);color:var(--on-solid);border-radius:10px;font-size:var(--text-xs);font-weight:600;padding:0 6px;line-height:16px}.stories{padding:40px 48px 64px;max-width:none}.stories-filters{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-top:14px}.stories-filters .field{min-width:140px;max-width:260px}.stories-filters-toggle{display:none;margin-top:12px}.field.grow{flex:2;min-width:200px}.stories-counters{font-size:var(--text-sm);color:var(--ink-soft);margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:flex-end}.stories-counters>span{white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.mine-filter{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--ink-soft);font-size:var(--text-md);cursor:pointer}.mine-filter:hover:not(:disabled){background:var(--hover);color:var(--ink)}.mine-filter:disabled{opacity:.55;cursor:not-allowed}.mine-filter.active{background:var(--accent-soft);border-color:var(--accent);color:var(--ink);font-weight:500}.mine-count{min-width:18px;padding:0 5px;border-radius:9px;background:var(--hover);color:var(--ink-soft);font-size:var(--text-xs);font-weight:600;text-align:center}.mine-filter.active .mine-count{background:var(--accent);color:var(--on-solid)}.stories-error{display:flex;align-items:center;gap:10px;justify-content:space-between;background:rgba(var(--danger-rgb),.05);border:1px solid rgba(var(--danger-rgb),.35);color:var(--danger);border-radius:var(--radius);padding:8px 12px;margin-bottom:14px;font-size:var(--text-md)}.stories-board{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding-bottom:18px}.story-column{flex:1 0 172px;max-width:280px;background:var(--surface-alt);border:1px solid var(--line);border-radius:var(--radius);padding:8px}.story-column .column-head{margin-bottom:6px}.story-column .column-name{display:inline-flex;align-items:center;gap:6px}.story-column .column-body{min-height:76px}.story-column .column-body.over{outline:2px dashed var(--accent);outline-offset:-2px;border-radius:6px}.story-card{background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;overflow:hidden;cursor:pointer;box-shadow:var(--shadow);display:grid;grid-template-columns:18px minmax(0,1fr)}.story-card .story-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-context{font-size:var(--text-xs);color:var(--ink-soft)}.story-card:hover{border-color:var(--line-strong)}.story-card.dragging{cursor:grabbing;transform:rotate(-1deg);box-shadow:var(--shadow)}.story-card.closed{opacity:.72}.story-card-top{display:flex;align-items:flex-start;gap:7px}.story-ref{flex-shrink:0;font-size:var(--text-xs);font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:4px;padding:1px 5px;white-space:nowrap}.story-title{font-weight:500;font-size:var(--text-md)}.story-chips{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.story-chips .chip{font-size:var(--text-xs);padding:1px 6px;display:inline-flex;align-items:center;gap:5px}.criteria-track{width:34px;height:4px;border-radius:3px;background:var(--line);overflow:hidden;display:inline-block}.criteria-fill{display:block;height:100%;background:var(--accent)}.story-card-foot{display:flex;justify-content:space-between;gap:8px;font-size:var(--text-xs);color:var(--ink-faint)}.story-project{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.story-reviewer{flex-shrink:0}.story-modal{max-width:760px}.field>.story-state{align-self:flex-start;border-radius:5px;padding:3px 9px;font-size:var(--text-sm);font-weight:500;text-transform:none;letter-spacing:0;color:var(--on-tint);background:var(--tint, var(--surface-alt));border:1px solid var(--line)}.story-description{font:inherit;resize:vertical;min-height:92px}.story-history ol{list-style:none;margin:6px 0;padding:0;display:flex;flex-direction:column;gap:5px}.criteria-ratio{margin-left:6px;text-transform:none;letter-spacing:0;color:var(--ink-soft)}.story-decision,.story-outcome,.story-history{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface-alt)}.story-decision-row{display:flex;gap:12px;flex-wrap:wrap}.story-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}button.warn{background:var(--danger-soft);border:1px solid rgba(var(--danger-rgb),.35);color:var(--danger);border-radius:6px;padding:6px 12px;cursor:pointer}button.warn:hover{background:rgba(var(--danger-rgb),.18)}.story-hint{font-size:var(--text-sm);color:var(--ink-soft)}.story-notice{margin:8px 0 0;font-size:var(--text-sm);color:var(--danger)}.story-created{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:var(--text-md)}.created-badge{font-size:var(--text-xs);background:var(--accent-soft);color:var(--accent);border-radius:4px;padding:1px 6px;margin-right:6px}.created-badge.sub{background:var(--surface-alt);color:var(--ink-soft)}.history-item,.story-history li{display:flex;gap:8px;align-items:baseline;font-size:var(--text-md);flex-wrap:wrap}.history-when{color:var(--ink-faint);font-size:var(--text-xs);min-width:84px}.history-move{font-weight:500}.history-who{color:var(--ink-soft);font-size:var(--text-sm)}.history-note{flex-basis:100%;color:var(--ink-soft);font-size:var(--text-sm);border-left:2px solid var(--line-strong);padding-left:8px}.story-provenance{margin:0;display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--ink-soft)}.provenance-badge{font-size:var(--text-xs);background:var(--accent-soft);color:var(--accent);border-radius:4px;padding:1px 6px;font-weight:600}.stories-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.modal-kicker{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:600}.modal-heading{font-size:var(--text-2xl);font-weight:600;margin:2px 0 0}.story-create{max-width:620px}.story-model{display:flex;gap:10px;flex-wrap:wrap}.story-model .field{min-width:150px;flex:1}.story-model-block,.story-preview{border:1px solid var(--line);border-radius:8px;background:var(--surface-alt);padding:10px 12px}.story-preview{font-size:var(--text-md);display:flex;gap:8px;align-items:baseline;justify-content:space-between}.story-preview-count{font-size:var(--text-xs);color:var(--ink-faint);white-space:nowrap}.story-model-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.model-flag{font-size:var(--text-xs);font-weight:600;border-radius:4px;padding:1px 6px;background:var(--warning-soft);color:var(--warning);white-space:nowrap}.model-flag.ok{background:var(--success-soft);color:var(--success)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-card:focus-visible,.story-card:focus-visible{outline-offset:0}.icon-button{width:28px;height:28px}button.chip{min-height:28px}button.chip.tiny{min-height:24px}button.link-danger{display:inline-flex;align-items:center;min-height:24px}.add-in-column{min-height:32px}.column-name,.subtitle-input{min-height:28px}.auth-shell{min-height:calc(100vh - var(--env-banner-h));display:grid;grid-template-columns:45% 55%}.auth-hero{position:relative;overflow:hidden;background:var(--surface-alt)}.auth-hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%;display:block}.auth-panel{display:grid;place-items:center;background:var(--surface);padding:24px}@media(max-width:860px){.auth-shell{grid-template-columns:1fr}.auth-hero{display:none}}.auth-card{width:min(420px,100%);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;display:flex;flex-direction:column;gap:12px}.auth-card h1{font-size:20px;margin:0}.auth-mark{align-self:center;width:44px;height:44px}.auth-muted{color:var(--ink-faint);font-size:13px;margin:0}.auth-hint{color:var(--ink-soft);font-size:12px;margin:0}.auth-error{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius);padding:8px 10px;font-size:13px;margin:0}.auth-actions{display:flex;gap:8px}.auth-success{color:var(--success, var(--ink));background:var(--success-soft, var(--hover));border-radius:var(--radius);padding:8px 10px;font-size:13px;margin:0}.auth-link{align-self:center}.setup-steps{margin:0;padding-left:20px;font-size:13px;color:var(--ink-soft);display:grid;gap:8px}.setup-steps code{background:var(--hover);padding:1px 4px;border-radius:4px}.project-list li{position:relative}.pin-button{position:absolute;right:4px;top:50%;transform:translateY(-50%) rotate(-40deg);border:0;background:transparent;cursor:pointer;font-size:12px;line-height:1;opacity:0;padding:6px 4px}.project-list li:hover .pin-button,.pin-button.on{opacity:1}.pin-button.on{transform:translateY(-50%) rotate(0)}.sidebar.collapsed .pin-button{display:none}.project-list li:has(.pin-button.on) .project-count{display:none}.rights-card{display:flex;flex-direction:column;gap:14px}.rights-tabs{align-self:flex-start;flex-wrap:wrap}.rights-notice{color:var(--success);background:var(--success-soft);border-radius:var(--radius);padding:8px 10px;font-size:13px;margin:0}.rights-table{width:100%;border-collapse:collapse;font-size:13px}.rights-table th{text-align:left;color:var(--ink-faint);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:6px 8px;border-bottom:1px solid var(--line)}.rights-table td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle}.rights-who{display:flex;align-items:center;gap:8px}.rights-actions{text-align:right;white-space:nowrap}.rights-block{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:12px;display:grid;gap:10px}.rights-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end}.rights-form .field{min-width:0}.rights-form input,.rights-form select{width:100%;min-width:0}.rights-pass input{flex:1}.user-add .field.stack{flex:1 1 180px;min-width:0}.user-add .field.stack input{width:100%;min-width:0}.rights-pass{display:flex;gap:6px}.rights-block .primary{justify-self:start}.status-active{background:var(--success-soft);color:var(--success)}.status-pending_password{background:var(--warning-soft);color:var(--warning)}.status-disabled{background:var(--danger-soft);color:var(--danger)}.status-none{background:var(--hover);color:var(--ink-faint)}.user-readonly{border:0;background:transparent;padding:0}.rights-model-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.rights-model-col{background:var(--surface-alt);border-radius:var(--radius);padding:12px}.rights-model-col h3{margin:0 0 8px;font-size:14px}.rights-model-col ul{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink-soft);display:grid;gap:4px}.api-banner-details,.auth-details{margin-top:6px;font-size:var(--text-sm);color:var(--ink-soft)}.api-banner-details summary,.auth-details summary{cursor:pointer}.auth-details p{margin:6px 0 0}@media(max-width:860px){.rights-table{display:block;overflow-x:auto;white-space:nowrap}}@media(max-width:600px){.stories-head h1{font-size:var(--text-2xl)}.filter-query{flex:1 1 100%;max-width:none}.filter-bar select{flex:1 1 140px;min-width:0}.filter-count{margin-left:0;flex:1 1 100%}.stories-head{align-items:center}.stories-head .primary{white-space:nowrap;flex-shrink:0}.stories-filters .field{flex:1 1 140px;max-width:none}.stories-filters .field.grow{flex-basis:100%}.stories-counters{margin-left:0;justify-content:flex-start}.stories-filters-toggle{display:inline-flex}.stories-filters.collapsed{display:none}}@media(max-width:600px){.user-row,.column-row{flex-wrap:wrap;row-gap:6px}.user-row .cell-input,.column-row .cell-input{flex:1 1 60%;max-width:none}}.readonly-notice{margin:4px 0 12px;padding:8px 10px;border-radius:6px;font-size:var(--text-sm);background:var(--surface-alt);color:var(--ink-soft);border:1px solid var(--line)}.task-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 18px;margin:0 0 16px}.task-facts dt{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:4px}.task-facts dd{margin:0;display:flex;align-items:center;gap:6px}.fact-priority{color:var(--tint);font-weight:600}.fact-blocked{color:var(--danger);font-weight:600}.story-model.stacked{flex-direction:column;flex-wrap:nowrap}.story-model.stacked .field{min-width:0;width:100%}.auto-textarea{width:100%;resize:none;overflow:hidden;font:inherit;color:inherit;line-height:1.45;border:1px solid var(--line-strong);border-radius:6px;padding:7px 9px;background:var(--surface)}.auto-textarea:focus:not(:focus-visible){outline:none;border-color:var(--accent)}.kind-choices{border:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.kind-choices legend{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:6px;padding:0}.kind-choice{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;cursor:pointer;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.kind-choice:hover{background:var(--surface-alt)}.kind-choice.on{border-color:var(--accent);background:var(--accent-soft)}.kind-choice input{margin:3px 0 0;accent-color:var(--accent)}.kind-text{display:flex;flex-direction:column;gap:2px}.kind-label{font-weight:600;font-size:var(--text-md)}.kind-hint{font-size:var(--text-sm);color:var(--ink-soft)}.kind-badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;white-space:nowrap;padding:1px 6px;border-radius:999px;border:1px solid currentColor;color:color-mix(in srgb,var(--tint) 85%,var(--ink))}.story-untitled{color:var(--ink-faint);font-style:italic}.field-static{font-size:var(--text-md);color:var(--ink-soft);padding:6px 0}.kind-icon{display:inline-grid;place-items:center;width:24px;height:24px;flex-shrink:0;color:var(--tint)}:root[data-theme=dark] .kind-icon{color:color-mix(in srgb,var(--tint) 55%,var(--tint-lift))}.story-title .kind-icon{width:auto;height:auto;display:inline-flex;vertical-align:-2px;margin-right:5px}.modal-top>.kind-icon{margin-top:4px}:root[data-theme=dark] .card-icon.page-icon{color:var(--accent)}@media(max-width:600px){.page-icon svg{width:26px;height:26px}}.icon-picker-wrap{display:flex;flex-direction:column;gap:6px;min-width:0}.icon-search{display:flex;flex-direction:column;gap:6px}.icon-search-input{width:100%;max-width:420px;font:inherit;font-size:var(--text-sm);color:inherit;padding:5px 9px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface)}.icon-search-input:focus:not(:focus-visible){outline:none;border-color:var(--accent)}.icon-search-results{max-height:168px;overflow-y:auto;padding:2px}.icon-search-hint{margin:0;font-size:var(--text-xs);color:var(--ink-faint)}:root[data-theme=dark] .card-strip:not(.none){background:var(--tint);color:#fff}.story-priority{flex:2 1 100%}.priority-choice .priority-glyph{display:inline-flex}:root[data-theme=dark] .priority-choice .priority-glyph{width:18px;height:18px;border-radius:4px;align-items:center;justify-content:center;background:var(--tint);color:#fff}:root[data-theme=dark] .priority-choice .icon{color:#fff}:root[data-theme=dark] .priority-choice.on{background:var(--tint);border-color:var(--tint);color:#fff}.attachment-hint{margin:2px 0 6px;font-size:var(--text-sm);color:var(--ink-soft)}.pending-files{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.pending-files li{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.pending-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pending-files small{color:var(--ink-faint)}.pending-files .icon-button{margin-left:auto}.attachment-busy{font-size:var(--text-sm);color:var(--ink-faint)}.profile-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.profile-row .cell-input{flex:1 1 200px;max-width:320px;font-size:var(--text-lg)}.profile-facts{margin-bottom:6px}.my-sessions{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.my-sessions li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--text-md)}.my-sessions small{color:var(--ink-faint)}.my-session-device{font-weight:600}.settings-toc .chip.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.settings.admin-page{max-width:1180px}.admin-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:start;margin-top:8px}.admin-nav{position:sticky;top:16px;z-index:5;display:flex;flex-direction:column;gap:10px}.admin-nav-group{display:flex;flex-direction:column;gap:1px}.admin-nav-title{font-size:var(--text-xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);padding:4px 10px 3px}.admin-nav-item{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:6px;color:var(--ink-soft);text-decoration:none;font-size:var(--text-md)}.admin-nav-item:hover{background:var(--hover);color:var(--ink)}.admin-nav-item.active{background:var(--accent-soft);color:var(--ink);font-weight:600;box-shadow:inset 2px 0 0 var(--accent)}.admin-nav-item .icon{flex-shrink:0}.admin-nav-item.active .icon{color:var(--accent)}.admin-nav-label{flex:1;min-width:0}.admin-nav-lock{position:relative;display:inline-flex;padding:2px;border-radius:4px;color:var(--warning)}.admin-nav-lock:hover{background:var(--warning-soft)}.admin-nav-tip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);z-index:30;width:260px;padding:10px 12px;border-radius:8px;background:var(--ink);color:var(--surface);font-size:var(--text-sm);font-weight:400;line-height:1.45;box-shadow:var(--shadow);visibility:hidden;opacity:0;transition:opacity .12s;pointer-events:none}.admin-nav-tip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--ink)}.admin-nav-tip strong{display:block;margin-bottom:2px}.admin-nav-lock:hover .admin-nav-tip,.admin-nav-item:focus-visible .admin-nav-tip{visibility:visible;opacity:1}.admin-nav-select{display:none}.admin-content{min-width:0;display:flex;flex-direction:column;gap:12px}.admin-crumb{margin:0;font-size:var(--text-sm);color:var(--ink-faint)}.admin-crumb strong{color:var(--ink-soft);font-weight:500}.admin-content .two-factor-notice.inline{margin-bottom:0}.admin-locked-hint{margin:0}@media(max-width:860px){.admin-layout{grid-template-columns:minmax(0,1fr);gap:12px}.admin-nav{display:none}.admin-nav-select{display:grid}}@media(prefers-reduced-motion:reduce){.admin-nav-tip{transition:none}}.admin-overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.admin-overview-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);text-decoration:none}.admin-overview-card:hover{border-color:var(--line-strong)}.admin-overview-title{display:flex;align-items:center;gap:8px;font-weight:600}.admin-overview-title .icon{color:var(--accent)}.admin-overview-body{flex:1;font-size:var(--text-md);color:var(--ink-soft)}.admin-overview-metric{display:block;font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.admin-overview-alert{color:var(--accent)}.admin-overview-link{font-size:var(--text-sm);font-weight:600;color:var(--accent)}.rights-add-bar{display:flex;flex-wrap:wrap;gap:8px}.rights-roles summary{cursor:pointer}.story-comments{display:flex;flex-direction:column;gap:8px;margin:14px 0}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.comment{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--surface)}.comment-head{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.comment-head small{color:var(--ink-faint)}.comment-actions{margin-left:auto;display:inline-flex;gap:10px}.comment-body{margin:6px 0 0;white-space:pre-wrap;font-size:var(--text-md)}.comment-edit{margin-top:6px;display:flex;flex-direction:column;gap:6px}.comment-new{display:flex;gap:8px;align-items:flex-end}.comment-new .auto-textarea{flex:1}.link-button{background:none;border:none;padding:0;color:var(--accent);cursor:pointer;font:inherit;font-size:var(--text-sm)}.story-move{display:inline-flex;gap:6px;align-items:center}.step-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:10px}.step-row{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.step-main{display:flex;align-items:center;gap:8px}.step-main .step-label{font-weight:600;font-size:var(--text-lg);max-width:280px}.step-tools{margin-left:auto;display:inline-flex;gap:4px}.step-settings{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.step-settings .step-hint{flex:1 1 260px;max-width:none;font-size:var(--text-sm)}.step-rights{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:var(--text-sm)}.step-rights-title{font-weight:600;color:var(--ink-soft);min-width:190px}.step-rights-fixed{color:var(--ink-faint)}.view-as{display:flex;flex-direction:column;gap:4px;padding:6px 8px 0}.view-as-label{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.view-as select{width:100%;font:inherit;font-size:var(--text-sm);padding:4px 6px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:inherit}.sidebar.collapsed .view-as{display:none}.view-as-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 16px;background:var(--accent);color:var(--on-solid);font-size:var(--text-sm)}.view-as-banner button{background:var(--on-solid);color:var(--accent);border:none;border-radius:6px;padding:5px 10px;font:inherit;font-weight:600;cursor:pointer}.impersonated{color:var(--ink-faint);font-weight:400;font-size:var(--text-xs)}.story-shell{display:flex;align-items:stretch;width:min(860px,100%);max-height:88vh;background:var(--surface-raised);border-radius:12px;overflow:hidden;box-shadow:0 16px 56px rgba(var(--scrim-rgb),.35)}.story-shell .story-modal{flex:1;min-width:0;max-width:none;width:auto;max-height:88vh;min-height:min(640px,88vh);box-shadow:none;border-radius:0}.story-shell .story-modal .modal-body{flex:1}.binder-tabs{display:flex;flex-direction:column;gap:4px;flex-shrink:0;padding:16px 0;background:var(--surface-alt);border-right:1px solid var(--line)}.binder-tab{display:flex;flex-direction:column;align-items:center;gap:4px;width:88px;padding:11px 4px;border:none;border-left:4px solid transparent;background:transparent;color:var(--ink-soft);font:inherit;font-size:var(--text-xs);font-weight:600;cursor:pointer}.binder-tab .icon{color:var(--accent)}.binder-tab:hover{background:var(--hover);color:var(--ink)}.binder-tab.active{background:var(--surface-raised);color:var(--ink);border-left-color:var(--accent)}.binder-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.binder-count{background:var(--accent);color:var(--on-solid);border-radius:999px;padding:0 6px;font-size:10px;line-height:16px}.step-pill{align-self:flex-start;margin-top:6px;white-space:nowrap;font-size:var(--text-xs);font-weight:600;padding:2px 9px;border-radius:999px;color:var(--on-tint);background:var(--tint, var(--line))}@media(max-width:700px){.story-shell{flex-direction:column}.binder-tabs{flex-direction:row;padding:0;border-right:none;border-bottom:1px solid var(--line)}.binder-tab{flex:1;width:auto;flex-direction:row;justify-content:center;border-left:none;border-bottom:3px solid transparent}.binder-tab.active{border-bottom-color:var(--accent)}.story-shell .modal-top{flex-wrap:wrap}.story-shell .modal-top .step-pill{order:5;margin-left:0}.story-shell .modal-title{flex:1 1 60%}}.notif-bell{position:relative}.notif-bell-button{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--accent);cursor:pointer;box-shadow:0 2px 6px rgba(var(--scrim-rgb),.08)}.notif-bell-button:hover{background:var(--hover)}.notif-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-solid);font-size:10px;font-weight:700;line-height:18px;text-align:center}.notif-panel{position:absolute;right:0;top:calc(100% + 8px);width:380px;max-width:calc(100vw - 32px);max-height:70vh;display:flex;flex-direction:column;background:var(--surface-raised);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.notif-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.notif-panel .empty-hint{padding:14px;margin:0}.notif-list{list-style:none;margin:0;padding:0;overflow-y:auto}.notif{display:flex;align-items:flex-start;gap:8px;border-bottom:1px solid var(--line)}.notif.unread{background:rgba(var(--accent-rgb),.06)}.notif-main{flex:1;display:flex;gap:8px;text-align:left;background:none;border:none;padding:10px 14px;cursor:pointer;font:inherit;color:inherit;min-width:0}.notif-main:hover{background:var(--hover)}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:6px}.notif-text{display:flex;flex-direction:column;gap:2px;min-width:0}.notif-title{font-weight:600;font-size:var(--text-md)}.notif-body{font-size:var(--text-sm);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notif-meta{font-size:var(--text-xs);color:var(--ink-faint)}.notif-toggle{padding:10px 14px 0 0;white-space:nowrap}.notif-all{border:none;border-top:1px solid var(--line);background:var(--surface-alt);padding:10px;font:inherit;font-weight:600;color:var(--accent);cursor:pointer}.notif-all:hover{background:var(--hover)}.notifications-page .page-list{border:1px solid var(--line);border-radius:10px;background:var(--surface-raised);overflow:hidden}.notif-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.notif-filters select{font:inherit;padding:6px 8px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:inherit}.notif-more{margin-top:12px}.notif-settings-group{margin-top:12px;display:flex;flex-direction:column;gap:6px}.notif-settings{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.notif-settings th{text-align:left;font-size:var(--text-xs);color:var(--ink-faint);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 8px;border-bottom:1px solid var(--line)}.notif-settings td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.notif-settings select{font:inherit;padding:4px 6px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:inherit}.notif-check{text-align:center}.notif-check input{width:16px;height:16px;accent-color:var(--accent)}.notif-digest{display:grid;gap:6px;margin-bottom:12px}.notif-digest .field-row{align-items:end;justify-content:start}.notif-digest select{width:auto}.page-header .access-badge{margin-right:100px}@media(max-width:860px){.top-actions{top:calc(6px + var(--env-banner-h));right:10px}.help-button,.notif-bell-button{width:34px;height:34px}.page-header .access-badge{margin-right:0}}.ai-panel{display:flex;flex-direction:column;gap:12px}.ai-banner{display:flex;gap:8px;align-items:flex-start;margin:0;padding:8px 10px;border-radius:var(--radius);background:var(--warning-soft);color:var(--ink);font-size:var(--text-md)}.ai-banner>.icon{flex:none;margin-top:2px;color:var(--warning)}.ai-banner.info{background:var(--accent-soft)}.ai-banner.info>.icon{color:var(--accent)}.ai-banner ul{margin:4px 0 0;padding-left:18px}.ai-success{margin:0;font-size:var(--text-sm);color:var(--success)}.ai-subtasks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.ai-subtasks li{display:flex;align-items:center;gap:8px}.ai-subtasks li input[type=checkbox]{accent-color:var(--accent);flex:none}.ai-subtasks li input:not([type]){flex:1;min-width:0}.ai-subtasks li.dropped input:not([type]){color:var(--ink-faint);text-decoration:line-through}.ai-add{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;margin-top:6px}.ai-prompt-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ai-prompt-head .ghost{margin-left:auto}.ai-prompt{width:100%;font-family:var(--mono);font-size:var(--text-sm);line-height:1.55;resize:vertical;border:1px dashed var(--line-strong);border-radius:var(--radius);padding:8px 10px;background:var(--surface);color:var(--ink)}.ai-chat{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:var(--radius);padding:10px;background:var(--surface-alt)}.ai-msg{margin:0;max-width:85%;padding:6px 10px;border-radius:10px;font-size:var(--text-md)}.ai-msg small{display:block;font-size:var(--text-xs);font-weight:600;color:var(--ink-faint)}.ai-msg.me{align-self:flex-end;background:var(--accent-soft)}.ai-msg.luna{align-self:flex-start;background:var(--surface);border:1px solid var(--line)}.ai-chat-input{display:flex;gap:8px}.ai-chat-input input{flex:1;min-width:0}.ai-footer{border-top:1px solid var(--line);padding-top:10px}.ai-footer .ai-create{margin-left:auto}.ai-panel .primary .icon{vertical-align:-2px}.task-prompt{margin-top:4px}.tech-context{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.tech-context-body{width:100%;display:flex;flex-direction:column;gap:8px}.tech-context-field{display:flex;flex-direction:column;gap:6px}.tech-context-field+.tech-context-field{margin-top:8px}.github-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.ai-prompt-head .story-hint{text-transform:none;letter-spacing:0;font-weight:400}.draft-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.story-create .story-actions .story-hint{flex-basis:100%}.step-settings .step-date-label{flex:1 1 220px;max-width:none;font-size:var(--text-sm)}.column-nudge{display:block;width:100%;margin:0 0 8px;padding:8px 10px;text-align:left;font:inherit;font-size:var(--text-sm);line-height:1.35;color:var(--ink);background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:8px;cursor:pointer;animation:column-nudge-life 9s ease forwards}@keyframes column-nudge-life{0%{opacity:0;transform:translateY(-4px)}6%{opacity:1;transform:none}88%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.column-nudge{animation:none}}.dashboard-counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0 0 20px}.counter-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;text-align:left;font:inherit;color:var(--ink);background:var(--surface-raised);border:1px solid var(--line);border-radius:12px;cursor:pointer}.counter-tile:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.counter-value{font-size:28px;font-weight:700;line-height:1.1;color:var(--ink-soft)}.counter-tile.active .counter-value{color:var(--accent)}.counter-label{font-weight:600;font-size:var(--text-sm)}.counter-hint{font-size:var(--text-xs);color:var(--ink-soft)}.story-card .card-foot{flex-wrap:wrap}.story-card .card-foot .card-due{white-space:normal}.support-banner{background:var(--warning);color:var(--on-solid)}.support-banner button{color:var(--warning)}.support-settings{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);display:grid;gap:10px}.support-settings h3,.platform-block h3{margin:0;font-size:var(--text-md)}.support-toggle{display:flex;gap:8px;align-items:flex-start;font-size:var(--text-sm);color:var(--ink-soft)}.support-toggle input{margin-top:3px}.settings.platform{max-width:1500px}.platform-table-wrap{overflow-x:auto}.platform-table{white-space:nowrap}.platform-table td.num{text-align:right;font-variant-numeric:tabular-nums}.platform-table tr.selected td{background:var(--accent-soft)}.platform-tag{margin-left:6px;padding:1px 6px;border-radius:999px;font-size:var(--text-xs);background:var(--surface-alt);color:var(--ink-soft)}.platform-status{font-size:var(--text-xs);font-weight:600;color:var(--success)}.platform-status.suspended{color:var(--danger)}.platform-block{margin-top:16px;padding-top:12px;border-top:1px solid var(--line);display:grid;gap:8px;justify-items:start}.platform-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.platform-confirm p{margin:0;width:100%;font-size:var(--text-sm)}.platform-invitations{list-style:none;margin:0;padding:0;display:grid;gap:8px;width:100%}.platform-invitations>li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:10px;padding:8px 12px}.platform-invitations strong{overflow-wrap:anywhere}.platform-created{margin-top:12px;padding:12px;border-radius:8px;background:var(--warning-soft);display:grid;gap:8px;justify-items:start;font-size:var(--text-sm)}.platform-created p{margin:0}.platform-actions{display:flex;gap:8px}.top-actions{position:fixed;top:calc(38px + var(--env-banner-h));right:28px;z-index:30;display:flex;align-items:center;gap:8px}.help-button{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);background:var(--surface-raised);color:var(--accent);cursor:pointer;box-shadow:0 2px 6px rgba(var(--scrim-rgb),.08)}.help-button:hover,.help-button.on{background:var(--accent-soft)}.help-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.help-panel{position:fixed;top:0;right:0;bottom:0;z-index:50;width:min(380px,100vw);display:flex;flex-direction:column;background:var(--surface-raised);color:var(--ink);border-left:1px solid var(--line-strong);box-shadow:var(--shadow)}.help-panel-head{display:flex;align-items:center;gap:6px;padding:14px 14px 10px 18px;border-bottom:1px solid var(--line)}.help-panel-head h2{flex:1;margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:650;line-height:1.25}.help-panel-head h2:focus{outline:none}.help-panel-body{flex:1;overflow-y:auto;padding:12px 18px 18px;display:flex;flex-direction:column;gap:14px}.help-panel-foot{padding:10px 18px;border-top:1px solid var(--line);background:var(--surface-alt);font-size:var(--text-md);display:flex;flex-wrap:wrap;gap:6px 14px}.help-panel-foot a,.help-panel-foot button{color:var(--accent);font-weight:600}.help-search{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink-faint)}.help-search input{flex:1;min-width:0;border:none;background:transparent;font:inherit;color:var(--ink);padding:2px 0}.help-search input:focus{outline:none}.help-search:focus-within{border-color:var(--accent)}.help-group{display:flex;flex-direction:column;gap:6px}.help-group h3,.help-related h3{margin:0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:700}.help-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px 12px}.help-group.method .help-item{background:var(--warning-soft)}.help-item summary{cursor:pointer;font-weight:600;font-size:var(--text-md)}.help-item p{margin:6px 0 4px;font-size:var(--text-md);color:var(--ink-soft);line-height:1.5}.help-empty{color:var(--ink-faint);font-size:var(--text-md);margin:0}.help-family,.guide-kicker,.guide-card-family{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--accent);font-weight:700}.help-article{display:flex;flex-direction:column;gap:10px}.help-article-body{display:flex;flex-direction:column;gap:10px;font-size:var(--text-lg);line-height:1.6}.help-article-body p,.help-article-body ul,.help-article-body ol{margin:0}.help-article-body ul,.help-article-body ol{padding-left:20px;display:flex;flex-direction:column;gap:4px}.help-summary{font-weight:500}.help-example{margin:0;padding:10px 12px;border-radius:var(--radius);background:var(--surface-alt);border:1px solid var(--line)}.help-example figcaption{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:700;margin-bottom:4px}.help-example p{white-space:pre-line;font-style:italic}.help-note{padding:8px 12px;border-radius:var(--radius);background:var(--warning-soft)}.help-related{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.info-tip{display:inline-grid;place-items:center;width:15px;height:15px;margin-left:4px;vertical-align:1px;border-radius:50%;border:1px solid currentColor;color:var(--accent);background:var(--surface-raised);font:italic 700 10px/1 Georgia,serif;text-transform:none;letter-spacing:0;cursor:pointer;-webkit-user-select:none;user-select:none}.info-tip:hover,.info-tip.on{background:var(--accent-soft)}.info-tip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.info-bubble{position:fixed;z-index:60;display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:10px;background:var(--ink);color:var(--surface);box-shadow:var(--shadow);font-size:var(--text-md);line-height:1.5;text-transform:none;letter-spacing:0;font-weight:400}.info-bubble strong{font-size:var(--text-md)}.info-bubble .link-button{align-self:flex-start;color:var(--surface);text-decoration:underline}.story-coach{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-alt)}.story-coach.done{background:var(--success-soft)}.story-coach-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;font-size:var(--text-md)}.story-coach-links{display:flex;gap:12px}.story-coach ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:var(--text-md)}.story-coach li{display:flex;gap:8px;align-items:baseline;color:var(--ink-soft)}.coach-mark{width:14px;flex-shrink:0;text-align:center;font-weight:700}.coach-ok .coach-mark{color:var(--success)}.coach-warn{color:var(--ink)!important}.coach-warn .coach-mark{color:var(--warning)}.coach-todo .coach-mark{color:var(--ink-faint)}.story-coach-example{margin:0;font-size:var(--text-md);padding:8px 10px;border-radius:6px;background:var(--surface-raised)}.cycle-strip{clear:both;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin:0 0 16px;font-size:var(--text-md)}.cycle-strip.collapsed{font-size:var(--text-sm)}.cycle-strip-label{flex-basis:100%;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-weight:700}.cycle-strip ol{flex:0 0 auto;max-width:100%;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.cycle-step{padding:2px 10px;border-radius:999px;background:var(--tint, var(--line));color:var(--on-tint);font-weight:600;font-size:var(--text-sm);cursor:help}.cycle-arrow{color:var(--ink-faint)}.cycle-strip-actions{display:flex;gap:12px;font-size:var(--text-sm)}.guide{max-width:920px}.guide .page-subtitle{max-width:68ch}.guide-search{max-width:460px}.guide-section{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.guide-section h2{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:650}.guide-intro{margin:0;color:var(--ink-soft)}.guide-path{padding:18px 20px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-raised)}.guide-path-list{margin:0;padding-left:22px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 24px}.guide-path-list a,.guide-screen a{color:var(--ink);text-decoration-color:var(--line-strong);text-underline-offset:3px}.guide-path-list a:hover,.guide-screen a:hover{color:var(--accent)}.guide-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.guide-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);text-decoration:none}.guide-card:hover{border-color:var(--accent)}.guide-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.guide-card-summary{font-size:var(--text-md);color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.guide-screens{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 24px}.guide-screen h3{margin:0 0 4px;font-size:var(--text-lg)}.guide-screen ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px;font-size:var(--text-md)}.guide-glossary{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px 24px}.guide-glossary dt{font-weight:700}.guide-glossary dd{margin:2px 0 0;color:var(--ink-soft);font-size:var(--text-md)}.glossary-plain{font-weight:400;color:var(--ink-faint)}.guide-article{max-width:70ch;display:flex;flex-direction:column;gap:10px}.guide-article .help-article-body{font-size:var(--text-xl)}.guide-article-title{margin:0 0 6px}.guide-back{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);text-decoration:none;font-size:var(--text-md)}.guide-back:hover{color:var(--accent)}@media(max-width:600px){.help-panel{width:100vw}.page-header .access-badge{margin-right:0}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.tour-ring{position:fixed;z-index:58;pointer-events:none;border-radius:10px;box-shadow:0 0 0 3px var(--accent),0 0 0 9999px rgba(var(--scrim-rgb),.28);transition:top .18s ease,left .18s ease,width .18s ease,height .18s ease}.tour-bubble{position:fixed;z-index:61;display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);font-size:var(--text-md);line-height:1.5}.tour-bubble p{margin:0;color:var(--ink-soft)}.tour-count{font-size:var(--text-xs);color:var(--ink-faint);font-weight:600;letter-spacing:.04em}.tour-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;flex-wrap:wrap}.tour-nav{display:flex;gap:6px;margin-left:auto}@media(prefers-reduced-motion:reduce){.tour-ring{transition:none}}.getting-started{margin:0 0 18px;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-alt);display:flex;flex-direction:column;gap:10px}.getting-started header{display:flex;align-items:baseline;gap:12px}.getting-started h2{margin:0;font-size:var(--text-lg)}.getting-started-count{color:var(--ink-faint);font-size:var(--text-md);font-weight:600}.getting-started header .link-button{margin-left:auto}.getting-started progress{width:100%;height:6px;accent-color:var(--accent)}.getting-started p{margin:0;color:var(--ink-soft)}.getting-started ol{list-style:none;margin:0;padding:0;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.getting-started li{display:flex;align-items:baseline;gap:8px;font-size:var(--text-md)}.getting-started li.done{color:var(--ink-faint);text-decoration:line-through}.getting-started li a{color:var(--accent);font-weight:600}.getting-started-mark{flex:0 0 16px;height:16px;border-radius:50%;border:1.5px solid var(--line-strong);display:inline-grid;place-items:center;font-size:11px;font-weight:700;transform:translateY(3px)}.getting-started li.done .getting-started-mark{background:var(--success);border-color:var(--success);color:var(--surface)}.getting-started.finished{background:var(--success-soft)}.help-pref{display:flex;align-items:center;gap:8px;font-size:var(--text-md)}.help-pref-actions{display:flex;flex-wrap:wrap;gap:8px}.help-group.team h3{color:var(--accent)}.team-rule summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.team-rule-badge{font-size:var(--text-xs);font-weight:700;letter-spacing:.03em;padding:1px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.team-rule .rich-content{padding:4px 0 2px;font-size:var(--text-md)}.guide-team .help-group.team{margin:0}.tip-of-day{margin:0 0 18px;padding:12px 18px;border-radius:var(--radius);border:1px dashed var(--line-strong);display:flex;flex-direction:column;gap:4px;background:var(--surface)}.tip-of-day p{margin:0;color:var(--ink-soft);font-size:var(--text-md)}.tip-of-day-actions{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--text-md)}.tip-of-day-actions a{color:var(--accent);font-weight:600}.help-pref{align-items:flex-start}.help-pref input{margin-top:3px}.help-pref>span{display:flex;flex-direction:column}.help-pref-hint{color:var(--ink-faint);font-size:var(--text-xs)}.help-admin-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.help-admin-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:8px 0;border-bottom:1px solid var(--line)}.help-admin-title{display:flex;flex-direction:column;min-width:0}.help-admin-title small{color:var(--ink-faint)}.help-admin-tools{display:flex;flex-wrap:wrap;gap:6px}.help-admin-editor{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-alt)}.help-admin-roles{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px}.help-admin-roles legend{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);margin-bottom:6px}.twofa-setup{display:grid;gap:10px;justify-items:start}.twofa-qr{background:#fff;border-radius:var(--radius);padding:6px;border:1px solid var(--line)}.twofa-codes{display:grid;gap:10px}.twofa-codes ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}.twofa-codes code{font-size:14px;letter-spacing:.04em}.twofa-backup{display:grid;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line, rgba(0, 0, 0, .1))}.twofa-backup h3{margin:0;font-size:15px}.email-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:12px}.email-editor-form{display:grid;gap:8px;align-content:start}.email-editor-form textarea{width:100%;font:inherit;font-size:var(--text-md);padding:8px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink);resize:vertical}.email-variables ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:4px}.email-variables small{color:var(--ink-faint)}.email-preview{display:grid;gap:6px;align-content:start}.email-preview iframe{width:100%;height:560px;border:1px solid var(--line);border-radius:var(--radius);background:#fdf8ee}@media(max-width:900px){.email-editor-grid{grid-template-columns:1fr}}.github-choices{list-style:none;margin:0;padding:0;display:grid;gap:8px}.github-choices li{display:flex;gap:10px;align-items:center}.github-settings .story-actions{flex-wrap:wrap}.button-link{display:inline-block;text-decoration:none}.onboarding-reduced{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 14px;border-radius:var(--radius);background:var(--accent-soft);color:var(--ink)}.onboarding-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.onboarding-step{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.onboarding-step.open{border-color:var(--line-strong)}.onboarding-step-head{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;background:none;border:none;cursor:pointer;text-align:left;font:inherit;color:var(--ink)}.onboarding-mark{transform:none;flex-basis:22px;height:22px;font-size:var(--text-xs)}.onboarding-step.done .onboarding-mark{background:var(--success);border-color:var(--success);color:var(--surface)}.onboarding-step-title{flex:1;font-weight:600}.onboarding-step.done .onboarding-step-title,.onboarding-step.skipped .onboarding-step-title{color:var(--ink-faint)}.onboarding-step-state{font-size:var(--text-sm);color:var(--ink-faint);white-space:nowrap}.onboarding-step-body{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px}.onboarding-step-body>.settings-hint{margin:0}.onboarding-step-actions{display:flex;flex-wrap:wrap;gap:8px}.onboarding-progress{margin-bottom:14px}@media(max-width:640px){.onboarding-step-head{flex-wrap:wrap}.onboarding-step-state{width:100%;padding-left:32px}}.two-factor-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 16px;background:var(--warning-soft);color:var(--ink);font-size:var(--text-sm);border-bottom:1px solid var(--line)}.two-factor-notice.inline{border:1px solid var(--line);border-radius:10px;margin-bottom:14px}.two-factor-notice-actions{display:inline-flex;gap:8px;flex-shrink:0}.settings-locked{border:none;margin:0;padding:0;min-width:0}.settings-locked:disabled{opacity:.75}.transfer-projects{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.transfer-projects label{display:flex;align-items:center;gap:8px;font-size:var(--text-sm)}.transfer-plan{display:flex;flex-direction:column;gap:12px}.transfer-project{border:1px solid var(--line);border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.transfer-project h4{margin:0;font-size:var(--text-md)}.transfer-choice{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:var(--text-sm)}.transfer-choice input[type=text],.transfer-choice select{font:inherit;font-size:var(--text-sm);padding:4px 6px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:inherit;min-width:200px;max-width:100%}.transfer-warning{margin:0;color:var(--warning);font-size:var(--text-sm)}.transfer-people{margin:0;padding-left:18px;font-size:var(--text-sm);color:var(--ink-soft)}.tab-bar{display:none;flex-shrink:0;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--surface-raised);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px))}.tab-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px;padding:4px 0;border:0;background:none;cursor:pointer;font-size:var(--text-xs);color:var(--ink-faint);text-decoration:none}.tab-item.active{color:var(--accent);font-weight:600}.tab-item.active .mini-avatar{box-shadow:0 0 0 2px var(--accent)}.nav-badge.tab-badge{position:absolute;top:2px;left:calc(50% + 6px);margin-left:0}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;border:none;padding:0;background:rgba(var(--scrim-rgb),.35);cursor:default}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;z-index:45;max-height:82dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface-raised);border-radius:16px 16px 0 0;box-shadow:var(--shadow);padding:6px 12px calc(16px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:6px}.sheet-grab{width:36px;height:4px;border-radius:4px;background:var(--line-strong);margin:2px auto 6px;flex-shrink:0}.bottom-sheet .nav-item,.bottom-sheet .project-item{min-height:44px;font-size:var(--text-lg)}.bottom-sheet .pin-button{opacity:1}.sheet-areas{border-top:1px solid var(--line);padding-top:6px}@media(max-width:860px){.tab-bar{display:grid}}.new-idea{position:relative;display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:12px;background:var(--warning-soft)}.new-idea-bulb{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--surface-raised);color:var(--warning);box-shadow:0 0 0 6px rgba(var(--accent-rgb),.12)}.new-idea-text{flex:1;min-width:200px;display:flex;flex-direction:column;gap:2px}.new-idea-text strong{font-family:var(--font-display);font-size:var(--text-xl)}.new-idea-text span{font-size:var(--text-md);color:var(--ink-soft)}.new-idea-button{display:inline-flex;align-items:center;gap:8px}.new-idea-menu{position:absolute;right:16px;top:calc(100% - 6px);z-index:15;min-width:200px;display:flex;flex-direction:column;gap:1px;padding:6px;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow)}.new-idea-menu button{display:flex;align-items:center;gap:8px;padding:8px 10px;border:0;border-radius:6px;background:none;cursor:pointer;text-align:left;color:var(--ink)}.new-idea-menu button:hover{background:var(--hover)}.new-idea-menu .icon{color:var(--accent)}@media(max-width:600px){.new-idea-button{width:100%;justify-content:center}.new-idea-menu{left:16px;right:16px}}.primary.danger{background:var(--danger);color:var(--on-solid)}.deletion-now,.privacy-form{display:grid;gap:10px}.privacy-zone{border-top:1px solid var(--line);padding-top:12px;margin-top:4px;display:grid;gap:10px}.privacy-zone h3{margin:0;font-size:var(--text-sm);color:var(--danger)}.deletion-requests{list-style:none;margin:0;padding:0;display:grid;gap:12px}.deletion-requests>li{border:1px solid var(--line);border-radius:10px;padding:12px;display:grid;gap:8px}.deletion-requests .story-actions{flex-wrap:wrap}.privacy-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.privacy-checks,.privacy-pending{list-style:none;margin:0;padding:0;display:grid}.privacy-checks>li{display:grid;grid-template-columns:88px 1fr auto;gap:12px;align-items:start;padding:10px 0;border-top:1px solid var(--line)}.privacy-checks>li:first-child{border-top:0}.privacy-checks a,.privacy-pending a{font-size:var(--text-sm);font-weight:600;color:var(--accent);white-space:nowrap}.privacy-check-text{display:grid;gap:2px;min-width:0}.privacy-check-text small{color:var(--ink-soft);font-size:var(--text-sm)}.privacy-pill{justify-self:start;font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:999px;background:var(--hover);color:var(--ink-soft)}.privacy-pill.todo{background:var(--warning-soft);color:var(--warning)}.privacy-pill.pending{background:var(--accent-soft);color:var(--accent)}.privacy-pill.ok{background:var(--success-soft);color:var(--success)}.privacy-pending>li{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--line)}.privacy-pending>li:first-child{border-top:0}.privacy-table-wrap{overflow-x:auto}.privacy-journal td:first-child{white-space:nowrap;font-variant-numeric:tabular-nums}.privacy-filters{justify-self:start;align-self:start;width:fit-content}.privacy-two{display:grid;gap:16px}@media(max-width:600px){.privacy-checks>li{grid-template-columns:1fr;gap:4px}}
