.upload-mask[data-v-3921ac06]{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1f1d52;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:50}.upload-sheet[data-v-3921ac06]{width:100%;max-width:620px;max-height:90vh;overflow-y:auto;border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;gap:12px;padding:var(--card-pad) var(--card-pad) calc(var(--card-pad) + env(safe-area-inset-bottom))}@media(min-width:640px){.upload-mask[data-v-3921ac06]{align-items:center;padding:16px}.upload-sheet[data-v-3921ac06]{border-radius:var(--radius);padding:var(--card-pad-lg)}}.dropzone[data-v-3921ac06]{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);padding:16px 12px;background:var(--surface-sunken)}.dropzone--over[data-v-3921ac06]{border-color:var(--text-muted);background:#f2f1ed}.dropzone--busy[data-v-3921ac06]{opacity:.6}.btn--disabled[data-v-3921ac06]{opacity:.5;pointer-events:none}.queue[data-v-3921ac06]{max-height:240px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}.queue__row[data-v-3921ac06]{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line)}.queue__row[data-v-3921ac06]:first-child{border-top:0}.queue__main[data-v-3921ac06]{flex:1;min-width:0}.queue__name[data-v-3921ac06]{font-size:var(--text-base);overflow-wrap:anywhere}.queue__meta[data-v-3921ac06]{margin-top:2px;display:flex;flex-wrap:wrap;gap:2px 10px;font-size:var(--text-sm);color:var(--text-muted)}.queue__err[data-v-3921ac06]{color:var(--danger-text)}.progress[data-v-3921ac06]{margin-top:6px;height:6px;border-radius:999px;background:#eeece7;overflow:hidden}.progress__bar[data-v-3921ac06]{height:100%;background:var(--ink);transition:width .2s ease}.share-mask[data-v-dc77b1a9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1f1d52;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:50}.share-sheet[data-v-dc77b1a9]{width:100%;max-width:560px;max-height:90vh;overflow-y:auto;border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;gap:14px;padding:var(--card-pad) var(--card-pad) calc(var(--card-pad) + env(safe-area-inset-bottom))}@media(min-width:640px){.share-mask[data-v-dc77b1a9]{align-items:center;padding:16px}.share-sheet[data-v-dc77b1a9]{border-radius:var(--radius);padding:var(--card-pad-lg)}}.share-mask[data-v-0def85b1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1f1d52;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:50}.share-sheet[data-v-0def85b1]{width:100%;max-width:620px;max-height:90vh;overflow-y:auto;border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;gap:14px;padding:var(--card-pad) var(--card-pad) calc(var(--card-pad) + env(safe-area-inset-bottom))}@media(min-width:640px){.share-mask[data-v-0def85b1]{align-items:center;padding:16px}.share-sheet[data-v-0def85b1]{border-radius:var(--radius);padding:var(--card-pad-lg)}}.diff-mask[data-v-89fdca27]{position:fixed;top:0;right:0;bottom:0;left:0;background:#14161873;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:50}.diff-sheet[data-v-89fdca27]{width:100%;max-width:720px;max-height:90vh;overflow-y:auto;border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;gap:14px;padding:var(--card-pad) var(--card-pad) calc(var(--card-pad) + env(safe-area-inset-bottom))}@media(min-width:640px){.diff-mask[data-v-89fdca27]{align-items:center;padding:16px}.diff-sheet[data-v-89fdca27]{border-radius:var(--radius);padding:var(--card-pad-lg)}}.diff-counts[data-v-89fdca27]{display:flex;flex-wrap:wrap;gap:8px}.diff-list[data-v-89fdca27]{display:flex;flex-direction:column;gap:10px}.diff-item[data-v-89fdca27]{border-left:3px solid var(--line-strong);padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface-sunken)}.diff-item--changed[data-v-89fdca27]{border-left-color:var(--warn-text)}.diff-item--added[data-v-89fdca27]{border-left-color:var(--ok-text)}.diff-item--removed[data-v-89fdca27]{border-left-color:var(--danger-text)}.diff-item__kind[data-v-89fdca27]{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px}.diff-line[data-v-89fdca27]{display:flex;gap:6px;font-size:var(--text-sm);line-height:1.6}.diff-sign[data-v-89fdca27]{flex:0 0 auto;color:var(--text-faint);font-family:var(--font-mono)}.diff-text[data-v-89fdca27]{overflow-wrap:anywhere;white-space:pre-wrap}.diff-line--before .diff-text[data-v-89fdca27]{color:var(--danger-text);background:var(--danger-bg);border-radius:3px;padding:0 2px}.diff-line--after .diff-text[data-v-89fdca27]{color:var(--ok-text);background:var(--ok-bg);border-radius:3px;padding:0 2px}.share-page[data-v-92dffc5e]{min-height:100dvh;background:var(--bg, #f6f5f2);padding:16px;display:flex;justify-content:center;align-items:flex-start}.share-page__card[data-v-92dffc5e]{width:100%;max-width:980px;background:#fff;border:1px solid var(--line, #e5e2dc);border-radius:var(--radius, 10px);display:flex;flex-direction:column;gap:12px}.share-page__head[data-v-92dffc5e]{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between}.share-page__title[data-v-92dffc5e]{line-height:1.35;margin:0;word-break:break-word}.share-page__code[data-v-92dffc5e]{display:flex;flex-direction:column;gap:10px;max-width:420px;margin-top:8px}.share-page__preview[data-v-92dffc5e]{position:relative;border:1px solid var(--line, #e5e2dc);border-radius:var(--radius-sm);overflow:hidden;background:#faf9f6}.share-page__frame[data-v-92dffc5e]{width:100%;height:min(70dvh,760px);border:0;display:block}.share-page__image[data-v-92dffc5e]{display:block;width:100%;height:auto}.share-page__text[data-v-92dffc5e]{margin:0;padding:16px;max-height:70dvh;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:var(--text-base);line-height:1.6}.share-page__wm[data-v-92dffc5e]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;pointer-events:none;overflow:hidden;align-content:space-around}.share-page__wm span[data-v-92dffc5e]{transform:rotate(-24deg);font-size:var(--text-xs);line-height:1.3;color:#3c3c3c38;white-space:nowrap;text-align:center;-webkit-user-select:none;user-select:none}.share-page__foot[data-v-92dffc5e]{margin:0;line-height:1.6}@media(min-width:640px){.share-page[data-v-92dffc5e]{padding:32px 16px}}.invite-page[data-v-cab131b4]{min-height:100dvh;background:var(--bg, #f6f5f2);display:flex;justify-content:center;align-items:flex-start;padding:16px}.invite-page__card[data-v-cab131b4]{width:100%;max-width:560px;display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--line, #e5e2dc);border-radius:var(--radius, 10px)}.invite-page__summary[data-v-cab131b4]{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:var(--radius-sm);background:var(--bg-soft, #f8f7f4)}.invite-page__summary>div[data-v-cab131b4]{display:flex;flex-wrap:wrap;gap:8px;font-size:var(--text-base)}.invite-page__form[data-v-cab131b4]{display:flex;flex-direction:column;gap:12px}@media(min-width:640px){.invite-page[data-v-cab131b4]{padding:32px 16px}}.perm-panel[data-v-9f731073]{margin-top:12px;padding-top:12px;border-top:1px solid var(--line, #e5e1d8);display:flex;flex-direction:column;gap:8px;min-width:0}.perm-panel__title[data-v-9f731073]{margin:8px 0 0;font-size:.95rem}.perm-list[data-v-9f731073]{display:flex;flex-direction:column;gap:6px}.perm-list__row[data-v-9f731073]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;border-radius:8px;background:var(--surface-2, #f7f5f0)}.perm-list__main[data-v-9f731073]{min-width:0;overflow-wrap:anywhere}.perm-list__row--stack[data-v-9f731073]{flex-direction:column;align-items:stretch;gap:4px}.perm-list__line[data-v-9f731073]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.perm-flags[data-v-9f731073]{display:flex;flex-wrap:wrap;gap:0 16px}.perm-flag[data-v-9f731073]{display:flex;align-items:center;gap:6px;min-height:44px;font-size:.9rem;cursor:pointer;overflow-wrap:anywhere}.perm-flag input[data-v-9f731073]{width:18px;height:18px;flex:0 0 auto}.perm-flag__hint[data-v-9f731073]{margin:0}.perm-add[data-v-9f731073]{display:flex;flex-direction:column;gap:4px;margin-top:4px}.perm-add__row[data-v-9f731073]{display:flex;flex-wrap:wrap;gap:8px}.perm-add__row .input[data-v-9f731073]{flex:1 1 180px;min-width:0}.perm-pick[data-v-9f731073]{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.perm-pick__row[data-v-9f731073]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:4px 0}.perm-pick__name[data-v-9f731073]{min-width:0;overflow-wrap:anywhere}.btn--small[data-v-9f731073]{padding:4px 10px;font-size:.85rem;min-height:32px}@media(max-width:640px){.perm-list__row[data-v-9f731073]{flex-direction:column;align-items:stretch}.perm-list__line[data-v-9f731073]{flex-wrap:wrap}}:root{--canvas: #f7f6f3;--surface: #ffffff;--surface-sunken: #fbfbf9;--text: #22262b;--text-muted: #6f7378;--text-faint: #9398a0;--line: #e7e5e0;--line-strong: #d5d2cc;--ink: #1c1f1d;--ink-hover: #33383a;--ok-bg: #edf3ec;--ok-text: #34653a;--warn-bg: #fbf3db;--warn-text: #8a5b00;--danger-bg: #fdecec;--danger-text: #9f2f2d;--danger-line: #eccdcd;--info-bg: #e9f1f8;--info-text: #1f5f8f;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-input: 16px;--text-lg: 16px;--text-xl: 20px;--radius: 10px;--radius-sm: 6px;--card-pad: 16px;--card-pad-lg: 20px;--tap: 44px;--font: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "SF Mono", "JetBrains Mono", Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--canvas);color:var(--text);font-family:var(--font);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.01em;color:var(--text)}p{margin:0}.section-title{font-size:var(--text-lg);font-weight:600;line-height:1.4}.password-value{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.06em;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.measure{max-width:34em}.form-narrow{max-width:520px}.page-title{font-size:var(--text-xl);font-weight:600;line-height:1.35;letter-spacing:-.01em;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--font-mono);font-size:.92em}.page{width:100%;max-width:1180px;margin:0 auto;padding:16px 16px 40px}@media(min-width:640px){.page{padding:24px 24px 48px}}@media(min-width:1024px){.page{padding:32px 32px 56px}}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.shell{min-height:100dvh}.skip-link{position:absolute;top:-60px;left:8px;z-index:100;padding:10px 14px;border-radius:var(--radius-sm);background:var(--ink);color:#fff;font-size:var(--text-base)}.skip-link:focus{top:8px}.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:50;width:min(84vw,300px);display:flex;flex-direction:column;background:#fbfaf7;border-right:1px solid var(--line);transform:translate(-100%);visibility:hidden;transition:transform .18s ease,visibility .18s ease}.shell--drawer .sidebar{visibility:visible;transform:translate(0);box-shadow:0 10px 40px #00000024}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;border:0;padding:0;background:#14161861}.sidebar__brand{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px;border-bottom:1px solid var(--line)}.sidebar__brand-link{display:flex;align-items:center;gap:10px;min-width:0;min-height:var(--tap);padding:0 4px}.brand-logo{flex:0 0 auto;width:34px;height:34px;object-fit:contain}.brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.3}.brand-text strong{font-size:var(--text-sm);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.sidebar__close{flex:0 0 auto;display:grid;place-items:center;width:var(--tap);height:var(--tap);padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer}.sidebar__close:hover{background:#0000000d;color:var(--text)}.sidebar__nav{flex:1;overflow-y:auto;padding:6px 10px 16px}.sidebar__group{margin:14px 8px 6px;font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-faint)}.sidebar__group:first-child{margin-top:6px}.sidebar__group--project{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.sidebar__project-name{margin:0 8px 6px;font-size:var(--text-sm);font-weight:600;line-height:1.4;overflow-wrap:anywhere}.side-link{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 10px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-base)}.side-link svg{flex:0 0 auto}.side-link:hover{background:#1c1f1d0d;color:var(--text)}.side-link--active{background:#ebeae4;color:var(--text);font-weight:600}.side-link__badge{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#9f2f2d;color:#fff;font-size:var(--text-xs);font-weight:600}.sidebar__foot{padding:10px;border-top:1px solid var(--line)}.side-user{display:flex;align-items:center;gap:10px;min-width:0;padding:6px 10px 10px}.side-user__avatar{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e9e6df;font-size:var(--text-sm);font-weight:600}.side-user__text{display:flex;flex-direction:column;min-width:0;line-height:1.3}.side-user__text strong{font-size:var(--text-base);font-weight:500;overflow-wrap:anywhere}.side-user__text small{font-size:var(--text-xs);color:var(--text-muted)}.side-link--button{width:100%;border:0;background:transparent;font-family:inherit;cursor:pointer}.workbar{position:sticky;top:0;z-index:30;background:#f7f6f3f0;-webkit-backdrop-filter:saturate(140%) blur(6px);backdrop-filter:saturate(140%) blur(6px);border-bottom:1px solid var(--line)}.workbar__inner{display:flex;align-items:center;gap:10px;min-height:60px;padding:8px 12px}.icon-btn{flex:0 0 auto;display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer}.icon-btn:hover{background:#0000000d}.workbar__search{position:relative;display:flex;align-items:center;gap:8px;flex:1;min-width:0;max-width:620px}.workbar__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);display:inline-flex;color:var(--text-faint);pointer-events:none}.workbar__input{width:100%;padding-left:38px}.workbar__search-btn{flex:0 0 auto}.workbar__user{margin-left:auto;font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.shell__main{display:flex;flex-direction:column;min-width:0;min-height:100dvh}.app-main{flex:1;min-width:0}@media(min-width:640px){.workbar__inner{padding:8px 24px}}@media(min-width:1024px){.sidebar{width:240px;visibility:visible;transform:none;transition:width .18s ease}.shell--drawer .sidebar{box-shadow:none}.shell__main{margin-left:240px;transition:margin-left .18s ease}.sidebar-scrim,.sidebar__close{display:none}.workbar__inner{padding:10px 32px}}@media(min-width:1024px){.shell--nav-collapsed .sidebar{width:76px}.shell--nav-collapsed .shell__main{margin-left:76px}.shell--nav-collapsed .sidebar__brand-link{justify-content:center}.shell--nav-collapsed .brand-text,.shell--nav-collapsed .sidebar__group,.shell--nav-collapsed .sidebar__project-name,.shell--nav-collapsed .side-link:not(.side-link--button)>span:not(.side-link__badge),.shell--nav-collapsed .side-link--button>span,.shell--nav-collapsed .side-user__text{display:none}.shell--nav-collapsed .side-link{position:relative;justify-content:center;padding:0}.shell--nav-collapsed .side-link__badge{position:absolute;top:5px;right:8px;min-width:0;width:9px;height:9px;padding:0;border-radius:50%;font-size:0;line-height:0}.shell--nav-collapsed .side-user{justify-content:center;padding:6px 0 10px}}@media(max-width:639px){.workbar__search-btn{padding:0 12px}}.backlink{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);padding:0 4px 0 0;color:var(--text-muted);font-size:var(--text-base);background:none;border:0;cursor:pointer;font-family:inherit}.backlink:hover{color:var(--text)}.backlink__arrow{font-size:var(--text-lg);line-height:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--card-pad)}@media(min-width:640px){.card{padding:var(--card-pad-lg)}}.card--flush{padding:0;overflow:hidden}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sheet-head__text{min-width:0}.sheet-head .section-title{margin:0;overflow-wrap:anywhere}.sheet-head__close{flex:0 0 auto;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tap);padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-size:var(--text-base);font-family:inherit;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;white-space:nowrap}.btn:hover{background:var(--surface-sunken);border-color:var(--text-faint)}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn--primary:hover{background:var(--ink-hover);border-color:var(--ink-hover)}.btn--ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.btn--ghost:hover{background:#0000000a;border-color:transparent}.btn--danger{color:var(--danger-text);border-color:var(--danger-line);background:var(--surface)}.btn--plain{border-color:transparent;background:transparent;color:var(--text-muted)}.btn--plain:hover{background:#0000000a;border-color:transparent;color:var(--text)}@media(max-width:639px){.btn--block-mobile{width:100%}}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:var(--text-sm);color:var(--text-muted)}.input{width:100%;min-height:var(--tap);padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:var(--text-input);font-family:inherit}.input:focus{outline:none;border-color:var(--text-muted);box-shadow:0 0 0 3px #22262b14}.hint{font-size:var(--text-sm);color:var(--text-faint)}.tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:var(--text-xs);line-height:20px;white-space:nowrap}.tag--ok{background:var(--ok-bg);color:var(--ok-text)}.tag--warn{background:var(--warn-bg);color:var(--warn-text)}.tag--danger{background:var(--danger-bg);color:var(--danger-text)}.tag--info{background:var(--info-bg);color:var(--info-text)}.tag--plain{background:#f0eeea;color:var(--text-muted)}.notice{padding:12px 14px;border-radius:var(--radius-sm);font-size:var(--text-base);line-height:1.55}.notice--danger{background:var(--danger-bg);color:var(--danger-text)}.notice--warn{background:var(--warn-bg);color:var(--warn-text)}.notice--info{background:var(--info-bg);color:var(--info-text)}.notice--ok{background:var(--ok-bg);color:var(--ok-text)}.grant-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.grant-form .field{flex:1 1 200px;min-width:0}.grant-form .btn{flex:0 0 auto}@media(max-width:640px){.grant-form{flex-direction:column;align-items:stretch}.grant-form .field,.grant-form .btn{flex:1 1 auto;width:100%}}.card-rows{display:flex;flex-direction:column}.card-rows__item{display:block;padding:14px 16px;border-top:1px solid var(--line);background:var(--surface);min-height:var(--tap)}.card-rows__item:first-child{border-top:0}.card-rows__item:hover{background:var(--surface-sunken)}.card-rows__title{font-size:var(--text-base);font-weight:500;overflow-wrap:anywhere}.card-rows__meta{margin-top:4px;font-size:var(--text-sm);color:var(--text-muted);display:flex;flex-wrap:wrap;gap:4px 12px}.card-rows__item--pick{display:flex;align-items:flex-start;gap:12px}.pick{display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;flex-shrink:0}.pick input[type=checkbox]{width:26px;height:26px;margin:0;flex-shrink:0}.card-rows__item--button{width:100%;text-align:left;border:0;font:inherit;color:inherit;cursor:pointer}.browser{display:grid;gap:16px;min-width:0}@media(min-width:1024px){.browser{grid-template-columns:264px minmax(0,1fr);align-items:start}.tree-pane{position:sticky;top:76px}}.tree-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:var(--tap);margin-bottom:8px;padding:0 4px;border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--text-base);font-weight:600;cursor:pointer}.tree-card{display:none}.tree-card.is-open{display:block}@media(min-width:1024px){.tree-toggle{display:none}.tree-card{display:block}.tree-scroll{max-height:calc(100vh - 220px);overflow-y:auto}}.tree-scope{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border-bottom:1px solid var(--line)}.tree-scope .input{flex:1 1 140px;min-width:0}.tree-scope .btn{padding:0 12px}.tree-node{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:6px 12px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.tree-node:first-child{border-top:0}.tree-node:hover{background:var(--surface-sunken)}.tree-node--on{background:var(--info-bg);color:var(--info-text);font-weight:600}.tree-node__name{flex:1;min-width:0;overflow-wrap:anywhere}.tree-node__caret{flex:0 0 auto;width:12px;color:var(--text-faint);font-size:var(--text-xs)}.tree-node--site{font-size:var(--text-base);font-weight:600;color:var(--text)}.tree-node--root{font-weight:600}.tree-node__count{color:var(--text-faint);font-size:var(--text-xs)}.tree-node--on .tree-node__count{color:inherit;opacity:.7}.pathbar{display:flex;align-items:center;gap:2px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.pathbar__home{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:var(--tap);min-height:var(--tap);padding:0 8px;border-radius:var(--radius-sm);color:var(--text-muted)}.pathbar__home:hover{background:#0000000a;color:var(--text)}.pathbar__sep{flex:0 0 auto;padding:0 2px;color:var(--text-faint);font-size:var(--text-lg);line-height:1}.pathbar__seg,.pathbar__current{flex:0 0 auto;display:inline-flex;align-items:center;max-width:260px;min-height:var(--tap);padding:0 10px;border-radius:var(--radius-sm);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pathbar__seg{border:0;background:transparent;color:var(--text-muted);font-family:inherit;cursor:pointer}.pathbar__seg:hover{background:#0000000a;color:var(--text)}.pathbar__current{background:#f0eeea;color:var(--text);font-weight:600}.file-list{display:flex;flex-direction:column}.file-table__head{display:none}.file-row{display:flex;flex-wrap:wrap;gap:6px 10px;padding:12px 14px;border-top:1px solid var(--line);background:var(--surface)}.file-row:first-child{border-top:0}.file-row__name{flex:1 1 100%;display:flex;align-items:center;gap:8px;min-width:0}.file-badge{flex:0 0 auto;min-width:44px;padding:2px 6px;border-radius:var(--radius-sm);background:#f0eeea;color:var(--text-muted);font-size:var(--text-xs);line-height:18px;text-align:center}.file-row__link{min-width:0;color:var(--text);font-size:var(--text-base);font-weight:500;overflow-wrap:anywhere}.file-row__date,.file-row__type,.file-row__size{display:none}.file-row__meta{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:var(--text-sm);color:var(--text-muted)}.select-box{flex:0 0 auto;width:24px;height:24px;margin:0;accent-color:var(--ink);cursor:pointer}.batch-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--info-bg);color:var(--info-text);font-size:var(--text-sm)}.doc-group{border-top:1px solid var(--line)}.doc-group:first-child{border-top:0}.doc-group__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:10px 14px;background:var(--surface)}.doc-group__toggle{flex:1 1 240px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;min-height:var(--tap);padding:4px 0;border:0;background:transparent;color:var(--text);font-family:inherit;text-align:left;cursor:pointer}.doc-group__name{font-size:var(--text-base);font-weight:600;overflow-wrap:anywhere}.doc-group__count,.doc-group__meta{color:var(--text-muted);font-size:var(--text-sm)}.tree-label{margin:10px 10px 4px;font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-faint)}.tree-node--important{border-left:3px solid #9f2f2d}.doc-group__acts{display:flex;flex-wrap:wrap;gap:6px}.doc-group__rename{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0 14px 12px;background:var(--surface)}.doc-group__rename .input{flex:1 1 200px;min-width:0}.doc-group__chevron{display:inline-block;color:var(--text-faint);font-size:var(--text-lg);line-height:1;transition:transform .15s ease}.doc-group__chevron.is-open{transform:rotate(90deg)}.doc-group__body{border-top:1px solid var(--line);background:var(--surface-sunken);padding-bottom:4px}.doc-version{padding:10px 14px 4px}.doc-version+.doc-version{border-top:1px dashed var(--line)}.doc-version__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.doc-version__note{color:var(--text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.doc-file{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:6px 0}.doc-file .file-row__link{flex:1 1 220px}.doc-file__meta{color:var(--text-muted);font-size:var(--text-sm)}.file-row--folder{width:100%;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.file-row--folder:first-child{border-top:0}.file-row--folder:hover{background:var(--surface-sunken)}.file-row.is-drop-target,.tree-node.is-drop-target{outline:2px solid var(--ink);outline-offset:-2px;background:var(--surface-sunken)}.file-badge--folder{display:inline-flex;align-items:center;justify-content:center;background:var(--warn-bg);color:var(--warn-text)}.file-row__open{color:var(--text-muted);font-size:var(--text-sm)}.file-row__type--important{color:var(--warn-text);font-weight:500}@media(min-width:640px){.file-table{overflow-x:auto}.file-table__head,.file-row{display:grid;grid-template-columns:minmax(0,1fr) 118px 64px 64px;gap:10px;align-items:center}.file-table__head{padding:10px 16px;border-bottom:1px solid var(--line);font-size:var(--text-sm);color:var(--text-muted)}.file-row{padding:10px 16px}.file-row__name{flex:none}.file-row__date,.file-row__type,.file-row__size{display:block;font-size:var(--text-sm);color:var(--text-muted)}.file-row__meta{display:none}.file-row__date{white-space:nowrap}}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;min-width:640px;border-collapse:collapse;font-size:var(--text-base)}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.table th{font-weight:500;color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;background:var(--surface-sunken)}.table tr:last-child td{border-bottom:0}.search-snippet{margin-top:8px;font-size:var(--text-sm);color:var(--text-muted);line-height:1.6;overflow-wrap:anywhere}.search-snippet__hit{background:var(--warn-bg);color:var(--warn-text);border-radius:3px;padding:0 2px}.empty{display:grid;place-items:center;min-height:88px;text-align:center;line-height:1.7;color:var(--text-muted);font-size:var(--text-base)}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.small{font-size:var(--text-sm)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.preview-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.preview-card__head{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;padding:14px 16px;border-bottom:1px solid var(--line)}.preview-card__head .section-title{margin:0}.preview-card__name{flex:1 1 220px;min-width:0;overflow-wrap:anywhere}.preview-card__toggle{margin-left:auto}.preview-card__body{padding:12px 16px 16px}.preview-frame{display:block;width:100%;height:min(72vh,760px);min-height:360px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-sunken)}.preview-card__open{margin:10px 0 0}.preview-image{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:var(--radius-sm)}.preview-text{margin:0;max-height:70vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--text-sm);line-height:1.7;padding:12px 14px;background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--radius-sm)}.diff-brief{color:var(--info-text);background:var(--info-bg);border-radius:var(--radius-sm);padding:4px 8px;display:inline-block}.version-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}@media(max-width:767px){.preview-card__head{padding:12px 14px}.preview-card__body{padding:10px 12px 14px}.preview-frame{height:60vh;min-height:300px}.preview-text{max-height:60vh}.preview-card__toggle{margin-left:0}}.file-row__link--btn{display:inline-flex;align-items:center;min-height:24px;padding:0;border:0;background:transparent;font:inherit;font-weight:500;text-align:left;color:var(--text);cursor:pointer}.file-row__link--btn:hover,.file-row__link--btn:focus-visible{text-decoration:underline}.preview-pane{position:fixed;top:0;right:0;bottom:0;z-index:60;display:flex;flex-direction:column;width:min(100%,520px);background:var(--surface);border-left:1px solid var(--line);box-shadow:-10px 0 28px #00000024}.preview-pane__head{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.preview-pane__back{flex:0 0 auto;font-weight:600}.preview-pane__title{flex:1 1 auto;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-pane__hide{flex:0 0 auto}.preview-tabs{display:flex;gap:6px;padding:8px 12px;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--surface-sunken)}.preview-tab{display:flex;align-items:center;flex:0 0 auto;max-width:220px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.preview-tab--on{border-color:var(--ink)}.preview-tab__name{min-height:44px;max-width:180px;padding:0 8px;border:0;background:transparent;font:inherit;font-size:var(--text-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.preview-tab__x{flex:0 0 auto;width:44px;height:44px;border:0;background:transparent;color:var(--text-muted);font-size:var(--text-lg);line-height:1;cursor:pointer}.preview-tab__x:hover{color:var(--text)}.preview-pane__body{flex:1 1 auto;min-height:0;overflow:auto;padding:12px;background:var(--surface-sunken)}.preview-pane__frame{display:block;width:100%;height:100%;min-height:320px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.preview-pane__img{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:var(--radius-sm)}.preview-pane__foot{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}.preview-pane__acts,.preview-pane__rename,.preview-pane__confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.preview-pane__rename .input{flex:1 1 160px;min-width:0}@media(min-width:1800px){.page--wide{max-width:none}.browser--preview{grid-template-columns:264px minmax(0,1fr) 460px}.preview-pane{position:sticky;top:76px;width:auto;height:calc(100dvh - 96px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none;overflow:hidden}.preview-pane__back{display:none}}.drop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:#f7f6f3d1;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none}.drop-overlay__box{display:flex;flex-direction:column;gap:6px;align-items:center;max-width:420px;padding:28px 32px;text-align:center;background:var(--surface);border:2px dashed var(--line-strong);border-radius:var(--radius);font-size:var(--text-lg)}.drop-overlay__box .small{color:var(--text-muted)}.check{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:var(--text-base)}.check input[type=checkbox]{width:18px;height:18px;margin:0;flex:none}.editor-host{width:100%;height:calc(100dvh - 220px);min-height:420px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-sunken);overflow:hidden}.editor-host iframe{display:block;width:100%;height:100%;border:0}@media(max-width:639px){.editor-host{height:calc(100dvh - 250px);min-height:380px}}
