.section-content{padding-top:26px}.section-heading{margin-bottom:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.section-heading h1{margin:0;font-size:clamp(24px,2vw,28px);line-height:1.12;font-weight:750;letter-spacing:-.5px}.header-summary{display:flex;align-items:baseline;gap:22px;padding-bottom:4px}.header-summary span{color:var(--muted);font-size:13px;white-space:nowrap}.header-summary b{margin-right:5px;color:var(--ink);font-size:17px;font-weight:750}.section-toolbar{min-height:60px;margin-bottom:16px;padding:10px 12px}.panel-toolbar,.section-toolbar{display:flex;align-items:center;gap:9px}.panel-toolbar{padding:12px 14px;border-bottom:1px solid var(--border);flex-wrap:wrap}.segmented-control{padding:4px;border-radius:11px;background:#eef3f8;display:flex;gap:2px}.segmented-control button{min-height:32px;padding:0 12px;border:0;border-radius:8px;color:#6a7b91;background:transparent;font-size:12.5px;font-weight:650;white-space:nowrap;cursor:pointer}.segmented-control button:hover{color:var(--ink)}.segmented-control button.selected{color:var(--primary);background:#fff;box-shadow:0 1px 4px #24344a14;font-weight:750}.section-search{width:230px;height:38px;margin-left:auto;padding:0 10px;border:1px solid var(--border);border-radius:10px;color:var(--muted);background:var(--surface-subtle);display:flex;align-items:center;gap:7px}.section-search:focus-within{border-color:#b5d2ef;background:#fff;box-shadow:0 0 0 3px #3d84da12}.section-search svg{width:14px}.section-search input{min-width:0;width:100%;border:0;outline:0;color:var(--ink);background:transparent;font-size:13px}.section-table-panel{overflow:hidden}.section-table-heading{min-height:64px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.section-table-heading h2{margin:0;font-size:15.5px}.section-table-heading p{margin:4px 0 0;color:var(--muted);font-size:12.5px}.report-row{cursor:pointer}.report-row:focus-within .item-open strong,.report-row:hover .item-open strong{color:var(--primary)}.item-open{width:100%;min-width:0;display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}.item-open-copy{min-width:0;display:grid;gap:4px}.item-open-copy strong{color:var(--ink);font-size:13.5px;font-weight:650;line-height:1.35}.item-open-copy strong .item-id{margin-right:8px}.item-byline{display:flex;flex-wrap:wrap;align-items:center;gap:5px 7px;color:var(--muted);font-size:12px}.item-byline .type{padding:2px 8px;font-size:11px}.item-byline i{font-style:normal;color:var(--muted-light)}.item-open-arrow{flex:0 0 14px;width:14px;margin-left:auto;color:var(--muted-light);transition:transform .15s ease,color .15s ease}.report-row:focus-within .item-open-arrow,.report-row:hover .item-open-arrow{color:var(--primary);transform:translateX(2px)}.row-action{width:30px;height:30px;padding:0;border:0;border-radius:8px;color:var(--muted);background:transparent;display:inline-grid;place-items:center;cursor:pointer}.row-action:hover{color:var(--primary);background:var(--primary-soft)}.row-action svg{width:14px}.section-empty{min-height:220px;border-top:1px solid var(--border);color:var(--muted);display:grid;place-items:center;align-content:center;text-align:center}.section-empty svg{width:25px;margin-bottom:7px}.section-empty h3{margin:0 0 4px;color:var(--ink);font-size:14px}.section-empty p{margin:0;font-size:13px}.trace-toast{position:fixed;right:24px;bottom:24px;z-index:40;min-height:46px;padding:0 16px;border:1px solid #c4e6d6;border-radius:12px;color:var(--mint);background:#eefaf4;box-shadow:0 16px 40px #21344a24;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.trace-toast svg{width:16px}.dialog-dismiss{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:default}.dialog-backdrop .dialog{z-index:1}.source-badge{padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:700}.source-team{color:#64758a;background:#eef3f8}.source-portal{color:#3a72ab;background:var(--primary-soft)}.source-widget{color:#2c7f88;background:#e4f4f4}.platform-badge{display:inline-flex;align-items:center;gap:6px}.platform-badge svg{width:13px;color:var(--muted)}.complete-action{min-height:32px;padding:0 11px;border:1px solid #cbe7da;border-radius:999px;color:var(--mint);background:#f0faf5;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer;transition:.15s ease}.complete-action:hover{border-color:#a9dcc4;background:var(--mint-soft)}.complete-action svg{width:12px}.completed-check{display:inline-flex;color:var(--mint)}.completed-check svg{width:17px}.overview-column{min-width:0;display:grid;align-content:start;gap:16px}.open-count{margin-left:8px;color:var(--rose);background:var(--rose-soft);font-weight:750}.open-count,.project-chip{padding:3px 9px;border-radius:999px;font-size:11.5px;vertical-align:middle}.project-chip{display:inline-block;max-width:150px;color:#3a72ab;background:var(--primary-soft);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-list article{min-height:82px;padding:14px 20px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:40px minmax(0,1.1fr) minmax(150px,.9fr) auto 30px;align-items:center;gap:14px}.upcoming-main strong{display:flex;align-items:center;gap:8px;font-size:13.5px}.upcoming-main small{display:block;margin-top:3px;color:var(--muted);font-size:12px}.upcoming-progress>div{margin-bottom:6px;display:flex;justify-content:space-between;color:var(--muted);font-size:11.5px}.upcoming-progress>div strong{color:var(--ink)}.upcoming-progress>i{display:block;height:6px;border-radius:6px;background:#e8eef5;overflow:hidden}.upcoming-progress>i b{display:block;height:100%;border-radius:inherit;background:var(--primary)}.upcoming-meta{display:grid;gap:5px;justify-items:start;font-size:12px;color:var(--muted)}.upcoming-meta span{display:flex;align-items:center;gap:5px;white-space:nowrap}.upcoming-meta svg{width:12px}.portfolio-toolbar{margin-bottom:16px}.toolbar-select{height:38px;padding:0 12px;border:1px solid var(--border);border-radius:10px;color:#4c5d73;background:#fff;font-size:12.5px;font-weight:650;cursor:pointer}.toolbar-select:hover{border-color:var(--border-strong)}.toolbar-select:focus{outline:none;border-color:#b5d2ef;box-shadow:0 0 0 3px #3d84da12}.projects-empty{margin-top:16px;border-top:1px solid var(--border);min-height:190px}.logo-field{margin-bottom:15px}.logo-field-caption{display:block;margin-bottom:7px;color:#4c5d73;font-size:13px;font-weight:650}.logo-field-row{display:flex;align-items:flex-start;gap:12px}.logo-field-preview{flex:0 0 52px;width:52px;height:52px;border-radius:12px;object-fit:contain;padding:4px;border:1px solid var(--border-strong);background:#fff}.logo-field-preview.is-empty{display:grid;place-items:center;padding:0;color:var(--muted-light);background:var(--surface-subtle);border-style:dashed}.logo-field-preview.is-empty svg{width:18px}.logo-field-button{position:relative;display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border:1px solid var(--border-strong);border-radius:9px;color:var(--primary);background:#fff;font-size:12.5px;font-weight:700;cursor:pointer;overflow:hidden}.logo-field-button:hover{border-color:#b5d2ef;background:var(--primary-softer)}.logo-field-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.logo-field-remove{margin-left:8px;padding:4px 2px;border:0;color:var(--rose);background:none;font-size:12.5px;font-weight:650;cursor:pointer}.logo-field-remove:hover{text-decoration:underline}.logo-field-row small{display:block;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.45}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px}.project-card{min-width:0;padding:20px}.project-card>header{display:grid;grid-template-columns:40px minmax(0,1fr) auto 30px;align-items:center;gap:10px}.project-card-logo{width:40px;height:40px;border-radius:11px;color:#2e6a8f;background:#ddeefa;display:grid;place-items:center;font-size:12px;font-weight:800}.project-card header small{color:var(--muted);font-size:12px}.project-card h2{margin:2px 0 0;font-size:15.5px}.project-version-row{margin:17px 0 15px;padding:14px 0;border-block:1px solid #eef3f8;display:grid;grid-template-columns:1fr 1fr;gap:15px}.project-version-row>div{display:grid;gap:4px}.project-version-row .eyebrow{font-size:11.5px}.project-version-row strong{font-family:var(--font-mono);font-size:14px}.project-version-row .platform-badge{font-family:var(--font-sans);font-size:13px}.project-progress-heading,.project-version-row small{color:var(--muted);font-size:12px}.project-progress-heading{margin-bottom:7px;display:flex;justify-content:space-between}.project-progress-heading strong{color:var(--ink)}.project-progress{height:7px;border-radius:7px;background:#e8eef5;overflow:hidden}.project-progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}.project-health{padding:15px 0;display:grid;grid-template-columns:repeat(3,1fr);color:var(--muted);font-size:12.5px}.project-health span{border-right:1px solid #eef3f8;text-align:center}.project-health span:last-child{border:0}.project-health b{margin-right:3px;color:var(--ink);font-size:13.5px}.project-health .has-bugs,.project-health .has-bugs b{color:var(--rose)}.project-card footer{min-height:38px;padding-top:12px;border-top:1px solid #eef3f8;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px}.project-card footer button{padding:0;border:0;color:var(--primary);background:transparent;display:flex;align-items:center;gap:4px;font-size:12.5px;font-weight:750;cursor:pointer}.project-card footer svg{width:13px}.version-layout{margin-bottom:16px;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.72fr);gap:16px}.active-version-card{padding:24px}.active-version-card .panel-heading h2{margin-top:6px;display:flex;align-items:center;gap:10px;font-size:24px;font-family:var(--font-mono);letter-spacing:-.5px}.active-version-card>p{margin:10px 0 22px;color:var(--body-text);font-size:14px;line-height:1.55}.version-name-line{margin-top:6px;display:flex;align-items:center;gap:8px}.version-name-line>strong{font-size:13px;color:var(--muted);font-weight:650}.version-progress-heading{margin-bottom:8px;display:flex;justify-content:space-between;color:var(--muted);font-size:12.5px}.version-progress-heading strong{color:var(--ink)}.version-progress{height:7px;border-radius:8px;background:#e8eef5;overflow:hidden}.version-progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}.version-metrics{margin-top:19px;padding:16px 0;border-block:1px solid #eef3f8;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.version-metrics span{display:grid;gap:6px}.version-metrics small{color:var(--muted);font-size:12px;font-weight:650}.version-metrics strong{display:flex;align-items:center;gap:6px;font-size:13.5px}.version-metrics svg{width:14px;color:var(--muted)}.danger-text{color:var(--rose)!important}.success-text{color:var(--mint)!important}.version-card-actions{margin-top:19px;display:flex;justify-content:flex-end;gap:8px}.release-readiness{padding:24px;text-align:center}.readiness-score{width:92px;height:92px;margin:0 auto 14px;border-left:8px solid var(--primary-soft);border-bottom:8px solid var(--primary-soft);border-right-color:var(--primary-soft);border-top-color:var(--primary-soft);border-top:8px solid var(--primary);border-right:8px solid var(--primary);border-radius:50%;display:flex;align-items:baseline;justify-content:center;gap:2px;padding-top:23px;font-size:25px;font-weight:760}.readiness-score small{font-size:12px}.release-readiness h2{margin:0 0 14px;font-size:15px}.release-readiness ul{margin:0;padding:14px 0 0;border-top:1px solid #eef3f8;list-style:none;text-align:left}.release-readiness li{padding:6px 0;color:var(--body-text);display:flex;align-items:center;gap:8px;font-size:13px}.release-readiness li svg{width:14px}.release-readiness li.done{color:var(--mint)}.release-readiness li.warning{color:var(--rose)}.release-now{width:100%;margin-top:16px}.release-now:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.last-version{margin-top:14px;padding:12px 14px;border-radius:10px;background:var(--surface-subtle);text-align:left}.last-version small,.last-version strong{display:block}.last-version small{margin-bottom:4px;color:var(--muted);font-size:12px}.last-version strong{font-family:var(--font-mono);font-size:12.5px}.version-history{overflow:hidden}.timeline-list article{min-height:100px;padding:18px 20px 18px 62px;border-top:1px solid #eef3f8;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.timeline-list article:not(:last-child):before{content:"";position:absolute;left:35px;top:50px;bottom:-26px;border-left:1px solid var(--border-strong)}.timeline-node{position:absolute;left:22px;top:19px;z-index:1;width:28px;height:28px;border:1px solid #c4dcf2;border-radius:50%;color:var(--primary);background:var(--primary-softer);display:grid;place-items:center}.timeline-node.complete{color:var(--mint);background:var(--mint-soft);border-color:#bfe4d3}.timeline-node svg{width:13px}.timeline-main{min-width:0}.timeline-main .eyebrow{font-size:11.5px}.timeline-main h3{margin:4px 0;font-family:var(--font-mono);font-size:15.5px}.timeline-main p{margin:0;color:var(--muted);font-size:12.5px}.timeline-side{align-self:center;flex-wrap:wrap;justify-content:flex-end;gap:8px 16px}.timeline-fact,.timeline-side{display:flex;align-items:center}.timeline-fact{gap:5px;color:var(--muted);font-size:12.5px;white-space:nowrap}.timeline-fact svg{width:12px}.timeline-release{min-height:31px;padding:0 12px;border:1px solid var(--border-strong);border-radius:999px;color:var(--primary);background:#fff;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer}.timeline-release:hover{border-color:#b5d2ef;background:var(--primary-softer)}.timeline-release:disabled{opacity:.48;cursor:not-allowed;background:#fff;border-color:var(--border)}.status-planned{color:#64758a;background:#eef3f8}.changelog-panel{margin-bottom:16px;padding:22px 24px 24px}.changelog-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.changelog-title{display:flex;align-items:center;gap:10px}.changelog-title h2{margin:0;font-size:15.5px;font-weight:730;white-space:nowrap}.changelog-release{min-width:0;min-height:30px;padding:0 8px;border:1px solid var(--border-strong);border-radius:999px;color:var(--ink);background:#fff;font-family:var(--font-mono);font-size:12.5px;font-weight:650;cursor:pointer}.changelog-head-actions{display:flex;flex-wrap:wrap;gap:8px}.changelog-head-actions svg{width:15px}.changelog-counts{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.check-pill{min-height:26px;padding:0 10px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;white-space:nowrap}.check-pill svg{width:13px}.check-none{color:#64758a;background:#eef3f8}.check-working{color:var(--mint);background:var(--mint-soft)}.check-issue{color:var(--rose);background:var(--rose-soft)}.check-button{cursor:pointer;transition:.15s ease}.check-button:hover{box-shadow:inset 0 0 0 1px currentColor}.changelog-group{margin-top:18px}.changelog-group h3{margin:0 0 2px;color:var(--muted);font-size:12px;font-weight:700}.changelog-list{margin:0;padding:0;list-style:none}.changelog-list li{padding:12px 0;border-bottom:1px solid #eef3f8;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.changelog-list li:last-child{padding-bottom:0;border-bottom:0}.changelog-line{min-width:0}.changelog-line strong{display:block;font-size:13.5px;font-weight:650}.changelog-line p{margin:3px 0 0;color:var(--muted);font-size:12.5px;line-height:1.5}.changelog-byline{margin-top:5px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;color:var(--muted-light);font-size:11.5px;font-weight:600}.changelog-line-actions{display:flex;align-items:center;gap:4px}.changelog-edit{width:28px;height:28px;padding:0;border:0;border-radius:8px;color:var(--muted-light);background:transparent;display:grid;place-items:center;cursor:pointer}.changelog-edit:hover{color:var(--primary);background:var(--primary-soft)}.changelog-edit svg{width:14px}.changelog-shot{display:inline-block;margin-top:8px;border-radius:9px;overflow:hidden;line-height:0}.changelog-shot img{display:block;max-width:180px;max-height:76px;border:1px solid var(--border);border-radius:9px;object-fit:cover}.changelog-shot:hover img{border-color:#b5d2ef}.shot-preview{display:block;margin-bottom:12px;line-height:0}.shot-preview img{display:block;max-width:100%;max-height:180px;border:1px solid var(--border);border-radius:11px}.changelog-empty{margin-top:18px;padding:26px 20px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-subtle);display:grid;justify-items:center;text-align:center}.changelog-empty svg{width:22px;color:var(--primary)}.changelog-empty h3{margin:10px 0 4px;font-size:14.5px}.changelog-empty p{margin:0;max-width:430px;color:var(--muted);font-size:12.5px;line-height:1.55}.pick-list{max-height:264px;margin:0;padding:0;overflow-y:auto;list-style:none}.pick-list li{border-bottom:1px solid #eef3f8}.pick-list li:last-child{border-bottom:0}.pick-list label{margin:0;padding:10px 2px;display:grid;grid-template-columns:15px minmax(0,1fr);align-items:start;column-gap:10px;cursor:pointer}.pick-list input{grid-row:span 2;width:15px;height:15px;margin-top:2px;padding:0;accent-color:var(--primary)}.pick-list strong{min-width:0;font-size:13.5px;font-weight:650}.pick-list small{min-width:0;margin-top:2px;color:var(--muted);font-size:12px}.sample-banner{min-height:40px;padding:0 24px;border-bottom:1px solid #d7e7f6;color:#3a6ea8;background:#edf5fc;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:650;text-decoration:none}.sample-banner span{padding:3px 9px;border-radius:999px;color:#33639a;background:#dcebf9;font-size:11.5px;font-weight:750}.sample-banner svg{width:13px}.sample-banner:hover{background:#e4f0fa}.spin{animation:trace-spin 1s linear infinite}@keyframes trace-spin{to{transform:rotate(1turn)}}.workspace-empty{max-width:640px;margin:26px auto 0;padding:40px 34px;display:grid;justify-items:center;text-align:center}.workspace-empty-icon{width:46px;height:46px;border-radius:13px;color:var(--primary);background:var(--primary-soft);display:grid;place-items:center}.workspace-empty-icon svg{width:20px}.workspace-empty h2{margin:15px 0 6px;font-size:19px}.workspace-empty>p{margin:0 0 20px;max-width:440px;color:var(--body-text);font-size:13.5px;line-height:1.6}.workspace-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.workspace-empty small{margin-top:14px;color:var(--muted);font-size:12px}.release-empty{min-height:250px;margin-bottom:16px;display:grid;place-items:center;align-content:center;gap:4px;border-top:0}.release-empty .button{margin-top:12px}.test-kpis{margin-bottom:16px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.test-kpis article{min-height:100px;padding:18px;display:flex;gap:12px}.test-kpis small{color:var(--muted);font-size:12.5px}.test-kpis strong{margin:4px 0 3px;display:block;font-size:22px}.test-kpis p{margin:0;color:var(--muted-light);font-size:12px}.planned-tests-panel{margin-bottom:16px;overflow:hidden}.planned-tests-panel .section-table-heading{align-items:center}.planned-tests-panel .section-table-heading h2{display:flex;align-items:center;gap:8px}.planned-test-list article{min-height:72px;padding:13px 20px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px}.planned-test-icon{width:32px;height:32px;border-radius:10px;color:var(--amber);background:var(--amber-soft);display:grid;place-items:center}.planned-test-icon svg{width:14px}.planned-test-list strong{display:block;margin-bottom:6px;font-size:13.5px}.planned-test-list small{color:var(--muted);display:flex;align-items:center;gap:8px;font-size:12px}.planned-test-list .button{min-height:34px}.planned-test-list .button svg{width:13px}.planned-tests-empty{min-height:76px;padding:14px 20px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px}.planned-tests-empty>svg{width:22px;color:var(--mint)}.planned-tests-empty strong{margin:0 0 3px}.planned-tests-empty p{margin:0;color:var(--muted);font-size:12.5px}.test-failure-hint{margin:-2px 0 0!important;padding:10px 11px;border-radius:9px;color:#8e682d!important;background:var(--amber-soft);display:flex;align-items:center;gap:7px;font-size:12px!important}.test-failure-hint svg{flex:0 0 14px;width:14px}.test-log-list article{min-height:82px;padding:14px 20px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:34px minmax(240px,1.5fr) minmax(140px,.7fr) auto auto;align-items:center;gap:12px}.test-outcome-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center}.test-outcome-icon svg{width:14px}.outcome-passed{color:var(--mint);background:var(--mint-soft)}.outcome-failed{color:var(--rose);background:var(--rose-soft)}.outcome-mixed{color:var(--amber);background:var(--amber-soft)}.test-log-main h3{margin:0 0 4px;font-size:13.5px}.test-log-main h3 .item-id{width:auto;margin-right:8px;font-size:12px}.test-log-main p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.45}.test-log-meta{display:grid;gap:5px;justify-items:start}.test-log-meta small,.test-log-when{color:var(--muted);font-size:12px}.test-log-when{display:flex;align-items:center;gap:8px;white-space:nowrap}.test-log-when time{font-size:12px}.portal-live{min-height:34px;padding:0 13px;border-radius:999px;color:var(--mint);background:var(--mint-soft);display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700}.portal-live i{width:7px;height:7px;border-radius:50%;background:#3aa27e;box-shadow:0 0 0 4px #d0efe2}.portal-link-card{min-height:94px;margin-bottom:16px;padding:17px 19px;display:grid;grid-template-columns:41px 1fr auto auto;align-items:center;gap:12px}.portal-link-card>span{width:40px;height:40px;border-radius:11px;color:var(--primary);background:var(--primary-soft);display:grid;place-items:center}.portal-link-card>div small{color:var(--muted);font-size:12px}.portal-link-card>div strong{margin:3px 0;display:block;font-family:var(--font-mono);font-size:13px}.portal-link-card>div p{margin:0;color:var(--muted);font-size:12.5px}.portal-layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(380px,1.1fr);gap:16px}.portal-settings{display:grid;align-content:start;gap:16px}.portal-config{padding:21px}.portal-config .panel-heading{margin-bottom:11px}.portal-config .panel-heading h2{font-size:15px}.portal-config .panel-heading p{margin:4px 0;color:var(--muted);font-size:12.5px}.portal-config>label{min-height:64px;border-top:1px solid #eef3f8;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.portal-config>label>span{display:flex;align-items:center;gap:10px}.portal-config>label>span>svg{flex:0 0 15px;width:15px;color:var(--primary)}.portal-config small,.portal-config strong{display:block}.portal-config strong{margin-bottom:3px;font-size:13px}.portal-config small{color:var(--muted);font-size:12px}.portal-config input{appearance:none;flex:0 0 34px;width:34px;height:19px;border-radius:11px;background:#ccd8e4;position:relative;cursor:pointer;transition:.2s}.portal-config input:after{content:"";position:absolute;top:3px;left:3px;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #21344a29;transition:.2s}.portal-config input:checked{background:var(--primary)}.portal-config input:checked:after{transform:translateX(15px)}.portal-members{overflow:hidden}.portal-members article{min-height:62px;padding:10px 19px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:30px 1fr auto 30px;align-items:center;gap:9px}.portal-members small,.portal-members strong{display:block}.portal-members strong{margin-bottom:3px;font-size:13px}.portal-members small{color:var(--muted);font-size:12px}.portal-widget-column{display:grid;align-content:start;gap:16px}.widget-card{padding:22px}.widget-card .panel-heading h2{margin-top:5px;font-size:15.5px}.widget-card .panel-heading .eyebrow{font-size:11.5px}.widget-icon{width:40px;height:40px;border-radius:11px;color:var(--primary);background:var(--primary-soft);display:grid;place-items:center}.widget-icon svg{width:17px}.widget-card>p{margin:10px 0 16px;color:var(--body-text);font-size:13.5px;line-height:1.55}.widget-card>p code{padding:2px 5px;border-radius:5px;color:#33639a;background:var(--primary-soft);font-family:var(--font-mono);font-size:.92em}.widget-url{display:grid;gap:6px;margin-bottom:12px;color:#4c5d73;font-size:13px;font-weight:650}.widget-url input{width:100%;padding:10px 12px;border:1px solid var(--border-strong);border-radius:10px;color:#5d6e84;background:#fbfdfe;font-size:12.5px}.widget-snippet{display:grid;gap:9px;justify-items:end}.widget-snippet pre{width:100%;margin:0;padding:14px 16px;border:1px solid var(--border);border-radius:12px;color:#dcebfb;background:#22354c;overflow-x:auto;font-family:var(--font-mono);font-size:12px;line-height:1.6}.widget-points{margin:16px 0 0;padding:14px 0 0;border-top:1px solid #eef3f8;list-style:none;display:grid;gap:8px}.widget-points li{display:flex;align-items:flex-start;gap:8px;color:var(--body-text);font-size:12.5px;line-height:1.45}.widget-points svg{flex:0 0 13px;width:13px;margin-top:1px;color:var(--mint)}.widget-note{padding:16px;display:flex;align-items:flex-start;gap:11px;color:var(--mint);background:#f2faf6}.widget-note>svg{flex:0 0 18px;width:18px}.widget-note p,.widget-note strong{font-size:12.5px}.widget-note p{margin:4px 0 0;color:#5c8272;line-height:1.5}.widget-note a{color:var(--primary);font-weight:700;text-decoration:none}.widget-visibility{margin-bottom:13px;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle)}.widget-visibility-row{display:flex;align-items:flex-start;gap:10px}.widget-visibility-row label{cursor:pointer}.widget-visibility input{flex:0 0 16px;width:16px;height:16px;margin-top:2px;accent-color:var(--primary);cursor:pointer}.widget-visibility strong{display:block;font-size:12.5px}.widget-visibility small{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.5}.reviewer-link{margin-top:11px;padding-top:11px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px}.reviewer-link code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 9px;border-radius:7px;color:#33639a;background:var(--primary-soft);font-family:var(--font-mono);font-size:11.5px}.customer-portal-page{min-height:100vh;padding:42px 18px 130px;background:linear-gradient(180deg,#eef4fa,#f9fcfe)}.customer-portal-frame{max-width:660px;margin:0 auto;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:0 30px 70px #24344a14;overflow:hidden}.customer-portal-header{min-height:72px;padding:0 28px;border-bottom:1px solid #eef3f8;display:flex;align-items:center;justify-content:space-between;gap:14px}.customer-portal-header>div{display:flex;align-items:center;gap:10px}.customer-portal-header small,.customer-portal-header strong{display:block}.customer-portal-header small{color:var(--muted);font-size:12px}.customer-portal-header strong{margin-top:2px;font-size:13.5px}.customer-portal-body{padding:32px 30px 26px}.customer-eyebrow{margin:0 0 8px;color:var(--primary);font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.customer-portal-body h1{margin:0 0 7px;font-size:26px;letter-spacing:-.5px}.customer-lead{margin:0 0 22px;color:var(--body-text);font-size:14px;line-height:1.6}.customer-progress-card{margin-bottom:14px;padding:17px;border:1px solid var(--border);border-radius:13px;background:var(--surface-subtle)}.customer-progress-card>div{margin-bottom:9px;display:flex;justify-content:space-between;font-size:13px;color:var(--body-text)}.customer-progress-card>div strong{color:var(--ink)}.customer-progress-card>i{display:block;height:6px;border-radius:6px;background:#e8eef5;overflow:hidden}.customer-progress-card>i b{display:block;height:100%;background:var(--primary)}.customer-progress-card>small{display:block;margin-top:8px;color:var(--muted);font-size:12px}.customer-stats{margin-bottom:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.customer-stats article{min-height:84px;padding:13px;border:1px solid var(--border);border-radius:12px}.customer-stats article>span{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:8px}.customer-stats svg{width:14px}.stat-mint{color:var(--mint);background:var(--mint-soft)}.stat-amber{color:var(--amber);background:var(--amber-soft)}.stat-blue{color:var(--primary);background:var(--primary-soft)}.customer-stats strong{display:block;margin:7px 0 2px;font-size:18px}.customer-stats small{color:var(--muted);font-size:12px}.customer-report-button{width:100%;min-height:46px;border:0;border-radius:12px;color:#fff;background:var(--primary);box-shadow:0 5px 14px #3d84da30;display:flex;align-items:center;justify-content:center;gap:7px;font-size:13.5px;font-weight:700;cursor:pointer}.customer-report-button:hover{background:var(--primary-dark)}.customer-report-button svg{width:15px}.customer-portal-body h2{margin:26px 0 4px;font-size:15px}.customer-report-list article{padding:14px 0;border-bottom:1px solid #eef3f8;display:grid;grid-template-columns:32px 1fr auto;align-items:flex-start;gap:11px}.customer-report-list article.is-clickable{position:relative;border-radius:10px;cursor:pointer;transition:.15s ease}.customer-report-list article.is-clickable:focus-within,.customer-report-list article.is-clickable:hover{margin-inline:-9px;padding-inline:9px;background:var(--primary-softer);outline:none}.customer-report-hit{position:absolute;inset:0;z-index:1;border:0;border-radius:inherit;background:transparent;cursor:pointer}.customer-report-list article.is-completed strong{color:var(--muted)}.customer-report-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center}.customer-report-icon svg{width:13px}.report-received{color:var(--primary);background:var(--primary-soft)}.report-in-progress{color:var(--amber);background:var(--amber-soft)}.report-completed{color:var(--mint);background:var(--mint-soft)}.customer-report-list strong{display:block;margin-bottom:3px;font-size:13.5px}.customer-report-list p{margin:0 0 4px;color:var(--muted);font-size:12.5px;line-height:1.45}.customer-report-list small{color:var(--muted-light);font-size:12px}.customer-status{min-height:25px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;white-space:nowrap}.customer-status svg{width:12px}.customer-status-received{color:var(--primary);background:var(--primary-soft)}.customer-status-in-progress{color:var(--amber);background:var(--amber-soft)}.customer-status-completed{color:var(--mint);background:var(--mint-soft)}.customer-portal-footer{margin-top:20px;padding-top:16px;border-top:1px solid #eef3f8;color:var(--muted);display:flex;align-items:center;gap:8px;font-size:12.5px}.customer-portal-footer svg{flex:0 0 14px;width:14px;color:var(--mint)}.customer-preview-banner{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:25;max-width:min(680px,calc(100vw - 24px));padding:10px 16px;border:1px solid var(--border-strong);border-radius:999px;color:#4c5d73;background:#fffffff2;box-shadow:0 12px 30px #21344a1f;backdrop-filter:blur(8px);display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;text-decoration:none}.customer-preview-banner:hover{color:var(--primary);border-color:#b5d2ef}.customer-preview-banner svg{flex:0 0 13px;width:13px}.customer-screenshot-picker{position:relative;margin-bottom:4px;padding:13px;border:1px dashed #bcd4ea;border-radius:11px;color:#5d6e84;background:var(--primary-softer);display:flex!important;align-items:center;gap:11px;cursor:pointer}.customer-screenshot-picker svg{width:19px;color:var(--primary)}.customer-screenshot-picker strong{display:block;font-size:12.5px}.customer-screenshot-picker small{color:var(--muted);font-size:12px;font-weight:500}.customer-screenshot-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.portal-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:60vh;color:var(--muted);font-size:13.5px}.portal-loading svg{width:18px}.portal-error{padding:46px 34px;display:grid;justify-items:center;text-align:center}.portal-error h1{margin:16px 0 6px;font-size:21px}.portal-error p{margin:0;color:var(--muted);font-size:13.5px}.customer-empty{padding:26px 0;color:var(--muted);font-size:12.5px;text-align:center}.portal-members-empty{display:block!important;padding:18px 19px!important}.portal-members-empty p{margin:0;color:var(--muted);font-size:12.5px}.file-chosen{margin-bottom:12px;padding:9px 12px;border:1px solid #cbe7da;border-radius:10px;color:var(--mint);background:#f0faf5;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px;font-weight:650}.file-chosen span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chosen button{padding:2px;border:0;color:inherit;background:none;display:grid;place-items:center;cursor:pointer}.file-chosen svg{width:14px}.team-panel{margin-bottom:16px}.team-list article{min-height:66px;padding:11px 20px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:36px minmax(0,1fr) 110px 92px 30px;align-items:center;gap:11px}.team-list article.is-you{background:var(--surface-subtle)}.avatar-guest-small{width:36px;height:36px;border-radius:50%;color:#4c5d73;background:#e9eff5;display:inline-grid;place-items:center;font-size:12px;font-weight:750}.team-list small,.team-list strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-list strong{margin-bottom:3px;font-size:13px}.team-list strong b{margin-left:6px;padding:2px 7px;border-radius:999px;color:var(--primary);background:var(--primary-soft);font-size:10.5px;font-weight:750}.team-list small{color:var(--muted);font-size:12px}.role-badge{width:fit-content;padding:5px 9px;border-radius:999px;color:#64758a;background:#eef3f8;font-size:11.5px;font-weight:700}.role-owner{color:var(--primary);background:var(--primary-soft)}.team-empty{display:block!important;padding:22px 20px!important}.team-empty p{margin:0;color:var(--muted);font-size:12.5px}.team-note{padding:14px 20px;border-top:1px solid #eef3f8;background:#fbfdfe;display:flex;align-items:flex-start;gap:10px}.team-note svg{flex:0 0 15px;width:15px;margin-top:1px;color:var(--muted)}.team-note p{margin:0;color:var(--body-text);font-size:12.5px;line-height:1.55}.team-note strong{color:var(--ink);font-weight:700}.approvals-panel{margin-bottom:16px}.approvals-panel .team-list article{grid-template-columns:36px minmax(0,1fr) auto}.admin-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;color:var(--primary);background:var(--primary-soft);font-size:11.5px;font-weight:750;white-space:nowrap}.admin-badge svg{width:14px}.approval-actions{display:flex;gap:8px}.refuse-action{min-height:32px;padding:0 11px;border:1px solid #f0d4d1;border-radius:999px;color:var(--rose);background:#fef5f4;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer;transition:.15s ease}.refuse-action:hover{border-color:#e6bbb6;background:var(--rose-soft)}.refuse-action svg{width:12px}.approval-page{min-height:100vh;padding:24px;background:radial-gradient(1100px 520px at 50% -8%,#e3effa 0,#f3f7fb 55%,#f3f7fb 100%);display:grid;place-items:center}.approval-card{width:min(430px,100%);padding:38px 36px 32px;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:0 24px 60px #21344a12;display:flex;flex-direction:column;align-items:center;text-align:center}.approval-icon{width:52px;height:52px;margin-bottom:18px;border-radius:50%;color:var(--amber);background:var(--amber-soft);display:grid;place-items:center}.approval-icon.is-rejected{color:var(--rose);background:var(--rose-soft)}.approval-icon svg{width:24px;height:24px}.approval-card h1{margin:0 0 9px;font-size:23px;font-weight:750;letter-spacing:-.5px}.approval-card p{margin:0 0 20px;color:var(--body-text);font-size:13.5px;line-height:1.6}.approval-email{font-size:12.5px!important}.approval-email strong{color:var(--ink)}.login-page{min-height:100vh;padding:24px;background:radial-gradient(1100px 520px at 50% -8%,#e3effa 0,#f3f7fb 55%,#f3f7fb 100%);display:grid;place-items:center}.login-card{width:min(410px,100%);padding:38px 36px 34px;border:1px solid var(--border);border-radius:20px;background:#fff;box-shadow:0 24px 60px #21344a12}.login-logo{width:104px;height:auto;margin:0 auto 26px;display:block;object-fit:contain}.login-form h1,.login-success h1{margin:0 0 8px;font-size:24px;line-height:1.15;font-weight:750;letter-spacing:-.5px;text-align:center}.login-form>p{margin:0 0 26px;color:var(--muted);font-size:13.5px;line-height:1.5;text-align:center}.login-tabs{margin-bottom:20px;padding:4px;border-radius:11px;background:#eef3f8;display:grid;grid-template-columns:1fr 1fr;gap:3px}.login-tabs button{min-height:34px;padding:0 10px;border:0;border-radius:8px;color:#6a7b91;background:transparent;font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s ease}.login-tabs button:hover{color:var(--ink)}.login-tabs button.selected{color:var(--primary);background:#fff;box-shadow:0 1px 4px #24344a14}.login-warning{margin-bottom:18px;padding:11px 12px;border:1px solid #eee3c8;border-radius:10px;color:var(--amber);background:#fffaef;font-size:12.5px;line-height:1.5}.password-toggle{flex:0 0 auto;padding:2px;border:0;color:var(--muted);background:none;display:grid;place-items:center;cursor:pointer}.password-toggle:hover{color:var(--primary)}.login-form>.button .spin,.password-toggle svg{width:16px}.login-form-icon{width:48px;height:48px;margin:0 auto 16px;border-radius:50%;color:var(--primary);background:var(--primary-soft);display:grid;place-items:center}.login-form-icon svg{width:22px;height:22px}.login-link{display:block;width:100%;margin-top:16px;padding:4px;border:0;color:var(--muted);background:none;font-size:12.5px;font-weight:650;text-align:center;cursor:pointer}.login-link:hover{color:var(--primary)}.login-form label{margin-bottom:16px;color:#4c5d73;display:grid;gap:7px;font-size:12.5px;font-weight:650}.login-form label>div{height:46px;padding:0 13px;border:1px solid var(--border-strong);border-radius:11px;background:#fbfdfe;display:flex;align-items:center;gap:9px;transition:.16s ease}.login-form label>div:focus-within{border-color:#a9cbec;background:#fff;box-shadow:0 0 0 3px #3d84da12}.login-form label svg{width:16px;color:var(--muted)}.login-form input{width:100%;border:0;outline:0;background:transparent;font-size:13.5px}.login-form>.button{width:100%;height:46px;font-size:13.5px}.login-form>.button:disabled{opacity:.55;cursor:not-allowed}.form-error{margin:12px 0 0!important;color:var(--rose)!important;font-size:12.5px!important;text-align:center}.login-success{display:flex;flex-direction:column;align-items:center;text-align:center}.login-success-icon{width:52px;height:52px;margin-bottom:18px;border-radius:50%;color:var(--mint);background:var(--mint-soft);display:grid;place-items:center}.login-success-icon svg{width:25px;height:25px}.login-success p{margin:0 0 22px;color:var(--muted);font-size:13.5px;line-height:1.55}.login-success p strong{color:var(--ink);font-weight:700}.connection-badge{min-height:34px;padding:0 13px;border-radius:999px;color:var(--amber);background:var(--amber-soft);display:flex;align-items:center;gap:7px;font-size:12px;font-weight:750}.connection-badge i{width:7px;height:7px;border-radius:50%;background:#cf9b3f;box-shadow:0 0 0 4px #f5e6c8}.connection-badge.connected{color:var(--mint);background:var(--mint-soft)}.connection-badge.connected i{background:#3aa27e;box-shadow:0 0 0 4px #d0efe2}.connection-card{min-height:122px;margin-bottom:16px;padding:21px;border-color:#ecdfc6;background:linear-gradient(145deg,#fff,#fffbf2);display:grid;grid-template-columns:46px minmax(270px,1fr) auto;align-items:center;gap:15px}.connection-card.is-connected{border-color:#cfe8dc;background:linear-gradient(145deg,#fff,#f4fbf7)}.connection-card>span{width:44px;height:44px;border-radius:12px;color:var(--amber);background:var(--amber-soft);display:grid;place-items:center}.connection-card.is-connected>span{color:var(--mint);background:var(--mint-soft)}.connection-card>span svg{width:19px}.connection-card>div>small{color:var(--muted);font-size:11.5px;font-weight:700}.connection-card h2{margin:5px 0;font-size:15.5px}.connection-card p{margin:0;color:var(--muted);font-size:12.5px}.connection-facts{display:flex;gap:24px}.connection-facts span{min-width:70px}.connection-facts small,.connection-facts strong{display:block}.connection-facts small{margin-bottom:5px;color:var(--muted-light);font-size:11px}.connection-facts strong{font-size:12px}.setup-layout{margin-bottom:16px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px}.setup-checklist{overflow:hidden}.setup-checklist .section-table-heading>span{padding:5px 9px;border-radius:999px;color:var(--primary);background:var(--primary-soft);font-size:11.5px;font-weight:700}.setup-checklist ol{margin:0;padding:0;list-style:none}.setup-checklist li{min-height:74px;padding:12px 19px;border-top:1px solid #eef3f8;display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:10px}.setup-checklist li>span{width:29px;height:29px;border-radius:9px;color:var(--muted);background:#eef3f8;display:grid;place-items:center}.setup-checklist li.ready>span{color:var(--mint);background:var(--mint-soft)}.setup-checklist li svg{width:13px}.setup-checklist strong{display:block;margin-bottom:4px;font-size:12.5px}.setup-checklist p{margin:0;color:var(--muted);font-size:12px}.docs-page code,.setup-checklist code{padding:2px 5px;border-radius:5px;color:#33639a;background:var(--primary-soft);font-family:var(--font-mono);font-size:.95em}.setup-checklist li>b{color:var(--muted);font-size:11.5px}.setup-checklist li.ready>b{color:var(--mint)}.setup-side{display:grid;align-content:start;gap:16px}.architecture-card{padding:21px}.architecture-card h2{margin:6px 0 13px;font-size:15px}.architecture-card>div{min-height:55px;border-top:1px solid #eef3f8;display:flex;align-items:center;gap:10px}.architecture-card>div>span{width:31px;height:31px;border-radius:9px;color:var(--primary);background:var(--primary-soft);display:grid;place-items:center}.architecture-card svg{width:14px}.architecture-card p{margin:0}.architecture-card small,.architecture-card strong{display:block}.architecture-card strong{margin-bottom:3px;font-size:12.5px}.architecture-card small{color:var(--muted);font-size:12px}.setup-note{padding:16px;color:var(--mint);background:#f2faf6;display:flex;align-items:flex-start;gap:11px}.setup-note>svg{flex:0 0 18px;width:18px}.setup-note strong{font-size:12.5px}.setup-note p{margin:4px 0 0;color:#5c8272;font-size:12px;line-height:1.5}.data-model-card{overflow:hidden}.data-model-card .section-table-heading a{color:var(--primary);display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700;text-decoration:none}.data-model-card .section-table-heading svg{width:12px}.data-model-grid{padding:0 19px 19px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.data-model-grid>span{min-height:58px;padding:11px;border:1px solid var(--border);border-radius:9px;background:#fbfdfe}.data-model-grid b,.data-model-grid small{display:block}.data-model-grid b{margin-bottom:5px;color:#33639a;font-family:var(--font-mono);font-size:11.5px}.data-model-grid small{color:var(--muted);font-size:10.5px}.docs-page{min-height:100vh;padding:60px 24px 100px;background:linear-gradient(180deg,#f5f9fd,#fff)}.docs-page article{max-width:760px;margin:0 auto}.docs-page article>a:first-child{margin-bottom:45px;color:var(--muted);display:flex;align-items:center;gap:6px;font-size:12px;text-decoration:none}.docs-page article>a svg{width:13px}.docs-page h1{margin:8px 0 12px;font-size:38px;letter-spacing:-1.1px}.docs-lead{margin-bottom:38px!important;color:var(--body-text)!important;font-size:14.5px!important;line-height:1.65!important}.docs-page h2{margin:33px 0 8px;font-size:18px}.docs-page p{margin:0 0 13px;color:var(--body-text);font-size:13px;line-height:1.7}.docs-page pre{overflow-x:auto;padding:20px;border:1px solid var(--border);border-radius:12px;color:#dcebfb;background:#22354c;font-size:12px;line-height:1.7}.docs-page pre code{padding:0;color:inherit;background:none}.docs-page a{color:var(--primary)}.docs-callout{margin-top:35px;padding:19px;border:1px solid #d7e7f6;border-radius:12px;background:var(--primary-softer)}.docs-callout strong{font-size:13px}.docs-callout p{margin:6px 0 0;font-size:12.5px}.docs-page footer{margin-top:45px;padding-top:20px;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:18px}.docs-page footer a{display:flex;align-items:center;gap:5px;font-size:12px;text-decoration:none}.docs-page footer svg{width:12px}@media (max-width:1180px){.portal-layout,.version-layout{grid-template-columns:1fr}.upcoming-list article{grid-template-columns:40px minmax(0,1fr) auto 30px}.upcoming-list .upcoming-progress{display:none}.test-kpis{grid-template-columns:1fr 1fr}.workspace-empty{margin-top:8px}.setup-layout{grid-template-columns:1fr}.setup-side{grid-template-columns:1fr 1fr}.data-model-grid{grid-template-columns:repeat(2,1fr)}.test-log-list article{grid-template-columns:34px minmax(200px,1fr) auto auto}.test-log-when{display:none}}@media (max-width:900px){.section-heading{align-items:flex-start}.section-heading>:last-child{display:none}.panel-toolbar,.section-toolbar{overflow-x:auto;flex-wrap:nowrap}.section-search{display:none}.version-metrics{grid-template-columns:1fr 1fr}.portal-link-card{grid-template-columns:41px 1fr auto}.portal-link-card .button-secondary{display:none}.timeline-list article{grid-template-columns:1fr}.timeline-side{justify-content:flex-start}.changelog-list li{grid-template-columns:1fr}.changelog-line-actions{justify-content:flex-start}.connection-card{grid-template-columns:46px 1fr}.connection-facts{grid-column:1/3;padding-top:13px;border-top:1px solid #eef3f8}}@media (max-width:620px){.section-heading h1{font-size:24px}.test-kpis{grid-template-columns:1fr}.test-log-list article{grid-template-columns:34px 1fr}.test-log-list article>.status,.test-log-meta{display:none}.planned-test-list article{grid-template-columns:32px 1fr}.planned-test-list article .button{grid-column:2;justify-self:start}.planned-tests-empty{grid-template-columns:28px 1fr}.planned-tests-empty .button-link{grid-column:2;justify-self:start}.portal-link-card{grid-template-columns:41px 1fr}.portal-link-card .button{grid-column:1/3}.version-metrics{grid-template-columns:1fr}.version-card-actions{justify-content:stretch}.version-card-actions .button{flex:1}.timeline-list article{padding-left:54px}.timeline-node{left:16px}.timeline-list article:not(:last-child):before{left:29px}.data-model-grid,.setup-side{grid-template-columns:1fr}.connection-facts{flex-wrap:wrap;gap:12px}.project-grid{grid-template-columns:1fr}.project-card>header{grid-template-columns:40px 1fr 30px}.project-card>header .project-stage{grid-column:2/4}.customer-portal-body{padding:24px 18px 20px}.customer-stats{grid-template-columns:1fr}.customer-portal-header{padding-inline:18px}.upcoming-list article{grid-template-columns:40px minmax(0,1fr) 30px}.upcoming-list .upcoming-meta{display:none}}.app-boot{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);background:var(--canvas);font-size:13.5px}.app-boot svg{width:18px}.paste-link-box{width:100%;margin-bottom:18px;padding:15px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-subtle);text-align:left}.paste-link-box>strong{display:block;font-size:12.5px}.paste-link-box>small{display:block;margin:3px 0 11px;color:var(--muted);font-size:12px;line-height:1.5}.paste-link-row{display:flex;gap:8px}.paste-link-row input{min-width:0;flex:1;padding:10px 12px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;font-size:12.5px}.paste-link-row input:focus{outline:none;border-color:#a9cbec;box-shadow:0 0 0 3px #3d84da12}.paste-link-row .button{flex:0 0 auto;min-height:40px}.load-error-detail{font-family:var(--font-mono);font-size:12.5px!important;word-break:break-word}.approval-actions-row{display:flex;gap:9px}.customer-header-actions{display:flex;align-items:center;gap:6px}.customer-header-actions button{width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:9px;color:#5f7188;background:#fff;display:grid;place-items:center;cursor:pointer}.customer-header-actions button:hover{color:var(--primary);border-color:#b5d2ef}.customer-header-actions svg{width:15px}.danger-zone{margin-top:4px;padding-top:14px;border-top:1px solid #eef3f8}.danger-link{padding:0;border:0;color:var(--rose);background:none;font-size:12.5px;font-weight:650;cursor:pointer}.danger-link:hover{text-decoration:underline}.danger-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.danger-confirm>span{flex:1 1 100%;color:#96635d;font-size:12.5px;line-height:1.5}.item-detail{width:min(640px,100%)}.detail-badges{margin:4px 0 14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.detail-meta{margin-bottom:14px;padding:12px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface-subtle);display:grid;gap:8px}.detail-meta span{display:flex;align-items:center;gap:8px;color:#4c5d73;font-size:12.5px;min-width:0}.detail-meta strong{flex:0 0 92px;color:var(--muted);font-size:11.5px;font-weight:700}.detail-meta a{color:var(--primary);display:inline-flex;align-items:center;gap:4px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-meta a svg{width:12px;flex:0 0 12px}.detail-pin{margin-bottom:12px;padding:10px 13px;border:1px solid #f0d4d1;border-radius:10px;color:var(--rose);background:#fef5f4;font-size:12.5px;line-height:1.5;word-break:break-word}.detail-description{margin-bottom:16px}.detail-description h3{margin:0 0 7px;color:var(--ink);font-size:13.5px}.detail-body{color:#4c5d73;font-size:13.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.detail-empty{margin:0 0 14px;color:var(--muted);display:flex;align-items:center;gap:7px;font-size:12.5px}.detail-empty svg{width:14px}.detail-shots{margin-bottom:6px;padding-top:14px;border-top:1px solid #eef3f8}.detail-shots h3{margin:0 0 10px;display:flex;align-items:center;gap:7px;font-size:13.5px}.detail-shots h3 svg{width:14px;color:var(--muted)}.detail-shots img{display:block;max-width:100%;max-height:340px;margin-bottom:10px;border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px #24344a12}.detail-file{display:inline-flex;align-items:center;gap:6px;margin:0 8px 8px 0;padding:8px 12px;border:1px solid var(--border);border-radius:9px;color:var(--primary);font-size:12.5px;text-decoration:none}.detail-file svg{width:13px}.detail-loading{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12.5px}.detail-conversation{margin-top:18px;padding-top:16px;border-top:1px solid #eef3f8}.detail-conversation>h3{margin:0 0 12px;display:flex;align-items:center;gap:7px;color:var(--ink);font-size:13.5px}.detail-conversation>h3 svg{width:14px;color:var(--primary)}.comment-list{display:grid;gap:9px}.comment-list article{padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-subtle)}.comment-list article.is-mine{border-color:#cbdff3;background:var(--primary-softer)}.comment-list article>div{display:flex;align-items:center;gap:7px}.comment-list strong{font-size:12.5px}.comment-list time{margin-left:auto;color:var(--muted-light);font-size:11.5px}.comment-list p{margin:7px 0 0;color:#4c5d73;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.comment-role{padding:3px 7px;border-radius:999px;font-size:10.5px;font-weight:750}.comment-role.role-team{color:#3a72ab;background:var(--primary-soft)}.comment-role.role-customer{color:var(--mint);background:var(--mint-soft)}.comment-empty{margin:0;padding:14px;border:1px dashed var(--border-strong);border-radius:10px;color:var(--muted);font-size:12.5px;text-align:center}.comment-form{margin-top:12px}.comment-form label{display:block;margin-bottom:7px;color:#4c5d73;font-size:12.5px;font-weight:650}.comment-form textarea{width:100%;min-height:76px;padding:10px 11px;border:1px solid var(--border-strong);border-radius:10px;outline:none;color:var(--ink);background:#fbfdfe;font:inherit;font-size:13px;resize:vertical}.comment-form textarea:focus{border-color:#a9cbec;background:#fff;box-shadow:0 0 0 3px #3d84da12}.comment-form>div{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}.comment-form .button{min-height:36px}.comment-form .button svg{width:14px}.comment-error{color:var(--rose);font-size:12px}.feedback-panel{margin:24px 0;overflow:hidden}.feedback-error,.feedback-intro,.feedback-people,.feedback-review{padding:20px 24px}.feedback-intro,.feedback-people>p{color:var(--muted);margin:10px 0 18px}.feedback-people article{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #e9ecef}.feedback-people article>div{flex:1}.feedback-panel small{display:block;color:var(--muted);margin-top:6px}.feedback-filters{display:flex;gap:16px}.feedback-filters label{display:grid;gap:8px;flex:1}.feedback-filters input,.feedback-filters select{width:100%;padding:10px;border:1px solid #dce2e7;border-radius:8px}.feedback-table-wrap{overflow-x:auto}.feedback-table{width:100%;border-collapse:collapse;text-align:left}.feedback-table td,.feedback-table th{padding:14px 10px;border-bottom:1px solid #e9ecef}.feedback-table .button-link{text-align:left;white-space:normal}.feedback-error{color:#b42318}@media (max-width:700px){.feedback-filters,.feedback-people article{flex-wrap:wrap}.feedback-table{min-width:640px}}.feedback-star{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #e0e5eb;border-radius:8px;background:white;color:#667085;cursor:pointer}.feedback-star svg{width:18px;height:18px}.feedback-star.is-starred{color:#a66a00;border-color:#eed49a;background:#fff3cf}.feedback-star:disabled{opacity:.5}.report-starred td{background:#fffaf0}.star-control{display:inline-flex;flex-direction:column}.reply-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:7px;font-size:11px;color:#667085}.reply-unread,.reply-waiting{border-radius:5px;padding:3px 6px}.reply-unread{color:#175cd3;background:#eaf2ff;font-weight:700}.reply-waiting-team{color:#93370d;background:#fff1dd}.reply-waiting-customer{color:#475467;background:#eef1f5}.detail-attention{display:flex;gap:12px;align-items:center;margin:12px 0}.attention-filter{display:flex;align-items:center;gap:8px;font-size:12px}.attention-filter select{padding:8px;border:1px solid #e0e5eb;border-radius:7px;background:white}