:root{color-scheme:light;--bg:#ebe8e1;--panel:#f8f6f1;--paper:#fffefa;--ink:#24211d;--muted:#756e64;--line:#d8d0c3;--green:#12694f;--green-soft:#dcece5;--coral:#c55b43;--shadow:0 18px 55px rgba(49,40,28,.13)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font:14px/1.42 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}button,input,select,textarea{border:1px solid var(--line);border-radius:10px;background:var(--paper)}button{min-height:38px;padding:8px 12px;cursor:pointer}button:hover{border-color:#a99e90}.primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:700}.hidden{display:none!important}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--green)}
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 5%,#f8f4e9,transparent 32%),var(--bg)}.login-card{width:min(430px,100%);padding:32px;border:1px solid var(--line);border-radius:20px;background:rgba(255,254,250,.94);box-shadow:var(--shadow)}.login-card h1{margin:7px 0 8px;font:700 34px/1.05 Georgia,serif}.login-card p{color:var(--muted);margin:0 0 24px}.login-card label,.composer label,dialog label{display:grid;gap:6px;margin:12px 0;font-size:12px;font-weight:650}.login-card input,.composer input,dialog input,dialog select{width:100%;min-height:44px;padding:10px 12px}.login-card button{width:100%;margin-top:8px}.error{min-height:20px;margin-top:10px;color:#9e3828}
.app{height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.topbar{display:flex;align-items:center;gap:18px;padding:10px 14px;border-bottom:1px solid var(--line);background:rgba(248,246,241,.96);backdrop-filter:blur(18px);z-index:10}.brand{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:7px;white-space:nowrap}.brand-dot{width:9px;height:9px;border-radius:50%;background:var(--green);grid-row:span 2}.brand small{color:var(--muted);font-size:10px}.projects{display:flex;gap:4px;overflow:auto;flex:1}.project-tab{white-space:nowrap;border-color:transparent;background:transparent}.project-tab.active{background:var(--green-soft);border-color:#bfd9ce;color:#0d5943;font-weight:750}.top-actions{display:flex;align-items:center;gap:7px}.user{font-size:12px;color:var(--muted);white-space:nowrap}
.workspace{min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(560px,1fr) 390px}.preview-column{min-width:0;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr)}.preview-head{grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;background:var(--panel);border-bottom:1px solid var(--line)}.preview-head h1{margin:1px 0;font:700 22px/1.08 Georgia,serif}.preview-head p{margin:0;color:var(--muted);font-size:11px}.preview-controls{display:flex;align-items:end;justify-content:flex-end;flex-wrap:wrap;gap:6px}.preview-controls label{display:grid;gap:2px;color:var(--muted);font-size:9px}.preview-controls select{min-height:34px;padding:6px 9px;max-width:190px}.preview-controls button{min-height:34px;padding-top:6px;padding-bottom:6px}.tester-note{grid-row:2;padding:9px 18px;background:#fff6dc;border-bottom:1px solid #e4d5ad;font-size:12px}.stage{grid-row:3;min-height:0;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr);justify-content:center;align-items:stretch;gap:12px;padding:10px;background-image:radial-gradient(#c9c1b5 1px,transparent 1px);background-size:18px 18px}.review-canvas{width:100%;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:7px}.screen-rail.hidden+.review-canvas{grid-column:1/-1}.frame-viewport{position:relative;flex:1;width:100%;min-height:160px;overflow:hidden}.frame-shell{position:absolute;inset:0;overflow:hidden;border:1px solid #393630;border-radius:14px;background:#fff;box-shadow:var(--shadow);transition:width .22s,height .22s,transform .22s}.frame-shell.device{inset:auto;left:50%;top:50%;border:9px solid #171715;border-radius:40px;transform:translate(-50%,-50%) scale(var(--preview-scale,1));transform-origin:center}.frame-shell.is-locating .comment-pins{opacity:.18}.frame-shell.is-locating::after{content:"";position:absolute;z-index:10;inset:0;border:3px solid color-mix(in srgb,var(--location-tone,var(--green)) 72%,transparent);border-radius:inherit;pointer-events:none;animation:frame-focus 1.2s ease-in-out 2}iframe{display:block;width:100%;height:100%;border:0;background:#fff}.screen-rail{width:184px;min-height:0;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:13px;background:rgba(248,246,241,.96)}.screen-rail-head{position:sticky;top:-10px;z-index:2;display:flex;justify-content:space-between;padding:8px 3px;background:var(--panel)}.screen-rail-head span{color:var(--muted);font-size:10px}.screen-group{padding:12px 7px 4px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.screen-link{display:block;width:100%;min-height:32px;padding:6px 7px;border-color:transparent;background:transparent;text-align:left;font-size:11px}.screen-link.active{border-color:#bfd9ce;background:var(--green-soft);color:var(--green);font-weight:750}.truth-note{flex:none;width:min(760px,100%);padding:6px 10px;border:1px solid #ddc991;border-radius:9px;background:#fff7df;color:#665428;font-size:10px;text-align:center}.screen-stepper{flex:none;display:grid;grid-template-columns:34px minmax(160px,auto) 34px;align-items:center;gap:6px}.screen-stepper b{text-align:center;font-size:11px}.screen-stepper button{min-height:28px;padding:3px 7px}.inspect-layer{position:absolute;z-index:8;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:rgba(18,105,79,.08);cursor:crosshair}.inspect-layer::after{content:"Кликните точно по месту проблемы";position:absolute;left:50%;top:14px;transform:translateX(-50%);padding:7px 10px;border-radius:999px;background:#12694f;color:#fff;font-size:11px;font-weight:750;white-space:nowrap;box-shadow:0 5px 18px rgba(0,0,0,.22)}.comment-pins{position:absolute;z-index:7;inset:0;pointer-events:none;transition:opacity .18s}.comment-pin{--pin-tone:var(--coral);position:absolute;pointer-events:auto;width:27px;height:27px;min-height:27px;padding:0;border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);background:var(--pin-tone);color:#fff;font-size:10px;font-weight:850;box-shadow:0 2px 10px rgba(0,0,0,.38)}.comment-pin.status-discussed{--pin-tone:#65758b}.comment-pin.status-planned{--pin-tone:#b36b09}.comment-pin.status-in_progress{--pin-tone:#7c4dcc}.comment-pin.status-on_stand{--pin-tone:#2670c9}.comment-pin.status-accepted,.comment-pin.status-resolved{--pin-tone:var(--green)}.comment-pin.status-rejected{--pin-tone:#73706b}.comment-pin:hover,.comment-pin:focus-visible{z-index:2;transform:translate(-50%,-50%) scale(1.16)}.is-selecting{background:var(--coral);border-color:var(--coral)}
.live-feedback-entry{display:flex;align-items:center;gap:6px}.live-feedback-entry span{padding:4px 7px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:9px;font-weight:800;white-space:nowrap}.live-feedback-entry a{display:inline-flex;min-height:34px;align-items:center;padding:6px 9px;border:1px solid #bfd9ce;border-radius:10px;background:var(--paper);color:var(--green);font-size:10px;font-weight:800;text-decoration:none;white-space:nowrap}.live-feedback-entry a:hover{border-color:var(--green)}
.comments-panel{min-width:0;min-height:0;overflow:auto;padding:15px;background:var(--panel);border-left:1px solid var(--line)}.comments-head{display:flex;align-items:center;justify-content:space-between}.comments-head h2{margin:2px 0 0;font-size:18px}.count{min-width:34px;padding:5px 9px;border-radius:999px;background:var(--green-soft);color:var(--green);font-weight:800;text-align:center}.filters{display:flex;gap:7px;margin:12px 0}.filters select{flex:1;min-width:0;padding:8px}.composer{padding:12px;margin-bottom:12px;border:1px solid #bcd7cb;border-radius:13px;background:#f1faf6}.composer textarea{width:100%;min-height:105px;padding:10px;resize:vertical}.composer input[readonly]{background:#fff;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.selection-preview{margin:-4px 0 8px;padding:7px 9px;border-radius:8px;background:var(--green-soft);color:var(--green);font-size:11px}.row{display:flex;gap:7px}.comments{display:grid;gap:9px;min-width:0}.comment{min-width:0;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.comment-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:10px}.status{padding:2px 7px;border-radius:999px;background:#eeeae3}.comment p{margin:8px 0;overflow-wrap:anywhere;word-break:break-word}.comment-anchor{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.comment select{width:100%;margin-top:9px;padding:7px}.empty{padding:24px 3px;color:var(--muted);text-align:center}
.comment-origin{margin-left:auto;padding:2px 6px;border-radius:6px;background:#e7eefc;color:#1f64b2;font-size:9px;letter-spacing:.04em}
.connection-dialog{width:min(700px,calc(100vw - 24px));max-height:calc(100vh - 30px);overflow:auto}.connection-dialog form,.external-finding-dialog form{display:grid;gap:10px}.connection-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.connection-modes legend{padding:0 5px;font-size:11px;font-weight:750}.connection-modes label{align-items:start;margin:0;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.connection-modes input{width:auto;min-height:0;margin-top:3px}.connection-modes b,.connection-modes small,.connector-box b,.connector-box small,.privacy-boundary b,.privacy-boundary span{display:block}.connection-modes small,.connector-box small{margin-top:3px;color:var(--muted);font-size:10px;font-weight:400}.privacy-boundary{display:grid;gap:3px;padding:11px;border:1px solid #ddc991;border-radius:11px;background:#fff7df;color:#665428;font-size:11px}.connector-box{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.connector-box>a{color:var(--green);font-size:11px;font-weight:800}.connector-result{display:flex;grid-column:1/-1;gap:7px}.connector-result input{min-width:0;flex:1;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.external-finding-dialog{width:min(560px,calc(100vw - 24px))}.external-finding-dialog textarea{width:100%;min-height:110px;padding:10px;resize:vertical}.external-finding-dialog input[readonly]{font:10px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}
dialog{width:min(520px,calc(100vw - 24px));border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow);padding:20px}dialog::backdrop{background:rgba(25,22,18,.42);backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:start;justify-content:space-between}.dialog-head h2{margin:3px 0}.dialog-head button{border:0;font-size:22px}.dialog-head+p{color:var(--muted)}fieldset{border:1px solid var(--line);border-radius:12px;padding:10px}fieldset label{display:flex;align-items:center;gap:8px;margin:6px 0}.invite-result{margin-top:14px;padding:11px;border-radius:12px;background:var(--green-soft)}.invite-result input{margin:8px 0;font-size:11px}.access-list{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.access-list h3{margin:0 0 9px;font-size:13px}.access-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid #eee8de}.access-row:first-child{border-top:0}.access-row div{min-width:0;flex:1}.access-row small{display:block;color:var(--muted)}.access-row button{min-height:32px;padding:5px 8px;color:#923b2d}
@media(max-width:1100px){.workspace{grid-template-columns:1fr}.comments-panel{position:fixed;z-index:20;right:0;top:59px;bottom:0;width:min(410px,calc(100vw - 12px));box-shadow:-15px 0 40px rgba(0,0,0,.18);transform:translateX(105%);transition:transform .2s ease}.comments-panel.open{transform:translateX(0)}}
@media(max-width:760px){.topbar{align-items:flex-start;flex-wrap:wrap}.brand{margin-right:auto}.projects{order:3;flex-basis:100%}.user{display:none}.workspace{display:block}.preview-column{height:calc(100vh - 108px);height:calc(100dvh - 108px)}.preview-head{padding:10px;display:grid}.preview-controls{overflow:auto;justify-content:flex-start;flex-wrap:nowrap}.preview-controls label{display:none}.stage{padding:8px;grid-template-columns:1fr}.screen-rail{display:none}.comments-panel{top:104px}}
.comment-trigger{width:38px;min-width:38px;padding:0;font-size:22px;line-height:1}
.change-highlight{--location-tone:var(--green);position:absolute;z-index:12;width:1px;height:1px;pointer-events:none}.change-highlight[data-status="open"]{--location-tone:var(--coral)}.change-highlight[data-status="discussed"]{--location-tone:#65758b}.change-highlight[data-status="planned"]{--location-tone:#b36b09}.change-highlight[data-status="in_progress"]{--location-tone:#7c4dcc}.change-highlight[data-status="on_stand"]{--location-tone:#2670c9}.change-highlight[data-status="rejected"]{--location-tone:#73706b}.change-highlight-dot{position:absolute;left:0;top:0;width:58px;height:58px;transform:translate(-50%,-50%);border:4px solid #fff;border-radius:50%;background:color-mix(in srgb,var(--location-tone) 24%,transparent);box-shadow:0 0 0 7px color-mix(in srgb,var(--location-tone) 42%,transparent),0 8px 28px rgba(0,0,0,.34);animation:change-pulse 1s ease-in-out 4}.change-highlight-dot::after{content:"";position:absolute;inset:18px;border-radius:50%;background:var(--location-tone)}.change-highlight-card{position:absolute;left:38px;bottom:24px;width:280px;max-width:calc(100vw - 80px);padding:10px 12px;border:2px solid var(--location-tone);border-radius:12px;background:rgba(255,254,250,.97);color:var(--ink);box-shadow:0 10px 32px rgba(0,0,0,.24);pointer-events:auto}.change-highlight.place-left .change-highlight-card{left:auto;right:38px}.change-highlight.place-below .change-highlight-card{top:24px;bottom:auto}.change-highlight-card b{display:block;color:var(--location-tone);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.change-highlight-card span{display:-webkit-box;margin-top:4px;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:12px;line-height:1.35}.change-highlight-actions{display:flex;gap:6px;margin-top:10px}.change-highlight-actions button{min-height:34px;padding:6px 9px;font-size:11px}.status-locator{--status-tone:var(--green);min-height:25px;padding:2px 7px;border-color:color-mix(in srgb,var(--status-tone) 35%,#ddd);background:color-mix(in srgb,var(--status-tone) 12%,white);color:var(--status-tone);font-size:10px;font-weight:800}.status-locator[data-status="open"]{--status-tone:var(--coral)}.status-locator[data-status="discussed"]{--status-tone:#65758b}.status-locator[data-status="planned"]{--status-tone:#9a5a05}.status-locator[data-status="in_progress"]{--status-tone:#7040bd}.status-locator[data-status="on_stand"]{--status-tone:#1f64b2}.status-locator[data-status="rejected"]{--status-tone:#66635f}
@keyframes change-pulse{50%{transform:translate(-50%,-50%) scale(1.16);box-shadow:0 0 0 15px color-mix(in srgb,var(--location-tone) 10%,transparent),0 8px 28px rgba(0,0,0,.34)}}@keyframes frame-focus{50%{border-color:transparent}}
.change-highlight.place-center .change-highlight-card{left:50%;right:auto;transform:translateX(-50%)}
.mode-tabs{display:flex;gap:4px}.mode-tab{border-color:transparent;background:transparent;white-space:nowrap}.mode-tab.active{border-color:#bfd9ce;background:var(--green-soft);color:var(--green);font-weight:800}.cockpit{min-height:0;overflow:auto;padding:22px;background:var(--bg)}.cockpit-head{display:flex;align-items:end;justify-content:space-between;gap:20px;max-width:1500px;margin:0 auto 18px}.cockpit-head h1{margin:3px 0 5px;font:700 32px/1.05 Georgia,serif}.cockpit-head p{margin:0;color:var(--muted)}.summary-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;max-width:1500px;margin:0 auto 12px}.summary-card{padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.summary-card b{display:block;font:700 30px/1 Georgia,serif}.summary-card span{display:block;margin-top:5px;color:var(--muted);font-size:11px}.summary-card.attention{border-color:#e4bc9d;background:#fff7ef}.summary-card.review{border-color:#aebfe1;background:#f3f7ff}.summary-card.drift{border-color:#e1c78d;background:#fff8e5}.portfolio-digest{max-width:1500px;margin:0 auto 14px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.digest-head,.digest-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.digest-head>div>b{display:block;margin-top:2px;font-size:15px}.digest-head>span,.digest-foot{color:var(--muted);font-size:10px}.digest-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px;margin-top:10px}.digest-item{min-height:68px;padding:9px 11px;text-align:left}.digest-item b,.digest-item span,.digest-item small{display:block}.digest-item b{font-size:18px;line-height:1}.digest-item span{margin-top:4px;font-size:10px;font-weight:800}.digest-item small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.25}.digest-item:disabled{cursor:default;opacity:.68}.digest-new{border-color:#e4bc9d;background:#fff7ef}.digest-new b{color:#9b3828}.digest-stale{border-color:#e1c78d;background:#fff8e5}.digest-stale b{color:#7c520d}.digest-stand{border-color:#aebfe1;background:#f3f7ff}.digest-stand b{color:#1f64b2}.digest-prod{border-color:#bfd9ce;background:#f2faf6}.digest-prod b{color:var(--green)}.digest-drift{background:var(--panel)}.digest-foot{align-items:center;margin-top:9px;padding-top:9px;border-top:1px solid #eee8de}.digest-foot b{color:var(--green)}.digest-focus{outline:3px solid color-mix(in srgb,var(--green) 48%,transparent);outline-offset:2px;animation:digest-focus 1s ease-in-out 2}.cockpit-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(370px,1fr);gap:14px;max-width:1500px;margin:auto}.pipeline-panel,.portfolio-panel{min-width:0;border:1px solid var(--line);border-radius:17px;background:var(--panel);box-shadow:0 8px 30px rgba(49,40,28,.07)}.pipeline-panel{padding:15px}.portfolio-panel{padding:15px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-head h2{margin:2px 0 10px;font-size:18px}.pipeline{display:grid;grid-template-columns:repeat(4,minmax(185px,1fr));gap:9px;overflow:auto;padding-bottom:5px}.pipeline-lane{min-width:185px;padding:9px;border-radius:13px;background:#ebe7df}.pipeline-lane-head{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 9px;font-size:11px}.pipeline-lane-head span{min-width:23px;padding:2px 6px;border-radius:999px;background:#fff;text-align:center;font-weight:800}.finding-card{display:block;width:100%;margin-bottom:7px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--paper);text-align:left}.finding-card:hover{border-color:#9ebdaf}.finding-card strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:12px;line-height:1.35}.finding-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:8px;color:var(--muted);font-size:9px}.priority-urgent{box-shadow:inset 3px 0 #b83725}.priority-high{box-shadow:inset 3px 0 #c57c24}.portfolio-list{display:grid;gap:8px}.portfolio-row{display:grid;gap:9px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--paper)}.portfolio-row-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.portfolio-row b,.portfolio-row small{display:block}.portfolio-row small{margin-top:2px;color:var(--muted);font-size:10px}.portfolio-state{align-self:start;padding:4px 8px;border-radius:999px;background:#eeeae3;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.portfolio-state.sync-green{background:var(--green-soft);color:var(--green)}.portfolio-state.sync-yellow{background:#fff0cf;color:#7c520d}.portfolio-state.sync-red{background:#fde3dc;color:#9b3828}.portfolio-state.sync-gray{background:#eeeae3;color:var(--muted)}.portfolio-versions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.portfolio-versions>span{min-width:0;padding:7px;border-radius:8px;background:#f2eee7}.portfolio-versions small{margin:0;font-size:8px;letter-spacing:.08em}.portfolio-versions b{overflow:hidden;margin-top:2px;font:700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;text-overflow:ellipsis}.portfolio-action{min-height:34px;padding:6px 9px;border-color:#bfd9ce;background:#f2faf6;color:var(--green);font-size:10px;font-weight:800}.sync-reason{margin:0!important;color:#8e5c09!important}.finding-dialog{width:min(720px,calc(100vw - 24px));max-height:calc(100vh - 30px);overflow:auto}.finding-dialog form{display:grid;gap:10px}.finding-body{padding:12px;border-radius:11px;background:#f2eee7;white-space:pre-wrap}.finding-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.finding-fields label{margin:0}.finding-dialog textarea{width:100%;min-height:80px;padding:10px;resize:vertical}.finding-dialog select,.finding-dialog input{min-height:40px;padding:8px}.finding-command-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.finding-decision{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #aebfe1;border-radius:12px;background:#f3f7ff}.finding-decision small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.release-stage{display:grid;gap:10px;padding:12px;border:1px solid #bcd7cb;border-radius:12px;background:#f1faf6}.release-stage b{display:block;margin-top:3px}.release-stage p{margin:3px 0 0;color:var(--muted);font-size:11px;white-space:pre-wrap}.timeline{padding-top:10px;border-top:1px solid var(--line)}.timeline h3{margin:0 0 8px}.timeline-item{padding:8px 0;border-top:1px solid #eee8de;font-size:11px}.timeline-item:first-child{border-top:0}.timeline-item small{display:block;color:var(--muted)}
@media(max-width:1250px){.summary-grid,.digest-grid{grid-template-columns:repeat(3,1fr)}.cockpit-grid{grid-template-columns:1fr}.pipeline{grid-template-columns:repeat(4,240px)}}
@media(max-width:760px){.mode-tabs{order:2}.cockpit{padding:12px}.cockpit-head{align-items:start}.cockpit-head h1{font-size:26px}.summary-grid,.digest-grid{grid-template-columns:repeat(2,1fr)}.digest-head,.digest-foot{align-items:flex-start;flex-direction:column}.pipeline{grid-template-columns:repeat(4,220px)}.finding-fields,.connection-modes{grid-template-columns:1fr}.finding-decision{align-items:stretch;flex-direction:column}.top-actions .owner-only{display:none}.projects:not(.hidden){order:4}.mode-tabs{margin-left:auto}}
@keyframes digest-focus{50%{outline-color:color-mix(in srgb,var(--green) 85%,transparent);transform:translateY(-1px)}}
.search-tools{max-width:1500px;margin:0 auto 14px;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}.search-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,220px) minmax(150px,200px) auto auto;align-items:end;gap:8px}.search-form label{display:grid;gap:4px;font-size:10px;font-weight:750}.search-form input,.search-form select{min-height:40px;padding:8px 10px}.saved-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px;color:var(--muted);font-size:10px}.saved-filter{display:flex;overflow:hidden;border:1px solid #bfd9ce;border-radius:999px;background:var(--green-soft)}.saved-filter button{min-height:28px;padding:3px 8px;border:0;border-radius:0;background:transparent;color:var(--green);font-size:10px;font-weight:750}.saved-filter button+button{padding-left:5px;border-left:1px solid #bfd9ce}.search-results{margin-top:10px;padding-top:10px;border-top:1px solid #eee8de}.search-results-head{display:flex;align-items:center;justify-content:space-between}.search-results-head button{min-height:30px;padding:4px 8px;font-size:10px}.search-result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.search-result{padding:10px;border-radius:11px;text-align:left}.search-result b,.search-result small{display:block}.search-result b{font-size:12px}.search-result small{margin-top:5px;color:var(--muted);font-size:9px}
.management{min-height:0;overflow:auto;padding:22px;background:var(--bg)}.management-head{display:flex;align-items:end;justify-content:space-between;gap:20px;max-width:1500px;margin:0 auto 18px}.management-head h1{margin:3px 0 5px;font:700 32px/1.05 Georgia,serif}.management-head p{margin:0;color:var(--muted)}.management-head>span{padding:6px 10px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:10px;font-weight:800}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1500px;margin:auto}.management-panel{min-width:0;padding:15px;border:1px solid var(--line);border-radius:17px;background:var(--panel);box-shadow:0 8px 30px rgba(49,40,28,.07)}.management-panel h2{margin:2px 0 10px;font-size:18px}.management-count{padding:4px 8px;border-radius:999px;background:#fff0cf;color:#7c520d;font-size:10px;font-weight:800}.management-list{display:grid;gap:8px;max-height:370px;overflow:auto}.management-row{display:block;width:100%;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--paper);text-align:left}.management-row-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.management-row small{display:block;margin-top:5px;overflow-wrap:anywhere;color:var(--muted);font-size:10px}.management-state{flex:none;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase}.state-ok{background:var(--green-soft);color:var(--green)}.state-muted{background:#eeeae3;color:var(--muted)}.state-attention{background:#fff0cf;color:#7c520d}.state-error{background:#fde3dc;color:#9b3828}.management-link{cursor:pointer}.management-link:hover{border-color:#9ebdaf}.revoke-action{min-height:32px;margin-top:8px;padding:5px 8px;border-color:#e6b8aa;background:#fff3ef;color:#9b3828;font-size:10px;font-weight:800}.management-note{margin:10px 0 0;color:var(--muted);font-size:10px}
@media(max-width:900px){.management{padding:12px}.management-head{align-items:start}.management-head h1{font-size:26px}.management-grid{grid-template-columns:1fr}}
@media(max-width:1000px){.search-form{grid-template-columns:1fr 1fr}.search-result-list{grid-template-columns:1fr}}
@media(max-width:600px){.search-form{grid-template-columns:1fr}}
.pairing-card{border-color:#bcd7cb}.pairing-card h1{font-size:30px}.management-mobile-panel{background:#fffefa}.pairing-result{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:16px;margin-top:14px;padding:14px;border:1px solid #bcd7cb;border-radius:14px;background:#f1faf6}.pairing-result img{display:block;width:180px;height:180px;border-radius:10px;background:#fff}.pairing-result>div{display:grid;gap:8px}.pairing-result span{color:var(--green);font-size:11px;font-weight:800}.pairing-result input{min-width:0;width:100%;min-height:44px;padding:9px;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}.remote-access{display:flex;align-items:center;gap:8px;margin-top:14px}.remote-access a{min-width:0;flex:1;overflow:hidden;color:var(--green);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.device-session .revoke-action{min-height:44px}.management-mobile-panel button{min-height:44px}
@media(max-width:760px){html,body{overflow-x:hidden}button{min-height:44px}.login{padding:max(16px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom))}.login-card{padding:24px 18px}.app{padding-bottom:env(safe-area-inset-bottom)}.topbar{gap:8px;padding:8px 10px}.brand small{display:none}.mode-tabs{order:3;flex-basis:100%;display:grid;grid-template-columns:repeat(3,1fr);width:100%}.mode-tab{min-width:0;padding:7px 5px}.top-actions{margin-left:auto}.top-actions #logoutButton{padding:7px 10px}.management-head{display:block}.management-head>span{display:inline-block;margin-top:10px}.management-grid{gap:10px}.management-panel{padding:13px}.management-panel .section-head{align-items:flex-start;flex-wrap:wrap}.pairing-result{grid-template-columns:1fr;text-align:center}.pairing-result img{width:min(220px,100%);height:auto;margin:auto}.pairing-result>div{text-align:left}.remote-access{align-items:stretch;flex-direction:column}.remote-access a{min-height:44px;padding:11px;border:1px solid var(--line);border-radius:10px;white-space:normal;overflow-wrap:anywhere}.management-row-head{align-items:flex-start}.management-state{max-width:45%;text-align:center}}
.mobile-only,.mobile-review-only{display:none}.mobile-parameters-dialog form{display:grid;gap:14px}.mobile-parameters-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mobile-parameters-grid label{display:grid;gap:4px;margin:0;color:var(--muted);font-size:10px;font-weight:750}.mobile-parameters-grid select{width:100%;min-height:44px;padding:9px}.mobile-parameters-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preview-toolbar{position:absolute;z-index:30;top:8px;left:50%;align-items:center;gap:4px;min-height:44px;padding:4px;border:1px solid rgba(69,61,51,.22);border-radius:14px;background:rgba(255,254,250,.94);box-shadow:0 8px 24px rgba(39,32,23,.16);transform:translateX(-50%);backdrop-filter:blur(12px)}.preview-toolbar button{min-width:44px;min-height:44px;padding:6px 9px}.preview-toolbar output{min-width:48px;color:var(--ink);font-size:11px;font-weight:850;text-align:center}.preview-mode-toggle{min-width:82px!important}.preview-mode-toggle[aria-pressed="true"]{border-color:#9ebdaf;background:var(--green-soft);color:var(--green)}.preview-gesture-layer{position:absolute;z-index:24;inset:0;touch-action:none;pointer-events:none}.preview-gesture-layer.is-active{pointer-events:auto}.preview-gesture-hint{position:absolute;z-index:31;left:50%;top:66px;width:max-content;max-width:calc(100% - 24px);padding:8px 11px;border-radius:999px;background:rgba(28,25,21,.88);color:#fff;font-size:10px;font-weight:750;transform:translateX(-50%);pointer-events:none}.comments-sheet-handle{width:100%;height:30px;min-height:30px;padding:0;border:0;background:transparent;touch-action:none}.comments-sheet-handle span{display:block;width:44px;height:5px;margin:auto;border-radius:999px;background:#b8b0a5}.frame-shell.is-gesturing{transition:none}.mobile-parameters-dialog{max-height:calc(100dvh - max(24px,env(safe-area-inset-top)));overflow:auto}
@media(max-width:760px){.mobile-only{display:inline-flex;align-items:center;justify-content:center}.mobile-review-only{display:flex}.preview-column{height:calc(100vh - 108px);height:calc(100dvh - 108px)}.preview-head{grid-template-columns:minmax(0,1fr);gap:8px;padding:8px 10px}.preview-head h1{font-size:19px}.preview-head p{display:none}.preview-controls{width:100%;padding-bottom:1px;overscroll-behavior-inline:contain;scrollbar-width:none}.preview-controls::-webkit-scrollbar{display:none}.preview-controls label{display:none}.preview-controls button{flex:none;min-height:44px;white-space:nowrap}.preview-parameters-trigger{border-color:#bfd9ce;background:var(--green-soft);color:var(--green);font-weight:800}.stage{position:relative;padding:4px;grid-template-columns:1fr}.review-canvas{gap:4px}.truth-note{max-height:42px;overflow:hidden;padding:5px 8px}.screen-stepper{grid-template-columns:44px minmax(140px,1fr) 44px;width:100%}.screen-stepper button{min-height:44px}.frame-viewport{min-height:180px;border-radius:14px}.frame-shell.device.mobile-transformed{transform:translate(calc(-50% + var(--preview-pan-x,0px)),calc(-50% + var(--preview-pan-y,0px))) scale(var(--preview-scale,1))}.frame-shell.mobile-transformed:not(.device){transform:translate(var(--preview-pan-x,0px),var(--preview-pan-y,0px)) scale(var(--preview-scale,1));transform-origin:center}.is-preview-moving .frame-shell{cursor:grab}.is-preview-moving .frame-shell.is-gesturing{cursor:grabbing}.inspect-layer::after{top:64px;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis}.comments-panel{--comments-sheet-drag:0px;z-index:40;left:0;right:0;top:auto;bottom:0;width:100%;height:calc(100dvh - 108px - env(safe-area-inset-top));max-height:none;padding:6px 14px max(14px,env(safe-area-inset-bottom));border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -16px 44px rgba(37,31,23,.2);transform:translateY(calc(100% - 74px + var(--comments-sheet-drag)));transition:transform .24s ease;overscroll-behavior:contain}.comments-panel.open{transform:translateY(calc(100% - min(44dvh,380px) + var(--comments-sheet-drag)))}.comments-panel[data-sheet-state="collapsed"]{transform:translateY(calc(100% - 74px + var(--comments-sheet-drag)))}.comments-panel[data-sheet-state="medium"]{transform:translateY(calc(100% - min(44dvh,380px) + var(--comments-sheet-drag)))}.comments-panel[data-sheet-state="full"]{transform:translateY(var(--comments-sheet-drag))}.comments-sheet-handle{position:sticky;z-index:2;top:-6px;display:block;background:linear-gradient(var(--panel) 72%,transparent)}.comments-head{min-height:38px}.comments-head h2{font-size:16px}.filters{position:sticky;z-index:1;top:24px;background:var(--panel)}.mobile-parameters-dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:calc(100dvh - max(18px,env(safe-area-inset-top)));padding:18px 16px max(18px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.mobile-parameters-grid{grid-template-columns:1fr}.mobile-parameters-dialog .dialog-head button{min-width:44px}.change-highlight-card{max-width:min(280px,calc(100vw - 52px))}}
@media(prefers-reduced-motion:reduce){.comments-panel,.frame-shell{transition:none}.preview-gesture-hint{transition:none}}
@media(max-width:760px){html,body{max-width:100%}.topbar,.projects,.workspace,.preview-head,.preview-controls{min-width:0;max-width:100%}.projects{width:100%;flex:0 1 100%}.workspace{position:relative;height:100%;overflow:hidden}.preview-column{height:100%}.comments-panel{position:absolute;height:100%}.preview-toolbar{max-width:calc(100% - 8px)}}
