:root{color-scheme:light;font-family:IBM Plex Sans,Segoe UI,sans-serif;--gray-950: #161616;--gray-900: #232323;--gray-800: #363636;--gray-700: #555555;--gray-600: #6f6f6f;--gray-500: #8d8d8d;--gray-400: #b3b3b3;--gray-300: #d0d0d0;--gray-200: #e3e3e3;--gray-150: #ededed;--gray-100: #f4f4f4;--gray-50: #fafafa;--yellow-200: #f6df86;--yellow-100: #fff2bf;--radius-tight: .12rem;--radius-small: .22rem;--radius-medium: .32rem;--radius-large: .42rem;--radius-xl: .5rem;background:radial-gradient(circle at top,#fffffff2,#f4f4f4eb 40%,#e3e3e3e6);color:var(--gray-950)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--gray-100)}#root{min-height:100vh}.app-shell{padding:1rem;max-width:1800px;margin:0 auto}.app-header{display:flex;gap:.75rem;align-items:center;justify-content:space-between;margin-bottom:.8rem}.app-header h1{margin:0;font-size:1.22rem;line-height:1.2}.header-auth{display:flex;align-items:center;justify-content:flex-end;min-height:2.35rem;margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-session{display:inline-flex;gap:.6rem;align-items:center}.auth-avatar{display:block;width:2.2rem;height:2.2rem;border-radius:999px;border:1px solid rgba(22,22,22,.12);background:#16161614;object-fit:cover}.auth-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--gray-900);font-size:.95rem;font-weight:700}.app-banner{margin:0 0 .8rem;padding:.65rem .8rem;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.1);background:#fafafaeb;color:var(--gray-700);line-height:1.5}.app-banner-error{color:var(--gray-900);font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.55rem .85rem;border-radius:var(--radius-small);background:var(--gray-900);color:var(--gray-50);font-weight:700;text-decoration:none;border:0;cursor:pointer}.button:disabled{cursor:not-allowed;opacity:.6}.button-secondary{background:#16161614;color:var(--gray-900)}.button-ghost{background:transparent;color:var(--gray-700);border:1px solid rgba(22,22,22,.1)}.button-icon-only{min-width:2.35rem;padding-inline:.65rem}.button-icon-glyph{font-size:1.45rem;line-height:1}.error{margin-top:.75rem!important;color:var(--gray-900)!important;font-weight:600}.browser-panel{padding:1rem;border:1px solid rgba(22,22,22,.1);border-radius:var(--radius-xl);background:#fafafaeb;box-shadow:0 12px 28px #16161609}.feature-panel{margin-bottom:1.1rem;padding:1rem;border:1px solid rgba(22,22,22,.1);border-radius:var(--radius-xl);background:#fafafaeb;box-shadow:0 12px 28px #16161609}.feature-panel-header,.feature-card-header,.feature-badge-group,.feature-create-row{display:flex;gap:.75rem;align-items:start;justify-content:space-between}.feature-panel-heading{min-width:min(100%,28rem);flex:1 1 28rem}.feature-panel-heading h2{margin:0 0 .45rem;font-size:1.24rem;line-height:1.2}.feature-picker-row{display:flex;gap:.6rem;align-items:stretch;margin-bottom:.45rem}.feature-badge-group{align-items:center;flex-wrap:wrap}.feature-submitted-panel{display:grid;gap:.55rem;width:min(100%,22rem);min-width:min(100%,16rem)}.feature-submitted-title{margin:0;color:var(--gray-700);font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.feature-submitted-list{display:grid;gap:.45rem}.feature-submitted-link,.feature-submitted-missing{min-width:0;padding:.65rem .75rem;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.08);background:var(--gray-150)}.feature-submitted-link{display:flex;gap:.6rem;align-items:start;justify-content:space-between;color:var(--gray-950);text-decoration:none}.feature-submitted-link:hover{background:#e3e3e3eb}.feature-submitted-link span:last-child{flex:none;color:var(--gray-700);white-space:nowrap}.feature-submitted-missing,.feature-submitted-empty{margin:0;color:var(--gray-700);line-height:1.5}.feature-create-row{margin-top:.8rem;justify-content:start;flex-wrap:wrap}.feature-create-form{margin-top:.8rem;padding:.85rem;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.08);background:var(--gray-150)}.feature-input{width:100%;flex:1 1 18rem;min-height:2.35rem;padding:.55rem .75rem;border-radius:var(--radius-small);border:1px solid rgba(22,22,22,.14);background:var(--gray-50);color:var(--gray-950);font:inherit}.feature-create-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.8rem;flex-wrap:wrap}.feature-summary{margin:.75rem 0 0;color:var(--gray-700);line-height:1.5}.feature-select{width:min(100%,19rem);flex:0 1 19rem;min-height:3rem;margin:0;padding:.7rem 2.6rem .7rem .85rem;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.14);background:var(--gray-100);color:var(--gray-950);font:inherit;font-size:1.15rem;font-weight:700;line-height:1.2;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gray-700) 50%),linear-gradient(135deg,var(--gray-700) 50%,transparent 50%);background-position:calc(100% - 1.2rem) calc(50% - .1rem),calc(100% - .82rem) calc(50% - .1rem);background-size:.42rem .42rem,.42rem .42rem;background-repeat:no-repeat}.feature-select:focus{outline:2px solid rgba(22,22,22,.24);outline-offset:2px}.feature-select:disabled{cursor:not-allowed;opacity:.7}.feature-picker-action{flex:0 0 auto;min-height:3rem;padding-inline:1rem;white-space:nowrap}.feature-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:1.55rem;padding:.15rem .55rem;border-radius:var(--radius-small);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.feature-status-draft{background:#1616161a;color:var(--gray-900)}.feature-status-submitted{background:var(--gray-900);color:var(--gray-50)}.browser-header{display:flex;gap:.75rem;align-items:end;justify-content:space-between;margin-bottom:.8rem}.browser-header h2{margin:0;font-size:1.24rem}.browser-meta{max-width:24rem;margin:0;color:var(--gray-700);line-height:1.5}.document-transition-state{margin:0 0 .65rem;color:var(--gray-700);font-size:.86rem;font-weight:600}.browser-tree{display:grid;gap:.15rem}.browser-toggle{min-height:2rem;min-width:2rem;padding:.35rem}.workspace-grid{display:grid;gap:.85rem;grid-template-columns:minmax(250px,320px) auto minmax(0,1fr)}.workspace-grid-tree-collapsed{grid-template-columns:auto minmax(0,1fr)}.workspace-grid-locked{pointer-events:none}.workspace-tree-pane{min-width:0}.workspace-tree-toggle-slot{display:flex;align-items:start;justify-content:center;padding-top:.1rem}.browser-toggle-adjacent{border-radius:var(--radius-medium)}.workspace-lock-pane{display:grid;gap:.7rem;min-height:100%;padding:.85rem;border-radius:var(--radius-medium);background:#f4f4f4eb;border:1px solid rgba(22,22,22,.08)}.workspace-lock-message{margin:0;color:var(--gray-900);font-size:.9rem;font-weight:700;line-height:1.5}.tree-skeleton-list{display:grid;gap:.45rem}.tree-skeleton-row{display:flex;gap:.55rem;align-items:center;min-height:2rem;padding:.35rem .55rem;border-radius:var(--radius-small);background:#fafafab8}.tree-skeleton-icon,.tree-skeleton-line,.auth-skeleton-avatar,.auth-skeleton-button,.feature-skeleton-pill,.feature-skeleton-line,.document-skeleton-block,.thread-skeleton-card,.thread-marker-skeleton{background:linear-gradient(90deg,#d0d0d07a,#e8e8e8c7,#d0d0d07a);background-size:200% 100%;animation:workspace-skeleton-pulse 1.3s ease-in-out infinite}.tree-skeleton-icon{width:.82rem;height:.82rem;border-radius:var(--radius-tight);flex:none}.tree-skeleton-line{width:100%;height:.8rem;border-radius:var(--radius-tight)}.auth-skeleton{display:inline-flex;gap:.6rem;align-items:center}.auth-skeleton-avatar{width:2.2rem;height:2.2rem;border-radius:999px;flex:none}.auth-skeleton-button{width:6.6rem;height:2.35rem;border-radius:var(--radius-small)}.feature-panel-skeleton{display:grid;gap:.5rem}.feature-skeleton-row{display:flex;gap:.6rem;align-items:center}.feature-skeleton-pill{width:3.2rem;height:1rem;border-radius:var(--radius-tight);flex:none}.feature-skeleton-line{width:100%;height:.8rem;border-radius:var(--radius-tight)}.feature-skeleton-line-short{width:68%}.tree-node{display:grid;gap:.15rem}.tree-row{display:flex;gap:.55rem;align-items:center;width:100%;min-height:2rem;padding:.35rem .55rem;border:0;border-radius:var(--radius-small);background:transparent;color:var(--gray-950);cursor:pointer;text-align:left;font:inherit}.tree-row:hover{background:#1616160f}.tree-row-folder{font-weight:600}.tree-row-file{align-items:start}.tree-row-file.is-selected{background:var(--gray-200);box-shadow:inset 0 0 0 1px #16161614}.tree-chevron,.tree-icon{width:.9rem;flex:0 0 .9rem;color:var(--gray-700);display:inline-flex;align-items:center;justify-content:center}.tree-content{display:grid;gap:.15rem;min-width:0}.tree-label{min-width:0;word-break:break-word}.tree-meta{color:var(--gray-700);font-size:.76rem;font-family:IBM Plex Mono,SFMono-Regular,monospace}.tree-svg{width:.9rem;height:.9rem;display:block}.file-row{display:flex;gap:.75rem;align-items:center;justify-content:space-between;width:100%;padding:.75rem .85rem;border-radius:var(--radius-medium);background:var(--gray-150);border:1px solid rgba(22,22,22,.08);cursor:pointer;text-align:left}.file-row.is-selected{border-color:#16161638;background:var(--gray-200);box-shadow:inset 0 0 0 1px #16161614}.file-path{margin:0;font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.9rem;color:var(--gray-950)}.file-meta{margin:.25rem 0 0;font-size:.8rem;color:var(--gray-700)}.file-status{padding:.25rem .5rem;border-radius:var(--radius-small);background:var(--gray-900);color:var(--gray-50);font-size:.74rem;font-weight:700;letter-spacing:.03em;white-space:nowrap}.browser-empty{margin:0;color:var(--gray-700);line-height:1.5}.browser-footnote{margin-top:.75rem;font-size:.9rem;color:var(--gray-700)}.browser-footnote p{margin:.25rem 0 0}.document-panel{display:grid;gap:.85rem;min-width:0;padding:.85rem;border-radius:var(--radius-medium);background:#f4f4f4eb;border:1px solid rgba(22,22,22,.08)}.document-panel-skeleton{opacity:.96}.review-workspace{display:grid;gap:.85rem;align-items:start;grid-template-columns:minmax(0,1.9fr) minmax(320px,.9fr)}.review-workspace-skeleton{pointer-events:none}.code-pane{display:grid;gap:.85rem;min-width:0}.document-frame{display:grid;gap:.6rem;align-items:stretch;grid-template-columns:minmax(0,1fr) 2.35rem}.document-gutter{position:relative;min-height:320px;border-radius:var(--radius-medium);background:var(--gray-150);border:1px solid rgba(22,22,22,.08)}.document-gutter-skeleton{display:flex;align-items:center;justify-content:center;gap:.35rem}.document-skeleton-block{min-height:320px;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.05)}.thread-marker-skeleton{width:.9rem;height:68%;border-radius:var(--radius-tight)}.thread-marker{position:absolute;left:50%;width:1.3rem;height:1.3rem;transform:translate(-50%,-50%);border:0;border-radius:var(--radius-tight);background:var(--gray-600);color:var(--gray-50);box-shadow:0 0 0 2px #fafafaf2;cursor:pointer}.thread-marker.is-active{background:var(--gray-900)}.thread-marker-index{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:.66rem;font-weight:700}.document-header{display:flex;gap:.75rem;align-items:start;justify-content:space-between}.document-header h2{margin:0;font-size:1.08rem;line-height:1.3;word-break:break-word}.document-meta{margin:.3rem 0 0;color:var(--gray-700);line-height:1.5}.document-content{margin:0;padding:1rem;min-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-word;border-radius:var(--radius-medium);background:var(--gray-50);border:1px solid rgba(22,22,22,.08);font-family:IBM Plex Mono,SFMono-Regular,monospace;font-size:.9rem;line-height:1.55;color:var(--gray-950)}.document-content:focus{outline:2px solid rgba(85,85,85,.45);outline-offset:2px}.thread-highlight{border-radius:var(--radius-tight);background:#fff2bfeb;box-shadow:0 0 0 1px #f6df86b3;cursor:pointer}.thread-highlight.is-resolved{background:#d6d6d6eb;box-shadow:0 0 0 1px #88888857}.thread-highlight.is-active{background:#ffb84dfa;box-shadow:0 0 0 1px #a8600ab8,0 0 0 3px #ffb84d6b}.thread-highlight:focus{outline:2px solid rgba(85,85,85,.45);outline-offset:2px}.composer-textarea{width:100%;min-height:80px;margin-top:.45rem;padding:.65rem .75rem;resize:vertical;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.14);background:var(--gray-50);font:inherit;color:var(--gray-950)}.composer-actions{display:flex;justify-content:flex-end;margin-top:.6rem}.selection-meta{margin:0;color:var(--gray-700);line-height:1.5}.selection-preview{margin:.5rem 0 0;padding-left:.7rem;border-left:3px solid rgba(85,85,85,.28);white-space:pre-wrap;color:var(--gray-950);line-height:1.5}.warning{margin:0;padding:.65rem .8rem;border-radius:var(--radius-medium);background:#d0d0d0a6;color:var(--gray-900);font-weight:600;line-height:1.5}.thread-rail{display:grid;gap:.85rem;min-width:0;position:sticky;top:.75rem}.thread-rail>*,.thread-panel-header,.thread-panel-header>*,.thread-focus-section,.thread-collapsed-section,.thread-composer-section,.thread-list,.thread-card,.thread-card-hitbox,.thread-card-header,.thread-card-header>*,.thread-collapse-toggle,.thread-collapse-toggle>*,.thread-summary-list,.thread-summary-card,.message-list,.message-card{min-width:0}.thread-rail-skeleton{display:grid;gap:.85rem}.thread-skeleton-card{min-height:6rem;border-radius:var(--radius-medium);border:1px solid rgba(22,22,22,.05)}.thread-skeleton-header{min-height:4.5rem}.thread-focus-section,.thread-collapsed-section,.thread-composer-section{display:grid;gap:.65rem}.thread-composer-section{padding:.85rem;border-radius:var(--radius-medium);background:var(--gray-150);border:1px solid rgba(22,22,22,.08)}.thread-panel-header{display:flex;gap:.75rem;align-items:start;justify-content:space-between}.thread-panel-header h3{margin:0;font-size:1.08rem}.thread-rail-summary{margin:.3rem 0 0;color:var(--gray-700);font-size:.9rem}@keyframes workspace-skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.thread-list{display:grid;gap:.75rem}.thread-card{padding:.85rem;border-radius:var(--radius-medium);background:var(--gray-150);border:1px solid rgba(22,22,22,.08)}.thread-card.is-active{border-color:#1616162e;box-shadow:inset 0 0 0 1px #1616160f,0 0 0 1px #1616160a,0 6px 14px #1616160f;background:#e3e3e3fa}.thread-card-hitbox{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.thread-card-header{display:flex;gap:.75rem;justify-content:space-between;align-items:start}.thread-status{margin:0 0 .25rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-700)}.thread-card h4{margin:0;font-size:.95rem}.thread-meta,.thread-anchor,.message-meta{margin:0;color:var(--gray-700);line-height:1.5}.thread-anchor{margin-top:.6rem}.thread-notice{margin:.65rem 0 0;padding:.6rem .75rem;border-radius:var(--radius-medium);background:#e3e3e3e0;color:var(--gray-900);line-height:1.5}.thread-notice-warning{background:#d0d0d0ad;color:var(--gray-900)}.thread-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:.85rem}.thread-action-button{min-height:2rem;padding:.38rem .68rem;font-size:.88rem}.thread-action-meta,.thread-closed-summary{margin:0;color:var(--gray-700);line-height:1.5}.thread-closed-summary{margin-top:.85rem;padding:.7rem .8rem;border-radius:var(--radius-medium);background:#1616160d}.message-list{display:grid;gap:.6rem;margin-top:.75rem}.message-card{padding:.65rem .75rem;border-radius:var(--radius-medium);background:var(--gray-50);border:1px solid rgba(22,22,22,.08)}.message-card-header{display:flex;gap:.6rem;align-items:start;justify-content:space-between}.message-body{margin:.35rem 0 0;white-space:pre-wrap;line-height:1.5;color:var(--gray-950)}.message-edit-textarea{margin-top:.5rem}.thread-collapse-toggle,.thread-summary-card{width:100%;border:0;text-align:left;cursor:pointer}.thread-collapse-toggle{display:flex;justify-content:space-between;gap:.75rem;padding:.7rem .85rem;border-radius:var(--radius-medium);background:#16161614;color:var(--gray-900);font:inherit;font-weight:700}.thread-summary-list{display:grid;gap:.6rem}.thread-summary-card{padding:.75rem .85rem;border-radius:var(--radius-medium);background:var(--gray-150);border:1px solid rgba(22,22,22,.08);font:inherit}.thread-summary-preview{margin:.5rem 0 0;white-space:pre-wrap;line-height:1.5;color:var(--gray-950)}.thread-summary-count{margin:.5rem 0 0;color:var(--gray-700);font-size:.85rem}@media(max-width:720px){.app-shell{padding:.75rem}.app-header{flex-direction:column;align-items:stretch}.header-auth{width:100%}.browser-header,.feature-panel-header,.feature-picker-row,.feature-card-header,.feature-create-row,.document-header,.thread-panel-header,.file-row,.tree-row{flex-direction:column;align-items:start}.workspace-grid,.review-workspace,.document-frame{grid-template-columns:1fr}.document-gutter{min-height:2.25rem}.thread-rail{position:static}.auth-session{justify-content:flex-end}.feature-submitted-panel{width:100%;min-width:0}.feature-submitted-link{flex-direction:column}.feature-select{width:100%;flex-basis:auto}}
