@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-vietnamese-400-normal-BF4g3tCF.woff2) format("woff2"),url(/assets/archivo-vietnamese-400-normal-FGOLYM1a.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-ext-400-normal-B5tPZzqW.woff2) format("woff2"),url(/assets/archivo-latin-ext-400-normal-DrmqtLj6.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-400-normal-C81ewxNO.woff2) format("woff2"),url(/assets/archivo-latin-400-normal-Bl602Mgc.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-vietnamese-500-normal-k0drYPZA.woff2) format("woff2"),url(/assets/archivo-vietnamese-500-normal-7W3lD2kQ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-ext-500-normal-RFhg4CpD.woff2) format("woff2"),url(/assets/archivo-latin-ext-500-normal-D7mXw3Kz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-CGugC8dq.woff2) format("woff2"),url(/assets/archivo-latin-500-normal-pkzA7jw9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-vietnamese-600-normal-anCjMumA.woff2) format("woff2"),url(/assets/archivo-vietnamese-600-normal-C8xBVdfP.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-ext-600-normal-Dm61iqcg.woff2) format("woff2"),url(/assets/archivo-latin-ext-600-normal-D7uErJuz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-600-normal-3BBy0ZsW.woff2) format("woff2"),url(/assets/archivo-latin-600-normal-DwYieO8P.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-vietnamese-700-normal-nuAQAQa7.woff2) format("woff2"),url(/assets/archivo-vietnamese-700-normal-Bz2vkKqq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-ext-700-normal-DD_nkw6b.woff2) format("woff2"),url(/assets/archivo-latin-ext-700-normal-CgyfnKjw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-700-normal-D9cHMWGj.woff2) format("woff2"),url(/assets/archivo-latin-700-normal-lT5TFe7H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ground: #e9e9e6;--figure: #ffffff;--ink: #17181a;--ink-65: #616161;--ink-40: #959594;--rule: #d2d3cf;--ink-8: #d8d8d6;--identity: #ccff00;--selection: #2f6bd8;--warn: #e5a13c;--m: 24px}*{box-sizing:border-box}button,input,select,textarea{font-family:inherit}html,body,#root{height:100%;margin:0}body{font-family:Archivo,system-ui,sans-serif;font-size:13px;background:var(--ground);color:var(--ink);overflow:hidden}.mono{font-family:IBM Plex Mono,monospace}.app{display:grid;grid-template-rows:48px 1fr 24px;height:100%}.app.has-server{grid-template-rows:48px auto 1fr 24px}.app-main{display:grid;grid-template-columns:240px 1fr;min-height:0}.app.rail-gone .app-main{grid-template-columns:1fr}.app.rail-collapsed .app-main{grid-template-columns:64px 1fr}.spacer{flex:1}.topbar{display:flex;align-items:center;gap:20px;padding:14px 16px 12px;background:var(--ground);border-bottom:1px solid var(--rule)}.brand{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:default;text-decoration:none}.brand.brand-home{cursor:pointer}.brand-text{display:flex;flex-direction:column;gap:3px}.brand-credit{font-size:9.5px;color:var(--ink-65);letter-spacing:.02em;white-space:nowrap;line-height:1}.wordmark{font-family:Archivo,sans-serif;font-weight:400;font-size:14px;letter-spacing:.22em;color:var(--ink);line-height:1}.doc-tabs{display:flex;align-items:center;gap:22px}.file-menu-wrap{position:relative;flex-shrink:0}.file-menu{position:absolute;right:0;top:calc(100% + 6px);display:flex;flex-direction:column;min-width:150px;background:var(--ground);border:1px solid var(--ink-40);border-radius:0;padding:4px;z-index:40}.file-menu-item{display:flex;justify-content:space-between;align-items:center;gap:14px;background:none;border:none;border-radius:0;padding:7px 9px;font:inherit;font-size:12.5px;color:var(--ink);cursor:pointer;text-align:left}.file-menu-item:hover{background:var(--ground)}.file-menu-hint{font-size:10px;color:var(--ink-65)}.doc-tab{display:inline-flex;align-items:baseline;background:none;border:none;border-bottom:2px solid transparent;padding:5px 0 7px;margin-bottom:-1px;font:inherit;font-size:16px;font-weight:400;color:var(--ink-65);cursor:pointer}.doc-tab.active{font-weight:700;color:var(--ink);border-bottom-color:var(--ink)}.meta-line{font-size:12px;color:var(--ink-65)}.project-tabs{display:flex;align-items:center;gap:4px;max-width:340px;overflow-x:auto;scrollbar-width:none}.project-tab{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--rule);border-radius:0;padding:1px 2px 1px 8px;white-space:nowrap}.project-tab.active{border-color:var(--ink-1)}.project-tab-title{background:none;border:none;font:inherit;font-size:11.5px;color:var(--ink-65);cursor:pointer;min-height:24px;display:inline-flex;align-items:center;padding:0}.project-tab.active .project-tab-title{color:var(--ink-1);font-weight:600}.project-tab-close{background:none;border:none;font-size:9px;color:var(--ink-65);cursor:pointer;padding:2px 4px}.project-tab-close:hover{color:var(--ink-1)}.project-tab-new{background:none;border:1px solid var(--rule);border-radius:0;width:22px;height:22px;font-size:13px;color:var(--ink-65);cursor:pointer}.project-tab-new:hover{border-color:var(--ink-1);color:var(--ink-1)}.meta-ver{font-size:10.5px;color:var(--ink-65)}.ghost-ico{background:none;border:1px solid var(--rule);border-radius:0;width:26px;height:26px;color:var(--ink);cursor:pointer;font-size:13px}.ghost-ico:disabled{opacity:.4;cursor:default}.zoom-pill{background:none;border:1px solid var(--rule);border-radius:0;color:var(--ink-65);padding:5px 9px;font-size:10.5px;cursor:pointer}.primary-btn{background:var(--ink);color:#fff;border:none;border-radius:0;padding:7px 14px;font:inherit;font-weight:600;cursor:pointer}.primary-btn:disabled{opacity:.4;cursor:default}.rail{background:var(--ground);border-right:1px solid var(--rule);display:flex;flex-direction:column;padding:12px;gap:6px;overflow-y:auto;overflow-x:hidden}.rail-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--ink-65);padding:6px 6px 2px}.rail-group{text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--ink-2, #5A5D66);margin-top:14px;padding-top:8px;border-top:1px solid var(--rule, #D2D3CF)}.rail-group-first{margin-top:6px}.rail-more{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:0;cursor:pointer}.rail-more:hover .rail-label,.rail-more:hover .rail-more-chevron{color:var(--ink)}.rail-more-chevron{color:var(--ink-65);font-size:11px;padding:6px 6px 2px}.tool-rows{display:flex;flex-direction:column}.tool-row{display:flex;align-items:center;gap:10px;height:36px;padding:0 8px;border:none;border-radius:0;background:none;color:var(--ink);font:inherit;font-size:13px;cursor:pointer;text-align:left}.tool-row:hover{background:var(--ink-8)}.tool-row.active{background:var(--ink);color:#fff}.tool-key{width:18px;text-align:center;font-size:11px;color:var(--ink-65)}.tool-row.active .tool-key{color:#fff}.next-camera,.zone-shape{margin-top:10px;border-top:1px solid var(--rule);padding-top:6px}.shape-picker{display:flex;flex-wrap:wrap;gap:6px;padding:4px 6px}.shape-btn{width:34px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink-40);border-radius:0;background:transparent;color:var(--ink-65);cursor:pointer}.shape-btn:hover{border-color:var(--ink);color:var(--ink)}.shape-btn.active{border-color:var(--ink);color:#fff;background:var(--ink)}.composition-row{display:grid;grid-template-columns:1fr 52px 24px;gap:4px;align-items:center;margin-bottom:4px}.composition-row .field{grid-column:1 / -1;margin:0 0 2px}.composition-row button:disabled{opacity:.4;cursor:default}.search-field{display:inline-flex;align-items:center;gap:5px}.search-field input{width:110px;font:inherit;font-size:12px;height:26px;padding:0 2px 1px;border:none;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;color:var(--ink)}.search-field input:hover{border-bottom-color:var(--ink)}.search-field input:focus{outline:none;border-bottom:2px solid var(--selection);padding-bottom:0}.search-count{font-size:10.5px;color:var(--ink-65)}.option-rows{display:flex;flex-direction:column;gap:2px;padding:2px 6px}.option-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border:1px solid transparent;border-radius:0;background:none;text-align:left;cursor:pointer;font:inherit;color:var(--ink)}.option-row:hover{background:var(--ink-8)}.option-row.active{border-left:2px solid var(--selection);padding-left:5px;background:var(--ink-8)}.option-icon{flex:0 0 auto;display:inline-flex}.option-text{display:flex;flex-direction:column;min-width:0}.option-name{font-size:12px;line-height:1.2}.option-desc{font-size:10.5px;line-height:1.25;color:var(--ink-65)}.next-camera-row{display:flex;align-items:center;gap:8px;padding:4px 6px}.chip-swatch{width:24px;height:24px;border-radius:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex:none}.next-camera-row select,.rail-section select,.field select,.field input,.field textarea,.combo input,.mini input{background:transparent;border:none;border-bottom:1px solid var(--rule);border-radius:0;color:var(--ink);font:inherit;height:26px;padding:0 2px 1px}.rail-section select{width:100%}.next-camera-row select{flex:1}.rail-note{font-size:10.5px;line-height:1.4;color:var(--ink-65);margin:4px 6px 0}.info-dot{display:inline-flex;vertical-align:middle;margin-left:5px}.info-dot-btn{width:13px;height:13px;border-radius:0;border:1px solid var(--rule);background:none;color:var(--ink-65);font-family:inherit;font-size:9px;font-weight:700;font-style:italic;line-height:1;letter-spacing:0;text-transform:none;padding:0;cursor:help;display:flex;align-items:center;justify-content:center;flex:none}.info-dot-btn:hover,.info-dot.pinned .info-dot-btn{border-color:var(--ink-65);color:var(--ink)}.info-bubble{position:fixed;left:0;top:0;z-index:40;width:300px;padding:9px 11px;border:1px solid var(--ink-40);border-radius:0;background:var(--ground);font-size:10.5px;font-weight:400;font-style:normal;line-height:1.45;letter-spacing:0;text-transform:none;color:var(--ink-65);opacity:0;visibility:hidden;transition:opacity 90ms ease;pointer-events:none}.info-bubble.open{opacity:1;visibility:visible}@media(pointer:coarse){.info-dot-btn{width:22px;height:22px;font-size:12px}}.rail-count{color:var(--ink-65);font-size:9.5px}.rail-footer{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:2px}.rail-link{background:none;border:none;text-align:left;padding:5px 6px;font:inherit;font-size:12px;color:var(--ink-65);cursor:pointer;text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:2px}.rail-link:hover{color:var(--ink)}.canvas-area{position:relative;min-width:0;overflow:hidden}.canvas-wrap{position:relative;height:100%;overflow:hidden}.editor-canvas{width:100%;height:100%;display:block;background:var(--ground);touch-action:none;user-select:none;-webkit-user-select:none}.inspector-multi{position:absolute;top:14px;right:14px;width:380px;max-height:calc(100% - 28px);display:flex;flex-direction:column;z-index:30}.inspector-multi .inspector{position:static;width:auto;max-height:none;min-height:0;flex:1;border-top-left-radius:0;border-top-right-radius:0}.inspector-multi-note{background:var(--ink);color:var(--figure);font-size:10.5px;line-height:1.35;padding:6px 10px;border-radius:0}.inspector-move-floor{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--rule);margin-bottom:8px}.inspector-move-floor-label{font-size:10.5px;color:var(--ink-65);white-space:nowrap}.inspector-move-floor .picker{flex:1;min-width:0}.inspector-move-floor-note{font-size:10px;color:var(--ink-40);white-space:nowrap}.inspector{position:absolute;top:14px;right:14px;width:380px;max-height:calc(100% - 28px);overflow-y:auto;background:var(--ground);border:1px solid var(--selection);border-radius:0;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;font-size:13px}.inspector-head{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--rule);padding-right:20px}.rail-head{display:flex;align-items:center;justify-content:space-between}.panel-collapse{background:none;border:none;color:var(--ink-65);cursor:pointer;font-size:15px;line-height:1;padding:0 2px}.panel-collapse:hover{color:var(--ink)}.panel-x{position:absolute;top:20px;right:22px;z-index:6;width:18px;height:18px;border:none;background:none;color:var(--ink-65);cursor:pointer;font-size:12px;line-height:1}.panel-x:hover{color:var(--ink)}.panel-reopen{position:absolute;top:12px;z-index:6;background:var(--ground);border:1px solid var(--ink-40);border-radius:0;padding:5px 10px;font:inherit;font-size:11px;font-weight:600;color:var(--ink-65);cursor:pointer}.panel-reopen:hover{color:var(--ink);border-color:var(--ink-40)}.reopen-rail{left:12px}.reopen-inspector{right:12px}.inspector-head b{font-family:IBM Plex Mono,monospace;font-size:14.5px;font-weight:700}.etype{color:var(--ink-65);font-size:10.5px}.chip-preview{width:22px;height:22px;border-radius:0;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.field{display:flex;flex-direction:column;gap:4px}.field>span{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-65)}.field input,.field textarea,.field select{border:none;border-bottom:1px solid var(--rule);border-radius:0;background:none;padding:4px 2px 3px}.field input:hover,.field textarea:hover,.field select:hover{border-bottom-color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-bottom:2px solid var(--selection);padding-bottom:2px}.field-col{display:flex;flex-direction:column;gap:5px}.field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-65)}.swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:5px}.swatch{width:100%;aspect-ratio:1;border-radius:0;border:1px solid rgba(0,0,0,.12);cursor:pointer;padding:0}.swatch.active{outline:2px solid var(--selection);outline-offset:1px}.swatch.none{background:linear-gradient(45deg,transparent 46%,var(--ink-40) 46%,var(--ink-40) 54%,transparent 54%),var(--figure)}.field.checkbox{flex-direction:row;align-items:center;gap:7px}.field.checkbox>span{text-transform:none;font-weight:500;color:var(--ink);font-size:11.5px}.segmented{display:flex;height:28px;border:1px solid var(--ink-40);border-radius:0;overflow:hidden}.segmented button{flex:1;background:none;border:none;border-left:1px solid var(--ink-40);color:var(--ink);font:inherit;font-size:11.5px;padding:0 2px;cursor:pointer}.segmented button:first-child{border-left:none}.segmented button.active{background:var(--ink);color:#fff}.slider{display:flex;flex-direction:column;gap:5px;font-size:10.5px;color:var(--ink-65)}.slider-head{display:flex;justify-content:space-between;align-items:baseline;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-65)}.slider-head .mono{color:var(--ink);font-size:10.5px}.rail input[type=range]:focus-visible,.rail input[type=checkbox]:focus-visible,.rail .kind-toggles button:focus-visible,.rail .rail-link:focus-visible,.info-dot-btn:focus-visible{outline:1.5px solid var(--selection);outline-offset:2px;border-radius:0}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:24px;height:24px;margin:0;padding:0;border:none;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:16px 16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='.5' y='.5' width='15' height='15' fill='none' stroke='%23959594'/%3E%3C/svg%3E");cursor:pointer;flex-shrink:0}input[type=checkbox]:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect x='.5' y='.5' width='15' height='15' fill='none' stroke='%2317181A'/%3E%3C/svg%3E")}input[type=checkbox]:checked,input[type=checkbox]:checked:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect width='16' height='16' fill='%2317181A'/%3E%3Cpath d='M3.4 8.3 L6.6 11.4 L12.6 5.2' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E")}input[type=checkbox]:indeterminate,input[type=checkbox]:indeterminate:hover{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect width='16' height='16' fill='%2317181A'/%3E%3Crect x='3' y='7' width='10' height='2' fill='%23fff'/%3E%3C/svg%3E")}input[type=checkbox]:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--selection)}input[type=checkbox]:disabled{opacity:.4;cursor:default}@media(pointer:coarse){input[type=checkbox]{width:44px;height:44px}}.rail input[type=range]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:14px;background:transparent;cursor:pointer}.rail input[type=range]::-webkit-slider-runnable-track{height:2px;background:var(--rule);border-radius:0}.rail input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:0;background:var(--ink);border:none;margin-top:-4.5px}.rail input[type=range]::-moz-range-track{height:2px;background:var(--rule);border-radius:0}.rail input[type=range]::-moz-range-thumb{width:11px;height:11px;border-radius:0;background:var(--ink);border:none}.kind-toggles{display:flex;flex-wrap:wrap;gap:3px}.kind-toggles button{border:1px solid var(--ink-40);border-radius:0;background:transparent;color:var(--ink-65);font:inherit;font-size:10.5px;padding:3px 7px;cursor:pointer}.kind-toggles button.active{background:var(--ink);border-color:var(--ink);color:#fff}.kind-toggles button:hover{border-color:var(--ink-65)}.kind-filters button.active{background:transparent;border-color:var(--rule);color:var(--ink);opacity:1;text-decoration:none}.kind-filters button{background:transparent;opacity:.4;text-decoration:line-through}.rail-section{display:flex;flex-direction:column;gap:7px;padding:12px 0 2px;border-top:1px solid var(--rule);margin-top:6px}.rail-section .rail-label{margin:0}.hint{color:var(--ink-65);font-size:10.5px;margin:2px 0}.statusbar{display:flex;gap:18px;align-items:center;padding:0 12px;font-size:10.5px;color:var(--ink-65);border-top:1px solid var(--rule);background:var(--ground);white-space:nowrap;overflow:hidden}.statusbar-instance{flex:0 0 auto;align-self:stretch;height:100%;display:flex;align-items:center;margin:0 6px 0 -12px;padding:0 10px;background:var(--warn);color:var(--ink);font-weight:700;letter-spacing:.08em}.crew-instance{display:block;padding:4px 16px;background:var(--warn);color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;letter-spacing:.08em}.combo{position:relative}.combo input{width:100%;padding-right:20px}.combo-caret{position:absolute;right:6px;top:50%;width:6px;height:6px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:translateY(-70%) rotate(45deg);pointer-events:none}.combo-list{position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;margin:0;padding:3px;list-style:none;max-height:200px;overflow-y:auto;background:var(--ground);border:1px solid var(--ink-40);border-radius:0}.combo-list-floating{position:fixed;right:auto;width:max-content;max-width:320px;overscroll-behavior:contain}.combo-list-floating.up{top:auto}.combo-list-floating li{white-space:nowrap}.combo-list li{display:flex;align-items:center;height:28px;padding:0 8px;border-left:2px solid transparent;border-radius:0;font-size:13px;cursor:pointer}.combo-list li:hover{background:var(--ink-8)}.combo-list li.active{border-left-color:var(--selection);background:var(--ink-8)}.combo-list li.focus,.combo-list li.active.focus{background:var(--ink-8)}.picker-trigger{width:100%;text-align:left;height:26px;padding:0 20px 1px 2px;border:none;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;font:inherit;font-size:11.5px;color:var(--ink);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-trigger:hover{border-bottom-color:var(--ink)}.picker-trigger:focus-visible{outline:none;border-bottom:2px solid var(--selection);padding-bottom:0}.picker-placeholder{color:var(--ink-40)}.picker-add{color:var(--ink-65);font-style:italic;border-top:1px solid var(--rule);margin-top:2px;padding-top:8px}.anchor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:84px}.anchor-grid button{aspect-ratio:1;background:transparent;border:1px solid var(--ink-40);border-radius:0;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.anchor-grid button span{width:5px;height:5px;border-radius:0;background:var(--ink-40)}.anchor-grid button.active{border-color:var(--selection)}.anchor-grid button.active span{background:var(--selection)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mini{display:flex;flex-direction:column;gap:3px}.mini span{font-size:10px;color:var(--ink-65)}.mini input{width:100%}.snap-toast{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;border-radius:0;padding:5px 11px;font-size:11px;pointer-events:none;white-space:nowrap}.bg-edit-banner{position:absolute;top:16px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;border-radius:0;padding:7px 8px 7px 14px;font-size:12px;display:flex;align-items:center;gap:12px}.bg-edit-banner button{background:none;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:0;padding:4px 10px;font:inherit;cursor:pointer}.bg-edit-banner button:hover{border-color:#fff}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#17181a47;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--ground);border:1px solid var(--ink);border-radius:0;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--rule);font-size:14px}.modal-head .close{background:none;border:none;color:var(--ink-65);cursor:pointer;font-size:14px}.export-dialog{width:1240px;max-width:96vw}.version-diff{width:680px;max-width:96vw}.vd-sides{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--rule);font-size:11px}.vd-arrow{color:var(--ink-65)}.vd-body{padding:14px 16px;overflow-y:auto;flex:1;min-height:120px}.vd-summary{margin:0 0 12px;font-size:12px}.vd-doc{margin:0 0 12px;padding-left:18px;font-size:12px;line-height:1.7}.vd-venue{margin:0 0 6px;font-size:12px}.vd-table{width:100%;border-collapse:collapse;font-size:12px}.vd-table td{padding:4px 8px 4px 0;border-bottom:1px solid var(--rule-2, var(--rule));vertical-align:baseline}.vd-kind{width:62px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.vd-added,.vd-removed{color:var(--ink);font-weight:600}.vd-moved,.vd-changed{color:var(--ink-65)}.vd-name{width:45%}.vd-where{width:22%;font-size:11px}.vd-fields{font-size:11px}.vd-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-top:1px solid var(--rule)}.version-history{width:620px;max-width:96vw}.vh-table{width:100%;border-collapse:collapse;font-size:12px}.vh-table td{padding:6px 8px 6px 0;border-bottom:1px solid var(--rule);vertical-align:baseline}.vh-n{width:40px;font-size:11px}.vh-who{width:22%}.vh-label{color:var(--ink-65)}.vh-when{width:22%;font-size:11px;white-space:nowrap}.vh-act{text-align:right;white-space:nowrap}.export-body{display:grid;grid-template-columns:1fr 420px;flex:1;min-height:0}.export-controls{padding:18px 24px 22px;display:flex;flex-direction:column;overflow-y:auto}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-card{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--rule);border-radius:0;cursor:pointer}.profile-card.selected{border-left:2px solid var(--selection);padding-left:10px;background:var(--ink-8)}.profile-card.disabled{opacity:.4;cursor:default}.profile-card b{font-size:13px}.profile-card p{margin:2px 0 0;font-size:10.5px;color:var(--ink-65)}.export-row{display:flex;align-items:center;gap:10px}.export-row>span{width:84px;flex-shrink:0;font-size:10.5px;font-weight:700;color:var(--ink-65);text-transform:uppercase;letter-spacing:.04em}.export-row .segmented{width:auto;height:24px}.export-row .segmented button{flex:0 0 auto;padding:0 14px}.switch-row{display:flex;align-items:center;gap:8px;font-size:11.5px}.inventory-readout{border:1px solid var(--rule);border-radius:0;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.inventory-row{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-65)}.version-card{border:1px solid var(--warn);border-radius:0;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11.5px}.version-card>div{display:flex;gap:6px}.warn-btn{background:var(--warn);color:var(--ink);border:none;border-radius:0;padding:5px 10px;font:inherit;font-weight:600;cursor:pointer}.export-preview{background:#e4e4e0;border-left:1px solid var(--rule);padding:18px 24px 22px;display:flex;flex-direction:column;min-height:0}.export-preview-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.export-preview-foot{flex-shrink:0}.preview-frame{background:#fff;border:1px solid var(--ink-40);border-radius:0;overflow:hidden;display:flex;padding:14px}.preview-frame svg,.preview-frame .preview-page-img{border:1px solid var(--rule)}.preview-frame svg{width:100%;height:auto;display:block}.export-preview .note{font-size:10px;color:var(--ink-65);margin:0}.export-preview .error,.import-preview .error{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink);margin:6px 0 0;padding-top:5px;border-top:2px solid var(--warn)}.export-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:auto}.export-actions .primary,.modal .primary{background:var(--ink);color:#fff;border:none;border-radius:0;padding:7px 16px;font:inherit;font-weight:600;cursor:pointer}.export-actions .primary:disabled{opacity:.4;cursor:default}.export-actions .primary{height:32px;padding:0 16px;border:1px solid var(--ink)}.export-dialog .export-actions .ghost{height:32px;padding:0 14px;border:1px solid var(--ink-40)}.export-meta .field input{padding:2px 0}.modal .ghost{background:none;color:var(--ink);border:1px solid var(--rule);border-radius:0;padding:7px 14px;font:inherit;cursor:pointer}.ghost-txt{background:none;border:1px solid var(--rule);border-radius:0;padding:0 9px;height:26px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;flex-shrink:0;font:inherit;font-size:11px;font-weight:600;color:var(--ink);cursor:pointer}.ghost-txt:hover{background:var(--ink-8)}.import-dialog{width:920px;max-width:96vw}.import-body{display:grid;grid-template-columns:340px 1fr;min-height:0}.import-controls{padding:16px;display:flex;flex-direction:column;gap:13px;overflow-y:auto;border-right:1px solid var(--rule)}.import-preview{background:var(--ground);padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}.import-preview .preview-frame{position:relative;flex:1;min-height:340px;align-items:center;justify-content:center;background:#fff}.preview-canvas{max-width:100%;max-height:56vh;display:block;object-fit:contain}.mask-rect{position:absolute;background:#2f6bd82e;border:1px solid var(--selection);pointer-events:none}.crop-rect{position:absolute;background:transparent;border:1.5px dashed var(--warn);pointer-events:none}.drop-zone{display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;padding:34px 16px;border:1.5px dashed var(--rule);border-radius:0;background:none;color:var(--ink);cursor:pointer;font:inherit}.drop-zone:hover{border-color:var(--selection)}.drop-zone b{font-size:13px}.drop-zone span{font-size:11px;color:var(--ink-65)}.drop-zone .muted{color:var(--ink-65);font-size:10px}.import-file{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:11.5px}.import-file .mono{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segmented.pages{flex-wrap:wrap;width:auto}.slider-row{display:grid;grid-template-columns:92px 1fr 42px;align-items:center;gap:8px;font-size:11.5px}.slider-row input[type=range]{width:100%}.slider-row .val{text-align:right;color:var(--ink-65);font-size:10.5px}.rotate-controls{display:flex;align-items:center;gap:8px}.rotate-controls .ghost{padding:3px 10px}.rotate-controls .mono{min-width:34px;text-align:center;font-size:11px;color:var(--ink-65)}.mask-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px}.mask-row .muted{color:var(--ink-65)}.note.small,.muted.small{font-size:10px}.muted{color:var(--ink-65)}.import-actions{display:flex;gap:8px;align-items:center;margin-top:auto}.import-actions .spacer{flex:1}.import-preview .note{font-size:10px;color:var(--ink-65);margin:0}.import-preview .error{margin:0}.modal .ghost.danger{color:var(--ink);border-color:var(--ink-40)}html,body{overscroll-behavior:none}body{touch-action:manipulation}@media(pointer:coarse){.tool-row,.doc-tab,.option-row,.rail-link,.file-menu-item,.primary-btn,.ghost,.ghost-txt,.ghost-ico{min-height:44px}.rail-section select,.field select,.field input:not([type=checkbox]):not([type=color]),.combo input{min-height:40px}.field.checkbox input[type=checkbox]{width:22px;height:22px}.slider input[type=range]{height:32px}.panel-collapse,.panel-x{font-size:20px;padding:6px}}.signin-ground,.browser-ground{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--ground);display:flex;flex-direction:column;z-index:100}.signin-ground{align-items:center;justify-content:center}.signin-card{width:320px;background:var(--ground);border:1px solid var(--rule);border-radius:0;padding:24px;display:flex;flex-direction:column;gap:12px}.signin-mark{display:flex;align-items:center;gap:8px;margin-bottom:4px}.signin-wordmark{font-size:13px;letter-spacing:.14em;color:var(--ink)}.signin-note{font-size:11px;line-height:1.5;color:var(--ink-65);margin:0}.signin-error{font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.4;padding-top:5px;border-top:2px solid var(--warn);color:var(--ink);margin:0}.signin-go{margin-top:4px;padding:9px 12px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:#fff;font:inherit;font-size:12px;cursor:pointer}.signin-go:disabled{opacity:.4;cursor:default}.browser-head{display:flex;align-items:baseline;justify-content:space-between;padding:24px 24px 12px;border-bottom:1px solid var(--rule)}.browser-title{font-size:16px;font-weight:700;margin:0;color:var(--ink)}.browser-who{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--ink-65)}.browser-badge{border:1px solid var(--rule);border-radius:0;padding:1px 5px;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}.browser-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px}.browser-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--ground);border:1px solid var(--rule);border-radius:0;padding:12px 14px;margin-bottom:6px;font:inherit;text-align:left;cursor:default}.browser-row:hover{border-color:var(--ink-65)}.browser-row.busy{opacity:.55;pointer-events:none}.browser-row-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;background:none;border:0;padding:0;font:inherit;text-align:left;cursor:pointer;color:inherit;text-decoration:none}.browser-row-main:not([href]){cursor:default}.browser-rename{flex:1;font:inherit;font-size:13px;color:var(--ink);background:transparent;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:26px;padding:0 2px 1px}.browser-move,.browser-sort select{font:inherit;font-size:10.5px;font-family:IBM Plex Mono,monospace;color:var(--ink-65);background:transparent;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:24px;padding:0 2px 1px}.browser-sort{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;color:var(--ink-65)}.browser-search{font:inherit;font-size:12px;color:var(--ink);background:transparent;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:26px;padding:0 2px 1px;width:200px}.browser-search:hover{border-bottom-color:var(--ink)}.browser-search:focus{outline:none;border-bottom:2px solid var(--selection);padding-bottom:0}.browser-recents{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap;padding:0 0 14px}.browser-recents-head{flex-basis:100%;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:0 2px 2px}.browser-recent{display:flex;flex-direction:column;gap:3px;background:var(--ground);border:1px solid var(--rule);border-radius:0;padding:10px 14px;min-width:130px;text-decoration:none;color:inherit;cursor:pointer}.browser-recent:hover{border-color:var(--ink-65)}.browser-hit{position:relative}.browser-hit-where{border:0;background:none;font-size:10.5px;color:var(--ink-65);cursor:pointer;padding:0 2px 8px;margin-top:-2px}.browser-hit-where:hover{color:var(--ink);text-decoration:underline}.browser-crumbs{font-size:11px;padding:2px 2px 10px;display:flex;align-items:center;flex-wrap:wrap}.browser-folder-bar{display:flex;align-items:center;gap:8px;padding:0 2px 10px}.browser-folder-row{width:100%;display:flex;align-items:baseline;gap:10px;background:var(--ground);border:1px solid var(--rule);border-radius:0;padding:11px 14px;margin-bottom:6px;font:inherit;text-align:left;cursor:pointer;color:inherit}.browser-folder-row:hover{border-color:var(--ink-65)}.browser-folder-name{font-size:13px;color:var(--ink)}.browser-folder-name:before{content:"▸ ";color:var(--ink-65)}.browser-folder{border:1px solid var(--rule);border-radius:0;padding:10px 12px 4px;margin:0 0 10px;background:var(--ground)}.browser-folder-head{display:flex;align-items:center;gap:8px;font-size:12px;padding:0 2px 8px}.browser-name{font-size:13px;color:var(--ink)}.browser-meta{font-size:10.5px;color:var(--ink-65)}.browser-row-side{display:flex;align-items:center;gap:6px;flex:none}.browser-flag{font-size:10px;border-radius:0;padding:2px 6px;border:1px solid var(--rule);color:var(--ink-65);white-space:nowrap}.browser-flag.live{border-color:var(--ink);background:var(--ink);color:#fff}.browser-flag.recent{border-color:var(--warn);color:var(--ink);background:var(--ink-8)}.browser-flag.locked{border-color:var(--ink-65);color:var(--ink-65)}.browser-empty,.browser-error{font-size:12px;color:var(--ink-65);padding:12px 2px;margin:0}.browser-error{color:var(--ink)}.browser-foot{padding:12px 24px 24px;border-top:1px solid var(--rule);display:flex;align-items:center;gap:16px}.browser-importing{font-size:12px;color:var(--ink-65);padding:10px 24px 0;margin:0}.browser-import-report{display:flex;flex-direction:column;gap:4px;align-items:flex-start;font-size:12px;margin:10px 24px 0;padding:10px 12px;border:1px solid var(--rule);border-radius:0;background:var(--ground)}.browser-import-report.bad{border-color:var(--ink)}.browser-import-fail{color:var(--ink);font-family:IBM Plex Mono,monospace}.serverbar{border-bottom:1px solid var(--rule);background:var(--ground)}.serverbar-row{display:flex;align-items:center;gap:10px;padding:6px 12px}.serverbar-project{font-size:12px;font-weight:600;color:var(--ink)}.serverbar-save{font-family:IBM Plex Mono,monospace;font-size:10.5px;padding:2px 6px;border-radius:0;border:1px solid var(--rule);color:var(--ink-65)}.serverbar-save.warn{border-color:var(--warn);color:var(--ink);background:var(--ink-8)}.serverbar-save.bad{border-color:var(--warn);background:var(--warn);color:#fff;font-weight:600}.serverbar-seat,.serverbar-banner button{background:none;border:1px solid var(--rule);border-radius:0;padding:3px 8px;font:inherit;font-size:11px;color:var(--ink);cursor:pointer}.serverbar-seat:hover,.serverbar-banner button:hover{border-color:var(--ink-65)}.serverbar-seat:disabled{opacity:.4;cursor:default}.serverbar-asked,.serverbar-here{font-size:10.5px;color:var(--ink-65)}.serverbar-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 12px;font-size:11px;border-top:1px solid var(--rule);line-height:1.45}.serverbar-banner.live,.serverbar-banner.ask,.serverbar-banner.free{background:var(--ink-8);color:var(--ink)}.serverbar-banner.recent,.serverbar-banner.warn{background:var(--ink-8);color:var(--ink);border-top:2px solid var(--warn)}.serverbar-banner.danger{background:var(--ink-8);color:var(--ink);border-top:2px solid var(--ink)}.serverbar-actions{display:flex;gap:6px;flex:none}.serverbar-actions button{white-space:nowrap}.camlist{flex:1;min-width:0;height:100%;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:var(--ground)}.camlist-empty{flex:1;display:grid;place-items:center;background:var(--ground);color:var(--ink-65)}.camlist-head{display:flex;align-items:flex-end;gap:22px;padding:22px 26px 14px;flex-shrink:0;position:sticky;top:0;z-index:2;background:var(--ground)}.camlist-head-spacer{flex:1}.camlist-title{font-size:19px;font-weight:700;line-height:1}.camlist-card{margin:0 26px 20px;background:var(--figure);border:1px solid var(--rule);flex:0 0 auto;display:flex;flex-direction:column}.camlist-scroll{overflow-x:auto;scrollbar-width:none}.camlist-scroll::-webkit-scrollbar{display:none}.camlist-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:12px var(--camlist-pad, 26px) 0}.camlist-foot-left{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.camlist-foot-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.camlist-count{font-size:10.5px;color:var(--ink-65)}.camlist-warn{font-size:10.5px;color:var(--ink);border-top:2px solid var(--warn);padding-top:3px}.camlist-info{padding:14px var(--camlist-pad, 26px);font-size:10.5px;color:var(--ink-65);line-height:1.7}.camlist-info b{color:var(--ink);font-weight:600}.camlist-said{margin:0;font-size:10.5px;color:var(--ink-65);text-align:right;max-width:360px}.camlist-said.problem{border-top:2px solid var(--warn);padding-top:3px;color:var(--ink)}.camlist-grid{min-width:var(--camlist-min, 0)}.camlist-row{display:grid;grid-template-columns:var(--camlist-cols);gap:0 var(--camlist-gap, 8px);align-items:center;padding:0 var(--camlist-pad, 26px);min-width:var(--camlist-min, 0)}.camlist-groups{height:26px;align-items:end;font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;letter-spacing:.06em;color:var(--ink-65)}.camlist-group{border-bottom:1px solid var(--ink);padding-bottom:5px}.camlist-headrow{height:28px;border-bottom:1px solid var(--rule);font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-65)}.camlist-gear-th{display:flex;justify-content:flex-start;gap:6px}.camlist-block{border-bottom:1px solid var(--rule)}.camlist-block.open{background:var(--ink-8)}.camlist-block .camlist-row{min-height:52px;font-size:13px}.camlist-row.ticked{background:var(--ink-8)}.camlist-tick{display:flex;align-items:center;gap:7px}.camlist-tick input[type=checkbox]{width:15px;height:15px;background-size:15px 15px;flex-shrink:0;margin:0}.camlist-chip{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.camlist-identity{width:17px;height:17px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--identity);color:var(--ink);font-size:11px;font-weight:700}.camlist-identity-btn{border:none;padding:0;font-family:inherit;cursor:pointer}.camlist-cell{min-width:0;display:flex;align-items:center}.camlist-cell>.combo,.camlist-cell>.picker,.camlist-gear-value>.combo,.camlist-gear-value>.picker{width:100%;min-width:0}.camlist-cell input[type=text],.camlist-cell .picker-trigger,.camlist-cell select{width:100%;height:30px;padding:0;border:none;border-bottom:1px solid transparent;background:transparent;font:inherit;font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.camlist-cell input[type=text]:focus,.camlist-cell .picker-trigger:focus-visible,.camlist-cell .picker-trigger[aria-expanded=true]{outline:none;border-bottom:2px solid var(--selection)}.camlist-row>.camlist-cell:first-of-type input[type=text]{font-family:IBM Plex Mono,monospace;font-size:12px}.camlist-cell .combo-caret{display:none}.camlist-gear{gap:5px;justify-content:flex-start;padding-right:6px}.camlist-gear-value{flex:0 1 auto;min-width:40px;max-width:100%}.camlist-altcount{flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:10px;line-height:1;color:var(--ink-2, #5A5D66);background:transparent;border:1px solid var(--rule, #D2D3CF);padding:1px 3px;cursor:pointer}.camlist-altcount:hover{color:var(--ink-1, #17181A);border-color:var(--ink-3, #959594)}.camlist-own{width:13px;height:13px;background-size:13px 13px;flex-shrink:0;margin:0}.camlist-people{min-width:0}.camlist-expand{display:flex;justify-content:center}.camlist-expander{width:32px;height:28px;border:none;background:transparent;font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--ink-65);cursor:pointer}.camlist-expander:hover{background:var(--ink-8);color:var(--ink)}.camlist-block .camlist-expanded{align-items:start;padding-top:12px;padding-bottom:16px;height:auto}.camlist-notes{grid-column:2 / 5;min-width:0}.camlist-notes,.camlist-assign-cell{display:flex;flex-direction:column}.camlist-kit-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;color:var(--ink-65);cursor:pointer;white-space:nowrap}.camlist-kit-toggle input{margin:0}.camlist-field-label{font-size:10.5px;color:var(--ink-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.camlist-notes input[type=text],.camlist-assign input[type=text]{width:100%;height:30px;padding:0;border:none;border-bottom:1px solid var(--ink-40);background:transparent;font:inherit;font-size:13px}.camlist-notes input[type=text]:hover{border-bottom-color:var(--ink)}.camlist-notes input[type=text]:focus,.camlist-assign input[type=text]:focus{outline:none;border-bottom:2px solid var(--selection)}.camlist-assign{position:relative;min-width:0;display:flex;flex-direction:column;gap:2px}.camlist-assign-slot{font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-65);white-space:nowrap}.camlist-assign-set{height:30px;border:none;border-bottom:1px solid var(--ink-40);background:transparent;font:inherit;font-size:13px;text-align:left;padding:0;cursor:pointer}.camlist-assign-list{position:absolute;z-index:40;left:0;top:100%;margin:2px 0 0;padding:0;list-style:none;min-width:160px;background:var(--ground);border:1px solid var(--ink-40)}.camlist-assign-list button{width:100%;height:28px;display:flex;align-items:center;padding:0 7px;border:none;background:transparent;font:inherit;font-size:12.5px;text-align:left;cursor:pointer}.camlist-assign-list button:hover{background:var(--ink-8)}.camlist-assign-none{margin:4px 0 0;font-size:11px;color:var(--ink-65)}.camlist-expanded-hint{grid-column:9 / 12;font-size:10.5px;color:var(--ink-65);line-height:1.5}.camlist-note{font-size:10.5px;color:var(--ink-65);line-height:1.6;padding:12px var(--camlist-pad, 26px) 0;margin:0;min-width:var(--camlist-min, 0)}.camlist-bulk{display:flex;align-items:center;gap:12px;margin:12px var(--camlist-pad, 26px) 0;padding:10px 12px;border:1px solid var(--ink);background:transparent}.camlist-bulk button:disabled{opacity:.4;cursor:default}.preview-page-img{width:100%;height:auto;display:block;border:1px solid var(--rule);background:#fff}.preview-pages{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.preview-thumb{position:relative;padding:0;border:1px solid var(--rule);background:#fff;cursor:pointer;line-height:0}.preview-thumb img{width:72px;height:auto;display:block;opacity:.9}.preview-thumb.active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.preview-thumb span{position:absolute;right:2px;bottom:2px;font-size:9px;color:var(--ink-65);background:#ffffffd9;padding:0 3px}.preview-pages-busy{font-size:11px;color:var(--ink-65)}.preview-bigger{font:inherit;font-size:12px;padding:4px 10px;border:1px solid var(--ink-40);background:transparent;color:var(--ink);cursor:pointer;margin-left:auto}.preview-big-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#17181ab8;display:grid;place-items:center;cursor:zoom-out;padding:3vh 3vw}.preview-big-overlay img{max-width:94vw;max-height:94vh;background:#fff;box-shadow:0 12px 48px #0006}.preview-big-svg{width:min(94vw,132.916vh);background:#fff;box-shadow:0 12px 48px #0006}.preview-big-svg svg{width:100%;height:auto;display:block}.catalog-editor{width:1080px;max-width:96vw;height:640px;max-height:88vh}.catalog-head{align-items:baseline;gap:12px;padding:14px 18px}.catalog-body{flex:1;display:flex;min-height:0}.catalog-kinds{width:216px;flex-shrink:0;border-right:1px solid var(--rule);padding:10px 0;display:flex;flex-direction:column;overflow-y:auto}.catalog-kind{display:flex;align-items:center;justify-content:space-between;gap:10px;height:32px;padding:0 18px;background:none;border:none;border-radius:0;font:inherit;font-size:13px;color:var(--ink);text-align:left;cursor:pointer}.catalog-kind:hover{background:var(--ink-8)}.catalog-kind.active,.catalog-kind.active:hover{background:var(--ink);color:#fff;font-weight:600}.catalog-count{font-size:11px;color:var(--ink-65)}.catalog-count-none{font-size:11px;color:var(--ink-40)}.catalog-kind.active .catalog-count,.catalog-kind.active .catalog-count-none{color:#fff}.catalog-pane{flex:1;min-width:0;display:flex;flex-direction:column}.catalog-pane-head{padding:12px 20px 10px;border-bottom:1px solid var(--rule);flex-shrink:0}.catalog-pane-title{font-size:14px;font-weight:600}.catalog-pane-note{font-size:10.5px;color:var(--ink-65);line-height:1.5;padding-top:3px}.catalog-grid-scroll{flex:1;overflow-y:auto;padding:0 20px}.catalog-grid-head,.catalog-grid-row{display:grid;grid-template-columns:var(--cat-cols);gap:0 12px;align-items:center}.catalog-grid-head{height:28px;border-bottom:1px solid var(--ink);font-size:10.5px;color:var(--ink-65)}.catalog-grid-row{height:40px;border-bottom:1px solid var(--rule);border-top:2px solid transparent}.catalog-grid-row:hover{background:var(--ink-8)}.catalog-cell-name{font-size:13px}.catalog-cell-select{min-width:0}.dim{color:var(--ink-65)}.catalog-usage{font-size:10.5px;color:var(--ink-65);white-space:nowrap}.catalog-code{font-size:13px;font-weight:600}.catalog-badge-cell{display:flex;align-items:center}.catalog-badge{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.catalog-delete-cell{display:flex;align-items:center;justify-content:flex-start}.catalog-delete{border:none;background:transparent;cursor:pointer;font:inherit;font-size:12px;min-height:24px;display:inline-flex;align-items:center;padding:0;color:var(--ink-65)}.catalog-delete:hover:not(:disabled){color:var(--ink)}.catalog-delete:disabled{opacity:.4;cursor:default}.catalog-empty{font-size:13px;color:var(--ink-65);padding:16px 0}.catalog-fixed-note{font-size:10.5px;color:var(--ink-65);line-height:1.55;padding:14px 0 0;margin:0}.catalog-foot{flex-shrink:0;border-top:1px solid var(--rule);padding:12px 20px;display:flex;align-items:center;gap:16px}.catalog-add{height:28px;padding:0 12px;border:1px solid var(--ink);background:transparent;cursor:pointer;font:inherit;font-size:12px;font-weight:600}.catalog-add:hover:not(:disabled){background:var(--ink-8)}.catalog-add:disabled{opacity:.4;cursor:default}.catalog-foot-note{font-size:10.5px;color:var(--ink-65);line-height:1.5}.catalog-drag-handle{cursor:grab;color:var(--ink-40);font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1;-webkit-user-select:none;user-select:none}.catalog-name-input{font:inherit;font-size:13px;color:var(--ink);border:none;border-bottom:1px solid transparent;background:none;height:30px;padding:0 0 1px;border-radius:0;width:100%;min-width:0}.catalog-name-input:hover{border-bottom-color:var(--ink)}.catalog-name-input:focus{outline:none;border-bottom:2px solid var(--selection);padding-bottom:0}.catalog-extender{display:flex;align-items:center;justify-content:center}.catalog-converter-halves,.catalog-half{display:inline-flex;align-items:center;gap:8px;min-width:0}.catalog-half-swatch{width:16px;height:16px;flex-shrink:0;border-radius:0}.swatch-trigger-wrap{position:relative;display:inline-flex;min-width:0}.swatch-trigger{height:30px;display:flex;align-items:center;gap:8px;border:none;border-bottom:1px solid var(--rule);background:transparent;cursor:pointer;padding:0 0 1px;font:inherit;font-size:10.5px;color:var(--ink-65)}.swatch-trigger:hover{border-bottom-color:var(--ink)}.swatch-trigger:focus-visible{outline:none;border-bottom:2px solid var(--selection);padding-bottom:0}.swatch-trigger-chip{width:20px;height:20px;flex-shrink:0}.swatch-pop{position:absolute;z-index:8;top:34px;right:0;left:auto;width:max-content;background:var(--ground);border:1px solid var(--ink-40);padding:10px}.swatch-pop-note{margin:0 0 8px;font-size:10.5px;color:var(--ink-65);white-space:nowrap}.swatch-pop .swatch-picker{display:grid;grid-template-columns:repeat(7,24px);gap:6px}.catalog-mm{width:42px;font:inherit;font-size:11px;font-family:IBM Plex Mono,monospace;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:24px;padding:0 2px 1px;background:transparent;color:var(--ink);-moz-appearance:textfield}.catalog-mm::-webkit-outer-spin-button,.catalog-mm::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.catalog-extender{display:inline-flex;align-items:center;gap:4px}.catalog-ext-mm{width:34px;font:inherit;font-size:11px;font-family:IBM Plex Mono,monospace;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:24px;padding:0 2px 1px;background:transparent;color:var(--ink);-moz-appearance:textfield}.catalog-ext-mm::-webkit-outer-spin-button,.catalog-ext-mm::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.catalog-ext-mm:disabled{border-color:transparent;background:transparent;opacity:.4}.catalog-converter-halves{display:inline-flex;align-items:center;gap:10px}.catalog-half{display:inline-flex;align-items:center;gap:5px}.catalog-half-swatch{width:12px;height:12px;border-radius:0;border:1px solid rgba(0,0,0,.15);flex-shrink:0}.production-link-row{display:flex;align-items:center;gap:8px}.production-link input{flex:1;font:inherit;font-size:11px;border:none;border-bottom:1px solid var(--rule);border-radius:0;height:26px;padding:0 2px 1px;background:transparent;color:var(--ink)}.production-problem{color:var(--ink)}.production-matches{margin:4px 0 0;padding:0;list-style:none;border:1px solid var(--ink-40);border-radius:0;background:var(--ground)}.production-matches li{display:flex;flex-direction:column;gap:1px;padding:6px 8px;cursor:pointer}.production-matches li+li{border-top:1px solid var(--rule)}.production-matches li:hover{background:var(--ink-8)}.production-match-name{font-size:12px}.production-match-slug{font-size:10px;opacity:.6}.production-match-more{cursor:default;font-size:10px;opacity:.6}.production-match-more:hover{background:none}.people-picker{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:4px;min-width:0;overflow:hidden}.field .people-picker,.camlist-bulk .people-picker{flex-wrap:wrap;overflow:visible}.camlist-row .people-picker>.picker{flex:0 0 auto}.camlist-row .people-chip{flex:0 1 auto}.people-chip{display:inline-flex;align-items:center;min-width:0;overflow:hidden;gap:3px;font-size:10.5px;font-family:IBM Plex Mono,monospace;color:var(--ink);background:transparent;border:1px solid var(--rule);border-radius:0;padding:1px 3px 1px 7px;white-space:nowrap}.people-chip-flagged{border-bottom:2px solid var(--warn)}.flag-pop{position:fixed;z-index:40;display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:max-content;max-width:280px;padding:8px 10px;border:1px solid var(--ink);border-top:2px solid var(--warn);background:var(--figure);color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:10.5px;line-height:1.5;white-space:normal;cursor:default}.flag-pop-words{display:block}.flag-pop-who{color:var(--ink-65)}.flag-pop-dismiss{border:1px solid var(--rule);background:transparent;color:var(--ink-65);font-family:inherit;font-size:10.5px;padding:2px 8px;cursor:pointer}.flag-pop-dismiss:hover{border-color:var(--ink);color:var(--ink)}.people-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.people-chip-x{flex:0 0 auto;border:0;background:none;color:var(--ink-65);font-size:12px;line-height:1;padding:0 3px;cursor:pointer}.people-chip-x:hover{color:var(--ink)}.catalog-drag-handle{cursor:grab;color:var(--ink-65);font-size:14px;line-height:1;padding:0 2px;flex-shrink:0;-webkit-user-select:none;user-select:none}.catalog-drag-handle:active{cursor:grabbing}.catalog-row-drop{border-top:2px solid var(--selection)}.rail-link.danger{color:var(--ink)}.rail-link.danger:disabled{opacity:.4;cursor:default}.insp-no-letters{margin:9px 0 0;font-size:10.5px;color:var(--ink-65);line-height:1.45}.insp-group{display:flex;flex-direction:column;gap:9px;padding-top:12px;border-top:1px solid var(--rule)}.insp-group:first-of-type{border-top:none;padding-top:0}.insp-group-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.07em;color:var(--ink-65)}.insp-group-note{margin:-5px 0 0;font-size:10.5px;color:var(--ink-65);line-height:1.45}.insp-op-note{margin:-4px 0 0;font-size:10.5px;color:var(--ink-65);line-height:1.45}.insp-gear{display:flex;flex-direction:column;gap:4px}.insp-gear-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.insp-gear-label{font-size:10.5px;color:var(--ink-65)}.insp-own{display:flex;align-items:center;gap:5px;height:24px;border:none;background:transparent;cursor:pointer;padding:0;font-family:IBM Plex Mono,monospace;font-size:10.5px;color:var(--ink-65)}.insp-own.on{color:var(--ink)}.insp-own-box{width:12px;height:12px;flex-shrink:0;border:1px solid var(--ink-40)}.insp-own.on .insp-own-box{border-color:var(--ink);background:var(--ink)}.insp-own:hover .insp-own-box{border-color:var(--ink)}.inspector-unattached{border-color:var(--ink-40)}.pub-wrap{position:relative;flex-shrink:0}.pub-trigger{height:26px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid var(--rule);background:transparent;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.pub-trigger:hover{border-color:var(--ink)}.pub-trigger-stale{border:2px solid var(--warn)}.pub-trigger-status{font-size:10.5px;font-weight:400;color:var(--ink-65)}.pub-trigger-stale .pub-trigger-status{color:var(--ink)}.pub-pop{position:absolute;top:32px;right:0;z-index:30;width:400px;background:var(--ground);border:1px solid var(--ink-40);padding:14px 16px 16px;text-align:left}.pub-head{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid var(--rule);padding-bottom:10px}.pub-head b{font-size:14px;font-weight:700}.pub-head .dim{font-size:10.5px}.pub-close{width:24px;height:24px;border:none;background:transparent;cursor:pointer;font-size:12px;color:var(--ink-65)}.pub-close:hover{color:var(--ink)}.pub-block{padding-top:12px;margin-top:12px;border-top:1px solid var(--rule)}.pub-block-stale{border-top:2px solid var(--warn)}.pub-block-head{display:flex;align-items:baseline;gap:8px}.pub-role{font-size:10.5px;font-weight:600;letter-spacing:.07em}.pub-status{font-size:10.5px;color:var(--ink-65)}.pub-note{margin:4px 0 0;font-size:10.5px;color:var(--ink-65);line-height:1.5}.pub-actions{display:flex;align-items:center;gap:10px;padding-top:8px}.pub-confirm-scrim{z-index:200;background:#17181a57;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.pub-confirm{width:420px;max-width:92vw}.pub-confirm-body{padding:18px 20px 6px;font-size:13px;line-height:1.5;color:var(--ink)}.pub-confirm-body p{margin:0 0 10px}.pub-confirm-q{font-weight:600}.pub-confirm-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 20px 18px}.fanout-scrim{z-index:200;background:#17181a57;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.fanout{width:480px;max-width:94vw}.fanout-body{padding:16px 20px 6px;font-size:13px;color:var(--ink);max-height:60vh;overflow-y:auto}.fanout-lead{margin:0 0 12px}.fanout-group{margin:0 0 14px}.fanout-group-h{font-size:11px;color:var(--ink-65);margin:0 0 6px}.fanout-tick,.fanout-info,.fanout-row{display:flex;align-items:center;gap:8px;padding:3px 0}.fanout-info{color:var(--ink-65)}.fanout-where{flex:1;min-width:0}.fanout-change{font-size:11px;color:var(--ink-65)}.fanout-list{list-style:none;margin:0;padding:0}.fanout-status{font-size:11px}.fanout-applied{color:#2f7d32}.fanout-skipped-stale,.fanout-refused-not-ours{color:var(--warn)}.fanout-no-target{color:var(--ink-65)}.fanout-error,.fanout-fail{color:#b23b3b}.fanout-ok{color:#2f7d32}.fanout-banner{margin:0 0 10px;padding:8px 12px;border-radius:6px;background:#fbe9e9;border:1px solid #e5b7b7;color:#9a2b2b;font-size:12px;font-weight:600}.fanout-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 20px 18px}.pub-link{display:flex;align-items:center;gap:10px;min-width:0}.pub-url{font-size:10.5px;color:var(--ink-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pub-copy{height:28px;padding:0 10px;border:1px solid var(--ink-40);background:transparent;cursor:pointer;font:inherit;font-size:12px;flex-shrink:0}.pub-copy:hover{border-color:var(--ink)}.pub-ticks{padding-top:6px}.pub-tick{width:100%;height:28px;display:flex;align-items:center;gap:10px;border:none;background:transparent;cursor:pointer;padding:0;text-align:left;font:inherit}.pub-tick:hover:not(:disabled){background:var(--ink-8)}.pub-tick-off{opacity:.4;cursor:default}.pub-tick-name{font-size:13px}.pub-tick-why{font-size:10.5px;color:var(--ink-65)}.pub-box{width:15px;height:15px;flex-shrink:0;border:1px solid var(--ink-40)}.pub-box.on{border-color:var(--ink);background:var(--ink)}.pub-tick:hover:not(:disabled) .pub-box{border-color:var(--ink)}.pub-stamp{display:flex;align-items:center;gap:10px;padding-top:10px;margin-top:8px;border-top:1px solid var(--rule)}.pub-stamp .pub-tick{width:auto}.pub-stamp-text{font-size:10.5px;color:var(--ink-65)}.pub-stamp-text.on{color:var(--ink)}.pub-refuse,.pub-error{border-top:2px solid var(--warn);margin-top:10px;padding-top:6px}.pub-refuse p,.pub-error p{margin:0;font-size:13px;line-height:1.4}.pub-refuse p+p{padding-top:3px;font-size:10.5px;color:var(--ink-65)}.pub-foot{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--rule);font-size:10.5px;color:var(--ink-65);line-height:1.55}.share{height:100%;display:flex;flex-direction:column;background:var(--ground);color:var(--ink);overflow:hidden}.share-center{display:grid;place-items:center;padding:24px;text-align:center}.share-band{flex-shrink:0;padding:12px 18px 14px;border-bottom:1px solid var(--rule);padding-top:max(12px,env(safe-area-inset-top))}.share:not(.share-wide) .share-band{padding:7px 14px 8px;padding-top:max(7px,env(safe-area-inset-top));padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.share-subline{font-size:11px;line-height:1.35;color:var(--ink-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:1px}.share:not(.share-wide) .share-show{font-size:15px}.share-show{font-size:16px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-role{font-size:11px;font-weight:600;letter-spacing:.07em;border:1px solid var(--ink-40);padding:2px 6px;flex-shrink:0}.share-place,.share-version,.share-progress,.share-offline{font-size:11px;color:var(--ink-65);margin:8px 0 0}.share-offline{margin-top:4px}.share-newer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:8px;border-top:2px solid var(--warn)}.share-newer-words{font-size:13px;line-height:1.4}.share-take{height:44px;padding:0 14px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:600;flex-shrink:0;cursor:pointer}.share-plot-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.share-plot{flex:1;min-height:0;position:relative;overflow:hidden;background:var(--figure);touch-action:none}.share-plot svg{display:block}.share-fit{position:absolute;right:14px;bottom:14px;width:44px;height:44px;background:var(--ground);border:1px solid var(--ink-40);font-size:11px;font-weight:600;cursor:pointer}.share-spaces{position:absolute;left:14px;bottom:14px;display:flex;gap:6px}.share-spaces button{min-height:44px;padding:0 12px;background:var(--ground);border:1px solid var(--ink-40);font:inherit;font-size:12px;cursor:pointer}.share-spaces button.is-on{background:var(--ink);border-color:var(--ink);color:#fff}.share-legend{flex-shrink:0;padding:10px 18px;border-bottom:1px solid var(--rule)}.share-legend-title{font-size:11px;color:var(--ink-65);padding-bottom:8px}.share-legend-row{display:flex;flex-wrap:wrap;gap:8px 16px}.share-legend-item{display:flex;align-items:center;gap:7px;font-size:13px}.share-badge{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.share-list{flex:1;min-height:0;overflow-y:auto;background:var(--ground)}.share-row{border-bottom:1px solid var(--rule)}.share-row.selected{background:var(--ink-8);box-shadow:inset 2px 0 0 var(--selection)}.share-row-head{display:flex;align-items:center;height:56px;padding:0 6px 0 18px}.share-row-tap{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:56px;border:none;background:transparent;padding:0;font:inherit;text-align:left;cursor:pointer}.share-chip{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.share-row-label{font-size:13px;font-weight:600;flex-shrink:0}.share-row-sub{flex:1;min-width:0;font-size:13px;color:var(--ink-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-expand{width:44px;height:44px;flex-shrink:0;border:none;background:transparent;font-size:17px;font-weight:500;cursor:pointer}.share-record{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;padding:0 18px 14px}.share-field-wide{grid-column:1 / -1}.share-field-label{font-size:11px;color:var(--ink-65)}.share-field-value{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:13px;font-weight:500;min-width:0}.share-field-value.quiet{color:var(--ink-65)}.share-field-text{min-width:0;overflow:hidden;text-overflow:ellipsis;line-height:1.35}.share-field-wide .share-field-text{white-space:normal}.share-warn{margin-top:5px;padding-top:5px;border-top:2px solid var(--warn);font-size:11px;color:var(--ink)}.share-letter{width:20px;height:20px;border-radius:50%;background:var(--identity);color:var(--ink);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.share-noletter{width:20px;flex-shrink:0;text-align:center;font-size:11px;color:var(--ink-40)}.share-tabs{flex-shrink:0;display:flex;height:48px;border-top:1px solid var(--rule);padding-bottom:max(6px,env(safe-area-inset-bottom));background:var(--ground);box-sizing:content-box}.share-tab{flex:1;display:flex;align-items:center;justify-content:center;border:none;border-top:2px solid transparent;margin-top:-1px;background:transparent;font:inherit;font-size:13px;color:var(--ink-65);cursor:pointer}.share-tab.active{font-weight:600;color:var(--ink);border-top-color:var(--ink)}.share-tab:disabled{opacity:.4;cursor:default}.share-detail{position:fixed;left:0;right:0;bottom:0;max-height:62%;overflow-y:auto;background:var(--ground);border-top:2px solid var(--ink);padding-bottom:env(safe-area-inset-bottom);z-index:20}.share-detail-head{display:flex;align-items:center;gap:12px;padding:14px 18px 12px;border-bottom:1px solid var(--rule)}.share-detail-title{flex:1;font-size:16px;font-weight:600}.share-detail-close{width:44px;height:44px;margin:-8px -12px -8px 0;border:none;background:transparent;font-size:15px;color:var(--ink);cursor:pointer}.share-empty,.share-nothing{padding:18px;font-size:13px;color:var(--ink-65)}.share-nothing{border-top:2px solid var(--warn);margin:0 18px;color:var(--ink)}.share-nothing p{margin:6px 0 0}.share-nothing p+p{font-size:11px;color:var(--ink-65)}.share-download{grid-column:3;justify-self:end;height:28px;padding:0 12px;border:1px solid var(--ink-40);background:transparent;font:inherit;font-size:12px;cursor:pointer}.share-download:hover:not(:disabled){border-color:var(--ink)}.share-download:disabled{opacity:.4;cursor:default}.people-chip-x{margin:-6px -3px}.catalog-grid-row .picker-trigger,.catalog-grid-row .combo-trigger{border:none;border-bottom:1px solid transparent;background:transparent;padding:0}.catalog-grid-row .combo-caret{display:none}.catalog-grid-row .picker-trigger[aria-expanded=true],.catalog-grid-row .picker-trigger:focus-visible{outline:none;border-bottom:2px solid var(--selection)}.catalog-grid-row .combo,.catalog-grid-row .picker{width:100%;min-width:0}.catalog-grid-row .catalog-half{display:flex;width:100%;min-width:0}.catalog-grid-row .catalog-half>.combo,.catalog-grid-row .catalog-half>.picker{flex:1;min-width:0}.meta-line{display:inline-flex;align-items:center;flex-shrink:0;white-space:nowrap}.meta-ver{white-space:nowrap}.rail-narrow{width:86px}.rail-narrow .rail-head{justify-content:center;padding-left:0;padding-right:0}.rail-narrow .tool-row{justify-content:center;padding:0;gap:0}.rail-narrow .tool-name,.rail-narrow .rail-section,.rail-narrow .zone-shape,.rail-narrow .rail-footer,.rail-narrow .next-camera{display:none}.rail-narrow-floor{padding:8px 6px 4px}.rail-narrow-floor .picker{width:100%}.rail-narrow-floor .picker-trigger{width:100%;height:26px;font-size:10.5px;padding:0 5px;border:1px solid var(--rule);background:var(--figure);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.swatch-picker{display:flex;flex-wrap:wrap;gap:5px;padding:4px 6px 2px}.swatch{width:22px;height:22px;border-radius:0;border:1px solid rgba(23,24,26,.18);cursor:pointer;padding:0;position:relative;aspect-ratio:auto}.swatch.active{outline:2px solid var(--ink);outline-offset:1px}.swatch.taken{cursor:not-allowed;opacity:.45}.swatch.taken:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,transparent 44%,#fff 44%,#fff 56%,transparent 56%)}.swatch-clear{background:transparent;color:var(--ink-65);font-size:13px;line-height:1}@media(pointer:coarse){.swatch{width:30px;height:30px}}.swatch-pop .swatch-picker{display:grid;grid-template-columns:repeat(7,24px);gap:6px;padding:0}.swatch-pop .swatch{width:24px;height:24px}.share-band-top{display:flex;align-items:baseline;gap:12px;min-width:0}.share-place{font-size:11px;color:var(--ink-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-version{font-size:11px;color:var(--ink-65);white-space:nowrap}.share-band-right{display:flex;align-items:center;gap:14px;min-width:0}.share:not(.share-wide) .share-band-top{flex-wrap:wrap;justify-content:space-between}.share:not(.share-wide) .share-place{order:3;flex-basis:100%;margin-top:6px}.share:not(.share-wide) .share-band-right{margin-top:6px}.share-wide .share-band{display:flex;align-items:center;gap:24px;padding:12px 24px}.share-wide .share-band-top{flex:1;min-width:0}.share-wide .share-band-right{flex:1;justify-content:flex-end}.share-wide .share-band-right,.share-wide .share-place,.share-wide .share-version{margin-top:0}.share-wide .share-tabs{height:auto;border-top:none;padding:0;gap:18px;flex:0 0 auto}.share-wide .share-tab{border-top:none;border-bottom:2px solid transparent;padding:4px 0;font-size:14px;white-space:nowrap}.share-wide .share-tab.active{border-bottom-color:var(--ink)}.share-wide .share-newer,.share-wide .share-offline,.share-wide .share-progress{flex-basis:100%;margin-top:6px}.share-wide .share-band{flex-wrap:wrap}.share-wide .share-plot{background:var(--ground)}.share-wide .share-list{padding:0 24px}.camlist-readonly .camlist-row{cursor:default}.camlist-ro-pair{display:flex;align-items:center;gap:4px;min-width:0;flex:1}.camlist-ro-value{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.camlist-readonly .camlist-block:hover{background:transparent}.camlist-block .camlist-ro-record{height:auto;align-items:start;padding-top:4px;padding-bottom:14px}.camlist-ro-record>.share-record{grid-column:2 / -1;padding:0}.camlist-readonly .camlist-block:has(.camlist-ro-record){background:var(--ink-8)}.camlist-readonly .camlist-block>.camlist-row:not(.camlist-ro-record){height:auto;min-height:40px;align-items:flex-start;padding-top:9px;padding-bottom:9px}.camlist-ro-stack{display:flex;flex-direction:column;align-items:flex-start;min-width:0;width:100%;gap:2px}.camlist-ro-stack>.camlist-ro-pair{flex:0 0 auto;width:100%}.camlist-ro-own,.camlist-ro-alts{font-size:11px;line-height:1.35;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camlist-ro-own{color:#5a5d66}.camlist-ro-alts{color:#9a9da3}.share-download-wrap{position:relative;flex-shrink:0}.share-pick{position:absolute;z-index:30;top:calc(100% + 6px);right:0;min-width:200px;background:var(--ground);border:1px solid var(--ink-40);padding:10px 12px 12px;text-align:left}.share-pick-note{margin:0 0 6px;font-size:10.5px;color:var(--ink-65)}.share-pick-row{width:100%;height:28px;display:flex;align-items:center;gap:10px;border:none;background:transparent;cursor:pointer;padding:0;font:inherit;font-size:13px;text-align:left}.share-pick-row:hover{background:var(--ink-8)}.share-pick-go{margin-top:8px;width:100%}.share-pick-none{margin:6px 0 0;padding-top:5px;border-top:2px solid var(--warn);font-size:10.5px;color:var(--ink)}.composer{display:flex;flex-direction:column}.composer-head{display:flex;align-items:baseline;gap:8px;font-size:10px;letter-spacing:.08em;color:var(--muted, #6b6d70)}.composer-count{font-family:IBM Plex Mono,monospace;font-size:10px}.tavola-card{border-left:2px solid var(--rule);padding:6px 0 6px 8px;display:flex;flex-direction:column;gap:4px}.tavola-card:hover{border-left-color:var(--selection)}.tavola-row{display:flex;align-items:center;gap:6px}.tavola-n{font-family:IBM Plex Mono,monospace;font-size:10px;min-width:14px;color:var(--muted, #6b6d70)}.tavola-row select{flex:1;min-width:0;font-size:11.5px;padding:2px 4px;border:1px solid var(--rule);border-radius:0;background:transparent}.tavola-moves{display:flex;gap:2px}.tavola-moves button{padding:1px 5px;font-size:11px;line-height:1.2}.tavola-layers{display:flex;flex-direction:column;gap:2px}.layer-row{display:flex;align-items:center;gap:8px;font-size:11px}.layer-name{display:flex;align-items:center;gap:6px;min-width:130px}.layer-overlay{display:flex;align-items:center;gap:4px;color:var(--muted, #6b6d70)}.layer-opacity{flex:1;min-width:60px;max-width:110px}.layer-pct{font-family:IBM Plex Mono,monospace;font-size:10px;min-width:30px;text-align:right}.tavola-warn{font-size:10.5px;color:var(--muted, #6b6d70);margin:0}.composer-add{align-self:flex-start;font-size:11px}.appendix-detail{display:flex;flex-direction:column;padding:2px 0 12px 25px}.appendix-group{display:grid;grid-template-columns:92px 1fr;gap:0 12px;align-items:start;padding-top:7px}.appendix-group-head{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-65);padding-top:3px}.appendix-detail-head{font-size:10px;letter-spacing:.06em;color:var(--muted, #6b6d70)}.chip-set{display:flex;flex-wrap:wrap;gap:4px}.chip-set .chip{font-size:11.5px;height:22px;padding:0 8px;border:1px solid var(--rule);border-left:3px solid var(--rule);border-radius:0;background:transparent;color:var(--ink-40);cursor:pointer}.chip-set .chip.on{border-color:var(--ink);border-left:3px solid var(--selection);color:var(--ink)}.preview-counter{display:flex;align-items:center;gap:10px;font-size:10.5px;padding-top:10px}.preview-counter .mono{flex:1;line-height:1.5}.export-preview .preview-counter button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;font-size:13px;line-height:1;flex-shrink:0}.appendix-empty{font-size:10px;font-style:normal;color:var(--muted, #6b6d70)}.plan-source-note{display:flex;flex-direction:column;gap:5px;border:1px solid var(--rule);padding:8px 10px;font-size:11px}.plan-source-note .mono{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--muted, #6b6d70)}.plan-source-note p{margin:0;line-height:1.35}.bg-edit-banner .field.checkbox>span{color:#fff}.bg-edit-banner input[type=checkbox]{accent-color:#fff}.hub-member-count{width:46px;margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:11px;padding:1px 4px;border:1px solid var(--rule);border-radius:0;background:transparent}.appendix-kind-fields{display:flex;flex-direction:column;gap:3px;padding-top:4px}.cable-spec-row{display:flex;gap:8px;flex-wrap:wrap;grid-column:1 / -1;padding-left:2px}.cable-spec-field{display:flex;align-items:center;gap:4px;font-size:10.5px;color:var(--muted, #6b6d70)}.cable-spec-field select{font-size:11px;padding:1px 3px;border:1px solid var(--rule);border-radius:0;background:transparent}.tavola-drag-handle{cursor:grab;color:var(--muted, #6b6d70);font-size:12px;line-height:1;-webkit-user-select:none;user-select:none}.tavola-drag-handle:active{cursor:grabbing}.tavola-card-drop{border-left-color:var(--selection);background:var(--ink-8)}.vh-contrib{color:var(--muted, #6b6d70)}.camlist-offplot .camlist-row{border-left:2px solid var(--rule)}.camlist-offplot .camlist-chip:after{content:"BTS";font-family:IBM Plex Mono,monospace;font-size:8px;letter-spacing:.04em;margin-left:3px;color:var(--muted, #6b6d70)}.camlist-alts{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:3px}.camlist-alt{display:inline-flex;align-items:center;border:1px solid var(--rule);border-radius:0}.camlist-alt-name,.camlist-alt-x{background:none;border:0;font:inherit;font-size:10.5px;color:var(--muted, #6b6d70);padding:1px 4px;cursor:pointer}.camlist-alt-name:hover{color:var(--ink)}.camlist-alt-x{border-left:1px solid var(--rule);padding:1px 3px}.camlist-alt-add{font-size:10.5px}.route-summary{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;border:none;padding:0;cursor:pointer;font:inherit;color:inherit}.route-summary-count{color:var(--ink-2, #5A5D66);font-size:11px}.layer-tri{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:1;min-width:0;background:transparent;border:1px solid var(--rule, #D2D3CF);padding:3px 8px;cursor:pointer;font:inherit;color:inherit}.layer-tri-state{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3, #959594)}.layer-tri-drawn{border-color:var(--ink-1, #17181A)}.layer-tri-drawn .layer-tri-state{color:var(--ink-1, #17181A)}.layer-tri-under{border-color:var(--ink-3, #959594)}.layer-tri-under .layer-tri-state{color:var(--ink-2, #5A5D66)}.routeedit-strip{position:absolute;left:0;right:0;bottom:0;z-index:5;display:flex;align-items:center;gap:8px;background:#e9e9e6;border-top:2px solid #2F6BD8;padding:7px 10px;min-height:40px;box-sizing:border-box}.routeedit-hint{font-size:10.5px;color:#616161}.routeedit-name{font-size:10.5px;font-weight:600;white-space:nowrap}.routeedit-walk{width:24px;height:24px;border:1px solid #D2D3CF;background:transparent;font-size:13px;cursor:pointer;padding:0}.routeedit-walk+.routeedit-walk{margin-left:-1px;margin-right:6px}.routeedit-opts{display:flex}.routeedit-opts button{height:24px;padding:0 8px;border:1px solid #D2D3CF;background:transparent;color:#17181a;font-size:11px;cursor:pointer;margin-left:-1px;white-space:nowrap}.routeedit-opts button.active{background:#17181a;border-color:#17181a;color:#fff}.routeedit-quota{width:40px;border:none;border-bottom:1px solid #959594;background:transparent;font-size:11px;padding:1px 0}.routeedit-quota:focus{outline:none;border-bottom:2px solid #2F6BD8}.routeedit-m{font-size:10px;color:#616161}.routeedit-floor{height:24px;border:1px solid #D2D3CF;background:transparent;font-size:10.5px;margin-left:2px}.routeedit-spacer{flex:1}.routeedit-done{height:24px;padding:0 12px;border:1px solid #17181A;background:#17181a;color:#fff;font-size:11px;font-weight:600;cursor:pointer}.routeedit-inset{position:absolute;top:8px;right:8px;z-index:4;width:98px;background:#fff;border:1px solid #959594;padding:4px 6px 5px}.routeedit-inset-label{font-size:8.5px;color:#616161;padding-bottom:2px}.bundle-head{display:flex;align-items:baseline;gap:7px;padding:12px 0 7px}.bundle-title{font-size:10.5px;font-weight:600;letter-spacing:.07em}.bundle-cap{font-size:10px;color:var(--ink-2, #616161)}.bundle-grid{display:grid;grid-template-columns:14px minmax(0,1fr) 34px 22px 62px 52px 18px;gap:0 8px;align-items:center}.bundle-grid-head span,.bundle-row>*{min-width:0;overflow:hidden}.bundle-empty{font-size:11px;color:var(--ink-2, #616161);text-align:center}.bundle-attrs{display:flex;flex-direction:column;gap:2px;min-width:0}.bundle-grid-head{font-size:10px;color:var(--ink-2, #616161);padding-bottom:3px}.bundle-row{min-height:28px;border-top:1px solid var(--rule, #D2D3CF)}.bundle-swatch{width:10px;height:10px;transform:rotate(45deg);display:inline-block}.bundle-row .picker{min-width:0}.bundle-qty{width:100%;border:none;border-bottom:1px solid var(--rule, #D2D3CF);background:transparent;font-size:12px;padding:1px 0;text-align:center}.bundle-qty:focus{outline:none;border-bottom:2px solid #2F6BD8}.bundle-dir{height:22px;border:1px solid var(--rule, #D2D3CF);background:transparent;font-size:12px;cursor:pointer;padding:0}.bundle-detail,.bundle-length{min-width:0;display:flex;gap:3px}.bundle-detail select,.bundle-length select{width:100%;min-width:0;height:22px;border:1px solid var(--rule, #D2D3CF);background:transparent;font-size:11px}.bundle-blank{color:var(--ink-3, #959594);font-size:11px}.bundle-x{border:none;background:transparent;color:var(--ink-3, #959594);cursor:pointer;font-size:11px;padding:0}.bundle-x:hover:not(:disabled){color:var(--ink-1, #17181A)}.bundle-x:disabled{opacity:.4;cursor:default}.bundle-foot{display:flex;align-items:center;gap:12px;padding-top:6px;border-top:1px solid var(--rule, #D2D3CF)}.bundle-spacer{flex:1}.bundle-collapse{margin:0}.route-head{border-top:1px solid var(--ink-1, #17181A);margin-top:10px;padding-top:14px}.route-row{display:block;width:100%;text-align:left;border:none;background:transparent;font-size:11.5px;padding:4px 6px;cursor:pointer}.route-row:hover{background:var(--hover, #D8D8D6)}.route-none{font-size:11px;color:var(--ink-3, #959594);padding:3px 0}.route-edit-btn{display:block;width:100%;height:30px;margin-top:8px;border:1px solid var(--ink-1, #17181A);background:transparent;font-size:12.5px;font-weight:600;cursor:pointer}.route-edit-btn:hover{background:var(--ink-1, #17181A);color:#fff}.fromto{display:grid;grid-template-columns:30px 1fr;gap:4px 10px;align-items:baseline;border-top:1px solid var(--ink-1, #17181A);margin-top:12px;padding-top:10px}.fromto-key{font-size:10.5px;color:var(--ink-2, #616161)}.fromto-val{font-size:13px}.fromto-note{font-size:10px;color:var(--ink-2, #616161)}.camlist-garibaldi{display:inline-flex;flex-direction:column;align-items:flex-end;gap:5px}.camlist-garibaldi-age{font-size:10.5px;color:var(--ink-2, #616161)}.camlist-columns{position:relative;display:inline-flex;align-items:center;margin-right:12px}.camlist-columns-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:264px;padding:12px;background:var(--figure, #FFFFFF);border:1px solid var(--ink-1, #17181A)}.camlist-columns-head{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2, #616161);margin-bottom:6px}.camlist-columns-row{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:6px;height:24px;cursor:pointer}.camlist-columns-name{font-size:13px}.camlist-columns-count{font-size:11px;color:var(--ink-2, #616161)}.camlist-columns-note{margin:8px 0 0;font-size:11px;line-height:1.45;color:var(--ink-2, #616161);border-top:1px solid var(--rule, #D8D8D5);padding-top:8px}.camlist-garibaldi-group{display:inline-flex;align-items:stretch;border:1px solid var(--ink-3, #959594)}.camlist-garibaldi-name{display:inline-flex;align-items:center;padding:0 10px;font-size:10.5px;font-weight:600;letter-spacing:.07em;color:var(--ink-2, #616161);border-right:1px solid var(--rule, #D2D3CF)}.camlist-garibaldi-group>button{height:30px;padding:0 12px;border:none;border-right:1px solid var(--rule, #D2D3CF);background:transparent;font-size:12.5px;cursor:pointer}.camlist-garibaldi-group>button:last-child{border-right:none}.camlist-garibaldi-group>button:hover:not(:disabled){background:var(--hover, #D8D8D6)}.camlist-garibaldi-group>button:disabled{opacity:.5;cursor:default}.camlist-altblock{padding-top:6px}.camlist-altblock-head{font-size:10.5px;color:var(--ink-2, #616161);padding-bottom:2px}.camlist-altrow{display:flex;align-items:center;gap:6px;height:22px}.camlist-altrow-spacer{flex:1}.camlist-altitem .camlist-assign{padding-left:20px}.railx-section{border-top:1px solid var(--ink-1, #17181A);padding:10px 14px 14px}.railx-head{display:flex;align-items:center;gap:7px;padding-bottom:8px}.railx-head-btn{width:100%;border:none;background:transparent;padding:0 0 8px;cursor:pointer;text-align:left;font:inherit}.railx-title{font-size:11.5px;font-weight:700;letter-spacing:.08em;color:var(--ink-2, #616161)}.railx-cap{font-size:10px;color:var(--ink-2, #616161)}.railx-sub{font-size:10.5px;color:var(--ink-2, #616161);padding:10px 0 5px}.railx-sub-row{display:flex;align-items:center;gap:6px}.railx-sub-row .railx-sub{padding:3px 0 5px}.railx-fill{flex:1}.railx-name{font-family:Archivo,sans-serif;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.railx-name.off{color:var(--ink-3, #959594)}.railx-count{font-size:10.5px;color:var(--ink-2, #616161)}.railx-pct{font-size:11px;font-weight:600}.railx-tick{width:15px;height:15px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink-3, #959594);background:transparent;color:#fff;font-size:10px;padding:0;cursor:pointer}.railx-tick.on{border-color:var(--ink-1, #17181A);background:var(--ink-1, #17181A)}.railx-tickrow{width:100%;min-height:26px;display:flex;align-items:center;gap:9px;border:none;background:transparent;cursor:pointer;padding:0;text-align:left;font:inherit}.railx-tickrow:hover{background:var(--hover, #D8D8D6)}.railx-seg{display:flex}.railx-seg button{flex:1;height:26px;border:1px solid var(--rule, #D2D3CF);background:transparent;color:var(--ink-1, #17181A);font-size:12px;cursor:pointer}.railx-seg button+button{border-left:none}.railx-seg button.active{background:var(--ink-1, #17181A);border-color:var(--ink-1, #17181A);color:#fff}.railx-slider{padding:4px 0 8px}.railx-slider-head{display:flex;align-items:baseline}.railx-slider input[type=range],.railx-stackrow input[type=range]{width:100%;margin-top:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:2px;background:var(--ink-3, #959594);outline:none}.railx-slider input[type=range]::-webkit-slider-thumb,.railx-stackrow input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:13px;height:13px;background:var(--ink-1, #17181A);border:none;border-radius:0;cursor:pointer}.railx-stackrow{height:47px}.railx-stackrow-top{display:flex;align-items:center;gap:9px;height:24px}.railx-stackrow-slider{height:20px;display:flex;align-items:center}.railx-stackrow-slider input[type=range]{width:calc(100% - 24px);margin-left:24px;margin-top:0}.railx-kinds{margin-left:24px;margin-bottom:6px}.railx-links{display:flex;gap:14px;padding-top:7px}.railx-link{border:none;background:transparent;padding:0;font-size:12px;font-family:Archivo,sans-serif;text-decoration:underline;text-decoration-color:var(--ink-3, #959594);text-underline-offset:3px;cursor:pointer;color:var(--ink-1, #17181A)}.railx-link-quiet{color:var(--ink-2, #616161)}.railx-link:hover{color:var(--ink-1, #17181A);text-decoration-color:var(--ink-1, #17181A)}.railx-setup-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding-top:9px}.railx-setup-links .railx-link{font-size:12.5px}.railx-reorder-row{display:flex;align-items:center;gap:8px;height:28px;border:1px solid var(--rule, #D2D3CF);border-bottom:none;padding:0 8px;font-size:13px;cursor:grab;background:var(--paper, #FFFFFF)}.railx-reorder-row:last-of-type{border-bottom:1px solid var(--rule, #D2D3CF)}.railx-reorder-row.drop{border-color:#2f6bd8;border-bottom:1px solid #2F6BD8}.railx-drag{color:var(--ink-3, #959594);cursor:grab}.railx-reorder .railx-link{margin-top:7px}.composer-fill{flex:1}.composer-under select{height:20px;border:1px solid var(--rule, #D2D3CF);background:transparent;font-family:IBM Plex Mono,monospace;font-size:10.5px}.camlist-addrow{padding:0}.export-dialog .modal-head{padding:14px 20px}.export-dialog .modal-head b{font-size:16px}.export-caption{font-size:10.5px;color:var(--ink-2, #616161);margin-left:12px;flex:1}.composer-under{font-size:10px;color:var(--ink-2, #616161)}.tavola-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tavola-chip{display:inline-flex;align-items:stretch}.tavola-chip>button{height:26px;padding:0 12px;border:1px solid var(--rule, #D2D3CF);background:transparent;color:var(--ink-3, #959594);font-size:12.5px;cursor:pointer}.tavola-chip-drawn>button{background:var(--ink-1, #17181A);border-color:var(--ink-1, #17181A);color:#fff}.tavola-chip-under>button{background:var(--hover, #D8D8D6);border-color:var(--ink-3, #959594);color:var(--ink-1, #17181A)}.tavola-chip-pct{height:26px;border:1px solid var(--ink-3, #959594);border-left:none;background:var(--hover, #D8D8D6);font-size:10.5px}.tavola-sentence{font-size:10.5px;color:var(--ink-2, #616161);margin:6px 0 0}.appendix-item{border-top:1px solid var(--rule, #D2D3CF);margin-top:6px}.appendix-row{display:flex;align-items:center;gap:10px;min-height:32px}.appendix-row .appendix-switch{flex:1;min-width:0;margin:0;border:none;padding:0;font-size:13px}.appendix-summary{font-size:10.5px;color:var(--ink-2, #616161);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appendix-empty{font-style:normal;font-size:10.5px;color:var(--ink-1, #17181A)}.appendix-optlink{flex-shrink:0}.export-settings-line{display:flex;align-items:baseline;gap:10px;width:100%;border:none;border-top:1px solid var(--rule);background:transparent;padding:12px 0 6px;cursor:pointer;font:inherit;text-align:left}.export-settings-title{font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;letter-spacing:.07em}.export-settings-sum{font-size:10.5px;color:var(--ink-2, #616161)}.export-settings-fill{flex:1}.export-settings-body{padding-bottom:8px}.export-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;border-top:1px solid var(--ink);margin-top:14px;padding-top:12px}.export-bump{border:none;padding:4px 0 0}.export-author-warn{font-size:10.5px;color:var(--ink-1, #17181A);border-bottom:2px solid #D9822B;padding-bottom:6px;margin:2px 0 0}.preview-listpages{font-size:10.5px;color:var(--ink-2, #616161);align-self:center}.tavola-floor .picker-trigger{height:30px;min-width:110px}.tavola-chip-pct{display:inline-flex;border:1px solid var(--ink-3, #959594);border-left:none;background:var(--hover, #D8D8D6)}.tavola-chip-pct .picker-trigger{height:26px;min-width:52px;border:none;background:transparent;font-family:IBM Plex Mono,monospace;font-size:10.5px}.routeedit-floor .picker-trigger{height:24px;min-width:90px;font-size:10.5px}.bundle-spec .picker{flex:1;min-width:0}.bundle-spec .picker-trigger{height:22px;width:100%;font-size:11px}.camlist-altblock{padding-top:12px}.camlist-altblock:first-child{padding-top:0}.camlist-altblock-head,.camlist-assign-slot,.camlist-field-label{display:block;font-size:10.5px;color:var(--ink-2, #616161);padding-bottom:2px}.camlist-altblock .picker-trigger{border:none;border-bottom:1px solid var(--rule, #D2D3CF);height:26px;width:100%;font-size:12.5px;background:transparent}.camlist-altblock .picker{width:100%}.tavola-card-live{border:1px solid #2F6BD8}.tvx-head{display:flex;align-items:baseline;gap:8px;padding:0 0 4px}.tvx-head-right{padding:0 0 10px}.composer .tvx-head{border-top:1px solid var(--ink);margin-top:18px;padding:20px 0 4px}.tvx-title{font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;letter-spacing:.07em}.tvx-count{font-size:12px;color:var(--ink-2, #616161)}.tvx-fill{flex:1}.tvx-hint{font-size:10.5px;color:var(--ink-2, #616161)}.tvx-hint b{color:var(--ink-1, #17181A)}.tvx-card{background:transparent;border:1px solid var(--rule);margin-bottom:8px;cursor:pointer}.tvx-card-live{background:var(--figure);border-color:var(--selection)}.tvx-card-drop{border-color:#2f6bd8;border-style:dashed}.tvx-row{display:flex;align-items:center;gap:10px;min-width:0;padding:9px 12px;flex-wrap:wrap;row-gap:8px}.tvx-drag{color:var(--ink-3, #959594);cursor:grab;font-size:12px;flex-shrink:0}.tvx-n{font-size:13px;font-weight:700;flex-shrink:0}.tvx-floor{flex-shrink:0;width:110px}.tvx-floor .picker-trigger{height:26px;width:100%;border:1px solid #D2D3CF;background:#fff;font-size:12.5px;padding:0 10px}.tvx-chip{display:inline-flex;align-items:stretch;flex-shrink:0}.tvx-chip>button{height:26px;padding:0 10px;font-size:12px;cursor:pointer;white-space:nowrap}.tvx-chip-off>button{background:transparent;border:1px solid var(--rule, #D2D3CF);color:var(--ink-40, #959594)}.tvx-chip-drawn>button{background:var(--ink, #17181A);border:1px solid var(--ink, #17181A);color:#fff}.tvx-chip-under>button{background:var(--ink-8, #D8D8D6);border:1px solid var(--ink, #17181A);border-right:none;color:var(--ink, #17181A)}.tvx-pct{display:inline-flex;height:26px;border:1px solid var(--ink, #17181A);border-left:none;background:var(--ink-8, #D8D8D6)}.tvx-pct .picker-trigger{height:100%;min-width:56px;border:none;background:transparent;font-family:IBM Plex Mono,monospace;font-size:10.5px;padding:0 8px}.tvx-x{border:none;background:transparent;color:#959594;font-size:14px;cursor:pointer;padding:0 2px;flex-shrink:0}.tvx-x:hover:not(:disabled){color:#17181a}.tvx-x:disabled{opacity:.35;cursor:default}.tvx-sentence{font-size:10.5px;color:var(--ink-65);margin:0;padding:0 12px 8px 46px}.tvx-warn{font-size:10.5px;color:var(--ink);margin:0;padding:0 12px 8px 46px}.tvx-add{border:none;background:transparent;padding:0;font-size:13px;text-decoration:underline;text-decoration-color:#959594;text-underline-offset:3px;cursor:pointer;color:#17181a;margin:10px 0 0;display:block}.preview-thumb{width:44px;height:32px;border:1px solid #D2D3CF;background:#fff;position:relative;cursor:pointer;padding:0;overflow:hidden}.preview-thumb.active{border:2px solid #17181A}.preview-thumb .mono{position:absolute;top:auto;left:auto;right:2px;bottom:1px;font-size:8px;line-height:1;color:var(--ink-65);background:#ffffffd1;padding:0 1px}.bundle-popup{pointer-events:auto}.bundle-popup-btn{font-size:11px;padding:3px 8px;border:1px solid var(--ink);background:var(--figure);color:var(--ink);cursor:pointer;box-shadow:0 1px 3px #17181a40;white-space:nowrap}.bundle-popup-btn:hover{background:var(--ink-8)}.access-dialog{width:460px;max-width:94vw}.access-body{overflow-y:auto;padding:0 16px 14px}.access-section{padding-top:14px}.access-section+.access-section{border-top:1px solid var(--rule);margin-top:14px}.access-section-head{display:flex;align-items:center;gap:10px;min-height:24px}.access-title{font-size:10.5px;letter-spacing:.06em;color:var(--ink-65)}.access-note{margin:4px 0 0;font-size:10.5px;line-height:1.5;color:var(--ink-65)}.access-list{max-height:244px;overflow-y:auto;padding-top:4px}.access-section-head .browser-search{width:150px}.serverbar-readonly{font-size:11px;color:var(--ink-65);border:1px solid var(--rule);padding:3px 8px;white-space:nowrap}.phone-boot,.boot-wait{padding:24px;font-size:12px;color:var(--ink-65)}.phone-ground{height:100dvh;background:var(--ground);display:flex;flex-direction:column;overflow:hidden}.phone-head{position:sticky;top:0;z-index:2;background:var(--ground);padding:max(10px,env(safe-area-inset-top)) 14px 10px;padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.phone-head-top{display:flex;align-items:baseline;gap:10px}.phone-title{font-size:17px;font-weight:600}.phone-who{font-size:11px;color:var(--ink-65)}.phone-note{margin:2px 0 8px;font-size:10.5px;color:var(--ink-65)}.phone-search{width:100%;height:36px;box-sizing:border-box;background:transparent;border:none;border-bottom:1px solid var(--rule);border-radius:0;font:inherit;font-size:15px;color:var(--ink);padding:0 2px}.phone-search:focus{outline:none;border-bottom-color:var(--ink)}.phone-pull{flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:11px;color:var(--ink-65)}.phone-pull.settling{transition:height .14s ease-out}.phone-list{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:max(16px,env(safe-area-inset-bottom))}.phone-brand{display:flex;align-items:center;gap:6px;color:var(--ink)}.phone-brand-text{display:flex;flex-direction:column;gap:2px}.phone-wordmark{font-size:12px;letter-spacing:.22em;line-height:1;white-space:nowrap}.phone-credit{font-size:8.5px;letter-spacing:.02em;line-height:1;white-space:nowrap;color:var(--ink-65)}.phone-title{color:var(--ink-65);font-weight:400;font-size:15px}.phone-head-top{align-items:center}.phone-section{margin:0;padding:9px max(14px,env(safe-area-inset-left)) 5px;font-size:9.5px;font-weight:400;letter-spacing:.06em;color:var(--ink-65);text-transform:uppercase}.phone-folder-row{width:100%;min-height:52px;display:flex;align-items:center;gap:10px;padding:0 max(14px,env(safe-area-inset-right)) 0 14px;border:none;border-bottom:1px solid var(--rule);background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.phone-folder-row:active{background:var(--ink-8)}.phone-folder-name{font-size:15px}.phone-folder-count{margin-left:auto;font-size:11px;color:var(--ink-65)}.phone-folder-go{font-size:17px;color:var(--ink-65)}.phone-crumbs{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px;padding:8px 14px;font-size:11px;border-bottom:1px solid var(--rule)}.phone-crumb-here{color:var(--ink-65)}.phone-colhead{display:flex;align-items:stretch;padding-left:14px;font-size:9.5px;letter-spacing:.04em;color:var(--ink-65);border-bottom:1px solid var(--rule)}.phone-colhead-label{width:84px;flex-shrink:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:5px 0;border-left:1px solid var(--rule)}.phone-tick-cell{width:84px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--rule)}.phone-tick-hit{width:100%;height:44px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer}.phone-tick-hit:disabled{cursor:default}.pub-box.busy{border-color:var(--ink);opacity:.4}.phone-settings{width:380px;max-width:94vw}.phone-settings-body{padding:12px 16px 16px}.phone-set-row{display:flex;align-items:baseline;gap:10px;font-size:14px}.phone-set-value{font-size:13px}.phone-set-actions{display:flex;align-items:center;gap:14px;padding-top:12px}.phone-set-foot{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:10px;border-top:1px solid var(--rule)}.phone-row-wrap{display:flex;align-items:stretch;border-bottom:1px solid var(--rule)}.phone-row-wrap .phone-row{border-bottom:none}.phone-colhead .spacer{flex:1}.phone-keep{flex-shrink:0;align-self:center;min-width:58px;height:30px;margin-right:max(14px,env(safe-area-inset-right));border:1px solid var(--rule);border-radius:0;background:transparent;font:inherit;font-size:11px;color:var(--ink-65);cursor:pointer}.phone-keep.on{border-color:var(--ink);background:var(--ink);color:#fff}.phone-keep:disabled{opacity:.4;cursor:default}.phone-row{flex:1;min-width:0;min-height:60px;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:10px 12px 10px max(14px,env(safe-area-inset-left));border:none;border-bottom:1px solid var(--rule);background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.phone-row:active{background:var(--ink-8)}.phone-row-name{font-size:15px}.phone-row-meta{font-size:11px;color:var(--ink-65)}.phone-empty{padding:16px 14px;font-size:12px;color:var(--ink-65)}.share-back{font-size:11px;color:var(--ink-65);text-decoration:none;white-space:nowrap}.share-back:hover{color:var(--ink)}
