:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{color:var(--ink);background:var(--app-bg);--app-bg: light-dark(#f7f9fb, #10161d);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--glass-blur: 28px;--glass-saturate: 190%;--glass-filter: blur(var(--glass-blur)) saturate(var(--glass-saturate));--glass-bg: light-dark(rgba(255, 255, 255, .26), rgba(16, 24, 33, .4));--glass-bg-strong: light-dark(rgba(255, 255, 255, .4), rgba(16, 24, 33, .58));--glass-bg-soft: light-dark(rgba(255, 255, 255, .18), rgba(16, 24, 33, .3));--glass-bg-hover: light-dark(rgba(255, 255, 255, .36), rgba(42, 56, 70, .48));--glass-border: light-dark(rgba(255, 255, 255, .62), rgba(255, 255, 255, .16));--glass-border-soft: light-dark(rgba(255, 255, 255, .45), rgba(255, 255, 255, .1));--glass-highlight: inset 0 1px 0 light-dark(rgba(255, 255, 255, .7), rgba(255, 255, 255, .12));--glass-shadow: 0 16px 40px light-dark(rgba(20, 32, 43, .18), rgba(0, 0, 0, .5)), var(--glass-highlight);--glass-shadow-lg: 0 24px 60px light-dark(rgba(20, 32, 43, .26), rgba(0, 0, 0, .62)), var(--glass-highlight);--glass-scrim: light-dark(rgba(23, 32, 42, .34), rgba(5, 9, 14, .55));--glass-scrim-filter: blur(10px) saturate(120%);--note-bg: light-dark(rgba(248, 246, 222, .82), rgba(56, 52, 26, .82));--note-bg-strong: light-dark(rgba(249, 247, 228, .9), rgba(64, 60, 32, .92));--note-border: light-dark(rgba(198, 188, 118, .85), rgba(214, 203, 114, .45));--note-border-soft: light-dark(rgba(198, 188, 118, .5), rgba(214, 203, 114, .26));--note-tint: light-dark(rgba(214, 203, 114, .16), rgba(214, 203, 114, .12));--note-tint-strong: light-dark(rgba(214, 203, 114, .28), rgba(214, 203, 114, .2));--note-accent: light-dark(#837715, #cfc25a);--note-ink: light-dark(#5c561f, #d8cf8a);--note-ink-strong: light-dark(#3f3b14, #eae2a6);--note-badge: light-dark(#d9cb6a, #8a7f2e);--note-badge-ink: light-dark(#59521a, #f0e8a4);--ink-strong: light-dark(#17202a, #edf3f8);--ink: light-dark(#2b3742, #d3dde6);--ink-soft: light-dark(#51606f, #9caebc);--accent: light-dark(#0a6f98, #4fb3d6);--accent-strong: light-dark(#0084b8, #2aa9dc);--motion-fast: .14s;--motion-base: .22s;--motion-slow: .32s;--motion-exit: .15s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1)}@media(prefers-reduced-motion:reduce){:root{--motion-fast: 0ms;--motion-base: 0ms;--motion-slow: 0ms;--motion-exit: 0ms}}::view-transition-old(root),::view-transition-new(root){animation-duration:.56s;animation-timing-function:cubic-bezier(.4,0,.2,1)}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}*{box-sizing:border-box}html,body,#root{width:100%;height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none}body{margin:0;min-width:320px}button,input,textarea,a{font:inherit}button{border:0;-moz-appearance:none;appearance:none;-webkit-appearance:none}.auth-shell{display:grid;place-items:center;width:100vw;width:100dvw;height:100vh;height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));overflow:auto;background:radial-gradient(620px 460px at 16% 20%,#00bff26b,#00bff200 60%),radial-gradient(680px 520px at 86% 14%,light-dark(rgba(0,132,184,.36),rgba(42,169,220,.35)),rgba(0,132,184,0) 62%),radial-gradient(760px 620px at 80% 92%,light-dark(rgba(63,116,168,.32),rgba(127,161,196,.3)),rgba(63,116,168,0) 60%),radial-gradient(700px 520px at 20% 96%,#00bff242,#00bff200 62%),linear-gradient(180deg,light-dark(#eef7fc,#16222c) 0%,light-dark(#e1ecf4,#243040) 100%)}.auth-stage{display:grid;gap:18px;width:min(440px,100%)}.auth-brand{display:flex;align-items:center;justify-content:center;gap:12px}.auth-brand img{height:30px;width:auto}.auth-brand-divider{width:1px;height:22px;background:light-dark(#bfd6e1,#35505e)}.auth-brand-product{color:light-dark(#142733,#dbe7f0);font-size:1.05rem;font-weight:700;letter-spacing:.01em}.auth-card{display:grid;gap:18px;padding:26px 26px 24px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg),0 18px 44px light-dark(rgba(0,90,130,.1),rgba(0,0,0,.3));backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.auth-eyebrow{color:light-dark(#00759f,#55bde2);font-size:.78rem;font-weight:640;letter-spacing:.08em;text-transform:uppercase}.auth-card h1{margin:4px 0 0;color:light-dark(#142733,#dbe7f0);font-size:1.6rem;line-height:1.15}.auth-tagline{margin:8px 0 0;color:light-dark(#4d6675,#a3b8c6);font-size:.93rem;line-height:1.5}.auth-form{display:grid;gap:14px}.auth-form h2{margin:0;color:light-dark(#142733,#dbe7f0);font-size:1.05rem}.auth-form label{display:grid;gap:6px;color:light-dark(#38505e,#a3bcc9);font-size:.82rem;font-weight:660}.auth-form input{padding:10px 12px;border:1px solid rgba(120,156,178,.42);border-radius:9px;color:light-dark(#142733,#dbe7f0);font-size:.95rem;background:light-dark(rgba(255,255,255,.5),rgba(26,35,46,.5))}.auth-form input::placeholder{color:light-dark(#aab8c2,#66788a);font-weight:400;opacity:1}.auth-form label.auth-checkbox{display:flex;flex-direction:row;align-items:center;gap:8px;color:light-dark(#4d6675,#a3b8c6);font-weight:600;cursor:pointer}.auth-form label.auth-checkbox input{width:16px;height:16px;padding:0;accent-color:light-dark(#00aadf,#2cb9e8);cursor:pointer}.auth-form input:focus-visible{border-color:light-dark(#00aadf,#2cb9e8);outline:none;box-shadow:0 0 0 3px #00bff238}.auth-form button[type=submit],.auth-secondary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:8px;color:#fff;font-size:.95rem;font-weight:700;background:linear-gradient(180deg,light-dark(#0090c4,#17a0d2) 0%,light-dark(#00759f,#0d84b4) 100%);cursor:pointer}.auth-form button[type=submit]:hover:not(:disabled){background:linear-gradient(180deg,light-dark(#0084b4,#1090c2) 0%,light-dark(#006288,#0a7aa8) 100%)}.auth-form button[type=submit]:focus-visible,.auth-secondary:focus-visible,.auth-options button:focus-visible,.auth-link:focus-visible{outline:2px solid #00bff2;outline-offset:2px}.auth-form button[type=submit]:disabled{opacity:.55;cursor:progress}.auth-form button[type=submit] svg,.auth-secondary svg{width:18px;height:18px}.auth-secondary{color:light-dark(#00759f,#55bde2);border:1px solid light-dark(#9fd4e8,#2a5a70);background:light-dark(#f3fbfe,#12202a)}.auth-secondary:hover{background:light-dark(#e6f6fc,#16242e)}.auth-stub-notice{display:grid;gap:12px;color:light-dark(#4d6675,#a3b8c6);font-size:.92rem;line-height:1.5}.auth-stub-notice p{margin:0}.auth-options{display:grid;gap:10px}.auth-options button{display:grid;grid-template-columns:22px minmax(0,1fr);gap:4px 12px;align-items:center;min-height:66px;padding:12px 14px;border:1px solid light-dark(#d8e7ef,#2a3f4e);border-radius:10px;color:light-dark(#142733,#dbe7f0);background:light-dark(#fbfdfe,#1c2531);cursor:pointer;text-align:left}.auth-options button:hover{border-color:#00bff2;background:light-dark(#f3fbfe,#12202a)}.auth-options button svg{grid-row:1 / span 2;width:20px;height:20px;color:light-dark(#00a5d8,#33bce6)}.auth-options button span,.auth-options button small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-options button span{color:light-dark(#142733,#dbe7f0);font-weight:680}.auth-options button small{color:light-dark(#6a7f8d,#87a0b0)}.auth-notice{margin:0;padding:8px 10px;border:1px solid light-dark(#cfdde6,rgba(163,184,198,.35));border-radius:8px;color:light-dark(#4d6675,#a3b8c6);font-size:.87rem;background:light-dark(#f2f7fa,rgba(163,184,198,.1))}.auth-error{margin:0;padding:8px 10px;border:1px solid light-dark(#f3cfcb,rgba(240,138,128,.4));border-radius:8px;color:light-dark(#b3261e,#f08a80);font-size:.87rem;background:light-dark(#fdf1f0,rgba(240,138,128,.12))}.auth-footnote{margin:0;color:light-dark(#4d6675,#a3b8c6);font-size:.88rem;text-align:center}.auth-link{padding:0;color:light-dark(#00759f,#55bde2);font-size:inherit;font-weight:700;background:none;cursor:pointer;text-decoration:underline}.auth-footer{color:light-dark(#6c8291,#87a0b0);font-size:.8rem;text-align:center}.auth-lite{display:flex;flex-direction:column;gap:12px}.auth-lite-divider{height:1px;background:light-dark(#dbe5ec,#2a3846)}.auth-lite p{margin:0;color:light-dark(#4d6675,#a3b8c6);font-size:.88rem;line-height:1.5;text-align:center}.auth-lite-link{color:light-dark(#00759f,#55bde2);font-weight:700;text-decoration:underline}.designer-workspace-shell{--workspace-content-width: 820px;--section-indent: 22px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;width:100vw;width:100dvw;height:100vh;height:100dvh;padding:max(22px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));overflow:hidden;background:radial-gradient(720px 460px at 8% 6%,#00bff229,#00bff200 60%),radial-gradient(760px 520px at 94% 4%,light-dark(rgba(0,132,184,.14),rgba(42,169,220,.16)),rgba(0,132,184,0) 62%),radial-gradient(900px 640px at 88% 92%,light-dark(rgba(91,127,166,.12),rgba(139,169,199,.14)),rgba(91,127,166,0) 60%),radial-gradient(900px 420px at 50% -140px,#00bff21a,#00bff200 70%),linear-gradient(180deg,light-dark(#f4fafd,#18222b) 0%,light-dark(#eef4f8,#212c38) 100%)}.designer-workspace-header,.case-list-lead,.case-queue-lead,.case-section{width:min(var(--workspace-content-width),100%);margin:0 auto}.workspace-top{display:grid;gap:14px;position:relative;z-index:2}.case-section-rows>.case-row,.case-section-rows>.case-queue-clear{margin-left:var(--section-indent)}.designer-workspace-header{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-bottom:24px}.workspace-header-actions{display:flex;gap:8px}.workspace-more-menu{position:relative;display:inline-flex}.viewer-more-menu{pointer-events:auto}.case-queue-lead,.case-list-lead{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:16px;row-gap:8px}.case-queue-lead>.new-case-trigger,.case-list-lead>.new-case-trigger{grid-column:1;grid-row:1;justify-self:start;margin-left:12px}.case-queue-lead>.case-queue-toggle{grid-column:1;grid-row:2;justify-self:start}.case-queue-lead>.case-scope-toggle,.case-list-lead>.case-scope-toggle{grid-column:2;grid-row:1}.case-queue-lead>.search-omnibox,.case-list-lead>.search-omnibox{grid-column:2;grid-row:2}.case-queue-lead>.case-scope-toggle,.case-queue-lead>.search-omnibox,.case-list-lead>.case-scope-toggle,.case-list-lead>.search-omnibox{width:300px}.case-queue-lead>.case-scope-toggle button,.case-list-lead>.case-scope-toggle button{flex:1;justify-content:center}.new-case-form,.case-search-field{display:grid;align-items:center;min-width:0;min-height:44px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.new-case-form{grid-template-columns:minmax(0,1fr) auto}.new-case-form input,.case-search-field input{min-width:0;border:0;outline:0;color:var(--ink);background:transparent}.new-case-form input{padding:0 14px}.new-case-form button,.workspace-icon-button{display:inline-grid;grid-auto-flow:column;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:8px;color:#fff;background:linear-gradient(180deg,light-dark(#0090c4,#17a0d2) 0%,light-dark(#00759f,#0d84b4) 100%);font-weight:720;cursor:pointer}.new-case-form button{margin:2px;padding:0 14px}.new-case-form button:disabled{cursor:not-allowed;opacity:.62}.case-search-field{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:0 13px}.case-search-field svg,.new-case-form svg,.workspace-icon-button svg{width:17px;height:17px}.case-search-field svg{color:light-dark(#7a8794,#8b9dab)}.search-omnibox{position:relative;min-width:0}.search-omnibox .case-search-field{width:100%}.case-files-actions .search-omnibox{width:min(240px,30vw)}@media(max-width:720px){.case-files-header{flex-wrap:wrap}.case-files-header .case-files-actions{flex:1 1 100%;min-width:0;flex-wrap:wrap}.case-files-actions .search-omnibox{order:3;width:100%}}.omnibox-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:min(440px,calc(100vw - 24px));max-height:min(480px,72dvh);padding:8px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--glass-border);border-radius:14px;background:light-dark(rgba(252,254,255,.97),rgba(24,32,42,.97));box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform-origin:top right;animation:popover-anchored-in var(--motion-base) var(--ease-out) both}.omnibox-popover.closing{animation:popover-anchored-out var(--motion-fast) var(--ease-in) both;pointer-events:none}.omnibox-group ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.omnibox-group-label{padding:8px 10px 4px;color:var(--ink-soft);font-size:11px;font-weight:740;letter-spacing:.08em;text-transform:uppercase}.omnibox-hit{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:10px;text-align:left;color:var(--ink);background:transparent;cursor:pointer}.omnibox-hit.active{background:var(--glass-bg-hover)}.omnibox-hit-icon svg{width:17px;height:17px;color:light-dark(#7a8794,#8b9dab)}.omnibox-hit-main{display:grid;gap:2px;min-width:0}.omnibox-hit-title{display:flex;align-items:baseline;gap:8px;min-width:0;font-weight:640;color:var(--ink-strong)}.omnibox-hit-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.omnibox-hit-status{flex:none;font-size:11px;font-weight:640;color:var(--ink-soft)}.omnibox-hit-why{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--ink-soft)}.omnibox-hit mark{padding:0 1px;border-radius:3px;color:inherit;background:light-dark(rgba(0,144,196,.18),rgba(23,160,210,.3))}.omnibox-hit-dest{font-size:11px;white-space:nowrap;color:var(--ink-soft)}.omnibox-empty,.omnibox-more{padding:10px;font-size:12px;color:var(--ink-soft)}.omnibox-more{margin-top:4px;border-top:1px solid var(--glass-border-soft)}@keyframes omnibox-highlight-pulse{0%{background:light-dark(rgba(0,144,196,.26),rgba(23,160,210,.34))}to{background:transparent}}.case-file-row.highlighted,.case-file-tile.highlighted{animation:omnibox-highlight-pulse 2.4s var(--ease-out) both}.workspace-icon-button{width:42px;height:42px;padding:0;color:var(--ink);background:var(--glass-bg-soft);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.workspace-status,.case-list-empty{width:min(var(--workspace-content-width),100%);margin:0 auto;color:light-dark(#51606f,#9caebc);font-size:.92rem}.workspace-status.failed{color:light-dark(#8f2f2f,#ee8c84)}.case-list{display:grid;align-content:start;gap:30px;min-height:0;overflow:hidden auto;overscroll-behavior:contain;position:relative;z-index:1;padding-top:4px;padding-bottom:10px}.case-section{display:grid;gap:0}.case-collapse{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows var(--motion-base) var(--ease-in),visibility 0s linear var(--motion-base)}.case-collapse.open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows var(--motion-base) var(--ease-out),visibility 0s}.case-collapse-inner{min-height:0;overflow:hidden}.case-collapse.open.settled>.case-collapse-inner{overflow:visible}.case-section-rows{position:relative;display:grid;gap:10px;padding-top:10px;opacity:0;transition:opacity var(--motion-fast) var(--ease-in)}.case-collapse.open .case-section-rows{opacity:1;transition:opacity var(--motion-base) var(--ease-out) 40ms}.case-row{position:relative;display:grid;grid-template-columns:4px minmax(0,1fr) auto auto;align-items:center;gap:0 12px;padding:12px 12px 12px 0;border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-bg);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out)}.case-row:hover{transform:translateY(-1px);background:var(--glass-bg-hover)}.case-row:focus-visible{outline:2px solid light-dark(#0084b8,#3fb1dd);outline-offset:2px}@media(prefers-reduced-motion:reduce){.case-row:hover{transform:none}}.case-task-lane{align-self:stretch;border-radius:14px 0 0 14px}.case-task.hot .case-task-lane{background:linear-gradient(180deg,light-dark(#c8342a,#d64840) 0%,light-dark(#a5251c,#c0392f) 100%)}.case-task.warm .case-task-lane{background:linear-gradient(180deg,light-dark(#bb5630,#c65f38) 0%,light-dark(#9c4020,#b85436) 100%)}.case-task.cool .case-task-lane{background:linear-gradient(180deg,light-dark(#12a2d2,#17aede) 0%,light-dark(#007ea9,#0e8cba) 100%)}.case-task-body{display:grid;gap:3px;min-width:0;padding:2px 0}.case-task-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;min-width:0;margin:0;color:light-dark(#3d4954,#bccad6);font-size:.98rem;line-height:1.3}.case-task-verb{font-weight:740;color:var(--ink-strong)}.case-task.hot .case-task-verb{color:light-dark(#a5251c,#ee8a7e)}.case-task.warm .case-task-verb{color:light-dark(#9c4020,#dd8465)}.case-task.cool .case-task-verb{color:light-dark(#007ea9,#50bade)}.case-task.peer{grid-template-columns:4px minmax(0,1fr) auto auto auto}.case-task.peer .case-task-lane{background:linear-gradient(180deg,light-dark(#b7c2ce,#3d4c5b) 0%,light-dark(#97a5b3,#4a5866) 100%)}.case-task.peer .case-task-verb{color:light-dark(#51606f,#9caebc);font-weight:680}.case-task-owner{display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 8px;border-radius:999px;background:light-dark(#eef1f5,#212c38);border:1px solid light-dark(#dde3ea,#2d3946);color:light-dark(#4a5563,#b1bfcc);font-size:.75rem;font-weight:620;white-space:nowrap}.case-task-owner svg{width:13px;height:13px;color:light-dark(#7a8794,#8b9dab)}.case-task-title{min-width:0;overflow-wrap:anywhere;font-weight:480}.case-task-meta{margin:0;overflow:hidden;color:light-dark(#6a7786,#8a9dac);font-size:.78rem;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.case-task-meta b{font-weight:680;color:light-dark(#7a5a2a,#cfae6a)}.case-task.hot .case-task-meta b{color:light-dark(#a5251c,#ee8a7e)}.case-task.warm .case-task-meta b{color:light-dark(#9c4020,#dd8465)}.case-task-meta.with-action{display:flex;flex-wrap:wrap;align-items:center;gap:3px 8px;white-space:normal}.case-task-meta.with-action b{white-space:nowrap}.case-task-meta-tail{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-task-time{color:light-dark(#9aa7b4,#6f8290);font-size:.78rem;font-weight:620;font-variant-numeric:tabular-nums;white-space:nowrap}.case-task.hero{grid-template-columns:5px minmax(0,1fr) auto auto;padding-top:16px;padding-bottom:16px}.case-task.hero .case-task-line{font-size:1.14rem}.case-task.hero .case-task-meta{font-size:.82rem}.case-task.slim{padding-top:8px;padding-bottom:8px;background:var(--glass-bg-soft);box-shadow:var(--glass-highlight);border-color:var(--glass-border-soft)}.case-task.slim .case-task-line{font-size:.88rem}.case-task.slim .case-task-verb{font-weight:640;color:light-dark(#00658b,#5fb6d6)}.case-task.slim.done .case-task-verb{color:light-dark(#51606f,#9caebc)}.case-task.slim .case-task-title{color:light-dark(#6a7786,#8a9dac)}.case-task.slim.done{opacity:.78}.case-task-hint{margin:0;color:light-dark(#8b98a5,#7e91a0);font-size:.74rem;line-height:1.25;font-variant-numeric:tabular-nums}.case-task-tick{width:15px;height:15px;align-self:center;color:light-dark(#2b5f4d,#7ec2a8)}.case-task.archived{grid-template-columns:4px minmax(0,1fr) auto;opacity:.66}.case-task.archived .case-task-verb{color:light-dark(#6a7786,#8a9dac)}.case-restore-button{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border:1px solid light-dark(#c6d2dc,#34434f);border-radius:999px;color:light-dark(#46617a,#9db4c8);background:light-dark(rgba(255,255,255,.7),rgba(26,35,46,.7));font-size:.74rem;font-weight:700;cursor:pointer}.case-restore-button:hover:not(:disabled){background:light-dark(#fff,#1a232e);border-color:light-dark(#a9bccb,#4c6170);color:light-dark(#35414d,#c4d1db)}.case-restore-button:disabled{opacity:.6;cursor:default}.case-restore-button svg{width:13px;height:13px}.case-group-toggle{display:inline-flex;align-items:center;gap:8px;justify-self:start;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:light-dark(#51606f,#9caebc);font-size:.86rem;font-weight:680;cursor:pointer}.case-group-toggle:hover{background:light-dark(rgba(255,255,255,.55),rgba(26,35,46,.55))}.case-group-chevron{width:11px;height:11px;flex-shrink:0;fill:light-dark(#9aa7b4,#6f8290);transition:transform var(--motion-base) var(--ease-out)}.case-group-chevron.open{transform:rotate(90deg)}.case-queue-toggle{color:var(--ink);font-size:.95rem;font-weight:700}.case-queue-toggle .case-group-chevron{width:12px;height:12px;fill:light-dark(#6a7786,#8a9dac)}.case-group-count{display:inline-grid;place-items:center;min-width:26px;padding:1px 8px;border-radius:999px;background:light-dark(#e9eef4,#212c38);color:light-dark(#51606f,#9caebc);font-size:.74rem;font-weight:680}.case-queue-clear{padding:14px;border:1px dashed light-dark(#cbd6e2,#33414d);border-radius:12px;color:light-dark(#6a7786,#8a9dac);background:light-dark(rgba(255,255,255,.55),rgba(26,35,46,.55));font-size:.88rem;font-weight:620}.case-nudge-button{display:inline-flex;align-items:center;gap:5px;margin-left:2px;padding:2px 9px;border:1px solid light-dark(#e0b878,#a58540);border-radius:999px;color:light-dark(#8a4b06,#dda158);background:light-dark(rgba(255,255,255,.75),rgba(26,35,46,.75));font-size:.74rem;font-weight:720;cursor:pointer}.case-nudge-button:hover:not(:disabled){background:light-dark(#fff,#1a232e);border-color:light-dark(#c99a4e,#b08a45)}.case-nudge-button:disabled{opacity:.6;cursor:default}.case-nudge-button svg{width:13px;height:13px}.new-case-trigger{display:inline-grid;grid-auto-flow:column;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border:0;border-radius:8px;color:#fff;background:linear-gradient(180deg,light-dark(#12a2d2,#17aede) 0%,light-dark(#007ea9,#0e8cba) 100%);box-shadow:0 10px 22px light-dark(rgba(20,32,43,.1),rgba(0,0,0,.35));font-weight:700;font-size:.95rem;cursor:pointer}.new-case-trigger svg{width:18px;height:18px}.new-case-trigger:hover{background:linear-gradient(180deg,light-dark(#1aade0,#2fbceb) 0%,light-dark(#0088b8,#1090c2) 100%)}.new-case-trigger.pulse-attention{animation:new-case-attention 2.4s ease-in-out infinite}@keyframes new-case-attention{0%,to{box-shadow:0 10px 22px light-dark(rgba(20,32,43,.1),rgba(0,0,0,.35)),0 0 0 2px #f5c54259,0 0 14px 2px #f5c54247}50%{box-shadow:0 10px 22px light-dark(rgba(20,32,43,.1),rgba(0,0,0,.35)),0 0 0 4px #f5c542d9,0 0 24px 6px #f5c5428c}}@media(prefers-reduced-motion:reduce){.new-case-trigger.pulse-attention{animation:none;box-shadow:0 10px 22px light-dark(rgba(20,32,43,.1),rgba(0,0,0,.35)),0 0 0 3px #f5c542b3}}.case-list-welcome{display:grid;justify-items:center;align-content:center;gap:14px;width:min(560px,100%);margin:0 auto;min-height:min(56vh,440px);padding:24px;text-align:center}.case-list-welcome h2{margin:0;color:var(--ink);font-size:1.18rem;line-height:1.3}.case-list-welcome p{margin:0;max-width:46ch;color:light-dark(#51606f,#9caebc);font-size:.95rem;line-height:1.55}.case-list-welcome-cue{color:light-dark(#7a8794,#8b9dab);font-size:.9rem}.case-list-welcome-cue strong{color:light-dark(#00759f,#55bde2)}.field-optional{margin-left:6px;color:light-dark(#9aa6b2,#6f8290);font-size:.72rem;font-weight:640;text-transform:uppercase;letter-spacing:.02em}.new-case-hint{margin:0;color:light-dark(#7a8794,#8b9dab);font-size:.8rem;line-height:1.35}.case-actions-menu{position:relative;display:flex;align-items:center}.case-actions-menu .case-menu-trigger{display:inline-grid;place-items:center;width:36px;height:36px;padding:0;color:light-dark(#5f6d7a,#94a6b4);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer}.case-actions-menu .case-menu-trigger svg{width:17px;height:17px}.case-actions-menu .case-menu-trigger:hover,.case-actions-menu .case-menu-trigger[aria-expanded=true]{color:light-dark(#35414d,#c4d1db);background:light-dark(#eef2f6,#212c38);border-color:light-dark(#dce4ec,#2f3b49)}.case-row:has(.case-menu-popover){position:relative;z-index:5}.case-menu-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:20;display:flex;flex-direction:column;min-width:168px;padding:6px;border:1px solid var(--glass-border);border-radius:12px;background:light-dark(#ffffff,#1a232e);box-shadow:0 14px 34px light-dark(rgba(20,32,43,.16),rgba(0,0,0,.42));transform-origin:top right;animation:popover-anchored-in var(--motion-fast) var(--ease-out) both}.case-menu-popover.closing{animation:popover-anchored-out var(--motion-fast) var(--ease-in) both;pointer-events:none}@keyframes popover-anchored-in{0%{opacity:0;transform:scale(.92) translateY(-4px)}}@keyframes popover-anchored-out{to{opacity:0;transform:scale(.94) translateY(-3px)}}.case-menu-popover .case-menu-item{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:38px;padding:0 12px;color:light-dark(#2f3b47,#c9d5df);background:transparent;border:0;border-radius:8px;font-weight:640;text-align:left}.case-menu-popover .case-menu-item:hover:not(:disabled){background:light-dark(#eef4fa,#212c38)}.case-menu-popover .case-menu-item.danger{color:light-dark(#46617a,#9db4c8)}.case-menu-popover .case-menu-item.danger:hover:not(:disabled){background:light-dark(#eef4f9,#212c38)}.case-menu-popover .case-menu-item:disabled{opacity:.55;cursor:default}.case-menu-popover .case-menu-item svg{width:16px;height:16px}.viewer-shell{--viewer-visual-center-y-offset: 0px;display:grid;position:relative;grid-template-columns:minmax(0,1fr);width:100vw;width:100dvw;height:100vh;height:100dvh;overflow:clip}.viewer-workspace{position:relative;grid-area:1 / 1;min-width:0;min-height:0;background:light-dark(#f7f9fb,#10161d)}.viewer-readonly-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:#94a3b838;backdrop-filter:saturate(.7) brightness(.98);-webkit-backdrop-filter:saturate(.7) brightness(.98);animation:viewer-readonly-veil-in .2s ease-out both}@keyframes viewer-readonly-veil-in{0%{opacity:0}to{opacity:1}}.viewer-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;display:flex;align-items:center;justify-content:center;background:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24));border:3px dashed var(--accent, light-dark(#2563eb, #5b8df0));border-radius:12px;animation:viewer-drop-overlay-in .12s ease-out both}.viewer-drop-overlay-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 32px;border:1px solid var(--glass-border);border-radius:16px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);color:light-dark(#0f172a,#d9e3ec);text-align:center}.viewer-drop-overlay-card svg{width:40px;height:40px;color:var(--accent, light-dark(#2563eb, #7aa5f6))}.viewer-drop-overlay-card span{font-size:1.05rem;font-weight:600}.viewer-drop-overlay-card small{color:light-dark(#64748b,#93a5ba)}@keyframes viewer-drop-overlay-in{0%{opacity:0}to{opacity:1}}.three-viewer{position:relative;width:100%;height:100%;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.three-viewer canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.scene-notes-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.scene-measurements-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.scene-measurement-line{position:absolute;height:2px;border-radius:999px;background:light-dark(#17324f,#1d3a58);box-shadow:0 0 0 1px light-dark(rgba(255,255,255,.8),rgba(255,255,255,.12)),0 6px 14px light-dark(rgba(20,32,43,.18),rgba(0,0,0,.45));transform-origin:0 50%}.scene-measurement.selected .scene-measurement-line{height:3px;background:light-dark(#0084b8,#1090c2)}.scene-measurement-label-stem{position:absolute;height:1.5px;border-radius:999px;background:#17324f8c;transform-origin:0 50%;pointer-events:none}.scene-measurement.selected .scene-measurement-label-stem{background:light-dark(rgba(0,132,184,.7),rgba(16,144,194,.7))}.scene-measurement-label{position:absolute;display:inline-flex;align-items:stretch;min-height:28px;border:1px solid light-dark(rgba(207,216,227,.92),rgba(64,79,94,.92));border-radius:999px;color:var(--ink);background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);line-height:1;overflow:hidden;transform:translate(-50%,-50%);pointer-events:auto;transition:border-color .15s ease}.scene-measurement-label.note-open{border-color:light-dark(rgba(0,132,184,.55),rgba(42,169,220,.55))}.scene-measurement-value{min-width:54px;padding:5px 10px;border:0;background:transparent;color:var(--ink);font-size:.78rem;font-weight:720;line-height:1;text-align:center;cursor:pointer}.scene-measurement-note-toggle{display:inline-flex;align-items:center;gap:3px;padding:0 8px;border:0;border-left:1px solid var(--note-border-soft);background:transparent;color:var(--note-accent);cursor:pointer;transition:background .15s ease,color .15s ease}.scene-measurement-note-toggle svg{width:13px;height:13px}.scene-measurement-note-toggle:hover{background:var(--note-tint);color:var(--note-ink)}.scene-measurement-note-toggle.has-comments{background:var(--note-tint);color:var(--note-accent)}.scene-measurement-note-toggle.open{background:var(--note-tint-strong);color:var(--note-ink)}.scene-measurement-note-count{font-size:.72rem;font-weight:800;line-height:1}.scene-measurement-pending-endpoint{position:absolute;width:28px;height:28px;border:3px solid light-dark(#ffffff,#1a232e);border-radius:999px;background:#f59f23;box-shadow:0 8px 18px light-dark(rgba(20,32,43,.18),rgba(0,0,0,.45));transform:translate(-50%,-50%);pointer-events:none}.scene-measurement-endpoint{position:absolute;width:16px;height:16px;padding:0;border:2px solid light-dark(#ffffff,#1a232e);border-radius:999px;background:light-dark(rgba(0,132,184,.6),rgba(16,144,194,.6));box-shadow:0 3px 9px light-dark(rgba(20,32,43,.22),rgba(0,0,0,.5));transform:translate(-50%,-50%);pointer-events:none;transition:width .14s ease,height .14s ease,background-color .14s ease}.scene-measurement-endpoint.active{width:28px;height:28px;border-width:3px;background:light-dark(#0084b8,#1090c2);box-shadow:0 8px 18px light-dark(rgba(20,32,43,.18),rgba(0,0,0,.45))}.scene-measurement-delete{position:absolute;display:flex;align-items:center;justify-content:center;gap:20px;width:38px;height:38px;padding:0;border:2px solid light-dark(#ffffff,#1a232e);border-radius:999px;background:light-dark(#4e77a0,#5a84ad);box-shadow:0 10px 22px light-dark(rgba(20,32,43,.26),rgba(0,0,0,.55));transform:translate(-50%,-50%);overflow:hidden;pointer-events:auto;transition:width .22s ease,background-color .22s ease,border-color .22s ease;animation:scene-measurement-delete-pop .18s ease-out}.scene-measurement-delete.confirming{width:88px;border-color:light-dark(rgba(207,216,227,.92),rgba(64,79,94,.92));background:light-dark(rgba(255,255,255,.97),rgba(28,38,50,.97))}.scene-measurement-delete-trash,.scene-measurement-delete-cancel,.scene-measurement-delete-confirm{display:grid;place-items:center;flex:none;padding:0;border:none;border-radius:999px;color:#fff;box-shadow:none;cursor:pointer}.scene-measurement-delete-trash{width:100%;height:100%;background:transparent}.scene-measurement-delete-trash:hover{background:light-dark(rgba(0,0,0,.08),rgba(255,255,255,.1))}.scene-measurement-delete-trash svg{width:18px;height:18px}.scene-measurement-delete-cancel,.scene-measurement-delete-confirm{width:28px;height:28px}.scene-measurement-delete-cancel svg,.scene-measurement-delete-confirm svg{width:16px;height:16px}.scene-measurement-delete-cancel{background:transparent;color:light-dark(#5f6b78,#94a6b4)}.scene-measurement-delete-cancel:hover{background:light-dark(rgba(23,32,42,.08),rgba(255,255,255,.07))}.scene-measurement-delete-confirm{background:transparent;color:light-dark(#35688f,#78a7cd)}.scene-measurement-delete-confirm:hover{background:light-dark(rgba(53,104,143,.12),rgba(120,167,205,.14))}.scene-measurement-delete-confirm svg{stroke-width:3}@keyframes scene-measurement-delete-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.scene-section-caliper-draft{position:absolute;height:3px;border-radius:999px;background:light-dark(#0084b8,#1090c2);box-shadow:0 0 0 1px light-dark(rgba(255,255,255,.86),rgba(255,255,255,.12)),0 8px 18px light-dark(rgba(20,32,43,.2),rgba(0,0,0,.48));transform-origin:0 50%;pointer-events:none}.scene-slice-draft{position:absolute;height:3px;border-radius:999px;background:#00bff2;box-shadow:0 0 0 1px light-dark(rgba(255,255,255,.86),rgba(255,255,255,.12)),0 8px 18px light-dark(rgba(20,32,43,.22),rgba(0,0,0,.5));transform-origin:0 50%;pointer-events:none}.scene-note-bubble{position:absolute;display:grid;gap:10px;max-width:calc(100% - 24px);padding:12px;border:1px solid var(--note-border);border-radius:12px;color:var(--note-ink-strong);background:var(--note-bg-strong);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);pointer-events:auto;transform:translate(-50%,calc(-100% - 20px))}.scene-note-bubble:after{position:absolute;bottom:-9px;left:50%;width:18px;height:18px;border-right:1px solid var(--note-border);border-bottom:1px solid var(--note-border);background:var(--note-bg-strong);content:"";transform:translate(-50%) rotate(45deg)}.scene-note-confirmation{align-items:center;text-align:center}.scene-note-confirmation span{font-size:.92rem;font-weight:700}.scene-note-editor textarea{box-sizing:border-box;min-width:0;width:100%;min-height:26px;max-height:148px;height:26px;overflow-y:auto;resize:none;border:0;outline:0;color:var(--note-ink-strong);background:transparent;line-height:1.35}.scene-note-display{padding-right:34px;border-top-color:transparent}.scene-note-editor-tabbed{border-top-color:transparent}.scene-note-editor{padding-right:34px}.scene-note-hint{position:absolute;max-width:240px;padding:7px 11px;border:1px solid var(--glass-border);border-radius:9px;color:var(--ink);background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);font-size:.86rem;font-weight:600;line-height:1.3;text-align:center;pointer-events:none;transform:translate(-50%,calc(-100% - 14px));animation:scene-note-hint-in .18s var(--ease-out) both}@keyframes scene-note-hint-in{0%{opacity:0;transform:translate(-50%,calc(-100% - 6px))}to{opacity:1;transform:translate(-50%,calc(-100% - 14px))}}.scene-note-display p{min-width:0;max-height:8.2rem;margin:0;overflow:auto;color:var(--note-ink-strong);font-size:.94rem;line-height:1.35;white-space:pre-wrap}.scene-note-close{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:6px;color:light-dark(rgba(92,86,31,.72),rgba(216,207,138,.85));background:transparent;cursor:pointer;transition:background .12s ease,color .12s ease}.scene-note-close:hover{color:var(--note-ink-strong);background:light-dark(rgba(128,120,45,.14),rgba(214,203,114,.12))}.scene-note-close svg{width:15px;height:15px}.scene-note-autofade{animation:scene-note-autofade 2.92s ease-in forwards}@keyframes scene-note-autofade{0%,85.6%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.scene-note-autofade{animation-duration:2.5s}}.scene-note-text{display:block;width:100%;min-width:0;max-height:8.2rem;margin:0;padding:0;border:0;overflow:auto;color:var(--ink);background:transparent;font:inherit;font-size:.94rem;line-height:1.35;text-align:left;white-space:pre-wrap;cursor:text}.scene-note-delete{display:flex;align-items:center;justify-content:center;gap:2px;flex:none;width:38px;height:28px;padding:0 5px 2px;border:1px solid var(--note-border);border-bottom:none;border-radius:13px 13px 0 0;background:var(--note-bg-strong);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);overflow:hidden;transition:width .34s cubic-bezier(.22,1,.36,1)}.scene-note-delete.confirming{width:74px}.scene-note-delete-floating{position:absolute;top:-27px;left:50%;transform:translate(-50%)}.scene-note-delete .scene-note-delete-trash,.scene-note-delete .scene-note-delete-cancel,.scene-note-delete .scene-note-delete-confirm{display:grid;place-items:center;flex:none;min-width:0;width:28px;height:24px;padding:0;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:background .14s ease}.scene-note-delete .scene-note-delete-trash svg,.scene-note-delete .scene-note-delete-cancel svg,.scene-note-delete .scene-note-delete-confirm svg{width:15px;height:15px}.scene-note-delete .scene-note-delete-trash{color:light-dark(#35688f,#78a7cd)}.scene-note-delete .scene-note-delete-trash:hover{background:light-dark(rgba(53,104,143,.12),rgba(120,167,205,.14))}.scene-note-delete .scene-note-delete-cancel{color:light-dark(#5f6b78,#94a6b4)}.scene-note-delete .scene-note-delete-cancel:hover{background:light-dark(rgba(23,32,42,.08),rgba(255,255,255,.07))}.scene-note-delete .scene-note-delete-confirm{color:light-dark(#35688f,#78a7cd)}.scene-note-delete .scene-note-delete-confirm:hover{background:light-dark(rgba(53,104,143,.12),rgba(120,167,205,.14))}.scene-note-delete .scene-note-delete-confirm svg{stroke-width:3}.empty-viewer{display:grid;place-items:center;align-content:center;gap:14px;width:100%;height:100%;color:light-dark(#5d6b7a,#94a6b4);background:linear-gradient(light-dark(#edf1f5,#212c38) 1px,transparent 1px),linear-gradient(90deg,light-dark(#edf1f5,#212c38) 1px,transparent 1px),light-dark(#f7f9fb,#10161d);background-size:32px 32px}.empty-viewer svg{width:44px;height:44px;color:light-dark(#00759f,#55bde2)}.empty-viewer>svg,.empty-viewer>span{transform:translateY(var(--viewer-visual-center-y-offset))}.empty-viewer-card{gap:10px;text-align:center;padding:0 24px}.empty-viewer-card h2{margin:0;font-size:19px;font-weight:650;color:light-dark(#2a3b49,#c9d5df)}.empty-viewer-card p{margin:0;max-width:30rem;font-size:14px;line-height:1.5}.empty-viewer-card .empty-viewer-next-step{color:light-dark(#2a3b49,#c9d5df);font-weight:550}.viewer-shell{--control-panel-width: min(388px, calc(100vw - 32px) );--legend-bottom: max(12px, env(safe-area-inset-bottom));--legend-top-limit: calc(var(--viewer-toolbar-bottom, 62px) + 12px)}.control-panel{display:grid;position:absolute;top:max(18px,env(safe-area-inset-top));bottom:auto;left:max(16px,env(safe-area-inset-left));z-index:8;grid-template-rows:minmax(0,1fr);width:var(--control-panel-width);height:min(620px,calc(100vh - 84px));height:min(620px,calc(100dvh - 84px));min-width:0;min-height:0;padding:18px;overflow:hidden;overscroll-behavior:contain;border:1px solid var(--glass-border);border-radius:24px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);opacity:0;pointer-events:none;transform:translate(calc(-100% - 32px));transition:opacity calc(var(--motion-slow) * .5) var(--ease-in),transform calc(var(--motion-slow) * .6) var(--ease-in),height var(--motion-base) var(--ease-out)}.control-panel.presented{opacity:1;pointer-events:auto;transform:translate(0);transition:opacity calc(var(--motion-slow) * .7) var(--ease-out),transform var(--motion-slow) var(--ease-out),height var(--motion-base) var(--ease-out)}.viewer-shell.viewer-mode-designer.menu-presented .control-panel{top:68px;height:min(620px,calc(100vh - 134px));height:min(620px,calc(100dvh - 134px))}.viewer-shell.menu-presented .viewer-top-controls .viewer-menu-toggle,.floating-capsule-button.open-files-context{display:none}.designer-case-toolbar .viewer-toolbar-context-row{justify-content:flex-start}.control-panel-close{position:absolute;top:12px;right:12px;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;border:1px solid light-dark(rgba(15,23,42,.18),rgba(255,255,255,.16));background:var(--glass-bg-soft);color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .05s ease}.control-panel-close-glyph{font-size:24px;font-weight:600;line-height:1;transform:translateY(-2px)}.control-panel-close:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.control-panel-close:active{transform:translateY(1px)}.viewer-top-controls{position:absolute;top:max(18px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));z-index:9;display:flex;align-items:center;flex-wrap:wrap;gap:10px;pointer-events:none}.designer-case-toolbar{display:grid;grid-template-rows:auto auto;justify-items:stretch;align-items:start;gap:8px;min-width:0;max-width:100%}.viewer-top-controls>*{pointer-events:auto}.file-picker-input{display:none}.floating-icon-button,.floating-capsule-button,.mini-icon-button,.web-tool-handle{display:inline-grid;place-items:center;color:var(--ink);background:var(--glass-bg-soft);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);cursor:pointer;backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform-origin:bottom center;animation:tool-handle-in var(--motion-base) var(--ease-out) both}@keyframes tool-handle-in{0%{opacity:0;transform:translateY(18px)}}.floating-icon-button:disabled,.floating-capsule-button:disabled,.mini-icon-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.floating-icon-button{width:40px;height:40px;padding:0;border-radius:999px;line-height:0}.floating-capsule-button{grid-auto-flow:column;gap:8px;min-height:40px;min-width:0;padding:0 15px;border-radius:999px;font-size:.9rem;font-weight:650}.viewer-undo-redo-group{position:absolute;right:0;bottom:0;display:inline-flex;pointer-events:auto;border-radius:999px;box-shadow:var(--glass-shadow)}.web-tool-tray.expanded .viewer-undo-redo-group{display:none}.viewer-undo-redo-group .floating-icon-button{width:44px;box-shadow:none}.viewer-undo-redo-group .viewer-undo-button{border-right:none;border-radius:999px 0 0 999px}.viewer-undo-redo-group .viewer-redo-button{border-radius:0 999px 999px 0}.viewer-workspace-title{min-width:0;overflow:hidden;color:var(--ink);font-size:.94rem;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.viewer-toolbar-title-group{display:inline-flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;max-width:min(620px,calc(100vw - 170px));margin-left:auto;gap:7px;padding:0 2px;overflow:hidden;pointer-events:none}.viewer-load-progress-float{position:absolute;top:max(calc(var(--viewer-banner-bottom, var(--viewer-toolbar-bottom, 62px)) + 8px),calc(env(safe-area-inset-top) + 70px));left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:12px;padding:8px 14px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);pointer-events:none}.viewer-load-progress-float .viewer-load-progress-track{width:150px;flex:0 0 auto}.viewer-load-progress-label{color:var(--ink);font-size:.78rem;font-weight:700;white-space:nowrap}.empty-viewer .viewer-load-progress-track{width:min(260px,70vw);margin-top:10px}.viewer-load-progress-track{height:4px;border-radius:999px;background:light-dark(rgba(23,32,42,.12),rgba(255,255,255,.1));overflow:hidden}.viewer-load-progress-fill{height:100%;border-radius:999px;background:light-dark(#0e6da8,#1b86c4);transition:width .3s ease}.viewer-load-progress-fill.indeterminate{width:30%;animation:viewer-load-progress-sweep 1.3s ease-in-out infinite}@keyframes viewer-load-progress-sweep{0%{transform:translate(-100%)}to{transform:translate(430%)}}@media(prefers-reduced-motion:reduce){.viewer-load-progress-fill.indeterminate{animation:none}}.viewer-state-chip{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;color:light-dark(#51606f,#9caebc);font-size:.76rem;font-weight:720;white-space:nowrap}.viewer-state-chip.your-move{color:light-dark(#7b342b,#e2917f)}.viewer-state-chip.waiting{color:light-dark(#17466b,#9dc4e2)}.viewer-state-chip.done{color:light-dark(#14513f,#8ccbb4)}.viewer-history-button{pointer-events:auto;align-self:center;flex:0 0 auto;margin-left:8px;display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:8px;border:1px solid light-dark(rgba(15,23,42,.18),rgba(255,255,255,.16));background:var(--glass-bg-soft);color:var(--ink);font-size:.76rem;font-weight:650;white-space:nowrap;cursor:pointer;backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transition:background .12s ease,border-color .12s ease,transform .05s ease}.viewer-history-button svg{width:14px;height:14px}.viewer-history-button:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.viewer-history-button:active{transform:translateY(1px)}.viewer-history-button:disabled{opacity:.45;cursor:not-allowed}.viewer-history-button.active{background:light-dark(#2563eb,#3b74ee);border-color:light-dark(#2563eb,#5b8df0);color:#fff}.case-save-indicator{display:inline-flex;align-items:center;align-self:center;flex:0 0 auto;gap:6px;color:light-dark(#637181,#8da0af)}.case-save-indicator svg{display:block;width:15px;height:15px}.case-save-indicator.failed{color:light-dark(#8f2f2f,#ee8c84)}.case-save-dot{width:8px;height:8px;border-radius:50%;background:light-dark(#3b82f6,#66a3f8)}.case-save-spinner{animation:case-save-spin 1s linear infinite}@media(prefers-reduced-motion:reduce){.case-save-spinner{animation:none}}@keyframes case-save-spin{to{transform:rotate(360deg)}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.viewer-toolbar-actions{display:inline-flex;align-items:center;flex:0 0 auto;gap:10px;min-width:0;pointer-events:auto}.viewer-toolbar-context-row,.viewer-toolbar-action-row{display:flex;align-items:center;gap:10px;min-width:0;pointer-events:none}.viewer-toolbar-context-row{width:100%;justify-content:space-between}.designer-case-toolbar .viewer-toolbar-action-row{width:100%}.designer-case-toolbar .viewer-toolbar-actions{flex:1 1 0;min-width:0}.designer-case-toolbar .viewer-toolbar-title-group{max-width:min(620px,calc(100% - 52px))}.send-doctor-toolbar-button{margin-left:auto}.send-doctor-toolbar-button.next-step{color:light-dark(#7b342b,#e2917f);background:light-dark(rgba(245,225,221,.95),rgba(84,46,40,.95));border-color:light-dark(rgba(196,130,120,.9),rgba(226,150,138,.5))}.web-tool-message-action{position:relative}.doctor-done-button{min-width:154px;color:light-dark(#2b3742,#f7eecb);background:light-dark(rgba(255,246,205,.95),rgba(126,100,38,.95));border-color:light-dark(rgba(226,205,128,.92),rgba(235,210,120,.7))}.doctor-done-toolbar-button{margin-left:0}@media(orientation:portrait)and (max-width:540px),(orientation:landscape)and (max-height:500px){.doctor-done-button{min-width:0;min-height:32px;padding:0 12px;font-size:.8rem}}@media(orientation:portrait)and (max-width:540px){.viewer-history-button{justify-content:center;width:36px;height:36px;margin-left:0;padding:0;border-radius:999px}.viewer-history-button span{display:none}.viewer-history-button svg{width:16px;height:16px}}.viewer-top-controls:not(.designer-case-toolbar) .viewer-toolbar-actions{margin-left:auto}.viewer-share-toolbar-button{width:36px;height:36px}.viewer-share-toolbar-button svg{width:16px;height:16px}.web-tool-message-action.has-unread-messages:after{position:absolute;top:-5px;right:-5px;width:11px;height:11px;content:"";background:light-dark(#0084b8,#1090c2);border:2px solid light-dark(rgba(255,255,255,.94),rgba(255,255,255,.15));border-radius:999px;box-shadow:0 3px 8px light-dark(rgba(0,132,184,.36),rgba(42,169,220,.35))}.doctor-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--glass-scrim);backdrop-filter:var(--glass-scrim-filter);-webkit-backdrop-filter:var(--glass-scrim-filter);animation:dialog-backdrop-in var(--motion-fast) var(--ease-out) both}.doctor-modal{display:grid;gap:14px;width:min(520px,100%);padding:18px;color:var(--ink);background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:dialog-pop-in var(--motion-base) var(--ease-out) both;max-height:100%;overflow-y:auto;overscroll-behavior:contain}.doctor-modal.compact{width:min(430px,100%);justify-items:center;text-align:center}.doctor-modal.compact .doctor-modal-actions.stacked{justify-items:center}.doctor-modal.compact .doctor-modal-actions.stacked button{width:min(260px,100%)}.doctor-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.doctor-modal h2{margin:0;font-size:1.08rem;line-height:1.2}.doctor-modal p{margin:0;color:light-dark(#53606d,#9caebc);font-size:.94rem;line-height:1.45}.doctor-completion-message{display:grid;gap:6px;width:100%;text-align:left}.doctor-completion-message>span{color:light-dark(#53606d,#9caebc);font-size:.82rem;font-weight:650}.doctor-modal .doctor-completion-message textarea{min-height:74px}.doctor-modal textarea{width:100%;min-height:168px;resize:vertical;padding:12px;color:var(--ink);background:light-dark(#f7f9fb,#10161d);border:1px solid light-dark(#cfd8e3,#33424f);border-radius:8px;outline:none}.doctor-modal textarea:focus{border-color:light-dark(#0084b8,#3fb1dd);box-shadow:0 0 0 3px #00bff233}.doctor-modal-error{color:light-dark(#b42318,#ef8b7f)}@media(orientation:landscape)and (max-height:500px){.doctor-modal-backdrop{padding:max(10px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.doctor-modal{gap:10px;padding:14px 16px}.doctor-modal .doctor-completion-message textarea{min-height:52px}.doctor-modal-actions.stacked{gap:8px}.doctor-modal-actions button{min-height:36px}}.account-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:var(--glass-scrim);backdrop-filter:var(--glass-scrim-filter);-webkit-backdrop-filter:var(--glass-scrim-filter);animation:dialog-backdrop-in var(--motion-fast) var(--ease-out) both}.account-dialog-backdrop.closing{animation:dialog-backdrop-out calc(var(--motion-fast) * .85) var(--ease-in) both;pointer-events:none}@keyframes dialog-backdrop-in{0%{opacity:0;backdrop-filter:blur(0px) saturate(100%);-webkit-backdrop-filter:blur(0px) saturate(100%)}}@keyframes dialog-backdrop-out{to{opacity:0;backdrop-filter:blur(0px) saturate(100%);-webkit-backdrop-filter:blur(0px) saturate(100%)}}.account-dialog{width:min(420px,100%);animation:dialog-pop-in var(--motion-base) var(--ease-out) both}.account-dialog-backdrop.closing .account-dialog{animation:dialog-pop-out calc(var(--motion-fast) * .85) var(--ease-in) both}@keyframes dialog-pop-in{0%{opacity:0;transform:scale(.92) translateY(10px)}}@keyframes dialog-pop-out{to{opacity:0;transform:scale(.96) translateY(6px)}}.account-dialog.nudge-dialog{width:min(520px,100%)}.nudge-dialog-context{margin:0;color:light-dark(#51606f,#9caebc);font-size:.86rem;line-height:1.4}.nudge-dialog-context b{color:light-dark(#9c4020,#dd8465);font-weight:680}.nudge-dialog-note{display:grid;justify-items:start;gap:12px;margin:0;color:light-dark(#6a7786,#8a9dac);font-size:.9rem}.nudge-dialog-note p{margin:0}.nudge-dialog-error{margin:0;color:light-dark(#8f2f2f,#ee8c84);font-size:.84rem;font-weight:640}.account-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.account-dialog-notice{margin:0;color:light-dark(#0a7d4b,#4dbd85);font-size:.9rem;font-weight:640}.account-dialog.admin-dialog{width:min(560px,100%);height:min(600px,88vh);grid-template-rows:auto minmax(0,1fr)}.admin-panel-body{display:flex;flex-direction:column;gap:14px;min-height:0}.admin-unlock-hint,.admin-panel-status{margin:0;color:light-dark(#51606f,#9caebc);font-size:.92rem}.admin-tabs{display:flex;gap:6px;padding:3px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg-soft);width:fit-content}.admin-tab{min-height:32px;padding:0 14px;border:0;border-radius:8px;background:transparent;color:light-dark(#51606f,#9caebc);font-size:.86rem;font-weight:680;cursor:pointer}.admin-tab.selected{background:linear-gradient(180deg,light-dark(#0090c4,#17a0d2) 0%,light-dark(#00759f,#0d84b4) 100%);color:#fff}.admin-search{position:relative;display:flex;align-items:center}.admin-search-icon{position:absolute;left:11px;width:16px;height:16px;color:light-dark(#7c8896,#8b9dab);pointer-events:none}.admin-search-input{width:100%;min-height:36px;padding:0 34px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg-soft);color:light-dark(#22303c,#ccd8e2);font-size:.9rem}.admin-search-input::placeholder{color:light-dark(#7c8896,#8b9dab)}.admin-search-input:focus-visible{outline:none;border-color:light-dark(#0090c4,#45b6e0);box-shadow:0 0 0 2px #0090c438}.admin-search-input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.admin-search-clear{position:absolute;right:8px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:light-dark(#51606f,#9caebc);cursor:pointer}.admin-search-clear:hover{background:var(--glass-bg-soft)}.admin-search-clear svg{width:15px;height:15px}.admin-link-chip{flex:none;white-space:nowrap;padding:1px 8px;border-radius:999px;background:light-dark(rgba(10,125,75,.14),rgba(77,189,133,.15));color:light-dark(#0a7d4b,#4dbd85);font-size:.72rem;font-weight:720;text-transform:uppercase;letter-spacing:.04em}.admin-link-chip.revoked{background:light-dark(rgba(100,116,139,.15),rgba(148,163,184,.18));color:light-dark(#51606f,#9caebc)}.admin-account-row.admin-link-revoked .admin-account-email{color:light-dark(#51606f,#9caebc)}.admin-account-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0 4px 0 0;list-style:none;flex:1 1 0;min-height:0;overflow-y:auto}.admin-account-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:10px 12px;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg-soft)}.admin-account-main{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-account-email{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-weight:680;color:var(--ink);overflow-wrap:anywhere}.admin-account-you{flex:none;white-space:nowrap;padding:1px 8px;border-radius:999px;background:light-dark(rgba(0,144,196,.14),rgba(42,169,220,.15));color:light-dark(#00759f,#55bde2);font-size:.72rem;font-weight:720;text-transform:uppercase;letter-spacing:.04em}.admin-account-meta{color:light-dark(#51606f,#9caebc);font-size:.82rem}.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-row-button{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;min-height:32px;padding:0 10px;border:1px solid var(--glass-border);border-radius:8px;background:var(--glass-bg);color:var(--ink);font-size:.82rem;font-weight:660;cursor:pointer}.admin-row-button svg{width:14px;height:14px}.admin-row-button:disabled{cursor:not-allowed;opacity:.6}.admin-row-button-danger{border-color:light-dark(rgba(63,98,133,.45),rgba(127,161,196,.45));background:light-dark(rgba(63,98,133,.1),rgba(127,161,196,.12));color:light-dark(#35516b,#a9c3d9)}.admin-inline-form{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.admin-inline-form input{min-width:0;min-height:34px;padding:0 10px;border:1px solid var(--glass-border);border-radius:8px;background:light-dark(rgba(255,255,255,.7),rgba(26,35,46,.7));color:var(--ink)}.admin-create-form{padding-top:4px;border-top:1px solid var(--glass-border);flex:none}.admin-create-actions{display:flex;align-items:center;gap:12px}.admin-add-account{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;flex:none;border-radius:8px;border:1px dashed var(--glass-border-strong, var(--glass-border));background:transparent;color:light-dark(#00759f,#55bde2);font-weight:700;cursor:pointer}.admin-add-account svg{width:16px;height:16px}.admin-add-account:disabled{cursor:not-allowed;opacity:.6}.chat-history{display:flex;flex-direction:column;gap:16px;min-height:0;overflow-y:auto;padding:8px 2px}.chat-history-empty{align-self:center;margin:auto 0;color:light-dark(#637181,#8da0af)}.chat-comment{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start}.chat-comment+.chat-comment{position:relative;padding-top:14px}.chat-comment+.chat-comment:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:70%;height:1px;background:light-dark(rgba(15,23,42,.06),rgba(255,255,255,.06))}.chat-comment-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;color:#fff;font-size:.82rem;font-weight:700;-webkit-user-select:none;user-select:none}.chat-comment-avatar-designer{background:#a3952d}.chat-comment-avatar-doctor{background:light-dark(#2f6fed,#3f78ee)}.chat-comment-main{display:grid;gap:2px;min-width:0}.chat-comment-byline{display:flex;align-items:baseline;gap:8px}.chat-comment-author{color:var(--ink);font-size:.82rem;font-weight:700}.chat-comment-byline time{color:light-dark(#8a96a3,#7e91a0);font-size:.72rem}.chat-comment-body{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.4}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:end;gap:8px;padding-top:10px;border-top:1px solid light-dark(rgba(207,216,227,.82),rgba(64,79,94,.85))}.chat-composer textarea{min-height:40px;max-height:132px;resize:none;overflow-y:auto;width:100%;padding:10px 12px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:20px;outline:0;color:var(--ink);background:light-dark(#f7f9fb,#10161d);line-height:1.35}.chat-composer textarea:focus{border-color:light-dark(#0084b8,#3fb1dd);box-shadow:0 0 0 3px #007aff24}.chat-send-button{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;color:#fff;background:light-dark(#17202a,#223041);border-radius:999px;cursor:pointer}.chat-send-button:disabled{cursor:default;opacity:.5}.doctor-modal-actions{display:flex;justify-content:flex-end;gap:10px}.doctor-modal-actions.stacked{display:grid}.doctor-modal-actions button{min-height:40px;padding:0 16px;color:#fff;background:light-dark(#17202a,#223041);border-radius:8px;cursor:pointer;font-weight:700}.doctor-modal-actions button.secondary{color:var(--ink);background:light-dark(#eef2f6,#212c38)}.doctor-modal-actions button.request-changes{color:light-dark(#9a4a07,#dda158);background:light-dark(#fde4cf,rgba(223,162,84,.16))}.doctor-modal-actions button.approve{background:light-dark(#0084b8,#1090c2)}.doctor-modal-actions button.text{color:light-dark(#53606d,#9caebc);background:transparent}.doctor-modal-actions button:disabled{cursor:default;opacity:.62}.viewer-toolbar-context-row>button,.viewer-toolbar-action-row>button{pointer-events:auto}.floating-icon-button svg,.floating-capsule-button svg,.tool-share-copy-button svg,.qr-copy-button svg,.mini-icon-button svg,.chat-send-button svg,.web-tool-handle svg{display:block;width:18px;height:18px}.doctor-invite-panel{display:grid;gap:8px;width:100%}.doctor-copy-link-button{justify-self:center;min-height:30px;padding:0 10px;font-size:.74rem}.doctor-invite-panel .doctor-share-hint{max-width:none;margin-top:6px}.doctor-copy-link-button svg{width:15px;height:15px}.doctor-invite-panel input{width:100%;min-height:38px;margin-bottom:6px;padding:0 10px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;outline:0;color:var(--ink);background:light-dark(#ffffff,#1a232e)}.invite-template-row{display:flex;gap:6px;align-items:center;width:100%}.invite-template-row select{flex:1;min-width:0;min-height:34px;padding:0 8px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;outline:0;color:var(--ink);background:light-dark(#ffffff,#1a232e);font-size:.8rem}.invite-template-delete-button{flex:none;width:30px;height:30px;padding:0;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;background:light-dark(#ffffff,#1a232e)}.invite-template-delete-button svg{width:14px;height:14px}.invite-custom-email-fields{display:grid;gap:6px}.invite-custom-email-fields input{margin-bottom:0;font-size:.8rem}.invite-custom-email-fields textarea{width:100%;min-height:96px;padding:8px 10px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;outline:0;color:var(--ink);background:light-dark(#ffffff,#1a232e);font:inherit;font-size:.8rem;resize:vertical}.invite-save-template-button{justify-self:end;min-height:26px;padding:0 10px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;background:light-dark(#ffffff,#1a232e);color:var(--ink);font-size:.72rem;cursor:pointer}.invite-save-template-button:disabled{opacity:.5;cursor:default}.invite-email-preview{width:100%;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;background:light-dark(#ffffff,#1a232e)}.invite-email-preview summary{padding:6px 10px;font-size:.74rem;color:light-dark(#4a5a68,#b1bfcc);cursor:pointer;-webkit-user-select:none;user-select:none}.invite-email-preview-content{max-height:180px;padding:0 10px 8px;overflow-y:auto;text-align:left}.invite-email-preview-content .invite-email-preview-subject{margin:0 0 6px;max-width:none;font-size:.78rem;font-weight:600;color:var(--ink);text-align:left}.invite-email-preview-content pre{margin:0;font:inherit;font-size:.76rem;color:light-dark(#33414e,#c4d1db);white-space:pre-wrap;overflow-wrap:anywhere}.invite-email-preview-content pre a{color:light-dark(#1155cc,#7fb0f9);text-decoration:underline}.doctor-review-link-row{display:flex;gap:6px;align-items:center;width:80%;margin:22px auto 0}.doctor-review-link-row input{flex:1;min-width:0;min-height:30px;margin-bottom:0;font-size:.8rem}.doctor-link-copy-button{flex:none;width:30px;height:30px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;background:light-dark(#ffffff,#1a232e)}.doctor-link-copy-button svg{width:14px;height:14px}.doctor-link-copy-button.copied,.tool-share-copy-button.copied{border-color:light-dark(rgba(39,103,73,.45),rgba(111,196,146,.45));background:light-dark(#eaf6ef,rgba(111,196,146,.12));color:light-dark(#276749,#6fc492)}.tool-share-copy-button.disabled{opacity:.5;pointer-events:none}.tool-share-copy-button:disabled{opacity:.5;cursor:default}.tool-share-warning{color:light-dark(#8f5a1d,#d9a55c)}.tool-share-success{color:light-dark(#276749,#6fc492)}.tool-share-error{color:light-dark(#9b2c2c,#e98f86)}.viewer-status-pill{position:absolute;top:max(calc(var(--viewer-banner-bottom, var(--viewer-toolbar-bottom, 62px)) + 8px),calc(env(safe-area-inset-top) + 70px));left:50%;z-index:9;max-width:calc(100vw - 32px);padding:8px 12px;overflow:hidden;border:1px solid var(--glass-border);border-radius:999px;color:light-dark(#3c4a58,#bccad6);background:var(--glass-bg-soft);box-shadow:var(--glass-shadow);font-size:.78rem;font-weight:680;opacity:0;text-overflow:ellipsis;white-space:nowrap;transform:translate(-50%);transition:opacity .26s ease;backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);pointer-events:none}.viewer-status-pill.visible{opacity:1}.viewer-crash-notice>button{transform:translateY(var(--viewer-visual-center-y-offset))}.case-toast-stack{position:absolute;top:max(calc(var(--viewer-banner-bottom, var(--viewer-toolbar-bottom, 62px)) + 8px),calc(env(safe-area-inset-top) + 70px));left:50%;z-index:40;display:flex;flex-direction:column;gap:8px;align-items:center;width:max-content;max-width:calc(100vw - 32px);transform:translate(-50%);pointer-events:none}.case-toast{display:flex;align-items:center;gap:12px;width:100%;max-width:420px;padding:10px 14px;border:1px solid var(--glass-border);border-left-width:4px;border-radius:12px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);pointer-events:auto;animation:case-toast-in .2s ease}@keyframes case-toast-in{0%{opacity:0;transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.case-toast{animation:none}}.case-toast.error{border-left-color:light-dark(#9b2c2c,#e98f86)}.case-toast.warning{border-left-color:light-dark(#8f5a1d,#d9a55c)}.case-toast.success{border-left-color:light-dark(#276749,#58b982)}.case-toast.info{border-left-color:light-dark(#175891,#4c8cc9)}.case-toast-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.case-toast-title{font-size:.82rem;font-weight:700;color:light-dark(#2b3742,#d3dde6)}.case-toast.error .case-toast-title{color:light-dark(#8f2f2f,#ee8c84)}.case-toast.warning .case-toast-title{color:light-dark(#8f5a1d,#d9a55c)}.case-toast.success .case-toast-title{color:light-dark(#276749,#6fc492)}.case-toast.info .case-toast-title{color:light-dark(#175891,#85b5e2)}.case-toast-detail{font-size:.76rem;font-weight:550;color:light-dark(#5a6675,#94a6b4);line-height:1.3}.case-toast-suppress{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:.72rem;font-weight:550;color:light-dark(#5a6675,#94a6b4);cursor:pointer;-webkit-user-select:none;user-select:none}.case-toast-suppress input{cursor:pointer;margin:0}.case-toast-action{flex:0 0 auto;padding:6px 14px;border:0;border-radius:999px;background:light-dark(#8f2f2f,#c2564c);color:#fff;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.case-toast-action:hover{background:light-dark(#7a2727,#8a3232)}.case-toast.warning .case-toast-action{background:light-dark(#8f5a1d,#9a6524)}.case-toast.warning .case-toast-action:hover{background:light-dark(#7a4c18,#8a5a22)}.coach-tip{position:absolute;z-index:12;display:grid;justify-items:center;pointer-events:none}.coach-tip-bubble{position:relative;display:grid;gap:3px;max-width:min(300px,calc(100vw - 48px));padding:10px 14px;border:1px solid rgba(255,255,255,.16);border-radius:14px;color:#f4f7fa;background:#17202ac7;box-shadow:0 18px 38px light-dark(rgba(20,32,43,.34),rgba(0,0,0,.62)),inset 0 1px #ffffff1f;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);animation:coach-tip-in .24s ease-out both}.coach-tip.leaving .coach-tip-bubble{animation:coach-tip-out .26s ease-in forwards}.coach-tip-title{font-size:.8rem;font-weight:700}.coach-tip-body{margin:0;color:#f4f7fae0;font-size:.78rem;font-weight:600;line-height:1.35}.coach-tip-handle{bottom:max(58px,calc(env(safe-area-inset-bottom) + 58px));left:50%;transform:translate(-50%)}.coach-tip-handle .coach-tip-bubble:after{position:absolute;bottom:-5px;left:50%;width:10px;height:10px;border-right:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:#17202aeb;content:"";transform:translate(-50%) rotate(45deg)}.coach-tip-handle[data-side=right]{justify-items:end}.coach-tip-handle[data-side=right] .coach-tip-bubble:after{top:50%;right:-5px;bottom:auto;left:auto;border-top:1px solid rgba(255,255,255,.14);border-right:1px solid rgba(255,255,255,.14);border-bottom:0;border-left:0;transform:translateY(-50%) rotate(45deg)}.coach-tip-toolbar{top:max(82px,calc(env(safe-area-inset-top) + 82px));right:max(14px,env(safe-area-inset-right));justify-items:end}.coach-tip-toolbar .coach-tip-bubble:after{position:absolute;top:-5px;right:26px;width:10px;height:10px;border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14);background:#17202aeb;content:"";transform:rotate(45deg)}.coach-tip-guidance{top:max(82px,calc(env(safe-area-inset-top) + 82px));right:max(14px,env(safe-area-inset-right));justify-items:end}.coach-tip-viewport{top:46%;left:50%;transform:translate(-50%,-50%)}.coach-tip-viewport .coach-tip-bubble{padding:10px 18px;border-radius:999px;background:#17202ac7;text-align:center}@keyframes coach-tip-in{0%{opacity:0;transform:translateY(8px)}}@keyframes coach-tip-out{to{opacity:0;transform:translate(26px)}}@media(prefers-reduced-motion:reduce){.coach-tip-bubble{animation:none}.coach-tip.leaving .coach-tip-bubble{animation:none;opacity:0}}.web-tool-handle.coach-attention{animation:coach-handle-pulse 1.7s ease-out 2}@keyframes coach-handle-pulse{0%{box-shadow:0 12px 24px light-dark(rgba(20,32,43,.12),rgba(0,0,0,.38)),0 0 #0e8f7873}70%{box-shadow:0 12px 24px light-dark(rgba(20,32,43,.12),rgba(0,0,0,.38)),0 0 0 14px #0e8f7800}to{box-shadow:0 12px 24px light-dark(rgba(20,32,43,.12),rgba(0,0,0,.38)),0 0 #0e8f7800}}@media(prefers-reduced-motion:reduce){.web-tool-handle.coach-attention{animation:none}}.web-tool-handle{position:relative}.web-tool-handle.has-unread-messages:after{position:absolute;top:-4px;right:-4px;width:11px;height:11px;border:2px solid light-dark(rgba(255,255,255,.94),rgba(255,255,255,.15));border-radius:999px;background:light-dark(#2d6cdf,#4a83e8);box-shadow:0 3px 8px #2d6cdf5c;content:""}.web-tool-tray{position:absolute;right:max(14px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));left:max(14px,env(safe-area-inset-left));z-index:7;display:grid;justify-items:center;gap:10px;pointer-events:none;transition:right var(--motion-base) var(--ease-out)}.web-tool-tray>*{pointer-events:auto}.web-tool-panel{position:relative;display:grid;gap:12px;width:min(340px,100%);min-height:118px;padding:12px 18px 16px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);touch-action:none;transform-origin:bottom center;animation:tool-panel-rise var(--motion-base) var(--ease-out)}.web-tool-panel.closing{animation:tool-panel-sink var(--motion-exit, .15s) var(--ease-in) both;pointer-events:none}@keyframes tool-panel-rise{0%{opacity:0;transform:translateY(14px) scale(.97)}}@keyframes tool-panel-sink{to{opacity:0;transform:translateY(10px) scale(.98)}}.viewer-shell.designer-share-presented .web-tool-tray{top:max(66px,calc(env(safe-area-inset-top) + 66px));right:max(18px,env(safe-area-inset-right));bottom:auto;left:auto;z-index:11;justify-items:end;transform:none}.viewer-shell.designer-share-presented .web-tool-panel[data-panel=share]{animation:designer-share-sheet-slide-in var(--motion-slow) var(--ease-out)}.viewer-shell.designer-share-presented .web-tool-panel[data-panel=share].closing,.web-tool-panel[data-panel=chat].closing{animation:tool-sheet-slide-out calc(var(--motion-slow) * .6) var(--ease-in) both;pointer-events:none}@keyframes tool-sheet-slide-out{to{opacity:0;transform:translate(calc(100% + 18px)) scale(.97)}}.web-tool-panel[data-panel=chat]{grid-template-rows:auto auto minmax(0,1fr);width:min(430px,100%);height:min(640px,calc(100vh - 96px));height:min(640px,calc(100dvh - 96px));min-height:430px;padding:12px 16px 16px;animation:tool-chat-sheet-slide-in var(--motion-slow) var(--ease-out)}.web-tool-dismiss-x{display:none}.chat-tool-panel{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:0;min-width:0;min-height:0}@keyframes designer-share-sheet-slide-in{0%{opacity:0;transform:translate(calc(100% + 18px)) scale(.97)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes tool-chat-sheet-slide-in{0%{opacity:0;transform:translate(calc(100% + 18px)) scale(.97)}to{opacity:1;transform:translate(0) scale(1)}}.web-tool-grabber{justify-self:center;width:44px;height:5px;padding:0;border-radius:999px;background:light-dark(#cfd8e3,#33424f);cursor:pointer}.web-tool-heading{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:12px}.web-tool-heading:has(.mini-icon-button[aria-label="Back to scene tools"]),.web-tool-heading:has(.mini-icon-button[aria-label="Close share"]),.web-tool-heading:has(.mini-icon-button[aria-label="Close messages"]){position:relative}.web-tool-heading span{overflow:hidden;color:var(--ink);font-size:.9rem;font-weight:680;text-align:left;text-overflow:ellipsis;white-space:nowrap}.web-tool-heading:has(.mini-icon-button[aria-label="Back to scene tools"]) span,.web-tool-heading:has(.mini-icon-button[aria-label="Close share"]) span,.web-tool-heading:has(.mini-icon-button[aria-label="Close messages"]) span{position:absolute;left:28px;right:28px;text-align:center}.web-tool-heading .mini-icon-button[aria-label="Close share"],.web-tool-panel[data-panel=share] .web-tool-heading .mini-icon-button{grid-column:3;justify-self:end}.mini-icon-button{width:28px;height:28px;padding:0;border-radius:999px;line-height:0;box-shadow:none}.mini-icon-button.active,.web-tool-action.active{color:#fff;border-color:light-dark(#0084b8,#3fb1dd);background:light-dark(#0084b8,#1090c2)}.cross-section-bar{position:absolute;left:50%;bottom:max(58px,calc(env(safe-area-inset-bottom) + 58px));z-index:9;display:flex;align-items:center;gap:12px;max-width:min(620px,calc(100vw - 24px));padding:7px 14px;border:1px solid var(--glass-border);border-radius:999px;color:var(--ink);background:var(--glass-bg-soft);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform:translate(-50%);transition:bottom .22s cubic-bezier(.22,1,.36,1)}@media(orientation:portrait)and (max-width:820px){.viewer-shell:has(.web-tool-tray.expanded) .cross-section-bar{bottom:max(250px,calc(env(safe-area-inset-bottom) + 250px))}.control-panel{top:auto;bottom:0;left:0;right:0;width:100%;height:34vh;height:34dvh;max-height:34dvh;padding:16px 16px calc(14px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;box-shadow:0 -10px 30px light-dark(rgba(20,32,43,.18),rgba(0,0,0,.45));transform-origin:bottom center;transform:translateY(calc(100% + 16px))}.control-panel.presented{transform:translateY(0)}.web-tool-panel[data-panel=menu] .web-tool-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}.snapshot-strip{position:absolute;left:50%;bottom:max(58px,calc(env(safe-area-inset-bottom) + 58px));z-index:8;display:flex;align-items:center;gap:8px;max-width:min(680px,calc(100vw - 32px));padding:6px 10px;border:1px solid var(--glass-border);border-radius:999px;color:var(--ink);background:light-dark(rgba(214,222,231,.5),rgba(56,70,86,.5));box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform:translate(-50%);transition:bottom .22s cubic-bezier(.22,1,.36,1);animation:snapshot-strip-rise .22s cubic-bezier(.22,1,.36,1)}@keyframes snapshot-strip-rise{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.snapshot-strip-label{display:inline-flex;flex:none;align-items:center;gap:6px;padding:6px 8px;margin:-6px 0;border:0;border-radius:999px;background:transparent;cursor:pointer;font-family:inherit;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:light-dark(rgba(23,32,42,.6),rgba(211,221,230,.75))}.snapshot-strip-label:hover{background:var(--glass-bg-hover);color:light-dark(rgba(23,32,42,.85),rgba(211,221,230,.92))}.snapshot-strip-label svg{width:13px;height:13px}.snapshot-strip-collapse-indicator{opacity:.7}.snapshot-strip.collapsed{padding:6px 8px}.snapshot-strip.collapsed .snapshot-strip-label{margin:0;padding:2px 4px}.snapshot-strip-viewport{position:relative;display:flex;align-items:center;min-width:0;flex:1 1 auto}.snapshot-strip-viewport:has(.snapshot-strip-scroller.scrollable){min-width:72px}.snapshot-strip-scroller{display:flex;align-items:center;gap:8px;min-width:0;width:100%;padding:54px 2px 2px;margin-top:-52px;overflow-x:hidden;touch-action:pan-y;scrollbar-width:none}.snapshot-strip-scroller::-webkit-scrollbar{display:none}.snapshot-strip-scroller.scrollable{padding-left:34px;padding-right:34px}@property --fade-l{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --fade-r{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --plat-l{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --plat-r{syntax: "<length>"; inherits: false; initial-value: 0px;}.snapshot-strip-scroller{--plateau: 34px;--ramp: 58px;--fade-l: 0px;--fade-r: 0px;--plat-l: 0px;--plat-r: 0px;-webkit-mask-image:linear-gradient(to right,transparent 0,transparent var(--plat-l),#000 var(--fade-l),#000 calc(100% - var(--fade-r)),transparent calc(100% - var(--plat-r)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,transparent var(--plat-l),#000 var(--fade-l),#000 calc(100% - var(--fade-r)),transparent calc(100% - var(--plat-r)),transparent 100%);transition:--fade-l .16s ease,--fade-r .16s ease,--plat-l .16s ease,--plat-r .16s ease}.snapshot-strip-scroller.fade-left{--plat-l: var(--plateau);--fade-l: var(--ramp)}.snapshot-strip-scroller.fade-right{--plat-r: var(--plateau);--fade-r: var(--ramp)}.snapshot-strip-scroller.scrollable{cursor:grab}.snapshot-strip-scroller.grabbing{cursor:grabbing;user-select:none;-webkit-user-select:none}.snapshot-scroll-chevron{position:absolute;top:50%;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--glass-border-soft);border-radius:999px;color:var(--ink);background:var(--glass-bg);box-shadow:0 2px 8px light-dark(rgba(17,32,42,.16),rgba(0,0,0,.42));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.85);transition:opacity .16s ease,transform .16s ease,background .14s ease}.snapshot-scroll-chevron.left{left:2px}.snapshot-scroll-chevron.right{right:2px}.snapshot-scroll-chevron.visible{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.snapshot-scroll-chevron.visible:disabled{opacity:.32;pointer-events:none;cursor:default}.snapshot-scroll-chevron:hover:not(:disabled){background:var(--glass-bg-hover)}.snapshot-scroll-chevron svg{width:16px;height:16px}.snapshot-chip-group{position:relative;display:inline-flex;flex:none;align-items:center}.snapshot-chip{display:inline-flex;flex:none;align-items:center;gap:6px;max-width:190px;padding:7px 14px;border:1px solid var(--glass-border-soft);border-radius:999px;font:inherit;font-size:13px;font-weight:600;white-space:nowrap;color:var(--ink);background:light-dark(rgba(255,255,255,.94),rgba(26,35,46,.94));cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.snapshot-chip span{overflow:hidden;text-overflow:ellipsis}.snapshot-chip svg{flex:none;width:15px;height:15px}.snapshot-chip:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(255,255,255,.9),rgba(255,255,255,.14))}.snapshot-chip.active{color:#fff;border-color:light-dark(#0084b8,#3fb1dd);background:light-dark(#0084b8,#1090c2)}.snapshot-chip-add{border-style:dashed;color:light-dark(rgba(23,32,42,.72),rgba(211,221,230,.85));background:transparent}.snapshot-chip-add:hover{color:var(--ink);background:var(--glass-bg-hover)}.snapshot-chip-bubble{position:absolute;bottom:calc(100% + 10px);left:50%;z-index:5;display:inline-flex;align-items:center;gap:4px;padding:5px;border:1px solid var(--glass-border-soft);border-radius:12px;background:var(--glass-bg);box-shadow:0 8px 24px light-dark(rgba(17,32,42,.22),rgba(0,0,0,.5));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transform:translate(-50%);transform-origin:bottom center;animation:snapshot-bubble-pop .16s cubic-bezier(.22,1,.36,1)}.snapshot-chip-bubble:after{content:"";position:absolute;top:100%;left:50%;width:12px;height:12px;margin:-7px 0 0 -6px;border-right:1px solid var(--glass-border-soft);border-bottom:1px solid var(--glass-border-soft);background:var(--glass-bg);transform:rotate(45deg)}.snapshot-chip-edit{position:relative;z-index:1;display:inline-flex;flex:none;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:8px;color:var(--ink);background:transparent;cursor:pointer}.snapshot-chip-edit svg{width:14px;height:14px}.snapshot-chip-edit:hover{background:var(--glass-bg-hover)}.snapshot-chip-edit.danger{color:light-dark(#3f6285,#7fa1c4)}.snapshot-chip-edit.danger:hover{background:light-dark(rgba(63,98,133,.12),rgba(127,161,196,.14))}.snapshot-chip-edit.confirm{color:light-dark(#0084b8,#4cb8e0)}.snapshot-chip-edit.confirm:hover{background:light-dark(rgba(0,132,184,.12),rgba(42,169,220,.14))}.snapshot-chip-rename-input{width:148px;height:28px;padding:0 8px;border:1px solid var(--glass-border-soft);border-radius:8px;font:inherit;font-size:13px;font-weight:600;color:var(--ink);background:light-dark(rgba(255,255,255,.7),rgba(26,35,46,.7))}.snapshot-chip-rename-input:focus{outline:none;border-color:light-dark(#0084b8,#3fb1dd);box-shadow:0 0 0 2px #0084b840}@keyframes snapshot-bubble-pop{0%{opacity:0;transform:translate(-50%) translateY(4px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.viewer-shell:has(.snapshot-strip) .cross-section-bar{bottom:max(114px,calc(env(safe-area-inset-bottom) + 114px))}@media(max-width:640px){.snapshot-strip-label>span{display:none}.snapshot-strip{max-width:calc(100vw - 24px)}}@media(orientation:portrait)and (max-width:820px){.viewer-shell:has(.web-tool-tray.expanded) .snapshot-strip{bottom:max(250px,calc(env(safe-area-inset-bottom) + 250px))}.viewer-shell:has(.web-tool-tray.expanded):has(.snapshot-strip) .cross-section-bar{bottom:max(306px,calc(env(safe-area-inset-bottom) + 306px))}}.cross-section-pip{position:absolute;top:0;left:0;z-index:7;width:clamp(110px,18vw,280px);aspect-ratio:1;padding:14px;border:1px solid light-dark(rgba(0,0,0,.08),rgba(255,255,255,.1));border-radius:16px;background:light-dark(#ffffff,#1a232e);box-shadow:0 4px 10px light-dark(rgba(0,0,0,.22),rgba(0,0,0,.5));cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .22s cubic-bezier(.22,1,.36,1);animation:cross-section-pip-enter .18s ease-out}.cross-section-pip.dragging{cursor:grabbing;transition:none;box-shadow:0 8px 22px light-dark(rgba(0,0,0,.3),rgba(0,0,0,.55))}.cross-section-pip-outline{display:block;width:100%;height:100%;pointer-events:none;overflow:hidden}.cross-section-pip-move{position:absolute;top:6px;left:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:light-dark(rgba(27,39,51,.62),rgba(211,221,230,.72));background:light-dark(rgba(255,255,255,.78),rgba(26,35,46,.78));opacity:0;transition:opacity .14s ease-out;pointer-events:none}.cross-section-pip-move svg{width:16px;height:16px}.cross-section-pip:hover .cross-section-pip-move,.cross-section-pip.dragging .cross-section-pip-move{opacity:1}@media(pointer:coarse){.cross-section-pip-move{opacity:1}}.cross-section-pip.measuring{cursor:crosshair;z-index:201}.cross-section-pip.measuring .cross-section-pip-move{display:none}.cross-section-pip-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f171f4d;cursor:crosshair;touch-action:none;animation:cross-section-pip-scrim-in .16s ease-out}@keyframes cross-section-pip-scrim-in{0%{opacity:0}to{opacity:1}}.cross-section-pip-measure-surface{pointer-events:all;cursor:crosshair;touch-action:none}.cross-section-pip-caliper-label{font-size:7px;font-weight:800;fill:light-dark(#17202a,#edf3f8);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;pointer-events:none}.cross-section-pip-measure-toggle{position:absolute;bottom:6px;right:6px;width:28.8px;height:28.8px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid light-dark(rgba(0,0,0,.08),rgba(255,255,255,.1));border-radius:9.6px;color:light-dark(rgba(27,39,51,.7),rgba(211,221,230,.8));background:light-dark(rgba(255,255,255,.9),rgba(26,35,46,.9));box-shadow:0 1px 2px light-dark(rgba(0,0,0,.12),rgba(0,0,0,.3));cursor:pointer;transition:color .14s ease,background .14s ease,border-color .14s ease}.cross-section-pip-measure-toggle svg{width:18px;height:18px}.cross-section-pip-measure-toggle:hover{color:light-dark(#0084b8,#4cb8e0)}.cross-section-pip-measure-toggle.active{color:#fff;background:light-dark(#0084b8,#1090c2);border-color:light-dark(#0084b8,#3fb1dd)}@keyframes cross-section-pip-enter{0%{opacity:0}to{opacity:1}}.cross-section-flip-button{display:flex;align-items:center;gap:6px;height:44px;padding:0 16px;border:none;border-radius:999px;color:light-dark(#2b3742,#d3dde6);background:transparent;box-shadow:none;font-size:.9rem;font-weight:650;cursor:pointer}.cross-section-flip-button svg{width:17px;height:17px}.cross-section-flip-button.active{color:light-dark(#00759f,#55bde2)}.cross-section-done-button{display:flex;align-items:center;gap:6px;height:44px;padding:0 16px;border:none;border-radius:999px;color:light-dark(#2b3742,#d3dde6);background:transparent;box-shadow:none;font-size:.9rem;font-weight:650;cursor:pointer}.cross-section-done-button svg{width:15px;height:15px}.cross-section-clear-button{display:flex;align-items:center;gap:6px;height:44px;padding:0 16px;border:none;border-radius:999px;color:light-dark(#2b3742,#d3dde6);background:transparent;box-shadow:none;font-size:.9rem;font-weight:650;cursor:pointer}.cross-section-clear-button svg{width:16px;height:16px}.cross-section-coach{position:absolute;top:22%;left:50%;z-index:9;display:grid;gap:4px;justify-items:center;max-width:min(330px,calc(100vw - 48px));padding:16px 22px 14px;text-align:center;color:var(--ink);border:1px solid rgba(0,191,242,.4);border-radius:16px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform:translate(-50%,-50%);pointer-events:none;opacity:1;transition:opacity .55s ease}.cross-section-coach.leaving{opacity:0}.cross-section-coach strong{font-size:.95rem;font-weight:700}.cross-section-coach p{margin:0;font-size:.83rem;line-height:1.4;color:light-dark(#3c4854,#bccad6)}.cross-section-coach .cross-section-coach-secondary{font-size:.76rem;color:light-dark(#6b7884,#8a9dac)}.cross-section-coach-stage{position:relative;width:200px;height:110px;margin-bottom:6px;overflow:hidden}.cross-section-coach-stage svg{display:block;width:100%;height:100%}.cross-section-coach-symbol{opacity:.9}.cross-section-coach-cut{stroke:#00bff2;stroke-width:3;stroke-linecap:round;stroke-dasharray:150;animation:cross-section-coach-cut-draw 2.6s ease-in-out infinite}.cross-section-coach-hand path{fill:none;stroke:light-dark(#2b3742,#d3dde6);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cross-section-coach-hand path:last-child{fill:#ffffffeb}.cross-section-coach-draw{animation:cross-section-coach-draw 2.6s ease-in-out infinite}@keyframes cross-section-coach-draw{0%{transform:translate(0);opacity:1}46%{transform:translate(128px,-66px);opacity:1}70%{transform:translate(128px,-66px);opacity:1}85%,to{transform:translate(128px,-66px);opacity:0}}@keyframes cross-section-coach-cut-draw{0%{stroke-dashoffset:150;opacity:.15}12%{opacity:1}46%,70%{stroke-dashoffset:0;opacity:1}85%,to{stroke-dashoffset:0;opacity:0}}@media(prefers-reduced-motion:reduce){.cross-section-coach-draw,.cross-section-coach-cut{animation:none}}.web-tool-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:12px}.web-tool-action{display:grid;place-items:center;gap:6px;min-width:0;min-height:54px;padding:10px 8px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:18px;color:var(--ink);background:light-dark(rgba(249,251,253,.88),rgba(22,30,40,.9));cursor:pointer}.web-tool-action:disabled{color:light-dark(#8996a4,#7e91a0);cursor:not-allowed;opacity:.6}.web-tool-action svg{width:20px;height:20px}.web-tool-action span{min-width:0;overflow:hidden;font-size:.78rem;font-weight:700;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.tool-share-panel{display:grid;justify-items:center;gap:10px;min-width:0;padding:2px 6px 6px}.tool-share-code{display:grid;place-items:center;width:172px;height:172px;border:1px solid light-dark(#d8e0e9,#2d3946);border-radius:8px;background:light-dark(#ffffff,#1a232e)}.share-qr-canvas{display:block;width:148px!important;height:148px!important;max-width:none;max-height:none;image-rendering:pixelated}.tool-share-panel p{max-width:210px;margin:0;color:light-dark(#53606d,#9caebc);font-size:.82rem;font-weight:650;line-height:1.25;text-align:center}.tool-share-create-button{width:min(190px,100%);min-height:48px;padding:10px 14px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;color:var(--ink);background:light-dark(#ffffff,#1a232e);font-size:.82rem;font-weight:700;line-height:1.15}.tool-share-create-button:disabled{color:light-dark(#607080,#8da0af);background:light-dark(#f7f9fb,#10161d)}.tool-share-copy-button,.qr-copy-button{text-decoration:none;display:inline-grid;grid-auto-flow:column;place-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:8px;color:light-dark(#17324f,#b9d0e4);background:light-dark(#ffffff,#1a232e);font-size:.8rem;font-weight:680;cursor:pointer}.share-options{display:grid;gap:8px;width:100%}.share-handoff{display:grid;justify-items:center;gap:10px;padding:2px 0}.share-handoff canvas{border-radius:10px}.share-handoff p{margin:0;max-width:190px;color:light-dark(#53606d,#9caebc);font-size:.78rem;line-height:1.4;text-align:center}.share-options .tool-share-copy-button{width:100%}.web-tool-handle{width:min(164px,48vw);height:36px;padding:0;border-radius:18px;line-height:0}.web-tool-tray.expanded .web-tool-handle{display:none}.scanner-modal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:#14202b80;backdrop-filter:var(--glass-scrim-filter);-webkit-backdrop-filter:var(--glass-scrim-filter);animation:dialog-backdrop-in var(--motion-fast) var(--ease-out) both}.scanner-modal.closing{animation:dialog-backdrop-out calc(var(--motion-fast) * .85) var(--ease-in) both;pointer-events:none}.scanner-card{display:grid;gap:12px;width:min(420px,100%);padding:14px;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:dialog-pop-in var(--motion-base) var(--ease-out) both}.scanner-modal.closing .scanner-card{animation:dialog-pop-out calc(var(--motion-fast) * .85) var(--ease-in) both}.scanner-heading{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:12px}.scanner-heading span{color:var(--ink);font-size:.98rem;font-weight:700}.scanner-preview{position:relative;overflow:hidden;border-radius:10px;background:light-dark(#17202a,#223041);aspect-ratio:1}.scanner-preview video{display:block;width:100%;height:100%;object-fit:cover}.scanner-reticle{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:2px solid light-dark(rgba(255,255,255,.9),rgba(255,255,255,.14));border-radius:16px;box-shadow:0 0 0 999px light-dark(rgba(0,0,0,.2),rgba(0,0,0,.45));pointer-events:none}.scanner-card p{margin:0;min-height:1.2em;color:light-dark(#53606d,#9caebc);font-size:.86rem;font-weight:650;line-height:1.25;text-align:center}.icon-button{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border-radius:8px;color:light-dark(#17324f,#b9d0e4);background:light-dark(#e9eef4,#212c38);cursor:pointer}.icon-button:hover{background:light-dark(#dbe6f2,#2a3846)}.icon-button.danger{color:light-dark(#3f6285,#7fa1c4);background:light-dark(#e7eef5,#243040)}.icon-button.danger:hover{background:light-dark(#d9e6f1,#2a3846)}.icon-button:disabled{opacity:.4;cursor:not-allowed}.icon-button:disabled:hover{background:light-dark(#e9eef4,#212c38)}.icon-button.danger:disabled:hover{background:light-dark(#e7eef5,#243040)}.mesh-vis-track input:disabled{cursor:not-allowed}.icon-button svg{display:block;width:18px;height:18px}.loaded-panel{display:grid;align-content:start;grid-template-rows:auto auto;gap:16px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:2px;touch-action:pan-y;-webkit-overflow-scrolling:touch}.qr-panel{display:grid;gap:12px;padding-bottom:16px;border-bottom:1px solid light-dark(#e2e8ef,#2b3745)}.qr-heading{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px}.qr-heading>svg{width:34px;height:34px;padding:8px;border-radius:8px;color:light-dark(#17324f,#b9d0e4);background:light-dark(#e9eef4,#212c38)}.qr-heading h2{margin:0;color:var(--ink);font-size:.96rem;line-height:1.2}.qr-heading span{display:block;margin-top:2px;color:light-dark(#6a7786,#8a9dac);font-size:.82rem}.qr-code{display:grid;place-items:center;padding:10px;border:1px solid light-dark(#d8e0e9,#2d3946);border-radius:8px;background:light-dark(#ffffff,#1a232e)}.qr-link{display:block;min-width:0;overflow:hidden;color:light-dark(#00759f,#55bde2);font-size:.76rem;line-height:1.3;text-overflow:ellipsis;text-decoration:none;white-space:nowrap}.qr-link:hover{text-decoration:underline}.qr-copy-button{width:100%}.mesh-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;position:relative}.panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid light-dark(#e2e8ef,#2b3745)}.panel-heading h1{margin:0;color:var(--ink);font-size:1.04rem;line-height:1.1}.panel-heading span{color:light-dark(#6a7786,#8a9dac);font-size:.86rem}.mesh-list{display:grid;align-content:start;gap:10px;min-height:0;padding-top:12px;padding-right:12px;overflow:auto}.mesh-list,.loaded-panel{scrollbar-width:none}.mesh-list::-webkit-scrollbar,.loaded-panel::-webkit-scrollbar{display:none}.mesh-scroll-indicator{position:absolute;right:2px;width:4px;border-radius:999px;background:#3c485861;pointer-events:none;opacity:1;z-index:2;transition:opacity .22s ease}.mesh-row{display:grid;gap:2px;--mesh-role-color: #8a8f98;position:relative;padding:8px 10px 6px;border:1px solid light-dark(#e0e7ef,#2c3947);border-radius:8px;background:light-dark(#fbfcfe,#1c2531)}.mesh-row.mesh-role-upper{--mesh-role-color: #5b7fa6}.mesh-row.mesh-role-lower{--mesh-role-color: #5f9d63}.mesh-row.mesh-role-abutment{--mesh-role-color: #4f9d97}.mesh-row.mesh-role-crown{--mesh-role-color: #8b6fa8}.mesh-row.selected{border-color:light-dark(#0084b8,#3fb1dd)}.mesh-row-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-auto-flow:column;grid-auto-columns:28px;align-items:center;gap:6px}.mesh-name{display:flex;align-items:center;gap:8px;min-width:0;padding:0;color:inherit;text-align:left;background:transparent;cursor:pointer}.mesh-name span{min-width:0;overflow:hidden;font-weight:700;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.mesh-name i{width:9px;height:9px;flex:0 0 auto;border-radius:999px;background:var(--mesh-role-color)}.mesh-row.is-hidden .mesh-name{opacity:.45}.mesh-row .icon-button{width:28px;height:28px;background:transparent}.mesh-row .icon-button:hover{background:light-dark(#dbe6f2,#2a3846)}.mesh-row .icon-button:disabled:hover{background:transparent}.mesh-row .icon-button svg{width:17px;height:17px}.mesh-vis-bar{display:flex;align-items:center;gap:5px;height:30px}.mesh-vis-bar .mesh-eye{border-radius:999px;flex:0 0 auto;background:light-dark(#e9eef4,#212c38)}.mesh-vis-track{position:relative;flex:1;align-self:stretch;border-radius:999px;overflow:hidden;background:light-dark(#e9eef4,#212c38)}.mesh-vis-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:color-mix(in srgb,var(--mesh-role-color) 55%,transparent);min-width:14px;transition:width 80ms linear}.mesh-row.is-hidden .mesh-vis-fill{width:0!important;min-width:0}.mesh-vis-thumb{position:absolute;top:50%;right:5px;transform:translateY(-50%);padding:1px 6px;border-radius:999px;border:1px solid light-dark(rgba(44,62,80,.18),rgba(255,255,255,.12));background:light-dark(rgba(255,255,255,.82),rgba(10,16,24,.72));color:light-dark(#2c3e50,#c7d8e8);font-size:.72rem;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.mesh-row.is-hidden .mesh-vis-thumb{color:light-dark(#8a99a9,#7d8fa0)}.mesh-vis-track input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;-moz-appearance:none;appearance:none}.mesh-vis-track input::-webkit-slider-thumb{-webkit-appearance:none;width:34px;height:30px}.mesh-vis-track input::-moz-range-thumb{width:34px;height:30px;border:none}.mesh-show-all{margin-right:28px;padding:2px 10px;border-radius:999px;color:light-dark(#17324f,#b9d0e4);background:light-dark(#e9eef4,#212c38);font-size:.78rem;cursor:pointer}.mesh-show-all:hover{background:light-dark(#dbe6f2,#2a3846)}.mesh-row-menu{position:relative}.mesh-menu-trigger{color:light-dark(#8a99a9,#6d8093)}.mesh-menu-trigger:hover,.mesh-menu-trigger[aria-expanded=true]{color:light-dark(#17324f,#b9d0e4)}.mesh-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:5;display:grid;min-width:168px;padding:4px;border:1px solid light-dark(#d8e0e9,#2d3946);border-radius:10px;background:light-dark(#ffffff,#223041);box-shadow:0 10px 28px light-dark(rgba(23,50,79,.16),rgba(0,0,0,.45))}.mesh-menu button{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:7px;color:light-dark(#17324f,#c7d8e8);background:transparent;font-size:.84rem;text-align:left;cursor:pointer}.mesh-menu button:hover{background:light-dark(#e9eef4,#2a3846)}.mesh-menu button svg{width:15px;height:15px;color:light-dark(#53606d,#8a9dac)}.mesh-menu button.danger,.mesh-menu button.danger svg{color:light-dark(#3f6285,#7fa1c4)}.mesh-menu-details{margin-top:2px;padding:6px 9px 4px;border-top:1px solid light-dark(#e2e8ef,#2b3745);color:light-dark(#6a7786,#8a9dac);font-size:.74rem;white-space:nowrap}.panel-placeholder{display:flex;align-items:center;justify-content:center;gap:10px;color:light-dark(#a6b2bf,#66788a)}@media(min-width:821px){.viewer-shell{--control-panel-width: min(390px, calc(100vw - 32px) )}.qr-panel{justify-items:stretch}}@media(max-width:700px),(orientation:landscape)and (max-height:500px){.loaded-panel .qr-panel{display:none}}@media(max-width:720px){.case-queue-lead,.case-list-lead{grid-template-columns:1fr;align-items:stretch}.case-queue-lead>.new-case-trigger,.case-queue-lead>.case-queue-toggle,.case-queue-lead>.case-scope-toggle,.case-queue-lead>.search-omnibox,.case-list-lead>.new-case-trigger,.case-list-lead>.case-scope-toggle,.case-list-lead>.search-omnibox{grid-column:1;grid-row:auto;width:auto}.case-queue-lead>.new-case-trigger,.case-list-lead>.new-case-trigger{justify-self:stretch;margin-left:0}.case-queue-lead>.new-case-trigger{order:0}.case-queue-lead>.case-scope-toggle{order:1}.case-queue-lead>.search-omnibox{order:2}.case-queue-lead>.case-queue-toggle{order:3}}@media(max-width:760px){.designer-case-toolbar{align-items:flex-start}.designer-case-toolbar .viewer-toolbar-title-group{max-width:min(420px,calc(100vw - 140px))}.designer-case-toolbar .viewer-toolbar-actions{flex:1 1 auto;margin-left:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.designer-case-toolbar .viewer-toolbar-actions::-webkit-scrollbar{display:none}}@media(max-width:600px){.designer-case-toolbar .viewer-history-button span{display:none}.designer-case-toolbar .viewer-history-button{gap:0;padding:0 7px}}.mini-icon-button .web-tool-chevron-right,.mini-icon-button .web-tool-chevron-back-right{display:none}@media(orientation:landscape),(min-width:821px){.viewer-shell{--viewer-visual-center-y-offset: -6px}.mini-icon-button .web-tool-chevron-down{display:none}.mini-icon-button .web-tool-chevron-right{display:block}.mini-icon-button .web-tool-chevron-back-left{display:none}.mini-icon-button .web-tool-chevron-back-right{display:block}.viewer-shell{--control-panel-width: min(340px, calc(100vw - 32px) )}.viewer-shell.menu-presented{--legend-top-limit: min(638px, 58dvh)}.viewer-shell.viewer-mode-designer.menu-presented{--legend-top-limit: min(688px, 58dvh)}.viewer-shell.menu-presented:has(.controls-legend) .control-panel{height:min(620px,calc(58dvh - 18px))}.viewer-shell.viewer-mode-designer.menu-presented:has(.controls-legend) .control-panel{height:min(620px,calc(58dvh - 68px))}.viewer-shell.viewer-mode-designer.menu-presented .viewer-toolbar-actions{pointer-events:none}.viewer-shell.viewer-mode-designer.menu-presented .viewer-toolbar-actions>.floating-capsule-button:not(.send-doctor-toolbar-button){display:none}.viewer-shell.viewer-mode-designer.menu-presented .send-doctor-toolbar-button{pointer-events:auto}.viewer-shell.viewer-mode-designer.menu-presented .open-files-context{display:inline-grid}.web-tool-tray{top:calc(var(--viewer-toolbar-bottom, 62px) + 12px);right:max(15px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));left:auto;justify-items:end;align-content:start;transform:none}.web-tool-tray:not(.expanded){right:max(6px,env(safe-area-inset-right))}.snapshot-strip{bottom:max(12px,env(safe-area-inset-bottom));max-width:min(680px,calc(100vw - 132px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)))}.viewer-shell:has(.snapshot-strip) .cross-section-bar{bottom:max(68px,calc(env(safe-area-inset-bottom) + 68px))}.viewer-undo-redo-group,.web-tool-tray.expanded .viewer-undo-redo-group{position:static;display:inline-flex;flex-direction:column}.viewer-undo-redo-group .floating-icon-button{width:38px;height:38px}.viewer-undo-redo-group .viewer-undo-button{border-right:1px solid var(--glass-border);border-bottom:none;border-radius:999px 999px 0 0}.viewer-undo-redo-group .viewer-redo-button{border-radius:0 0 999px 999px}.web-tool-tray.expanded .web-tool-panel:not([data-panel=chat]){max-height:100%;overflow-y:auto;overscroll-behavior:contain}.web-tool-panel{width:116px;min-height:auto;padding:10px 14px 12px;gap:8px}.web-tool-message-action{margin-top:16px}.web-tool-message-action:before{content:"";position:absolute;top:-12px;left:50%;width:52%;height:1px;background:light-dark(rgba(15,23,42,.14),rgba(255,255,255,.13));transform:translate(-50%)}.web-tool-heading{gap:6px}.web-tool-panel[data-panel=menu] .web-tool-heading{grid-template-columns:minmax(0,1fr);justify-items:center}.web-tool-panel[data-panel=menu] .web-tool-heading>div[aria-hidden=true],.web-tool-panel[data-panel=menu] .web-tool-heading span{display:none}.web-tool-panel[data-panel=menu] .web-tool-heading .mini-icon-button{grid-column:1;justify-self:center}.web-tool-panel[data-panel=share]{width:270px;min-height:286px;justify-items:center;padding:10px 18px 16px 22px}.web-tool-panel[data-panel=share]:has(.share-options){width:fit-content;min-width:0;min-height:0}.web-tool-panel[data-panel=chat]{grid-template-rows:auto minmax(0,1fr);width:min(430px,calc(100vw - 38px));height:min(640px,calc(100vh - 36px));height:min(640px,calc(100dvh - 36px));min-height:min(430px,calc(100vh - 36px));padding:12px 16px 16px 22px}.web-tool-heading span{font-size:.84rem;text-align:center}.web-tool-panel[data-panel=share] .web-tool-heading,.web-tool-panel[data-panel=chat] .web-tool-heading{grid-template-columns:28px minmax(0,1fr) 28px;width:100%}.web-tool-panel[data-panel=share] .web-tool-heading>div[aria-hidden=true]{display:none}.web-tool-panel[data-panel=chat] .web-tool-heading>div[aria-hidden=true]{display:none}.web-tool-grabber{position:absolute;left:0;top:0;width:22px;height:100%;background:transparent;transform:none}.web-tool-grabber:before{position:absolute;left:6px;top:50%;width:4px;height:56px;border-radius:999px;background:light-dark(#cfd8e3,#33424f);content:"";transform:translateY(-50%)}.web-tool-actions{grid-template-columns:minmax(0,1fr);justify-items:center;gap:8px}.web-tool-action{width:66px;height:66px;min-height:0;padding:7px 4px;border-radius:14px}.web-tool-action span{font-size:.68rem}.web-tool-handle{width:38px;height:136px;transform-origin:center right}}@media(orientation:landscape)and (max-height:500px){.web-tool-panel[data-panel=share]{min-height:276px}.viewer-shell:not(.menu-presented) .controls-legend{top:calc(var(--viewer-toolbar-bottom, 62px) + 8px);bottom:auto;padding:10px 16px 12px;max-height:calc(100dvh - var(--viewer-toolbar-bottom, 62px) - 8px - max(20px,var(--legend-bottom) - 40px))}.viewer-shell:not(.menu-presented) .controls-legend .controls-legend-header{position:absolute;top:8px;right:10px;z-index:3}.viewer-shell:has(.snapshot-strip) .control-panel{height:min(620px,calc(100dvh - max(18px,env(safe-area-inset-top)) - max(16px,var(--legend-bottom) - 52px)))}.web-tool-tray{align-content:center}.web-tool-tray.expanded:not(:has(.web-tool-panel[data-panel=chat])){grid-template-rows:auto minmax(0,1fr);align-content:stretch}.web-tool-tray.expanded .web-tool-panel:not([data-panel=chat]){align-self:center}.web-tool-panel[data-panel=menu]{width:max-content;max-width:calc(100vw - 90px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-height:calc(100dvh - 16px)}.web-tool-panel[data-panel=menu] .web-tool-actions{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-template-rows:none;grid-auto-columns:66px;justify-items:center;gap:8px}.web-tool-message-action{margin-top:0;margin-left:16px}.web-tool-message-action:before{top:50%;left:-12px;width:1px;height:52%;transform:translateY(-50%)}.web-tool-panel[data-panel=menu] .web-tool-heading{grid-template-columns:28px minmax(0,1fr) 28px;justify-items:stretch}.web-tool-panel[data-panel=menu] .web-tool-heading>div[aria-hidden=true],.web-tool-panel[data-panel=menu] .web-tool-heading span{display:block}.web-tool-panel[data-panel=menu] .web-tool-heading .mini-icon-button{grid-column:3;justify-self:end}.mini-icon-button .web-tool-chevron-down{display:block}.mini-icon-button .web-tool-chevron-right{display:none}.viewer-shell:has(.web-tool-tray.expanded) .snapshot-strip{display:none}}@media(orientation:portrait)and (max-width:540px),(orientation:landscape)and (max-height:500px){.web-tool-tray:has(.web-tool-panel[data-panel=chat]){top:0;right:0;bottom:0;left:0;z-index:40;transform:none;align-items:end;pointer-events:auto;background:light-dark(rgba(15,23,42,.42),rgba(0,0,0,.55))}.web-tool-tray:has(.web-tool-panel[data-panel=chat]) .web-tool-handle{display:none}.web-tool-panel[data-panel=chat]{width:100%;height:calc(100dvh - max(32px,calc(env(safe-area-inset-top) + 18px)));max-height:calc(100dvh - 28px);min-height:0;border:0;border-radius:22px 22px 0 0;grid-template-rows:auto minmax(0,1fr);padding:14px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.web-tool-panel[data-panel=chat]>.web-tool-grabber{display:none}.web-tool-panel[data-panel=chat] .web-tool-dismiss-left{visibility:hidden}.web-tool-panel[data-panel=chat] .web-tool-dismiss-x{display:inline-grid;grid-column:3}}@media(min-width:1180px){.control-panel{width:396px}.web-tool-panel{width:116px;min-height:auto}.web-tool-panel[data-panel=chat]{width:430px}.web-tool-handle{height:156px}}.viewer-turn-banner{position:absolute;top:calc(var(--viewer-toolbar-bottom, 62px) + 10px);left:50%;transform:translate(-50%);width:max-content;max-width:calc(100vw - 24px);text-align:center;z-index:30;padding:6px 14px;border-radius:999px;background:light-dark(rgba(23,88,145,.92),rgba(30,74,112,.92));color:#fff;font-size:13px;font-weight:600;box-shadow:0 2px 10px light-dark(rgba(0,0,0,.15),rgba(0,0,0,.35));pointer-events:none;transition:opacity .16s ease,transform .16s ease,top .16s ease}.viewer-turn-banner-action{pointer-events:auto;margin-left:10px;padding:2px 10px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:#ffffff24;color:#fff;font:inherit;font-weight:700;cursor:pointer}.viewer-turn-banner-action:hover{background:#ffffff42}.viewer-workspace:has(.notification-bell-panel) .viewer-turn-banner{top:max(24px,calc(env(safe-area-inset-top) + 6px))}.nav-gizmo{position:absolute;left:12px;bottom:12px;z-index:8;display:flex;flex-direction:column;gap:6px;align-items:flex-start;pointer-events:auto;font-size:12px;color:var(--ink)}.nav-gizmo-views{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.nav-gizmo-actions{display:flex;gap:4px}.nav-gizmo-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:9px;background:var(--glass-bg-soft);color:var(--ink);font-size:13px;font-weight:600;line-height:1;cursor:pointer;box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transition:background .12s ease,border-color .12s ease,transform .05s ease}.nav-gizmo-btn:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.nav-gizmo-btn:active{transform:translateY(1px)}.nav-gizmo-btn.active{background:light-dark(#2563eb,#3b74ee);border-color:light-dark(#2563eb,#5b8df0);color:#fff}.nav-gizmo-panel{width:232px;padding:12px;border-radius:14px;background:var(--glass-bg-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow-y:auto}.nav-gizmo-panel-header{display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:13px}.nav-gizmo-close{border:none;background:transparent;cursor:pointer;font-size:13px;color:light-dark(#6b7280,#8a9dac);padding:2px 6px;border-radius:6px}.nav-gizmo-close:hover{background:light-dark(rgba(15,23,42,.06),rgba(255,255,255,.06));color:var(--ink)}.nav-gizmo-field{display:flex;flex-direction:column;gap:5px}.nav-gizmo-field-label{display:flex;align-items:center;justify-content:space-between;font-weight:600;color:light-dark(#374151,#c5cfda)}.nav-gizmo-field-value{font-variant-numeric:tabular-nums;font-weight:500;color:light-dark(#6b7280,#8a9dac)}.nav-gizmo-field input[type=range]{width:100%;accent-color:light-dark(#2563eb,#3b74ee)}.nav-gizmo-segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.nav-gizmo-segmented button{border:1px solid light-dark(rgba(15,23,42,.14),rgba(255,255,255,.13));border-radius:6px;background:light-dark(#fff,#1a232e);padding:5px 0;font-size:12px;font-weight:600;color:light-dark(#374151,#c5cfda);cursor:pointer}.nav-gizmo-segmented button.active{background:light-dark(#2563eb,#3b74ee);border-color:light-dark(#2563eb,#5b8df0);color:#fff}.nav-gizmo-checkbox{display:flex;align-items:center;gap:8px;font-weight:600;color:light-dark(#374151,#c5cfda);cursor:pointer}.nav-gizmo-checkbox input{accent-color:light-dark(#2563eb,#3b74ee)}.nav-gizmo-defaults{border:1px solid light-dark(rgba(15,23,42,.14),rgba(255,255,255,.13));border-radius:7px;background:light-dark(#fff,#1a232e);padding:7px 0;font-size:12px;font-weight:600;color:light-dark(#374151,#c5cfda);cursor:pointer}.nav-gizmo-defaults:hover{background:light-dark(rgba(15,23,42,.04),rgba(255,255,255,.05))}.nav-gizmo-legend{margin:0;font-size:11px;line-height:1.45;color:light-dark(#6b7280,#8a9dac)}.controls-legend{position:absolute;left:max(12px,env(safe-area-inset-left));bottom:var(--legend-bottom);z-index:9;width:var(--control-panel-width);max-height:calc(100dvh - var(--legend-top-limit) - var(--legend-bottom) - 8px);overflow:hidden;padding:13px 16px 15px;display:flex;flex-direction:column;gap:9px;border-radius:19px;background:var(--glass-bg-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);color:var(--ink);font-size:13.5px;line-height:1.25;pointer-events:none;-webkit-user-select:none;user-select:none;transition:transform .22s ease,opacity .18s ease,visibility 0s linear 0s,bottom .22s ease,max-height .22s ease;transform-origin:bottom left;animation:corner-card-in var(--motion-base) var(--ease-out)}.controls-legend.closing{animation:corner-card-out var(--motion-exit) var(--ease-in) both;pointer-events:none}@keyframes corner-card-in{0%{opacity:0;transform:scale(.88) translateY(8px)}}@keyframes corner-card-out{to{opacity:0;transform:scale(.9) translateY(6px)}}@keyframes corner-fab-in{0%{opacity:0;transform:scale(.6)}}.controls-legend-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.controls-legend-collapse{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;padding:0;border-radius:8px;border:1px solid light-dark(rgba(15,23,42,.2),rgba(255,255,255,.18));background:var(--glass-bg-soft);color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .05s ease}.controls-legend-collapse svg{width:17px;height:17px}.controls-legend-collapse:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.controls-legend-collapse:active{transform:translateY(1px)}.controls-legend-fab{position:absolute;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:9;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid light-dark(rgba(15,23,42,.2),rgba(255,255,255,.18));background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);color:var(--ink);cursor:pointer;pointer-events:auto;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform .05s ease,opacity .18s ease,visibility 0s linear 0s;animation:corner-fab-in var(--motion-fast) var(--ease-out) 60ms both}.controls-legend-fab-glyph{font-size:19px;font-weight:600;line-height:1;transform:translateY(-1px)}.controls-legend-fab:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.controls-legend-fab:active{transform:translateY(1px)}@media(max-width:1200px){.viewer-shell:has(.snapshot-strip),.viewer-shell:has(.cross-section-bar){--legend-bottom: max(112px, calc(env(safe-area-inset-bottom) + 112px) )}.viewer-shell:has(.snapshot-strip):has(.cross-section-bar){--legend-bottom: max(170px, calc(env(safe-area-inset-bottom) + 170px) )}}.controls-legend-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px 18px;align-items:start;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.controls-legend-body::-webkit-scrollbar{display:none}.controls-legend-body.scrollable{pointer-events:auto}.controls-legend-scroll-indicator{position:absolute;right:5px;width:4px;border-radius:999px;background:#3c485861;pointer-events:none;z-index:2}.controls-legend-more{position:absolute;left:50%;bottom:5px;transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;width:26px;height:18px;padding:0;border-radius:9px;border:1px solid light-dark(rgba(15,23,42,.14),rgba(255,255,255,.13));background:var(--glass-bg-strong);color:var(--ink);cursor:pointer;pointer-events:auto;z-index:2}.controls-legend-more svg{width:14px;height:14px}.controls-legend-more:hover{background:light-dark(#ffffff,#1a232e)}.controls-legend-section{display:flex;flex-direction:column;gap:4px}.controls-legend-section-title{font-size:12.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}.controls-legend-rows{margin:0;display:flex;flex-direction:column;gap:3px}.controls-legend-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.controls-legend-gesture{display:flex;align-items:center;gap:4px;min-width:0;font-weight:600;color:var(--ink)}.controls-legend-action{margin:0;text-align:right;white-space:nowrap;color:light-dark(#52606d,#9caebc)}.controls-legend-key{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 5px;border-radius:5px;border:1px solid var(--glass-border);background:var(--glass-bg-soft);font-family:inherit;font-size:13px;font-weight:700;line-height:1;color:var(--ink)}@media(orientation:portrait)and (max-width:820px){.controls-legend{bottom:max(60px,calc(env(safe-area-inset-bottom) + 56px));max-height:calc(100dvh - 200px)}.viewer-shell:has(.web-tool-tray.expanded) .controls-legend,.viewer-shell:has(.web-tool-tray.expanded) .controls-legend-fab{display:none}.viewer-shell.menu-presented .controls-legend,.viewer-shell.menu-presented .controls-legend-fab{display:none}}@media(max-height:560px){.controls-legend{font-size:13px}}@media(max-height:240px){.controls-legend{transform:translateY(calc(100% + 24px));opacity:0;visibility:hidden;transition:transform .22s ease,opacity .18s ease,visibility 0s linear .22s}.controls-legend-fab{opacity:0;visibility:hidden;transition:background .12s ease,border-color .12s ease,transform .05s ease,opacity .18s ease,visibility 0s linear .18s}}.scene-note-thread{display:grid;gap:6px;min-width:0;max-height:10.5rem;overflow-y:auto}.scene-note-comment{display:block;min-width:0;margin:0;padding:0;border:0;background:transparent;color:var(--note-ink-strong);font:inherit;font-size:.94rem;line-height:1.35;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}.scene-note-comment+.scene-note-comment{padding-top:6px;border-top:1px solid light-dark(rgba(110,104,48,.16),rgba(214,203,114,.18))}button.scene-note-comment{cursor:text;width:100%}.scene-note-comment-author{margin-right:5px;font-size:.78rem;font-weight:700;letter-spacing:.01em}.scene-note-comment-author.scene-note-author-doctor{color:light-dark(#2f6fed,#6b9cf5)}.scene-note-comment-author.scene-note-author-designer{color:light-dark(#857a1c,#cabf5e)}.scene-note-comment-placeholder{color:light-dark(rgba(92,86,31,.65),rgba(216,207,138,.75));font-style:italic}.scene-note-footer{display:flex;justify-content:flex-start}.scene-note-reply-button{display:inline-flex;align-items:center;gap:5px;padding:3px 9px 3px 7px;border:1px solid light-dark(rgba(128,120,45,.28),rgba(214,203,114,.3));border-radius:999px;background:#d6cb7238;color:var(--note-ink);font-size:.78rem;font-weight:700;cursor:pointer;transition:background .14s ease,color .14s ease}.scene-note-reply-button:hover{background:#d6cb7266;color:var(--note-ink-strong)}.scene-note-reply-button svg{width:13px;height:13px}.scene-note-reply-composer{display:flex;align-items:flex-end;gap:6px;padding-top:6px;border-top:1px solid light-dark(rgba(110,104,48,.16),rgba(214,203,114,.18))}.scene-note-reply-composer textarea{box-sizing:border-box;min-width:0;flex:1;min-height:24px;max-height:120px;height:24px;overflow-y:auto;resize:none;border:0;outline:0;color:var(--note-ink-strong);background:transparent;font:inherit;font-size:.9rem;line-height:1.35}.scene-note-reply-send{display:grid;place-items:center;flex:none;width:26px;height:26px;padding:0;border:0;border-radius:999px;background:light-dark(#837715,#9c8f2b);color:#fff;cursor:pointer}.scene-note-reply-send:disabled{opacity:.4;cursor:default}.scene-note-reply-send svg{width:13px;height:13px}.scene-note-measure-header{display:flex;align-items:center;gap:5px;margin:0 0 2px;padding:0 0 6px;border-bottom:1px solid light-dark(rgba(0,132,184,.18),rgba(42,169,220,.22));color:light-dark(#386379,#8fb8c9);font-size:.72rem;font-weight:700;letter-spacing:.01em}.scene-note-measure-header svg{width:12px;height:12px;color:light-dark(#0084b8,#4cb8e0)}.scene-note-measure-header strong{color:light-dark(#0084b8,#4cb8e0);font-size:.74rem;font-weight:700}.scene-note-bubble.scene-note-measurement-note{border:1px solid var(--note-border);background:var(--note-bg-strong)}.scene-note-bubble.scene-note-measurement-note:after{display:block;border-right-color:light-dark(rgba(0,132,184,.5),rgba(42,169,220,.5));border-bottom-color:light-dark(rgba(0,132,184,.5),rgba(42,169,220,.5))}.scene-note-bubble.scene-note-measurement-note{transform-origin:50% 100%;animation:scene-measurement-note-expand .3s cubic-bezier(.3,1.45,.55,1) backwards}.scene-note-bubble.scene-note-measurement-note.scene-note-collapsing{animation:scene-measurement-note-collapse .19s cubic-bezier(.55,0,.8,.4) forwards;pointer-events:none}@keyframes scene-measurement-note-expand{0%{opacity:0;transform:translate(-50%,calc(-100% - 20px)) scale(.15)}to{opacity:1;transform:translate(-50%,calc(-100% - 20px)) scale(1)}}@keyframes scene-measurement-note-collapse{0%{opacity:1;transform:translate(-50%,calc(-100% - 20px)) scale(1)}to{opacity:0;transform:translate(-50%,calc(-100% - 20px)) scale(.12)}}@media(prefers-reduced-motion:reduce){.scene-note-bubble.scene-note-measurement-note,.scene-note-bubble.scene-note-measurement-note.scene-note-collapsing{animation-duration:1ms}}.scene-note-marker-badge{position:absolute;display:grid;place-items:center;width:27px;height:27px;padding:0;border:2px solid light-dark(#ffffff,#1a232e);border-radius:10px 10px 10px 2px;background:var(--note-badge);color:var(--note-badge-ink);box-shadow:0 6px 14px light-dark(rgba(20,32,43,.28),rgba(0,0,0,.58));transform:translate(-50%,-50%);cursor:pointer;pointer-events:auto;transition:transform .15s ease}.scene-note-marker-badge:hover{transform:translate(-50%,-50%) scale(1.12)}.scene-note-marker-badge svg{width:14px;height:14px}.viewer-brand-watermark{position:absolute;right:18px;bottom:14px;z-index:5;width:clamp(84px,12vw,136px);opacity:.45;pointer-events:none;-webkit-user-select:none;user-select:none}@media(max-width:600px){.viewer-brand-watermark{right:12px;bottom:10px;width:76px}}.chat-readonly-hint{margin:10px 2px 0;padding-top:10px;border-top:1px solid light-dark(rgba(207,216,227,.82),rgba(64,79,94,.85));color:light-dark(#637181,#8da0af);font-size:.85rem;text-align:center}.case-scope-toggle{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:light-dark(#eef1f5,#212c38);border:1px solid light-dark(#dde3ea,#2d3946)}.case-scope-toggle button{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:0;border-radius:999px;background:transparent;color:light-dark(#4a5563,#b1bfcc);font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.case-scope-toggle button svg{width:14px;height:14px}.case-scope-toggle button.active{background:light-dark(#ffffff,#1a232e);color:light-dark(#14213d,#cdd9ea);box-shadow:0 1px 3px light-dark(rgba(15,23,42,.16),rgba(0,0,0,.45))}.viewer-sender{display:inline-flex;align-items:baseline;gap:6px;min-width:0;max-width:min(38vw,320px);padding:7px 14px;border-radius:999px;font-size:12px;color:var(--ink);background:var(--glass-bg-soft);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.viewer-sender-label{flex:none;opacity:.62}.viewer-sender-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.viewer-case-reference{display:inline-flex;align-items:baseline;gap:6px;min-width:0;margin-inline:auto;max-width:min(42vw,340px);padding:5px 11px;border-radius:7px;font-size:12px;color:var(--ink);background:var(--glass-bg-strong);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);user-select:text;-webkit-user-select:text;cursor:default}.viewer-case-reference-label{flex:none;opacity:.55;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.viewer-case-reference-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}@media(orientation:portrait)and (max-width:820px),(orientation:landscape)and (max-height:500px){.viewer-case-reference{max-width:min(30vw,200px);padding:6px 10px;font-size:11px}.viewer-case-reference-label{display:none}}@media(min-width:900px)and (min-height:520px){.viewer-top-controls:not(.designer-case-toolbar) .viewer-case-reference{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);margin-inline:0;pointer-events:auto}.viewer-top-controls:not(.designer-case-toolbar) .viewer-toolbar-actions{margin-left:auto}}.viewer-history-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:14px;max-width:min(92vw,620px);padding:7px 8px 7px 16px;border-radius:999px;background:light-dark(rgba(23,88,145,.94),rgba(30,74,112,.94));color:#fff;font-size:13px;font-weight:600;box-shadow:0 2px 12px light-dark(rgba(0,0,0,.22),rgba(0,0,0,.5))}.viewer-history-banner-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.viewer-history-banner-label svg{width:15px;height:15px;flex:none}.viewer-history-banner-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer-history-banner-actions{display:inline-flex;gap:6px;flex:none}.viewer-history-exit{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:0;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;color:#fff;background:#ffffff29}.history-dialog{max-width:460px;width:min(100%,460px)}.history-list{display:flex;flex-direction:column;gap:8px;margin:4px 0 0;padding:0;list-style:none;max-height:48vh;overflow-y:auto}.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid light-dark(#e2e8f0,#2b3745);border-radius:12px;background:light-dark(#fbfcfe,#1c2531)}.history-row.current{border-color:light-dark(#c7d6f5,#3a4f75);background:light-dark(#f3f7ff,#1c2836)}.history-row.previewing{border-color:light-dark(#2563eb,#5b8df0);box-shadow:0 0 0 1px light-dark(#2563eb,#3b74ee) inset}.history-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.history-row-date{font-size:14px;font-weight:700;color:light-dark(#14213d,#cdd9ea)}.history-row-meta{font-size:12px;color:light-dark(#637181,#8da0af)}.history-row-outcome{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:720;letter-spacing:.01em}.history-row-outcome.approved{color:light-dark(#166534,#71c894);background:light-dark(#dcfce7,rgba(82,192,126,.16))}.history-row-outcome.changes_requested{color:light-dark(#51606f,#9caebc);background:light-dark(#e9eef4,#212c38)}.history-row-actions{display:inline-flex;align-items:center;gap:8px;flex:none}.history-row-view{flex:none;padding:6px 14px;border:0;border-radius:999px;background:light-dark(#0084b8,#1090c2);color:#fff;font-size:13px;font-weight:700;cursor:pointer}.history-row-restore{display:inline-flex;align-items:center;gap:6px;flex:none;padding:6px 12px;border:1px solid light-dark(#d9e0e7,#2e3a47);border-radius:999px;background:transparent;color:light-dark(#475569,#adbbca);font-size:13px;font-weight:700;cursor:pointer}.history-row-restore svg{width:14px;height:14px}.history-row-restore:hover{border-color:light-dark(#2563eb,#5b8df0);color:light-dark(#2563eb,#7aa5f6)}.history-row-restore:disabled{opacity:.6;cursor:default}.history-empty{margin:8px 0;color:light-dark(#3f4b5a,#b9c7d3);font-size:14px;line-height:1.45}.history-empty.history-error{color:light-dark(#b4232a,#ef8b7f)}.history-hint{margin:12px 0 0;color:light-dark(#4a5563,#b1bfcc);font-size:12px;line-height:1.45}.viewer-shell{--comments-right: max(14px, env(safe-area-inset-right));--comments-bottom: max(12px, env(safe-area-inset-bottom));--comments-top-limit: calc(var(--viewer-toolbar-bottom, 62px) + 12px);--comments-width: min(400px, calc(100vw - 28px) )}.comments-panel{position:absolute;right:var(--comments-right);bottom:var(--comments-bottom);z-index:9;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:var(--comments-width);height:min(520px,max(180px,calc(100dvh - var(--comments-top-limit) - var(--comments-bottom) - 8px)));padding:12px 16px 16px;border:1px solid var(--glass-border);border-radius:22px;background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform-origin:bottom right;animation:corner-card-in var(--motion-base) var(--ease-out)}.comments-panel.closing{animation:corner-card-out var(--motion-exit) var(--ease-in) both;pointer-events:none}.comments-panel-backdrop{display:none}.comments-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px}.comments-panel-title{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:.9rem;font-weight:700}.comments-panel-title svg{width:17px;height:17px;color:light-dark(#2f6fed,#6b9cf5)}.comments-panel-collapse{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;padding:0;border-radius:8px;border:1px solid light-dark(rgba(15,23,42,.2),rgba(255,255,255,.18));background:var(--glass-bg-soft);color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .05s ease}.comments-panel-collapse svg{width:17px;height:17px}.comments-panel-collapse .comments-chevron-up{display:none}.comments-panel-collapse:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.comments-panel-collapse:active{transform:translateY(1px)}.comments-fab{position:absolute;right:var(--comments-right);bottom:max(12px,env(safe-area-inset-bottom));z-index:9;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:999px;border:1px solid light-dark(rgba(15,23,42,.2),rgba(255,255,255,.18));background:var(--glass-bg-strong);box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);color:var(--ink);cursor:pointer;pointer-events:auto;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform .05s ease;animation:corner-fab-in var(--motion-fast) var(--ease-out) 60ms both}.comments-fab svg{width:20px;height:20px}.comments-fab:hover{background:light-dark(#ffffff,#1a232e);border-color:light-dark(rgba(15,23,42,.28),rgba(255,255,255,.24))}.comments-fab:active{transform:translateY(1px)}.comments-fab-badge{position:absolute;top:-5px;right:-5px;display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;border:2px solid light-dark(rgba(255,255,255,.95),rgba(255,255,255,.15));background:#e5484d;color:#fff;font-size:.68rem;font-weight:750;line-height:1}.viewer-shell:has(.comments-fab) .viewer-brand-watermark{right:72px}.viewer-shell:has(.snapshot-strip){--comments-bottom: max(112px, calc(env(safe-area-inset-bottom) + 112px) )}.viewer-shell:has(.cross-section-bar){--comments-bottom: max(112px, calc(env(safe-area-inset-bottom) + 112px) )}.viewer-shell:has(.snapshot-strip):has(.cross-section-bar){--comments-bottom: max(170px, calc(env(safe-area-inset-bottom) + 170px) )}@media(orientation:landscape)and (min-height:501px),(min-width:821px)and (min-height:501px){.viewer-shell{--comments-top-limit: calc(var(--tool-rail-bottom, var(--viewer-toolbar-bottom, 62px)) + 12px)}}@media(orientation:portrait)and (max-width:820px){.viewer-shell{--comments-top-limit: calc(var(--viewer-banner-bottom, var(--viewer-toolbar-bottom, 62px)) + 12px)}.comments-fab{top:var(--comments-top-limit);right:max(14px,env(safe-area-inset-right));bottom:auto}.comments-panel{top:var(--comments-top-limit);bottom:auto;height:max(150px,min(56dvh,calc(100dvh - var(--comments-top-limit) - 150px)))}.comments-panel-collapse .comments-chevron-down{display:none}.comments-panel-collapse .comments-chevron-up{display:block}.viewer-shell:has(.comments-fab) .viewer-brand-watermark{right:12px}.viewer-shell:not(.designer-share-presented):has(.web-tool-tray.expanded) .comments-panel,.viewer-shell:not(.designer-share-presented):has(.web-tool-tray.expanded) .comments-fab{display:none}}@media(orientation:landscape)and (max-height:500px){.viewer-shell{--comments-right: calc(max(6px, env(safe-area-inset-right)) + 52px) }.viewer-shell:has(.comments-fab) .viewer-brand-watermark{right:116px}.viewer-shell:has(.web-tool-tray.expanded) .comments-panel,.viewer-shell:has(.web-tool-tray.expanded) .comments-fab{display:none}}@media(orientation:portrait)and (max-width:540px),(orientation:landscape)and (max-height:500px){.comments-panel-backdrop{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:39;background:light-dark(rgba(15,23,42,.42),rgba(0,0,0,.55))}.comments-panel-backdrop.closing{opacity:0;transition:opacity var(--motion-exit) var(--ease-in);pointer-events:none}.comments-panel{top:auto;right:0;bottom:0;left:0;z-index:40;width:auto;height:calc(100dvh - max(32px,calc(env(safe-area-inset-top) + 18px)));border:0;border-radius:22px 22px 0 0;padding:14px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));animation:comments-sheet-in var(--motion-base) var(--ease-out)}.comments-panel.closing{animation:comments-sheet-out var(--motion-exit) var(--ease-in) both}.comments-panel.keyboard-up{bottom:var(--comments-keyboard-inset, 0px);height:calc(var(--comments-visible-height, 100dvh) - max(32px,calc(env(safe-area-inset-top) + 18px)))}.comments-panel-collapse .comments-chevron-down{display:block}.comments-panel-collapse .comments-chevron-up{display:none}}@keyframes comments-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes comments-sheet-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}.comments-rotate-hint{display:none}@media(orientation:landscape)and (max-height:500px){.comments-panel .chat-composer{display:none}.comments-panel .comments-rotate-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:10px 12px;color:light-dark(#53606d,#9caebc);font-size:.86rem;font-weight:600}.comments-rotate-hint svg{width:16px;height:16px;flex:none}}.viewer-shell.designer-share-presented{--comments-top-limit: calc(var(--tool-rail-bottom, var(--viewer-toolbar-bottom, 62px)) + 12px)}.notification-bell{position:relative;display:inline-flex}.notification-bell-button{position:relative}.notification-bell-badge{position:absolute;top:-5px;right:-5px;display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;border:2px solid light-dark(rgba(255,255,255,.95),rgba(255,255,255,.15));background:#e5484d;color:#fff;font-size:.68rem;font-weight:750;line-height:1}.notification-bell-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:30;display:grid;gap:12px;width:min(400px,calc(100vw - 24px));max-height:min(480px,72dvh);padding:14px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--glass-border);border-radius:18px;background:light-dark(rgba(252,254,255,.97),rgba(24,32,42,.97));box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);transform-origin:top right;animation:popover-anchored-in var(--motion-base) var(--ease-out) both}.notification-bell-panel.closing{animation:popover-anchored-out var(--motion-fast) var(--ease-in) both;pointer-events:none}.notification-bell-section-count{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:7px;padding:0 5px;border-radius:999px;background:light-dark(rgba(15,23,42,.08),rgba(255,255,255,.08));color:light-dark(#4a5563,#b1bfcc);font-size:.7rem;letter-spacing:0;vertical-align:middle}.notification-bell-empty{margin:6px 2px;color:light-dark(#637181,#8da0af);font-size:.9rem}.notification-bell-section{display:grid;gap:4px}.notification-bell-section h3{margin:0 0 4px;color:light-dark(#7a8794,#8b9dab);font-size:.72rem;font-weight:680;letter-spacing:.08em;text-transform:uppercase}.notification-bell-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;border-radius:12px;background:transparent;text-align:left;cursor:pointer}.notification-bell-item:hover{background:light-dark(rgba(15,23,42,.06),rgba(255,255,255,.06))}.notification-bell-item-icon{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:999px}.notification-bell-item-icon svg{width:16px;height:16px}.notification-bell-item-icon.comments{background:light-dark(rgba(217,119,6,.16),rgba(227,164,92,.16));color:light-dark(#b45309,#e3a45c)}.notification-bell-item-icon.changes{background:light-dark(rgba(164,67,47,.13),rgba(224,138,112,.14));color:light-dark(#a4432f,#e08a70)}.notification-bell-item-icon.approved{background:light-dark(rgba(22,163,74,.14),rgba(82,192,126,.16));color:light-dark(#15803d,#52c07e)}.notification-bell-item-main{display:grid;gap:1px;min-width:0}.notification-bell-item-title{overflow:hidden;color:var(--ink);font-size:.88rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.notification-bell-item-detail{color:light-dark(#4a5563,#b1bfcc);font-size:.8rem}.notification-bell-item.info .notification-bell-item-title{font-weight:600}.notification-bell-item.info .notification-bell-item-detail{color:light-dark(#637181,#8da0af)}.notification-bell-item-time{align-self:start;margin-top:2px;color:light-dark(#8a96a3,#7e91a0);font-size:.72rem;white-space:nowrap}.notification-bell-item-meta{display:grid;justify-items:end;align-self:start;gap:3px}.notification-bell-item.overdue{box-shadow:inset 3px 0 0 light-dark(#dc2626,#e35d5d)}.notification-bell-item-overdue{padding:1px 6px;border-radius:999px;background:light-dark(rgba(220,38,38,.12),rgba(242,139,130,.14));color:light-dark(#b91c1c,#f28b82);font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.notification-bell-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;border-radius:12px;background:transparent;text-align:left;cursor:pointer}.notification-bell-summary:hover{background:light-dark(rgba(15,23,42,.06),rgba(255,255,255,.06))}.notification-bell-summary-text{color:light-dark(#4a5563,#b1bfcc);font-size:.85rem;font-weight:600}.notification-bell-summary-hint{color:light-dark(#8a96a3,#7e91a0);font-size:.72rem;font-weight:700}.notification-bell-summary-toggle{display:inline-flex;align-items:center;padding:0;background:none;border:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.notification-bell-summary-toggle .notification-bell-summary-hint{margin-left:8px}.viewer-top-controls .notification-bell{margin-left:auto;pointer-events:auto}.viewer-top-controls .notification-bell+.viewer-toolbar-title-group{flex:0 1 auto;margin-left:16px}.viewer-top-controls .notification-bell-button{width:40px;height:40px;border-radius:999px;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter)}.workspace-band{display:grid;gap:14px}.workspace-band.workspace-return,.case-list.workspace-return{animation:workspace-view-back-in var(--motion-base) var(--ease-out)}@keyframes workspace-view-back-in{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}.case-files-embed{--case-file-cols: 22px minmax(0, 1fr) 84px 104px 36px;--case-files-band-h: 34px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;min-height:0;animation:case-files-screen-in var(--motion-base) var(--ease-out)}@keyframes case-files-screen-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.case-files-top{width:min(var(--workspace-content-width),100%);margin:0 auto;display:grid;gap:10px;align-content:end;position:relative;z-index:2;padding-bottom:8px}.case-files-scroll{min-height:0;overflow:hidden auto;overscroll-behavior:contain;position:relative;z-index:1;padding-top:8px;padding-bottom:10px;scrollbar-gutter:stable}.case-files-scroll.fade-top{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22px);mask-image:linear-gradient(to bottom,transparent 0,#000 22px)}.case-files-scroll.fade-bottom{-webkit-mask-image:linear-gradient(to top,transparent 0,#000 22px);mask-image:linear-gradient(to top,transparent 0,#000 22px)}.case-files-scroll.fade-top.fade-bottom{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 22px,#000 calc(100% - 22px),transparent 100%)}.case-files-column{width:min(var(--workspace-content-width),100%);margin:0 auto;display:grid;gap:14px}.case-files-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-left:56px}.case-files-back{justify-self:start}.case-files-heading{flex:1 1 auto;min-width:0}.case-files-heading h1{margin:0;font-size:1.35rem;font-weight:700;color:var(--ink-strong);overflow-wrap:anywhere}.case-files-subtitle{margin:4px 0 0;font-size:.85rem;color:var(--ink-soft)}.case-files-actions{flex:none;display:flex;align-items:center;gap:8px}.case-files-secondary{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:10px;border:1px solid light-dark(#c9d6e2,#33414f);background:transparent;color:var(--ink);font-weight:640;cursor:pointer}.case-files-secondary:hover{background:light-dark(#eef4fa,#212c38)}.case-files-sort{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--ink-soft)}.case-files-sort select{border:1px solid light-dark(#c9d6e2,#33414f);border-radius:8px;background:light-dark(#ffffff,#16202b);color:var(--ink);font:inherit;padding:5px 8px}.case-files-add{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 14px;border:0;border-radius:10px;background:var(--accent);color:light-dark(#ffffff,#0c141d);font-weight:660;cursor:pointer}.case-files-add:hover{background:var(--accent-strong)}.case-files-add svg{width:16px;height:16px}.case-files-notice{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:10px;max-width:min(460px,calc(100% - 32px));padding:4px 8px 4px 11px;border-radius:9px;font-size:.82rem;background:var(--glass-bg-strong);color:light-dark(#2c4a68,#a9c4dd);border:1px solid light-dark(#cfe0f1,#2b3c4e);border-left:4px solid light-dark(#5b9bd0,#4a7fae);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:case-files-notice-in var(--motion-fast) var(--ease-out)}@keyframes case-files-notice-in{0%{opacity:0;transform:translate(-50%,-4px)}}@media(prefers-reduced-motion:reduce){.case-files-notice{animation:none}}.case-files-notice.error{color:light-dark(#7a4a2c,#d9b394);border-color:light-dark(#eed9c6,#4a3826);border-left-color:light-dark(#c07a3e,#b8823f)}.case-files-notice-icon{flex:none;width:15px;height:15px}.case-files-notice-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-files-notice button{flex:none;display:inline-flex;margin-left:auto;border:0;background:transparent;color:inherit;padding:2px;cursor:pointer;opacity:.7}.case-files-notice button:hover{opacity:1}.case-files-notice button svg{width:14px;height:14px}.case-files-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;margin-left:var(--section-indent)}.case-notes{display:grid;gap:8px;margin-top:5px;padding-bottom:27px;border-bottom:1px solid light-dark(#dbe5ee,#26333f);margin-bottom:22px}.case-notes-summary{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border-radius:10px;border:1px solid light-dark(#dde3ea,#2d3946);background:light-dark(#f6f8fa,#1c2733);color:light-dark(#4a5563,#b1bfcc);font:inherit;font-size:.82rem;font-weight:560;text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.case-notes-summary:hover{background:light-dark(#eef1f5,#212c38)}.case-notes-summary.fresh{border-color:light-dark(#bfdcea,#2a4a5c);color:var(--accent);font-weight:680}.case-notes-summary-icon{width:15px;height:15px;flex:none;color:light-dark(#7a8794,#8b9dab)}.case-notes-summary.fresh .case-notes-summary-icon{color:var(--accent)}.case-notes-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent)}.case-notes-summary-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-notes-summary>svg:last-child{width:15px;height:15px;flex:none;color:light-dark(#7a8794,#8b9dab)}.case-notes-panel{display:grid;padding:0;border-radius:10px;border:1px solid light-dark(#dde3ea,#2d3946);background:light-dark(#fdfefe,#18222d);overflow:hidden;animation:case-files-notice-in var(--motion-fast) var(--ease-out)}.case-notes-panel.closing{animation:none;opacity:0;transition:opacity var(--motion-fast) var(--ease-out)}.case-notes-composer{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid light-dark(#eef1f5,#212c38)}.case-notes-composer.editing{padding:0;border-top:none}.case-notes-composer textarea{flex:1;min-width:0;resize:none;padding:7px 10px;border-radius:8px;border:1px solid light-dark(#cfd8e1,#33404e);background:light-dark(#ffffff,#121b24);color:inherit;font:inherit;font-size:.82rem;line-height:1.4}.case-notes-composer textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.case-notes-post,.case-notes-cancel{flex:none;padding:7px 14px;border-radius:8px;border:1px solid transparent;font:inherit;font-size:.8rem;font-weight:620;cursor:pointer}.case-notes-post{background:var(--accent);color:light-dark(#ffffff,#08131c)}.case-notes-post:disabled{opacity:.45;cursor:default}.case-notes-cancel{background:transparent;border-color:light-dark(#cfd8e1,#33404e);color:light-dark(#4a5563,#b1bfcc)}.case-notes-error{margin:0;padding:8px 10px 0;font-size:.78rem;color:light-dark(#b3261e,#ff8a80)}.case-notes-empty{margin:0;padding:12px 10px 2px;font-size:.8rem;color:light-dark(#7a8794,#8b9dab)}.case-notes-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.case-note{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:9px 12px}.case-note+.case-note{border-top:1px solid light-dark(#eef1f5,#212c38)}.case-note.fresh{background:light-dark(#f2f8fb,#1c2b37)}.case-note-avatar{width:26px;height:26px;margin-top:1px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:720;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.case-note-avatar.tone-0{background:light-dark(#d7e9f4,#1f4256);color:light-dark(#1c5a7d,#9ed2ef)}.case-note-avatar.tone-1{background:light-dark(#e2e5f6,#2c3560);color:light-dark(#3d4a99,#b3bdf2)}.case-note-avatar.tone-2{background:light-dark(#d9f0e4,#1e4534);color:light-dark(#1e6b45,#9adfbc)}.case-note-avatar.tone-3{background:light-dark(#f3e6d8,#4a3722);color:light-dark(#8a5a1d,#ecc793)}.case-note-avatar.tone-4{background:light-dark(#efe0f0,#432c4a);color:light-dark(#7c3f88,#dfb3e8)}.case-note-avatar.tone-5{background:light-dark(#e3ecda,#33421f);color:light-dark(#4f6b1f,#c2dc92)}.case-note-content{min-width:0;display:grid;gap:1px}.case-note-head{display:flex;align-items:center;gap:8px;min-height:22px}.case-note-author{font-size:.78rem;font-weight:680;color:light-dark(#33404c,#ccd7e2)}.case-note-time{font-size:.72rem;color:light-dark(#7a8794,#8b9dab)}.case-note-new{font-size:.62rem;font-weight:720;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.case-note-actions{margin-left:auto;display:inline-flex;align-items:center;gap:2px}.case-note-action{display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border:none;border-radius:6px;background:transparent;color:light-dark(#8b97a4,#79899a);font:inherit;font-size:.72rem;cursor:pointer}.case-note-action:hover{background:light-dark(#eef1f5,#212c38);color:light-dark(#4a5563,#b1bfcc)}.case-note-action svg{width:13px;height:13px}.case-note-action.confirm-delete{color:light-dark(#ffffff,#08131c);background:light-dark(#46688c,#7ba2c9);font-weight:620}.case-note-body{margin:0;font-size:.82rem;line-height:1.45;color:light-dark(#33404c,#ccd7e2);white-space:pre-wrap;overflow-wrap:anywhere}.case-task-notes{display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 8px;border-radius:999px;background:light-dark(#eaf4f9,#14303e);border:1px solid light-dark(#cbe2ee,#235063);color:var(--accent);font:inherit;font-size:.75rem;font-weight:620;white-space:nowrap;cursor:pointer}.case-task-notes:hover{background:light-dark(#ddedf6,#1a3b4c)}.case-task-notes svg{width:13px;height:13px}.case-files-columns{display:grid;grid-template-columns:var(--case-file-cols);align-items:center;gap:12px;padding:0 12px;margin:0 0 0 var(--section-indent)}.case-files-column-label,.case-files-column-sort{font-size:.7rem;font-weight:660;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.case-files-column-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;cursor:pointer;justify-self:start}.case-files-column-sort:hover{color:var(--ink)}.case-files-column-sort.active{color:light-dark(#20486e,#b7d4ee)}.case-files-column-sort svg{width:12px;height:12px}.case-file-row{display:grid;grid-template-columns:var(--case-file-cols);align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--glass-bg-soft);border:1px solid var(--glass-border)}.case-file-row.uploading{grid-template-columns:22px minmax(0,1fr)}.case-file-size,.case-file-added{font-size:.8rem;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:721px){.case-file-row:not(.busy) .case-file-meta{display:none}}@media(max-width:720px){.case-files-embed{--case-file-cols: 22px minmax(0, 1fr) 36px}.case-files-columns,.case-file-size,.case-file-added{display:none}}.case-file-row.uploading{opacity:.65}.case-file-row.busy{opacity:.8}.case-file-icon{width:20px;height:20px;color:var(--ink-soft)}.case-file-icon.mesh{color:var(--accent)}.case-file-main{min-width:0;display:flex;flex-direction:column;gap:2px}.case-file-name{font-weight:650;color:var(--ink-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-file-meta{font-size:.78rem;color:var(--ink-soft)}.case-file-rename{font:inherit;font-weight:650;color:var(--ink-strong);background:light-dark(#ffffff,#16202b);border:1px solid var(--accent);border-radius:8px;padding:3px 8px;min-width:0}.case-file-info{grid-column:1 / -1;margin:6px 0 2px;padding:12px 14px;border-radius:10px;background:light-dark(#f4f8fc,#131d28);border:1px solid light-dark(#e1eaf3,#24313f);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 18px;font-size:.8rem}.case-file-info>div{min-width:0}.case-file-info dt{color:var(--ink-soft);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.case-file-info dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.case-file-sha{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.72rem}.case-files-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:56px 24px;border:1.5px dashed light-dark(#c3d2e0,#344352);border-radius:16px;color:var(--ink-soft);text-align:center}.case-files-empty svg{width:30px;height:30px;opacity:.7}.case-files-empty p{margin:0;font-weight:600;color:var(--ink)}.case-files-empty-hint{font-weight:400!important;font-size:.82rem;color:var(--ink-soft)!important}.case-files-drop-hint{margin:0;padding-top:2px;text-align:center;font-size:.78rem;color:var(--ink-soft)}.case-files-drop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:var(--glass-scrim);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);pointer-events:none}.case-files-drop-overlay-card{display:inline-flex;align-items:center;gap:10px;padding:16px 22px;border-radius:14px;background:var(--glass-bg-strong);border:1.5px dashed var(--accent);color:var(--ink-strong);font-weight:660;box-shadow:var(--glass-shadow-lg)}.case-files-drop-overlay-card svg{width:20px;height:20px;color:var(--accent)}.case-files-confirm-body{margin:14px 0 18px;font-size:.9rem;color:var(--ink);line-height:1.45}.case-files-confirm-actions{display:flex;justify-content:flex-end;gap:10px}.case-files-confirm-cancel,.case-files-confirm-primary,.case-files-confirm-danger{min-height:36px;padding:0 16px;border-radius:10px;font-weight:650;cursor:pointer;border:1px solid transparent}.case-files-confirm-cancel{background:transparent;border-color:light-dark(#c9d6e2,#33414f);color:var(--ink)}.case-files-confirm-cancel:hover{background:light-dark(#eef4fa,#212c38)}.case-files-confirm-primary,.case-files-confirm-danger{background:light-dark(#46617a,#3d5871);border-color:light-dark(#46617a,#3d5871);color:#f4f8fb}.case-files-confirm-primary:hover,.case-files-confirm-danger:hover{background:light-dark(#3a536b,#4a6784)}@media(max-width:640px){.case-files-header{flex-wrap:wrap}.case-files-controls{width:100%;justify-content:space-between}}.case-files-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;min-height:var(--case-files-band-h);box-sizing:border-box;margin-left:var(--section-indent)}.case-files-viewtools{flex:none;display:flex;align-items:center;gap:10px}.case-files-sortmenu{display:flex;align-items:center;gap:6px}.case-files-sort-field{height:30px;padding:0 6px;border:1px solid light-dark(#c9d6e2,#33414f);border-radius:8px;background:light-dark(#ffffff,#16202b);color:var(--ink);font:inherit;font-size:.8rem}.case-files-sortmenu .case-files-sort-dir{width:30px;height:30px}@media(min-width:721px){.case-files-embed.list-view .case-files-sortmenu{visibility:hidden}}.case-files-viewtoggle{display:inline-flex;padding:2px;border-radius:9px;border:1px solid light-dark(#c9d6e2,#33414f);background:light-dark(#f4f8fc,#131d28)}.case-files-viewbutton{display:inline-grid;place-items:center;width:30px;height:26px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-soft);cursor:pointer}.case-files-viewbutton:hover{color:var(--ink)}.case-files-viewbutton.active{background:light-dark(#ffffff,#26333f);color:light-dark(#20486e,#cfe0ee);box-shadow:0 1px 2px light-dark(rgba(20,32,43,.12),rgba(0,0,0,.3))}.case-files-viewbutton svg{width:15px;height:15px}.case-files-filter{display:flex;flex-wrap:wrap;gap:8px}.case-files-filter-chip{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 12px;border-radius:999px;border:1px solid light-dark(#c9d6e2,#33414f);background:transparent;color:var(--ink-soft);font-size:.8rem;font-weight:620;cursor:pointer}.case-files-filter-chip:hover{background:light-dark(#eef4fa,#212c38)}.case-files-filter-chip.active{background:light-dark(#cfe4f7,#234c6e);border-color:light-dark(#6ea8d8,#5b8fba);box-shadow:inset 0 0 0 1px light-dark(#6ea8d8,#5b8fba);color:light-dark(#14405f,#dbeaf7);font-weight:680}.case-files-filter-count{font-size:.72rem;font-weight:640;opacity:.75}.case-files-filter-chip.active .case-files-filter-count{opacity:1;color:light-dark(#2b5c81,#b9d6ee)}.case-file-row.selected,.case-file-tile.selected{background:light-dark(#e8f1fa,#1c2c3d);border-color:light-dark(#9ec4e4,#3c5d7e)}.case-files-bulkbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:1px 10px;min-height:var(--case-files-band-h);box-sizing:border-box;margin-left:var(--section-indent);border-radius:10px;background:light-dark(#e8f1fa,#1c2c3d);border:1px solid light-dark(#c4dcf1,#2f4a66)}.case-files-bulkbar-count{font-size:.82rem;font-weight:660;color:light-dark(#20486e,#b7d4ee);margin-right:4px}.case-files-bulkbar button{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 10px;border-radius:8px;border:1px solid light-dark(#c4dcf1,#2f4a66);background:light-dark(#ffffff,#16222f);color:var(--ink);font-size:.8rem;font-weight:630;cursor:pointer}.case-files-bulkbar button:hover{background:light-dark(#f2f7fc,#1f3142)}.case-files-bulkbar button.danger{color:light-dark(#46617a,#9db4c8)}.case-files-bulkbar button svg{width:14px;height:14px}.case-files-bulkbar-clear{margin-left:auto;border:0!important;background:transparent!important}.case-files-sort-dir{flex:none}.case-files-sort-dir svg{width:15px;height:15px}.case-file-upload-status{display:flex;align-items:center;gap:8px;min-width:0}.case-file-progress{flex:1 1 90px;min-width:50px;max-width:180px;height:5px;border-radius:999px;background:light-dark(#dbe6f0,#2a3947);overflow:hidden}.case-file-progress-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .16s linear}.case-file-progress-fill.indeterminate{width:40%;animation:case-file-progress-slide 1.1s ease-in-out infinite}@keyframes case-file-progress-slide{0%{transform:translate(-100%)}to{transform:translate(280%)}}.case-file-upload-meta{font-size:.76rem;color:var(--ink-soft);white-space:nowrap}.case-file-upload-cancel{border:0;background:transparent;padding:2px 6px;border-radius:6px;font-size:.76rem;font-weight:650;color:light-dark(#46617a,#9db4c8);cursor:pointer}.case-file-upload-cancel:hover{background:light-dark(#eef4f9,#212c38)}.case-files-grid{list-style:none;margin:0 0 0 var(--section-indent);padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px}.case-files-grid.large{grid-template-columns:repeat(auto-fill,minmax(216px,1fr));gap:14px}.case-file-tile{position:relative;display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:12px;background:var(--glass-bg-soft);border:1px solid var(--glass-border)}.case-file-tile.uploading{opacity:.65}.case-file-tile.busy{opacity:.8}.case-file-tile-chrome{display:flex;justify-content:flex-end;align-items:center}.case-file-tile-preview{display:grid;place-items:center;aspect-ratio:4 / 3;border-radius:8px;background:light-dark(#eef3f8,#141e29);overflow:hidden}.case-file-tile-preview img{width:100%;height:100%;object-fit:cover}.case-file-tile-preview .case-file-icon{width:34px;height:34px}.case-files-grid.large .case-file-tile-preview .case-file-icon{width:44px;height:44px}.case-file-tile .case-file-name{font-size:.84rem}.case-file-tile .case-file-meta{font-size:.72rem}.case-file-tile .case-actions-menu{position:static}.case-file-tile:has(.case-menu-popover){z-index:5}.case-file-tile .case-menu-popover{top:40px;right:8px}.audience-dialog-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:var(--glass-scrim);backdrop-filter:var(--glass-scrim-filter);-webkit-backdrop-filter:var(--glass-scrim-filter);animation:dialog-backdrop-in var(--motion-fast) var(--ease-out) both}.audience-dialog{display:grid;gap:14px;width:min(520px,100%);padding:18px;color:var(--ink);background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow-lg);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);animation:dialog-pop-in var(--motion-base) var(--ease-out) both;max-height:100%;overflow-y:auto;overscroll-behavior:contain}.audience-dialog-head{display:grid;gap:6px}.audience-dialog h2{margin:0;font-size:1.08rem;line-height:1.2}.audience-dialog-context{margin:0;color:light-dark(#53606d,#9caebc);font-size:.9rem;line-height:1.45}.audience-dialog-all{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:.94rem;font-weight:600;border:1px solid var(--glass-border);border-radius:10px;background:light-dark(rgba(15,23,32,.03),rgba(255,255,255,.04));cursor:pointer}.audience-dialog-list{display:grid;gap:2px;margin:0;padding:0;list-style:none;max-height:min(46vh,320px);overflow-y:auto;overscroll-behavior:contain}.audience-dialog-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 12px;border-radius:8px;cursor:pointer}.audience-dialog-row:hover{background:light-dark(rgba(15,23,32,.04),rgba(255,255,255,.05))}.audience-dialog-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.94rem}.audience-dialog-choice{display:flex;align-items:center;gap:8px;flex:none;font-size:.88rem;color:light-dark(#53606d,#9caebc)}.audience-dialog-note{margin:0;font-size:.8rem;color:var(--ink-soft)}.audience-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.audience-dialog-tally{margin-right:auto;font-size:.86rem;color:light-dark(#53606d,#9caebc)}.case-file-title{display:flex;align-items:center;min-width:0}.case-file-title .case-file-name{min-width:0}.case-file-title .case-file-internal-badge{flex:none}.case-file-internal-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:1px 7px 1px 5px;vertical-align:middle;font-size:.72rem;font-weight:600;letter-spacing:.01em;color:light-dark(#5a6673,#9fb0be);background:light-dark(rgba(15,23,32,.06),rgba(255,255,255,.08));border:1px solid var(--glass-border);border-radius:999px}.case-file-internal-badge svg{width:12px;height:12px}
