:root{--ink:#101418;--muted:#5b6470;--line:#e3e7ec;--bg:#f6f7f9;--surface:#fff;--accent:#0f6fff;--accent-ink:#fff;--soft:#eef1f4;--radius:12px;--shadow:0 1px 2px rgba(16,20,24,.05)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font:15px/1.5 -apple-system,system-ui,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--accent)}h1{font-size:1.5rem;letter-spacing:-.02em;margin:0 0 .6rem}h2{font-size:1.05rem;margin:0 0 .6rem}.muted{color:var(--muted)}.centered{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--muted)}.logo{font-weight:800;letter-spacing:-.02em;font-size:18px;text-decoration:none;color:var(--ink)}.logo b{color:var(--accent)}.logo .mark{width:24px;height:24px;vertical-align:-5px;margin-right:8px;color:var(--ink)}.shell{min-height:100vh;display:flex;flex-direction:column}.content{flex:1;width:100%}.appfoot{display:flex;gap:18px;flex-wrap:wrap;align-items:center;padding:14px 24px;border-top:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:13px}.appfoot a{color:var(--muted);text-decoration:none}.appfoot a:hover{color:var(--ink)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.topbar-right{display:flex;gap:14px;align-items:center;font-size:14px}.topbar-right select.lang{width:auto;padding:4px 6px;font-size:13px}.content{max-width:1280px;margin:0 auto;padding:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.chip{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:var(--soft);color:var(--muted);margin-left:6px;font-weight:500}button{cursor:pointer;font:inherit;font-weight:600;font-size:.9rem;padding:8px 14px;border-radius:9px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink)}button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line);font-weight:500}button.secondary:hover{border-color:var(--muted)}button:disabled{cursor:not-allowed;opacity:.5}input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:36px 32px;width:min(380px,100%);text-align:center;box-shadow:var(--shadow)}.login-card h1{margin:.4rem 0 .2rem}.login-card button{width:100%;padding:11px;margin-top:14px}.login-card .who{display:block;font-size:.8rem;color:var(--muted);margin-top:16px}.tr-root .tr-grid{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start}@media (max-width:960px){.tr-root .tr-grid{grid-template-columns:1fr}}.tr-root .tr-step{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;align-items:center;justify-content:center;margin-right:8px}.tr-root textarea,.tr-root input[type=text],.tr-root input[type=number],.tr-root select{width:100%}.tr-root textarea{resize:vertical}.tr-root textarea.tr-brief{min-height:360px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.5}.tr-root .tr-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}.tr-root .tr-examples{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.tr-root .tr-examples button{font-size:12px;padding:4px 8px}.tr-root .tr-status{font-size:13px;color:var(--muted);min-height:18px}.tr-root .tr-error{color:#991b1b}.tr-root .tr-list{list-style:none;padding:0;margin:0}.tr-root .tr-list li{border-top:1px solid var(--line);padding:12px 0;display:grid;gap:6px}.tr-root .tr-list li:first-child{border-top:0}.tr-root .tr-title{font-weight:600}.tr-code{font:600 12px/1 ui-monospace,monospace;padding:3px 6px;border-radius:6px;background:var(--soft);margin-right:8px}.tr-root .tr-meta{font-size:12px;color:var(--muted)}.tr-root .tr-thumbs{display:flex;gap:6px;flex-wrap:wrap}.tr-root .tr-thumbs img{height:44px;width:88px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.tr-root .tr-actions{display:flex;gap:6px;flex-wrap:wrap}.tr-root .tr-actions button,.tr-root .tr-actions a{font-size:13px;padding:6px 10px}.tr-root code{background:var(--soft);padding:2px 6px;border-radius:5px;font-size:12px;word-break:break-all}.tr-root label.tr-opt{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.tr-root .tr-pano{position:relative;width:100%;aspect-ratio:2/1;background:#222;border-radius:8px;overflow:hidden;cursor:crosshair}.tr-root .tr-pano img{width:100%;height:100%;display:block;object-fit:fill}.tr-root .tr-mk{position:absolute;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;border:3px solid #60a5fa;background:#00000080;box-shadow:0 0 0 2px #000;cursor:pointer}.tr-root .tr-mk.tr-missing{border-color:#ef4444}.tr-root .tr-mk span{position:absolute;top:22px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:11px;color:#fff;background:#0009;padding:1px 5px;border-radius:4px}.tr-root .tr-role-info{--role:#60a5fa}.tr-root .tr-role-exit{--role:#4ade80}.tr-root .tr-role-hazard{--role:#f59e0b}.tr-root .tr-role-decoy{--role:#9ca3af}.tr-root .tr-role-step{--role:#a78bfa}.tr-root .tr-role-option{--role:#2dd4bf}.tr-root .tr-role-option.tr-role-correct{--role:#4ade80}.tr-root .tr-role-option.tr-role-wrong{--role:#f87171}.tr-root .tr-mk{border-color:var(--role, #60a5fa);touch-action:none}.tr-root .tr-mk.tr-role-decoy{border-style:dashed}.tr-root .tr-mk.tr-sel{box-shadow:0 0 0 2px #000,0 0 0 5px #ffffffe6;width:24px;height:24px}.tr-root .tr-mk.tr-role-step .tr-order-badge{position:absolute;top:-7px;right:-7px;width:15px;height:15px;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;line-height:15px;text-align:center;font-style:normal}.tr-root .tr-pano.tr-placing{outline:3px solid var(--accent);outline-offset:2px}.tr-root .tr-pano img{pointer-events:none;-webkit-user-select:none;user-select:none}.tr-root .tr-scene-bar{display:flex;gap:10px;align-items:center;margin-top:10px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);font-size:13px}.tr-root .tr-grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-root .tr-scene-bar .tr-grow{color:var(--muted)}.tr-root .tr-scene-bar button{font-size:12px;padding:4px 10px;white-space:nowrap}.tr-root .tr-scene-bar .chip{margin-left:0}.tr-root .tr-scene-fields{margin-top:8px;padding:4px 12px 12px;border:1px solid var(--line);border-radius:8px}.tr-root .tr-a-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:10px;align-items:start}@media (max-width:960px){.tr-root .tr-a-body{grid-template-columns:1fr}}.tr-root .tr-mlist{display:grid;gap:4px;margin-top:10px;border-radius:8px}.tr-root .tr-mlist:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.tr-root .tr-mrow{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;font-size:13px}.tr-root .tr-mrow:hover{border-color:var(--muted)}.tr-root .tr-mrow.tr-sel{border-color:var(--accent);background:#eef4ff}.tr-root .tr-mrow.tr-missing{box-shadow:inset 3px 0 #ef4444}.tr-root .tr-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--role, #60a5fa);flex:none}.tr-root .tr-role-decoy .tr-dot{background:transparent;border:2px dashed var(--role)}.tr-root .tr-mrow .tr-lab{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-root .tr-mrow .tr-sub{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-root .tr-flags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.tr-root .tr-flags span{font-size:11px;padding:1px 7px;border-radius:99px;background:var(--soft);color:var(--muted);white-space:nowrap}.tr-root .tr-flags .tr-ok{background:#dcfce7;color:#166534}.tr-root .tr-flags .tr-bad{background:#fee2e2;color:#991b1b}.tr-root .tr-inspector{position:sticky;top:110px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:var(--surface)}.tr-root .tr-inspector-empty{color:var(--muted);font-size:13px;padding:24px 14px;text-align:center}.tr-root .tr-inspector h3{display:flex;align-items:center;gap:8px;margin:0;font-size:15px}.tr-root .tr-inspector h3 .chip{margin-left:0}.tr-root .tr-group{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.tr-root .tr-gt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.tr-root .tr-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tr-root .tr-pos{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:13px}.tr-root .tr-pos .tr-val{font-family:ui-monospace,Menlo,monospace;font-weight:600}.tr-root .tr-pos button{font-size:12px;padding:4px 10px}.tr-root .tr-pos .chip.tr-warn{margin-left:auto}.tr-root .tr-inspector-foot{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.tr-root button.tr-danger{color:#b91c1c}.tr-root .tr-hint{font-size:12px;color:var(--muted);margin-top:6px}.tr-root .tr-scene{margin-top:1rem}.tr-root .tr-scene-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.tr-root .tr-scene-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}@media (max-width:900px){.tr-root .tr-scene-grid{grid-template-columns:1fr}}.tr-root .tr-field{display:block;font-size:12px;color:var(--muted);margin-top:8px}.tr-root .tr-warn{display:inline-block;font-size:11px;padding:1px 6px;border-radius:99px;background:#fef3c7;color:#b45309;margin-left:4px}.tr-root .tr-quiz-item{border-top:1px solid var(--line);padding:8px 0}.tr-root .tr-quiz-opts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.tr-root .tr-quiz-opts>div{display:flex;gap:6px;align-items:center}.tr-root .tr-sticky{position:sticky;top:58px;z-index:3;background:var(--bg);padding:8px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tr-root .tr-sticky h1{margin:0;flex:1;font-size:18px}.tr-root .tr-link{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.tr-root .tr-qr{border:1px solid var(--line);border-radius:8px;background:#fff;image-rendering:pixelated;flex:none}.topnav{display:flex;gap:16px;margin-left:20px;flex:1}.topnav a{color:var(--muted);text-decoration:none;font-weight:500}.topnav a:hover{color:var(--ink)}.rm-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.rm-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.rm-row label,.rm-check{font-size:13px;color:var(--muted);display:inline-flex;gap:6px;align-items:center}.rm-form input[type=text],.rm-form textarea{width:100%;margin-top:6px}.rm-table-wrap{padding:0;overflow-x:auto}.rm-table{width:100%;border-collapse:collapse}.rm-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line)}.rm-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px}.rm-desc{font-size:12px;margin-top:2px;white-space:pre-wrap}.rm-prio{width:58px;text-align:center;font-variant-numeric:tabular-nums;padding:4px 6px}.rm-prio::placeholder{color:var(--muted)}.rm-when{white-space:nowrap;font-size:12px}.rm-shipped td:first-child{border-left:3px solid #16a34a}.rm-in_progress td:first-child{border-left:3px solid var(--accent)}.rm-archived{opacity:.6}.topnav a.active{color:var(--ink)}.crumbs{display:flex;gap:8px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.crumbs b{color:var(--accent)}.pitch-head p{margin:0 0 16px;max-width:70ch}.pitch-layout{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}@media (max-width:800px){.pitch-layout{grid-template-columns:1fr}}.pitch-list{padding:8px;display:flex;flex-direction:column;gap:4px}.pitch-item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:8px;text-decoration:none;color:var(--ink)}.pitch-item:hover{background:var(--bg)}.pitch-item.active{background:var(--soft)}.pitch-item span{font-size:12px}.pitch-detail{display:flex;flex-direction:column;gap:16px}.pitch-title{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.pitch-title h2{margin:4px 0 6px;font-size:1.2rem;letter-spacing:-.01em}.pitch-title p{margin:0;max-width:70ch}.pitch-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.pitch-actions .button{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:8px}.pitch-url{display:block;margin-top:12px;font-size:12px;color:var(--muted);word-break:break-all}.pitch-trainings{list-style:none;margin:8px 0 0;padding:0}.pitch-trainings li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:14px}.pitch-links{display:flex;gap:8px;align-items:center;flex-shrink:0}.pitch-preview{padding:0;overflow:hidden}.pitch-preview iframe{display:block;width:100%;height:80vh;border:0}.spoof{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 24px;background:var(--soft);border-bottom:1px solid var(--line);font-size:13px}.spoof.on{background:#fff7d6;border-bottom-color:#f1d27a}.spoof-label{color:var(--muted)}.spoof.on .spoof-label{color:#7a5b00;font-weight:600}.spoof select{font:inherit;padding:5px 8px;border-radius:8px;border:1px solid var(--line);background:var(--surface)}.spoof-role{font-weight:600}.members{display:flex;flex-direction:column;gap:16px}.members-invite h3{margin:0 0 4px}.members-invite p{margin:0 0 10px}.members-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.company-logo{max-height:48px;max-width:160px;background:#fff;padding:4px;border-radius:6px;border:1px solid var(--line)}.members-row input[type=email],.members-row input[type=text]{flex:1;min-width:200px;font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--line)}.members-row select{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface)}.members-actions{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}.small{font-size:12px}.error{color:#b42318}.notice{color:#0b6b3a}.admin h1{margin-bottom:4px}.admin>p.muted{margin:0 0 16px;max-width:70ch}.admin form.card{margin-bottom:16px}.facts4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0 16px}@media (max-width:700px){.facts4{grid-template-columns:1fr 1fr}}.facts4 div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px}.facts4 b{display:block;font-size:24px;line-height:1.1}.facts4 span{font-size:12px;color:var(--muted)}.seg{display:inline-flex;gap:4px}.track-block{margin-bottom:14px;padding:14px 16px}.track-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.track-head h3{margin:0 0 2px;font-size:1.05rem}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#10141873;display:flex;align-items:center;justify-content:center;z-index:30;padding:16px}.modal-card{background:var(--surface);border-radius:14px;padding:20px;width:min(560px,100%);max-height:90vh;overflow:auto}.modal-card h2{margin:0 0 12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.pick-list{list-style:none;margin:12px 0 0;padding:0;max-height:40vh;overflow:auto;border-top:1px solid var(--line)}.pick-list li{padding:8px 0;border-bottom:1px solid var(--line)}.my-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.my-card{padding:0;overflow:hidden;display:flex;flex-direction:column}.my-thumb{aspect-ratio:2/1;background:var(--soft) center/cover}.my-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px}.my-body h3{margin:0;font-size:1.05rem}.my-body .button{align-self:flex-start;display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:8px;margin-top:4px}.chip{align-self:flex-start;font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--soft);color:var(--muted)}.linklike{background:none;border:0;padding:0;color:var(--accent);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.modal-card.wide{width:min(760px,100%)}.modal-card textarea{width:100%;font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;padding:8px 10px;border-radius:8px;border:1px solid var(--line);margin-top:10px;box-sizing:border-box}.import-preview{max-height:40vh;overflow:auto;margin-top:10px;border:1px solid var(--line);border-radius:8px}.import-bad td{background:#fff1f0}.import-result{margin-top:10px}.import-result p{margin:0 0 6px}.import-result ul{margin:0;padding-left:18px;color:var(--muted)}.superadmins{margin-bottom:16px}.superadmins h3{margin:0 0 4px}.superadmins ul{margin:8px 0 0;padding-left:18px}.superadmins p{margin:0}.tr-root .tr-brand{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tr-root .tr-brand-logo{max-height:48px;max-width:160px;background:#fff;padding:4px;border-radius:6px;border:1px solid var(--line)}.pitch-langs{display:flex;gap:12px;margin-top:8px;font-size:13px}.pitch-langs a{font-weight:600}.pg{display:inline-grid;grid-auto-flow:column;gap:2px;vertical-align:middle;border-radius:4px;overflow:hidden;cursor:default}.pg i{display:grid;place-items:center;font:700 9px/1 ui-monospace,Menlo,monospace;color:#fff;letter-spacing:.02em;font-style:normal}.pg i.ok{background:#22c55e}.pg i.gap{background:#f59e0b}.pg i.none{background:#c9d0d8;color:var(--muted)}.pg.s{gap:1px}.pg.s i{width:11px;height:10px}.pg.m i{width:22px;height:16px}.pg.l i{width:34px;height:22px;font-size:11px}.pg:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pg-cell{white-space:nowrap}.chip.ok{background:var(--good-soft);color:var(--good)}.chip.gap{background:var(--warn-soft);color:var(--warn)}.tr-root .ptiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}@media (max-width:900px){.tr-root .ptiles{grid-template-columns:1fr 1fr}}@media (max-width:520px){.tr-root .ptiles{grid-template-columns:1fr}}.tr-root .ptile{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);cursor:pointer;text-align:left;font:inherit;color:inherit;display:flex;flex-direction:column;gap:4px;font-weight:400}.tr-root .ptile .h{display:flex;justify-content:space-between;align-items:center;gap:8px}.tr-root .ptile .h b{font-size:14px}.tr-root .ptile .n{font-size:12px;font-weight:600;padding:2px 8px;border-radius:99px;white-space:nowrap}.tr-root .ptile.ok .n{background:var(--good-soft);color:var(--good)}.tr-root .ptile.gap .n{background:var(--warn-soft);color:var(--warn)}.tr-root .ptile.ok{border-color:#a7dfb8}.tr-root .ptile.gap{border-color:#f2c26b}.tr-root .ptile.on{box-shadow:inset 0 0 0 2px var(--accent)}.tr-root .ptile ul{margin:2px 0 0;padding-left:16px;font-size:12px;color:var(--muted)}.tr-root .ptile li{margin:1px 0}.tr-root .ptile .sc{font-size:12px;color:var(--muted)}.tr-root .tr-scene-gaps{font-size:12px;color:var(--warn);flex-basis:100%;order:9}.tr-root .tr-scene-gaps .ok{color:var(--good)}.tr-root .tr-scene.tr-dim{opacity:.35}.tr-root .tr-filters{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 10px}.tr-root .tr-filters button.on{border-color:var(--ink);font-weight:600}:root{--soft2:#e6ebf1;--accent-soft:#e3edff;--s2:#eb6834;--s3:#1baf7a;--good:#15803d;--good-soft:#dcfce7;--warn:#b45309;--warn-soft:#fef3c7;--crit:#b91c1c;--crit-soft:#fee2e2;--seq1:#e3edff;--seq2:#b3ceff;--seq3:#7fb0ff;--seq4:#3f8cff;--seq5:#0f6fff;--seq6:#0a3f9c}.num{font-variant-numeric:tabular-nums}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);display:grid;gap:2px;align-content:start}.tile .v{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}.tile .v small{font-size:14px;font-weight:500;color:var(--muted);margin-left:4px}.tile .l{font-size:13px;color:var(--muted)}.tile .d{font-size:12px;margin-top:4px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tile .d .up,.tile .d .down,.tile .d .flat{white-space:nowrap}.tile.hero{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.tile.hero .l{color:var(--ink);font-weight:600}.up{color:var(--good)}.down{color:var(--crit)}.flat{color:var(--muted)}.chip.dot:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:5px;vertical-align:0}.chip.assigned{background:var(--soft);color:var(--muted)}.chip.started{background:var(--accent-soft);color:var(--accent)}.chip.completed{background:var(--good-soft);color:var(--good)}.chip.late{background:var(--warn-soft);color:var(--warn)}.chip.crit{background:var(--crit-soft);color:var(--crit)}.funnel{display:grid;gap:8px}.frow{display:grid;grid-template-columns:minmax(120px,190px) 1fr 64px 64px;gap:10px;align-items:center;font-size:13px}.frow .fl{color:var(--ink);overflow-wrap:anywhere;line-height:1.25}.frow .fb{height:22px;background:var(--soft);border-radius:4px;overflow:hidden;position:relative}.frow .fb i{display:block;height:100%;background:var(--seq5);border-radius:0 4px 4px 0;min-width:2px}.frow.step .fb i{background:var(--seq4)}.frow .fn{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.frow .fp{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.frow.drop{grid-template-columns:minmax(120px,190px) 1fr;font-size:12px;color:var(--crit)}.frow.drop span{padding-left:10px}.fhead{display:grid;grid-template-columns:minmax(120px,190px) 1fr 64px 64px;gap:10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.fhead span:nth-child(3),.fhead span:nth-child(4){text-align:right}.inbar{display:inline-flex;align-items:center;gap:8px;min-width:120px;white-space:nowrap}.inbar b{display:block;height:8px;border-radius:4px;background:var(--soft2);width:80px;overflow:hidden;flex:none}.inbar b i{display:block;height:100%;background:var(--seq5);border-radius:4px}.inbar b i.low{background:var(--warn)}.inbar b i.vlow{background:var(--crit)}.inbar span{font-variant-numeric:tabular-nums}.dots{display:inline-flex;gap:2px;vertical-align:middle;margin-right:8px}.dots i{width:8px;height:8px;border-radius:2px;background:var(--soft2)}.dots i.seen{background:var(--seq5)}.chart{width:100%;height:auto;display:block;font:12px/1 -apple-system,system-ui,sans-serif}.chart .gridlines line{stroke:var(--line);stroke-width:1}.chart .axis text{fill:var(--muted)}.chart .lbl{fill:var(--ink);font-weight:600}.chart .s1{stroke:var(--accent)}.chart .s2{stroke:var(--s2)}.chart .s3{stroke:var(--s3)}.chart .f1{fill:var(--accent)}.chart .f2{fill:var(--s2)}.chart .f3{fill:var(--s3)}.chart .hit{fill:transparent}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:8px}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}.heat{display:grid;gap:2px;font-size:12px}.heat .hr{display:grid;grid-template-columns:150px repeat(12,1fr) 70px;gap:2px;align-items:stretch;min-width:760px}.heat .hr>span{padding:5px 6px;border-radius:3px;text-align:right;font-variant-numeric:tabular-nums}.heat .hr>span:first-child{text-align:left;color:var(--ink);font-weight:600;background:transparent}.heat .hr>span:last-child{font-weight:700;background:transparent}.heat .hh>span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding-bottom:4px}.heat .h0{background:var(--soft);color:var(--muted)}.heat .h1{background:var(--seq1);color:var(--ink)}.heat .h2{background:var(--seq2);color:var(--ink)}.heat .h3{background:var(--seq3);color:#0b1220}.heat .h4{background:var(--seq4);color:#fff}.heat .h5{background:var(--seq5);color:#fff}.heat .h6{background:var(--seq6);color:#fff}.heat-wrap{overflow-x:auto}.ranks{counter-reset:r;display:grid;gap:0}.rank{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:13.5px}.rank:last-child{border-bottom:0}.rank:before{counter-increment:r;content:counter(r);font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.rank .t{display:grid}.rank .t .sub{font-size:12px;color:var(--muted)}.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-variant-numeric:tabular-nums}.alert{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:8px}.alert.warn{background:var(--warn-soft);color:var(--ink)}.alert.crit{background:var(--crit-soft);color:var(--ink)}.alert b{display:block}.alert .ic{font-weight:800;flex:none;width:18px;text-align:center}.alert.warn .ic{color:var(--warn)}.alert.crit .ic{color:var(--crit)}.defs{margin-top:22px;border-top:1px solid var(--line);padding-top:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px 22px;font-size:13px;color:var(--muted)}.defs b{color:var(--ink);display:block;margin-bottom:2px}.note{font-size:13px;color:var(--muted);background:var(--soft);padding:10px 12px;border-radius:8px;margin-top:12px}.list{display:grid;gap:0}.list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px}.list>div:last-child{border-bottom:0}.list>div>span:first-child{min-width:0}.list .sub{white-space:nowrap}.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}button.tiny{font-size:12px;padding:4px 9px;border-radius:7px}.card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.card-head p{font-size:13px;color:var(--muted);margin:0}.grid{display:grid;gap:14px;margin-bottom:14px}.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:1fr 1fr 1fr}.g21{grid-template-columns:2fr 1fr}.g12{grid-template-columns:1fr 2fr}@media (max-width:900px){.g2,.g3,.g21,.g12{grid-template-columns:1fr}}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:6px 10px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl th.r,.tbl td.r{text-align:right;font-variant-numeric:tabular-nums}.tbl td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl td.wide{min-width:240px}.tbl td .title{font-weight:600}.tbl a.plain{color:inherit;text-decoration:none}.tbl a.plain:hover .title{text-decoration:underline}.tbl td .sub{font-size:12px;color:var(--muted)}.seg2{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--surface)}.seg2 button{border:0;border-radius:0;background:transparent;color:var(--muted);font-weight:500;padding:7px 12px}.seg2 button.on{background:var(--soft);color:var(--ink);font-weight:600}.subtabs{display:flex;gap:2px;margin:0 0 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.subtabs a{padding:8px 12px;font-size:13.5px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.subtabs a:hover{color:var(--ink)}.subtabs a.active{color:var(--ink);font-weight:600;border-bottom-color:var(--accent)}.tr-root .lc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tr-root .lc{display:inline-flex;align-items:center;gap:7px;padding:6px 10px 6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;text-align:left}.tr-root .lc .code{font:600 11px/1 ui-monospace,Menlo,monospace;letter-spacing:.04em;color:var(--muted);text-transform:uppercase}.tr-root .lc .st{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.tr-root .lc .st i{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.tr-root .lc.none{cursor:pointer}.tr-root .lc.none:hover{border-color:var(--muted)}.tr-root .lc.none:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tr-root .lc.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.tr-root .lc.selected .st{color:var(--accent)}.tr-root .lc.source{background:var(--ink);color:var(--bg);border-color:var(--ink)}.tr-root .lc.source .code,.tr-root .lc.source .st{color:var(--bg);opacity:.85}.tr-root .lc.ready{border-color:var(--good)}.tr-root .lc.ready .st{color:var(--good)}.tr-root .lc.stale{border-color:var(--warn)}.tr-root .lc.stale .st{color:var(--warn)}.tr-root .lc.generating{border-style:dashed}.tr-root .lc.generating .st{color:var(--accent)}.tr-root .lc.generating .st i{animation:lc-pulse 1s ease-in-out infinite}@keyframes lc-pulse{50%{opacity:.25}}@media (prefers-reduced-motion: reduce){.tr-root .lc.generating .st i{animation:none}}.tr-root .lc.textonly .st{color:var(--muted)}.tr-root .lc .act{font-size:12px;font-weight:600;color:var(--accent);text-decoration:none;border:0;border-radius:0;background:transparent;padding:0 0 0 6px;margin:0;border-left:1px solid var(--line);cursor:pointer}.tr-root .lc .act:disabled{opacity:.5;cursor:default}.tr-root .lc-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.tr-root .lc-bar .lc-sp{flex:1}.tr-root .lc-legend{display:flex;gap:10px 18px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:12px}.tr-root .lc-legend i{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:1px;background:currentColor}.tr-root .lc-legend i.hollow{background:transparent;border:1px solid currentColor}.tr-root .lc-legend .src i{background:var(--ink)}.tr-root .lc-legend .good{color:var(--good)}.tr-root .lc-legend .warn{color:var(--warn)}.tr-root .lc-legend .acc{color:var(--accent)}.tr-root .tr-facts{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:13px;color:var(--muted);align-items:center}.tr-root .tr-facts i{width:7px;height:7px;border-radius:50%;background:var(--muted);display:inline-block;margin-right:5px;vertical-align:1px}.tr-root .tr-facts .ok i{background:var(--good)}.tr-root .tr-version{margin:6px 0 0;font-size:13px}.tr-root .tr-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;margin-top:8px}@media (max-width:900px){.tr-root .tr-content-grid{grid-template-columns:1fr}}.tr-root .tr-content-grid textarea{width:100%;font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);resize:vertical;min-height:64px;line-height:1.4}.tr-root .tr-group{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:8px 0 4px;font-weight:600}.tr-root .tr-hint-inline{font-weight:400;color:var(--muted)}.tr-root .tr-link{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start;margin-top:6px}.tr-root .tr-url{display:block;font:12px/1.4 ui-monospace,Menlo,monospace;color:var(--ink);word-break:break-all;background:var(--soft);padding:6px 8px;border-radius:6px}.tr-root .tr-btn-link{display:inline-block;text-decoration:none;padding:6px 12px;border:1px solid var(--line);border-radius:9px;color:var(--ink);font-size:13px;background:var(--surface)}.tr-root .tr-fold-head{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;flex-wrap:wrap}.tr-root .tr-fold-head:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.tr-root .tr-fold-title{display:flex;align-items:center;gap:10px}.tr-root .tr-caret{transition:transform .15s;display:inline-block;color:var(--muted);font-size:12px}.tr-root .tr-fold.open .tr-caret{transform:rotate(90deg)}.tr-root .tr-chips{display:flex;gap:6px;flex-wrap:wrap}.tr-root .tr-chips .chip{margin-left:0;text-transform:none;letter-spacing:0;font-size:12px;padding:3px 9px}.tr-root .tr-chips .chip b{color:var(--ink);font-weight:600}.tr-root .tr-fold-body{display:none;margin-top:14px}.tr-root .tr-fold.open .tr-fold-body{display:block}.tr-root .tr-owner{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted)}@media (prefers-reduced-motion: reduce){.tr-root .tr-caret{transition:none}}.tr-root .tr-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 12px}.tr-root .tr-toolbar input[type=search]{width:220px;max-width:100%;font-size:13px;padding:6px 10px}.tr-root .tr-toolbar select{font-size:13px;padding:6px 10px}.tr-root .tr-toolbar .tr-sp{flex:1}.tr-root .tr-seg{display:inline-flex;gap:4px}.tr-root .tr-seg button{padding:5px 10px;font-size:13px}.tr-root .tr-seg button.on{border-color:var(--ink);font-weight:600}.tr-root .tr-rows{display:flex;flex-direction:column}.tr-root .tr-lrow{display:grid;grid-template-columns:132px minmax(0,1fr) minmax(0,236px);gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.tr-root .tr-lrow:first-child{border-top:0}@media (max-width:760px){.tr-root .tr-lrow{grid-template-columns:1fr}}.tr-root .tr-thumbs2{display:grid;grid-template-columns:1fr 1fr;gap:3px;width:132px}.tr-root .tr-thumbs2 img,.tr-root .tr-thumbs2 i{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;border-radius:4px;border:1px solid var(--line);background:var(--soft)}.tr-root .tr-thumbs2.draft i{border-style:dashed}.tr-root .tr-t1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.tr-root .tr-t1{flex-wrap:nowrap}.tr-root .tr-t1 .tr-code{flex:none;white-space:nowrap}.tr-root .tr-t1 b{font-size:15px;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-root .tr-t1b{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.tr-root .tr-t1b .chip{margin-left:0}.tr-root .chip.run{background:var(--accent-soft);color:var(--accent);text-transform:none;letter-spacing:0}.tr-root .chip.err{background:#fee2e2;color:#b91c1c}.tr-root .tr-t2{font-size:12px;color:var(--muted);margin-top:3px;display:flex;gap:6px 10px;flex-wrap:wrap}.tr-root .tr-langs{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px;align-items:center}.tr-root .lang{font:600 11px/1 ui-monospace,Menlo,monospace;letter-spacing:.04em;text-transform:uppercase;padding:4px 7px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none}.tr-root .lang:hover{border-color:var(--muted)}.tr-root .lang.src{background:var(--ink);color:var(--bg);border-color:var(--ink)}.tr-root .lang.stale{border-color:#f59e0b}.tr-root .lang.generating{border-style:dashed;color:var(--accent)}.tr-root .lang.add{border-style:dashed;color:var(--muted);text-transform:none;letter-spacing:0;font-family:inherit;font-weight:500}.tr-root .tr-row-acts{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.tr-root .tr-row-acts button{padding:6px 12px;font-size:13px}.tr-root .tr-pop{position:relative;display:inline-block}.tr-root .tr-pop-body{position:absolute;right:0;top:38px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #1014181f;padding:6px;z-index:6;display:block}.tr-root .tr-menu{min-width:220px}.tr-root .tr-menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.tr-root .tr-menu button{display:block;width:100%;text-align:left;border:0;border-radius:7px;padding:7px 10px;background:transparent;font-weight:500}.tr-root .tr-menu button:hover:not(:disabled){background:var(--soft)}.tr-root .tr-menu button.danger{color:#b91c1c}.tr-root .tr-qr-pop{width:224px;padding:10px;display:grid;gap:8px}.tr-root .tr-qr-pop .tr-qr{width:200px;height:200px}.tr-root .tr-qr-pop .tr-url{font-size:11px}@media (max-width:1100px){.tr-root .tr-lrow{grid-template-columns:132px minmax(0,1fr)}.tr-root .tr-row-acts{grid-column:2;justify-content:flex-start}}.tr-root .tr-ambience-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.tr-root .tr-ambience-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tr-root .tr-ambience-row select{flex:0 1 180px}.tr-root .tr-ambience-row input[type=range]{flex:1 1 120px;min-width:100px}.tr-root .tr-ambience-pct{font-size:12px;min-width:36px}
