:root{--bg:#070b10;--panel:#0c131a;--panel-2:#101923;--line:#1c2b38;--line-2:#27404f;--ink:#dbe7f0;--ink-2:#93a9b9;--ink-3:#5f7687;--cyan:#5ef2ff;--ok:#3ddc97;--warn:#ffc21a;--crit:#ff4d6d;--pink:#f49ab7;--mono:"JetBrains Mono", "Cascadia Mono", Consolas, "SFMono-Regular", monospace;--sans:"Inter", "Segoe UI", "Yu Gothic UI", "Hiragino Sans", "Meiryo", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--ink);font-family:var(--sans);margin:0;overflow:hidden}button{font-family:inherit}.app{grid-template-rows:50px minmax(0,1fr) clamp(170px,22vh,230px);gap:8px;height:100vh;padding:8px;display:grid}.topbar{border:1px solid var(--line);background:linear-gradient(90deg,#0d1822,#0a1016 60%);border-radius:8px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.brand{align-items:center;gap:12px;display:flex}.logo{border:1px solid var(--line-2);background:#0b1118;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}h1{font-family:var(--mono);letter-spacing:.14em;color:#eef6fb;margin:0;font-size:17px}.subtitle{color:var(--ink-2);letter-spacing:.08em;font-size:11px}.topbar-meta{gap:8px;display:flex}.chip{font-family:var(--mono);letter-spacing:.08em;border:1px solid var(--line-2);color:var(--ink-2);border-radius:4px;padding:4px 8px;font-size:10.5px}.chip-live{color:var(--crit);border-color:#ff4d6d80;animation:1.6s infinite blink}.home-link{font-family:var(--mono);letter-spacing:.1em;white-space:nowrap;color:var(--ink-3);border:1px dashed var(--line-2);border-radius:4px;flex-shrink:0;align-items:center;gap:6px;margin-left:14px;padding:4px 9px;font-size:10.5px;text-decoration:none;transition:color .15s,border-color .15s,box-shadow .15s;display:inline-flex}.home-link-arrow{transition:transform .15s}.home-link:hover,.home-link:focus-visible{color:var(--cyan);border-style:solid;border-color:#5ef2ff99;outline:none;box-shadow:0 0 10px #5ef2ff2e}.home-link:hover .home-link-arrow,.home-link:focus-visible .home-link-arrow{transform:translate(-3px)}.main{grid-template-columns:minmax(0,65fr) minmax(330px,35fr);gap:8px;min-height:0;display:grid}.viewport{border:1px solid var(--line);background:#05080c;border-radius:8px;min-height:0;position:relative;overflow:hidden}.viewport canvas{display:block}.hud{pointer-events:none;font-family:var(--mono);position:absolute;inset:0}.hud-corner{border:0 solid #5ef2ff8c;width:26px;height:26px;position:absolute}.hud-corner.tl{border-top-width:2px;border-left-width:2px;top:10px;left:10px}.hud-corner.tr{border-top-width:2px;border-right-width:2px;top:10px;right:10px}.hud-corner.bl{border-bottom-width:2px;border-left-width:2px;bottom:10px;left:10px}.hud-corner.br{border-bottom-width:2px;border-right-width:2px;bottom:10px;right:10px}.hud-topleft{flex-direction:column;gap:3px;display:flex;position:absolute;top:18px;left:22px}.hud-cam{letter-spacing:.1em;color:#cfe9f3;align-items:center;gap:6px;font-size:11.5px;display:flex}.rec-dot{background:var(--crit);width:8px;height:8px;box-shadow:0 0 8px var(--crit);border-radius:50%;animation:1s steps(2,end) infinite blink}.hud-small{color:var(--ink-2);letter-spacing:.04em;font-size:10.5px}.hud-test{color:var(--warn);letter-spacing:.1em;margin-top:4px;font-size:12px}.hud-topright{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;top:16px;right:22px}.hud-wind{color:#eaf8ff;text-shadow:0 0 18px #5ef2ff59;font-variant-numeric:tabular-nums;font-size:34px;font-weight:700;line-height:1}.hud-wind span{color:var(--ink-2);margin-left:4px;font-size:13px}.flutter-badge{letter-spacing:.1em;color:#ffd0e2;background:#e04d8829;border:1px solid #e04d88b3;border-radius:3px;padding:3px 8px;font-size:11px;animation:90ms infinite shake}.flutter-badge.eye{color:#ffe7a6;background:#ffc21a24;border-color:#ffc21ab3;animation:none}.status-banner{text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#060c12b8;border:1px solid;border-radius:4px;max-width:52%;padding:7px 22px 6px;animation:.35s ease-out bannerIn;position:absolute;top:16px;left:50%;transform:translate(-50%)}.status-code{letter-spacing:.12em;font-size:17px;font-weight:700}.status-ja{font-family:var(--sans);letter-spacing:.2em;opacity:.8;font-size:11px}.lvl-0{color:#9ff5cd;border-color:#3ddc9799}.lvl-1{color:#ffe08a;border-color:#ffc21ab3}.lvl-2{color:#ffc39a;border-color:#ff8a3cd9;box-shadow:0 0 22px #ff782833}.lvl-3{color:#ffd2da;background:#3c0610bf;border-color:#ff4d6df2;animation:.35s ease-out bannerIn,1s infinite pulse;box-shadow:0 0 26px #ff3c5a59}.caption{max-width:78%;font-family:var(--sans);color:#f4f8fb;border-left:3px solid var(--cyan);text-shadow:0 1px 2px #000;background:#04080cc7;border-radius:3px;align-items:center;gap:12px;padding:9px 18px;font-size:17px;font-weight:600;animation:.4s ease-out captionIn;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.caption-tag{font-family:var(--mono);letter-spacing:.1em;color:var(--cyan);white-space:nowrap;border:1px solid;border-radius:2px;padding:2px 6px;font-size:10px}.caption.tone-warn{border-left-color:var(--warn)}.caption.tone-warn .caption-tag{color:var(--warn)}.caption.tone-crit{border-left-color:var(--crit)}.caption.tone-crit .caption-tag{color:var(--crit)}.caption.tone-done{border-left-color:var(--ok)}.caption.tone-done .caption-tag{color:var(--ok)}.paused{text-align:center;letter-spacing:.3em;color:#ffffffd9;text-shadow:0 0 20px #000000e6;font-size:40px;font-weight:700;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.paused small{font-family:var(--sans);letter-spacing:.1em;font-size:13px;font-weight:500;display:block}.complete{text-align:center;background:#040a0edb;border:1px solid #5ef2ff80;border-radius:6px;min-width:440px;padding:16px 28px;animation:.6s ease-out captionIn;position:absolute;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 0 40px #5ef2ff26}.complete-title{letter-spacing:.24em;color:#eafcff;margin-bottom:8px;font-size:30px;font-weight:800}.complete-line{letter-spacing:.1em;margin:4px 0;font-size:16px}.complete-line.ok{color:var(--ok)}.complete-line.ng{color:var(--crit)}.complete-line.ng.show{animation:1.2s infinite blink}.complete-note{font-family:var(--sans);color:var(--ink-2);margin-top:8px;font-size:12px}.flutter-badge.limit{color:#fff0f3;background:#ff4d6d38;border-color:#ff4d6de6;font-weight:700}.replay-badge{letter-spacing:.2em;color:#ff5c7a;margin-top:16px;font-size:12px;animation:1s steps(2,end) infinite blink;position:absolute;top:70px;left:50%;transform:translate(-50%)}.slowmo-badge{letter-spacing:.2em;color:#ffe08a;border:1px solid #ffe08a99;border-radius:3px;padding:3px 8px;font-size:11px;position:absolute;top:calc(58% - 34px);right:24px}.max-moment{text-align:right;background:#28040cb8;border-right:3px solid #ff4d6d;padding:12px 34px 14px;animation:.25s ease-out maxIn;position:absolute;top:58%;right:26px;box-shadow:0 0 60px #ff3c5a59}.max-title{letter-spacing:.28em;color:#ffd2da;font-size:22px;font-weight:800}.max-value{color:#fff;text-shadow:0 0 24px #ff506ecc;font-variant-numeric:tabular-nums;font-size:56px;font-weight:800;line-height:1.05}.max-value span{color:#ffb3c2;margin-left:8px;font-size:22px}.max-sub{letter-spacing:.12em;color:#ffc7d2;font-size:12px;font-style:italic}@keyframes maxIn{0%{opacity:.3;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.complete .step{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(4px)}.complete .step.show{opacity:1;transform:none}.complete-line.warn{color:#ffe08a}.complete-note.step.show{color:var(--ink-2);font-family:var(--mono);letter-spacing:.08em;font-style:italic}.replay-btn{pointer-events:auto;font-family:var(--mono);letter-spacing:.12em;color:#ffd2da;cursor:pointer;background:#ff4d6d24;border:1px solid #ff4d6db3;border-radius:4px;margin-top:10px;padding:7px 16px;font-size:12px;font-weight:700}.replay-btn:hover{background:#ff4d6d4d}.hud-subject{letter-spacing:.1em;color:var(--ink-2);margin-top:3px;font-size:11px}.hud-subject.testing{color:#9ff5cd}.hud-subject.refused{color:#ffadbd}.flutter-badge.moist{color:#d4f2ff;background:#6fd0ff21;border-color:#6fd0ffb3;animation:none}.tag-left{transform:translate(calc(-100% - 14px),-50%)}.tag-left:before{left:auto;right:-14px}.flash{opacity:0;pointer-events:none;background:#fff;animation:.9s ease-out flash;position:absolute;inset:0}@keyframes flash{0%{opacity:.85}to{opacity:0}}.portrait-frame{aspect-ratio:.82;width:min(34%,360px);position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}.portrait-frame .pc{border:0 solid #ffffffd9;width:34px;height:34px;position:absolute}.pc.tl{border-top-width:2px;border-left-width:2px;top:0;left:0}.pc.tr{border-top-width:2px;border-right-width:2px;top:0;right:0}.pc.bl{border-bottom-width:2px;border-left-width:2px;bottom:0;left:0}.pc.br{border-bottom-width:2px;border-right-width:2px;bottom:0;right:0}.portrait-label{letter-spacing:.18em;color:#fff;white-space:nowrap;font-size:11px;position:absolute;bottom:-20px;left:0}.portrait-date{letter-spacing:.08em;color:#ffffffa6;white-space:nowrap;font-size:9.5px;position:absolute;bottom:-34px;left:0}.before-after{border:1px solid var(--line-2);background:#040a0ed9;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;animation:.6s ease-out captionIn;display:flex;position:absolute;bottom:22px;left:22px}.ba-col{flex-direction:column;align-items:center;min-width:78px;display:flex}.ba-head{letter-spacing:.2em;color:var(--ok);font-size:10px}.ba-col.after .ba-head{color:var(--crit)}.ba-row{font-family:var(--sans);color:var(--ink-2);font-size:10.5px}.ba-row b{color:var(--ink)}.ba-col.after .ba-row b{color:#ffb3c2}.ba-arrow{color:var(--ink-3);font-size:18px}.complete.side{min-width:0;padding:12px 16px;animation:none;inset:50% 22px auto auto;transform:translateY(-50%)}.complete.side .complete-title{font-size:18px}.complete.side .complete-line{font-size:11.5px}.report{background:linear-gradient(180deg, #0e1821, var(--panel));border-color:#5ef2ff73;flex-direction:column;gap:6px;animation:.5s ease-out logIn;display:flex}.report-head{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:flex-start;padding-bottom:6px;display:flex}.report-title{font-family:var(--mono);letter-spacing:.2em;color:#eaf8ff;font-size:15px;font-weight:800}.report-sub{color:var(--ink-3);letter-spacing:.06em;font-size:10px}.report-stamp{font-family:var(--mono);letter-spacing:.16em;color:#ff6f8a;border:2px solid #ff6f8a;padding:2px 6px;font-size:10px;font-weight:700;transform:rotate(-6deg)}.report-rows{flex-direction:column;margin:0;display:flex}.report-row{font-family:var(--mono);border-bottom:1px dashed #27404fb3;justify-content:space-between;gap:12px;padding:4px 0;font-size:11.5px;animation:.4s ease-out both reportRow;display:flex}.report-row dt{color:var(--ink-2);letter-spacing:.06em}.report-row dd{text-align:right;margin:0;font-weight:700}.rv-ok{color:var(--ok)}.rv-warn{color:#ffe08a}.rv-crit{color:#ff9db0}.rv-neutral{color:var(--ink)}.report-foot{font-family:var(--mono);color:var(--ink-3);text-align:right;margin-top:2px;font-size:10.5px;font-style:italic;animation:.6s ease-out 2.2s both reportRow}@keyframes reportRow{0%{opacity:.001;transform:translate(-4px)}to{opacity:1;transform:none}}.safety{letter-spacing:.1em;text-align:right;color:#ffc21abf;font-size:9.5px;line-height:1.35;position:absolute;bottom:16px;right:22px}.inset-frame{border:1px solid #5ef2ff8c;position:absolute;box-shadow:0 0 0 1px #0009,0 6px 20px #00000080}.inset-frame span{letter-spacing:.08em;color:var(--cyan);white-space:nowrap;margin-bottom:3px;font-size:9.5px;position:absolute;bottom:100%;left:0}.tag-anchor{opacity:0;will-change:transform;transition:opacity .2s;position:absolute;top:0;left:0}.tag{font-family:var(--mono);letter-spacing:.06em;white-space:nowrap;color:#bff9dd;-webkit-user-select:none;user-select:none;background:#030e0ab3;border:1px solid #3dff9a8c;border-radius:2px;padding:2px 6px;font-size:10px;position:relative;transform:translate(14px,-50%)}.tag:before{content:"";background:#3dff9ab3;width:14px;height:1px;position:absolute;top:50%;left:-14px}.tag-up{transform:translate(14px,-130%)}.tag-down{transform:translate(14px,40%)}.tag[data-alert="1"]{color:#ffd0e2;background:#1e040ebf;border-color:#e04d88cc}.panel{scrollbar-width:thin;flex-direction:column;gap:8px;min-height:0;display:flex;overflow-y:auto}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:9px 12px}.card-title{font-family:var(--mono);letter-spacing:.14em;color:var(--cyan);justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:10.5px;display:flex}.card-title-ja{font-family:var(--sans);color:var(--ink-3);letter-spacing:.1em;font-size:10px}.wind-readout{font-family:var(--mono);align-items:baseline;gap:8px;display:flex}.wind-num{font-variant-numeric:tabular-nums;color:#f3fbff;font-size:36px;font-weight:700;line-height:1}.wind-unit{color:var(--ink-2);font-size:11px}.wind-actual{color:var(--ink-2);margin-left:auto;font-size:11px}.wind-actual b{color:var(--ink);font-variant-numeric:tabular-nums}.slider{appearance:none;cursor:pointer;width:100%;height:8px;-webkit-mask:linear-gradient(90deg, #000 var(--p), #00000047 var(--p));mask:linear-gradient(90deg, #000 var(--p), #00000047 var(--p));background:linear-gradient(90deg,#15a6c2 0%,#ffc21a 45%,#ff4d6d 80%,#a01446 100%);border-radius:4px;outline:none;margin:10px 0 2px}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;box-shadow:0 0 0 1px var(--cyan);background:#eef6fb;border:2px solid #0b1118;border-radius:3px}.slider::-moz-range-thumb{background:#eef6fb;border:2px solid #0b1118;border-radius:3px;width:16px;height:16px}.slider-ticks{font-family:var(--mono);color:var(--ink-3);justify-content:space-between;font-size:9.5px;display:flex}.presets{grid-template-columns:repeat(7,1fr);gap:4px;margin-top:8px;display:grid}.preset{background:var(--panel-2);border:1px solid var(--line-2);color:var(--ink);cursor:pointer;border-radius:4px;flex-direction:column;align-items:center;gap:1px;padding:5px 0 4px;transition:background .15s,border-color .15s;display:flex}.preset:hover{border-color:var(--cyan)}.preset.active{border-color:var(--cyan);background:#5ef2ff24}.preset-ja{white-space:nowrap;font-size:11px;font-weight:600}.preset-v{font-family:var(--mono);color:var(--ink-2);font-size:9.5px}.preset.forbidden{background:repeating-linear-gradient(135deg,#ff4d6d1f 0 6px,#0000 6px 12px);border-color:#ff4d6d8c}.preset.forbidden .preset-ja{color:#ffb3c2}.preset.forbidden.active{background:#ff4d6d4d}.test-buttons{grid-template-columns:1.4fr 1fr 1fr;gap:6px;display:grid}.test-buttons.with-replay .btn-replay{grid-column:1/-1}.btn-replay{color:#ffd2da;background:#ff4d6d1f;border-color:#ff4d6db3}.btn{font-family:var(--mono);letter-spacing:.08em;border:1px solid var(--line-2);background:var(--panel-2);color:var(--ink);cursor:pointer;border-radius:4px;padding:9px 0;font-size:12px;font-weight:700}.btn:hover:not(:disabled){filter:brightness(1.25)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-start{color:#dfffee;background:linear-gradient(#0f6b4a,#0b4a34);border-color:#2bd18f}.btn-pause.on{border-color:var(--warn);color:var(--warn)}.btn-reset{border-color:#6d7f8e}.test-progress{border:1px solid var(--line);background:#081017;border-radius:3px;height:18px;margin-top:7px;position:relative;overflow:hidden}.test-progress-fill{background:linear-gradient(90deg,#15a6c259,#ff4d6d73);transition:width .1s linear;position:absolute;inset:0 auto 0 0}.test-progress-label{text-align:center;font-family:var(--mono);letter-spacing:.12em;color:var(--ink);font-size:10px;line-height:16px;display:block;position:relative}.dignity{padding:10px 12px}.dignity-head{justify-content:space-between;align-items:center;display:flex}.dignity-title{font-family:var(--mono);letter-spacing:.16em;font-size:13px;font-weight:700}.dignity-ja{color:var(--ink-2);letter-spacing:.3em;font-size:11px}.dignity-state{font-family:var(--mono);letter-spacing:.16em;border:1px solid;border-radius:2px;margin-top:3px;padding:2px 6px;font-size:10.5px;font-weight:700;display:inline-block}.dignity-ok .dignity-state{color:var(--ok)}.dignity-warn .dignity-state{color:var(--warn)}.dignity-crit .dignity-state,.dignity-lost .dignity-state{color:var(--crit)}.dignity-num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:44px;font-weight:800;line-height:1}.dignity-num span{margin-left:2px;font-size:15px}.dignity-bar{grid-template-columns:repeat(25,1fr);gap:2px;margin:8px 0 5px;display:grid}.dseg{background:#16212b;border-radius:1px;height:12px}.dignity-ok .dseg.on{background:var(--ok)}.dignity-warn .dseg.on{background:var(--warn)}.dignity-crit .dseg.on{background:var(--crit)}.dignity-ok .dignity-num{color:#bff7dc}.dignity-warn .dignity-num{color:#ffe08a}.dignity-crit{border-color:#ff4d6d99;box-shadow:inset 0 0 30px #ff4d6d1f}.dignity-crit .dignity-num{color:#ff9db0;animation:1s infinite blink}.dignity-warn{border-color:#ffc21a8c}.dignity-lost{background:repeating-linear-gradient(0deg, #ff4d6d0d 0 2px, transparent 2px 4px), var(--panel);border-color:#ff4d6de6;box-shadow:inset 0 0 40px #ff4d6d40,0 0 20px #ff4d6d33}.dignity-lost .dignity-num{color:#ff6f8a;animation:.6s steps(2,end) infinite glitch}.dignity-lost .dignity-state{animation:.8s steps(2,end) infinite blink}@keyframes glitch{0%{opacity:1;transform:translate(0)}33%{opacity:.6;transform:translate(-2px,1px)}66%{opacity:.9;transform:translate(2px,-1px)}}.dignity-note{color:var(--ink-2);font-size:11px}.metrics{grid-template-columns:1fr 1fr;gap:7px 16px;display:grid}.metrics .card-title{grid-column:1/-1;margin-bottom:0}.metric-head{justify-content:space-between;align-items:baseline;display:flex}.metric-label{font-family:var(--mono);color:var(--ink);letter-spacing:.04em;font-size:11px}.metric-ja{font-family:var(--sans);color:var(--ink-3);margin-left:6px;font-size:10px}.metric-value{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.metric-unit{color:var(--ink-2);margin-left:3px;font-size:10px;font-weight:400}.v-ok{color:#d9f7ea}.v-warn{color:#ffe08a}.v-crit{color:#ffadbd}.bar{background:#16212b;border-radius:2px;height:4px;margin-top:2px;overflow:hidden}.bar-fill{border-radius:2px;height:100%;transition:width .1s linear}.b-ok{background:var(--ok)}.b-warn{background:var(--warn)}.b-crit{background:var(--crit)}.metric-sub{font-family:var(--mono);color:var(--ink-3);letter-spacing:.05em;margin-top:1px;font-size:9.5px}.metric-danger .metric-sub{color:#ff9dc0}.bottom{grid-template-columns:minmax(0,62fr) minmax(0,38fr);gap:8px;min-height:0;display:grid}.graph-card{flex-direction:column;min-height:0;padding-bottom:6px;display:flex}.graph-wrap{flex:1;min-height:0;position:relative}.graph-wrap canvas{cursor:crosshair;position:absolute;inset:0}.graph-tip{min-width:158px;font-family:var(--mono);border:1px solid var(--line-2);pointer-events:none;color:var(--ink-2);background:#060c12f0;border-radius:4px;padding:6px 9px;font-size:10.5px;line-height:1.55;position:absolute;top:4px}.graph-tip b{color:var(--ink)}.graph-tip i{vertical-align:middle;width:8px;height:3px;margin-right:6px;display:inline-block}.graph-tip-t{color:var(--ink)}.log{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;min-height:0;padding:9px 12px;display:flex}.log-list{scrollbar-width:thin;flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.log-line{color:var(--ink-2);border-bottom:1px dashed #27404f80;gap:10px;padding:2px 0;font-size:12px;line-height:1.5;display:flex}.log-line:first-child{color:var(--ink);animation:.35s ease-out captionIn}.log-stamp{font-family:var(--mono);color:var(--ink-3);white-space:nowrap;padding-top:2px;font-size:10px}.log-line.tone-warn .log-stamp{color:#c79a18}.log-line.tone-crit .log-stamp{color:#d23d5b}.log-line.tone-done .log-stamp{color:#2fae78}@keyframes blink{50%{opacity:.35}}@keyframes pulse{50%{box-shadow:0 0 40px #ff3c5a99}}@keyframes shake{0%{transform:translate(0)}50%{transform:translate(1px,-1px)}to{transform:translate(-1px,1px)}}@keyframes bannerIn{0%{opacity:.35;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@keyframes captionIn{0%{opacity:.35;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.log-line:first-child{animation-name:logIn}@keyframes logIn{0%{opacity:0}to{opacity:1}}@media (width<=1100px){html,body,#root{overflow:auto}.app{grid-template-rows:auto auto auto;height:auto;min-height:100vh}.main{grid-template-columns:1fr}.viewport{height:62vh}.bottom{grid-template-columns:1fr;height:auto}.graph-card,.log{height:200px}.topbar-meta{display:none}.topbar{flex-wrap:wrap;gap:6px 12px;padding:7px 12px}.home-link{margin-left:auto}}
