:root,:root[data-theme=light]{--ol-green:#138a07;--ol-green-dark:#0f6e05;--ol-green-soft:#e7f6e5;--ol-bg:#f4f8f9;--ol-panel:#fff;--ol-surface:#f8fbfc;--ol-hover:#eef4f5;--ol-border:#d2dfe1;--ol-border-soft:#e4eef0;--ol-text:#1a2330;--ol-muted:#6b7280;--ol-rail:#eef4f5;--ol-danger:#c8102e;--ol-danger-soft:#fff2f4;--ol-warn:#a15c00;--ol-warn-soft:#fff8e6;--ol-info:#2f6fed;--ol-shadow:0 8px 28px #10182814;--ol-shadow-sm:0 2px 8px #1018280d;--ol-viewer-bg:#525659;--ol-log-bg:#1f2933;--ol-log-text:#e5e7eb;--font:"思源宋体 CN", "Source Han Serif CN", "Source Han Serif SC", "Noto Serif SC", "Songti SC", "SimSun", serif;--mono:"JetBrains Mono", "Source Code Pro", "IBM Plex Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--dur-press:.14s;--dur-popover:.18s;--dur-modal:.24s;--dur-toast:.22s;--material-blur:20px;--chrome-bg:#ffffffe0;--chrome-edge:#ffffffb3;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--review-add-bg:#e7f6e5;--review-add-fg:#0f6e05;--review-add-edge:#138a07;--review-del-bg:#fff2f4;--review-del-fg:#c8102e;--review-del-edge:#c8102e}:root[data-theme=dark]{--ol-green:#35b02a;--ol-green-dark:#2a8f21;--ol-green-soft:#1b3320;--ol-bg:#0c1016;--ol-panel:#161b22;--ol-surface:#1b212a;--ol-hover:#222a34;--ol-border:#2b333d;--ol-border-soft:#232a33;--ol-text:#d7dee8;--ol-muted:#8b95a3;--ol-rail:#0e1319;--ol-danger:#ff6b7f;--ol-danger-soft:#2a1519;--ol-warn:#e8b23c;--ol-warn-soft:#2a2314;--ol-info:#6da2ff;--ol-shadow:0 10px 32px #00000073;--ol-shadow-sm:0 2px 10px #00000059;--ol-viewer-bg:#22262b;--ol-log-bg:#0d1116;--ol-log-text:#cbd3de;--chrome-bg:#161b22c7;--chrome-edge:#ffffff0f;--review-add-bg:#204b25;--review-add-fg:#d7dee8;--review-add-edge:#35b02a;--review-del-bg:#613540;--review-del-fg:#d7dee8;--review-del-edge:#ff6b7f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=calm]{--ol-green:#9c7b45;--ol-green-dark:#7c5f34;--ol-green-soft:#efe6d3;--ol-bg:#f2ecdf;--ol-panel:#fbf8f1;--ol-surface:#f7f1e4;--ol-hover:#ece1cb;--ol-border:#ddccac;--ol-border-soft:#e9ddc4;--ol-text:#3a3226;--ol-muted:#8a7a63;--ol-rail:#ece1cb;--ol-danger:#b5533f;--ol-danger-soft:#f6e8e0;--ol-warn:#a3792f;--ol-warn-soft:#f5ecd8;--ol-info:#6d8a8a;--ol-shadow:0 8px 28px #3a2e1e1f;--ol-shadow-sm:0 2px 8px #3a2e1e14;--ol-viewer-bg:#6b6152;--ol-log-bg:#2b2416;--ol-log-text:#e8ddc8;--chrome-bg:#fbf8f1e0;--chrome-edge:#ffffff8c;--review-add-bg:#e7f6e5;--review-add-fg:#0f6e05;--review-add-edge:#138a07;--review-del-bg:#fff2f4;--review-del-fg:#c8102e;--review-del-edge:#c8102e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.guide-restart{z-index:80;border:1px solid var(--ol-border);background:var(--ol-panel);color:var(--ol-text);box-shadow:var(--ol-shadow-sm);font:inherit;cursor:pointer;border-radius:999px;padding:7px 11px;font-size:12px;position:fixed;bottom:14px;right:14px}.guide-tour{z-index:1100;pointer-events:none;position:fixed;inset:0}.guide-tour-focus{border:2px solid var(--ol-info);transition:top .18s var(--ease-out), left .18s var(--ease-out), width .18s var(--ease-out), height .18s var(--ease-out);border-radius:8px;position:fixed;box-shadow:0 0 0 9999px #0a121c47,0 0 0 5px #2f6fed2e}.guide-tour-card{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--ol-border) 82%, var(--ol-info));background:var(--ol-panel);width:340px;max-width:calc(100vw - 32px);color:var(--ol-text);pointer-events:auto;animation:guide-tour-enter .18s var(--ease-out);transition:top .18s var(--ease-out), left .18s var(--ease-out);border-radius:16px;padding:16px;position:fixed;inset:16px auto auto 16px;overflow:auto;box-shadow:0 18px 48px #10182833}.guide-tour-heading{align-items:baseline;gap:12px;display:flex}.guide-tour-card h2{flex:1;margin:0;font-size:16px;line-height:1.3}.guide-tour-card p{color:var(--ol-muted);margin:9px 0 0;font-size:13px;line-height:1.55}.guide-tour-progress{color:var(--ol-muted);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:700}.guide-tour-actions{align-items:center;gap:8px;margin-top:14px;display:flex}.guide-tour-spacer{flex:1}.guide-tour-actions button{min-height:32px;color:var(--ol-text);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 11px;font-size:12px;font-weight:650;line-height:1}.guide-tour-skip{color:var(--ol-muted)!important}.guide-tour-back{border-color:var(--ol-border)!important}.guide-tour-next{border-color:var(--ol-text)!important;background:var(--ol-text)!important;color:var(--ol-panel)!important}.guide-tour-next:disabled{cursor:default;border-color:var(--ol-border)!important;background:var(--ol-surface)!important;color:var(--ol-muted)!important}.guide-tour-actions button:not(:disabled):active{transform:scale(.97)}@keyframes guide-tour-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.guide-tour-focus{transition:none}.guide-tour-card{transition:none;animation:none}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]){--ol-green:#35b02a;--ol-green-dark:#2a8f21;--ol-green-soft:#1b3320;--ol-bg:#0c1016;--ol-panel:#161b22;--ol-surface:#1b212a;--ol-hover:#222a34;--ol-border:#2b333d;--ol-border-soft:#232a33;--ol-text:#d7dee8;--ol-muted:#8b95a3;--ol-rail:#0e1319;--ol-danger:#ff6b7f;--ol-danger-soft:#2a1519;--ol-warn:#e8b23c;--ol-warn-soft:#2a2314;--ol-info:#6da2ff;--ol-shadow:0 10px 32px #00000073;--ol-shadow-sm:0 2px 10px #00000059;--ol-viewer-bg:#22262b;--ol-log-bg:#0d1116;--ol-log-text:#cbd3de;--chrome-bg:#161b22c7;--chrome-edge:#ffffff0f;--review-add-bg:#204b25;--review-add-fg:#d7dee8;--review-add-edge:#35b02a;--review-del-bg:#613540;--review-del-fg:#d7dee8;--review-del-edge:#ff6b7f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html:has(.ol-app){overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.ol-app) body{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.ol-app) #root{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.dash){overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.dash) body{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.dash) #root{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.account-page){overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.account-page) body{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.account-page) #root{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--fill){overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--fill) body{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--fill) #root{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--split){overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--split) body{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}html:has(.apple-site--split) #root{overscroll-behavior:none;height:100%;max-height:100dvh;overflow:hidden}body{font-family:var(--font);color:var(--ol-text);background:var(--ol-bg);letter-spacing:0;-webkit-font-smoothing:antialiased}.brand-symbol{object-fit:contain;flex:none;display:block}.brand-lockup{object-fit:contain;height:auto;display:block}.dash-brand-lockup{width:64px}.brand-wordmark.dash-brand-name{letter-spacing:.08em;color:var(--studio-text);font-size:15px;font-weight:750}.land-brand-lockup{width:92px}.brand-wordmark.land-brand-name{color:var(--studio-text);font-size:18px}.land-hero-lockup{width:min(240px,72vw);margin:0 auto}:root[data-theme=dark] .brand-symbol{filter:brightness(0)invert()sepia(.12)saturate(.5)}.brand-wordmark{color:inherit;white-space:nowrap;align-items:center;font-family:Georgia,Times New Roman,Noto Serif SC,serif;font-weight:500;line-height:.9;display:inline-flex}.brand-wordmark>span{color:inherit;font:inherit;letter-spacing:.16em}button,input,select,a{font:inherit}button{cursor:pointer;transition:transform var(--dur-press) var(--ease-out), background-color .16s ease, border-color .16s ease, color .16s ease, opacity .16s ease}button:disabled{opacity:.55;cursor:not-allowed}button:not(:disabled):active{transform:scale(.97)}.btn-primary,.btn-recompile{background:var(--ol-green);border:1px solid var(--ol-green-dark);color:#fff;border-radius:var(--radius-sm);padding:7px 14px;font-weight:600}.btn-secondary,.ol-ghost{background:var(--ol-panel);border:1px solid var(--ol-border);color:var(--ol-text);border-radius:var(--radius-sm);padding:7px 12px}.ol-share{background:var(--ol-green);border:1px solid var(--ol-green-dark);color:#fff;border-radius:var(--radius-sm);padding:7px 14px;font-weight:600}input,select,textarea{border:1px solid var(--ol-border);background:var(--ol-panel);color:var(--ol-text);border-radius:4px;padding:7px 10px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--ol-info);outline-offset:1px}.branch{max-width:100px}.muted{color:var(--ol-muted);font-size:12px}.banner-error,.ol-error{color:var(--ol-danger);font-size:13px}.auth-page,.dash{--studio-green:#138a07;--studio-green-dark:#0f6e05;--studio-green-soft:#e4f0e3;--studio-cyan:#4a8b8c;--studio-cyan-soft:#d9ecec;--studio-bg:#f4fafb;--studio-panel:#fff;--studio-surface:#f8fcfc;--studio-hover:#eef6f6;--studio-border:#cfdfe0;--studio-border-soft:#e2eeef;--studio-text:#152018;--studio-muted:#5f6d64;--studio-shadow:0 18px 48px #12281814;--studio-shadow-sm:0 4px 16px #1228180d;--studio-chrome:#ffffffeb;--studio-radius:14px;--studio-radius-sm:8px;color:var(--studio-text)}.dash{--studio-bg:#f3fafb;--studio-surface:#fff;--studio-hover:#eef6f7;--studio-border:#c9dcdd;--studio-border-soft:#dcebec;--studio-text:#123033;--studio-muted:#5a7070;--studio-chrome:#fffffff0;--studio-shadow:0 18px 48px #1e464814;--studio-shadow-sm:0 4px 16px #1e46480d;--studio-green-soft:#dff0df}:root[data-theme=dark] .auth-page,:root[data-theme=dark] .dash{--studio-green:#35b02a;--studio-green-dark:#2a8f21;--studio-green-soft:#1b3320;--studio-cyan:#6eb0b0;--studio-cyan-soft:#1a3030;--studio-bg:#0c1210;--studio-panel:#141c18;--studio-surface:#1a2420;--studio-hover:#22302a;--studio-border:#2c3a33;--studio-border-soft:#24302a;--studio-text:#d9e4dc;--studio-muted:#8fa094;--studio-shadow:0 18px 48px #00000073;--studio-shadow-sm:0 4px 16px #00000059;--studio-chrome:#141c18d1}:root[data-theme=dark] .dash{--studio-bg:#0b1214;--studio-panel:#121c1e;--studio-surface:#182426;--studio-hover:#213033;--studio-border:#2a3c3e;--studio-border-soft:#223336;--studio-text:#d5e4e4;--studio-muted:#8aa0a0;--studio-chrome:#101a1cd6;--studio-green-soft:#1b3320}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .auth-page,:root:not([data-theme=light]):not([data-theme=calm]) .dash{--studio-green:#35b02a;--studio-green-dark:#2a8f21;--studio-green-soft:#1b3320;--studio-cyan:#6eb0b0;--studio-cyan-soft:#1a3030;--studio-bg:#0c1210;--studio-panel:#141c18;--studio-surface:#1a2420;--studio-hover:#22302a;--studio-border:#2c3a33;--studio-border-soft:#24302a;--studio-text:#d9e4dc;--studio-muted:#8fa094;--studio-shadow:0 18px 48px #00000073;--studio-shadow-sm:0 4px 16px #00000059;--studio-chrome:#141c18d1}:root:not([data-theme=light]):not([data-theme=calm]) .dash{--studio-bg:#0b1214;--studio-panel:#121c1e;--studio-surface:#182426;--studio-hover:#213033;--studio-border:#2a3c3e;--studio-border-soft:#223336;--studio-text:#d5e4e4;--studio-muted:#8aa0a0;--studio-chrome:#101a1cd6}}:root[data-theme=calm] .auth-page,:root[data-theme=calm] .dash{--studio-green:#9c7b45;--studio-green-dark:#7c5f34;--studio-green-soft:#efe6d3;--studio-cyan:#8a8f6d;--studio-cyan-soft:#eae6d3;--studio-bg:#f2ecdf;--studio-panel:#fbf7ef;--studio-surface:#f7f1e4;--studio-hover:#ece2cd;--studio-border:#ddccac;--studio-border-soft:#e9ddc4;--studio-text:#35291b;--studio-muted:#8a7960;--studio-shadow:0 18px 48px #35291b24;--studio-shadow-sm:0 4px 16px #35291b17;--studio-chrome:#fbf7efeb}:root[data-theme=calm] .dash{--studio-bg:#f1e9d7;--studio-panel:#fbf7ee;--studio-surface:#f6efdd;--studio-hover:#ece0c7;--studio-border:#ddcda6;--studio-border-soft:#e8dcbe;--studio-text:#2f2417;--studio-muted:#86765d;--studio-chrome:#fbf7eef0;--studio-shadow:0 18px 48px #2f241724;--studio-shadow-sm:0 4px 16px #2f241717;--studio-green-soft:#efe4cb}.dash{background:var(--studio-bg);isolation:isolate;flex-direction:column;height:100%;min-height:100%;display:flex;position:relative;overflow:hidden}.dash-atmosphere{pointer-events:none;z-index:0;background-color:var(--studio-bg,#f4fafb);position:absolute;inset:0}.dash-atmosphere:after{content:"";background:0 0;position:absolute;inset:0}:root[data-theme=dark] .dash-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root[data-theme=dark] .dash-atmosphere:after{background:linear-gradient(180deg, color-mix(in srgb, var(--studio-bg) 18%, transparent), color-mix(in srgb, var(--studio-bg) 55%, transparent) 72%, var(--studio-bg))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root:not([data-theme=light]):not([data-theme=calm]) .dash-atmosphere:after{background:linear-gradient(180deg, color-mix(in srgb, var(--studio-bg) 18%, transparent), color-mix(in srgb, var(--studio-bg) 55%, transparent) 72%, var(--studio-bg))}}:root[data-theme=calm] .dash-atmosphere{background-color:#f8f4ea}:root[data-theme=calm] .dash-atmosphere:after{background:0 0}.dash-frame{z-index:1;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.dash-top,.dash-main{z-index:1;position:relative}.dash-top{box-sizing:border-box;border:0;border-bottom:1px solid color-mix(in srgb, var(--studio-border) 72%, transparent);min-height:52px;box-shadow:none;z-index:10;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:8px 22px;display:flex;position:sticky;top:0}.dash-brand{align-items:center;gap:12px;min-width:0;display:flex}.dash-brand-copy{flex-direction:column;gap:1px;line-height:1.15;display:flex}.dash-title{font-family:var(--font);color:var(--studio-text);letter-spacing:-.03em;font-size:20px;font-weight:750}.dash-tagline{color:var(--studio-muted);letter-spacing:.02em;font-size:11px}.dash-user{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.dash-user .ol-ghost{border-color:var(--studio-border);background:color-mix(in srgb, var(--studio-panel) 88%, transparent);color:var(--studio-text);border-radius:999px}.dash-main{flex-direction:column;flex:1;width:min(1180px,100%);min-height:0;margin:0 auto;padding:28px 22px 64px;display:flex;overflow:hidden}.dash-head{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px;display:flex}.dash-head-copy h1{font-family:var(--font);letter-spacing:-.04em;color:var(--studio-text);margin:0;font-size:clamp(2rem,3vw,2.55rem);font-weight:750;line-height:1.05}.dash-head-copy p{color:var(--studio-muted);max-width:42ch;margin:8px 0 0;font-size:14px;line-height:1.45}.dash-search-form{display:contents}.dash-search-wrap{flex:0 340px;align-items:center;width:min(340px,100%);display:flex;position:relative}.dash-search-icon{color:var(--studio-muted);pointer-events:none;place-items:center;display:grid;position:absolute;left:12px}.dash-search{border:1px solid var(--studio-border);background:var(--studio-panel);width:100%;height:42px;color:var(--studio-text);box-shadow:var(--studio-shadow-sm);appearance:none;border-radius:999px;padding:0 14px 0 38px}.dash-search:focus{outline:2px solid color-mix(in srgb, var(--studio-green) 55%, transparent);outline-offset:1px;border-color:var(--studio-green)}.dash-service-notice{color:var(--studio-muted);background:0 0;border:none;align-items:baseline;gap:8px;margin:0 0 18px;padding:0;font-size:12px;line-height:1.5;display:flex}.dash-notice-label{letter-spacing:.04em;text-transform:uppercase;color:var(--studio-cyan);flex:none;font-size:11px;font-weight:700}.dash-add-rail{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:30px;display:grid}.dash-add-chip{text-align:left;border:1px solid color-mix(in srgb, var(--studio-border) 80%, transparent);background:color-mix(in srgb, var(--studio-panel) 86%, transparent);-webkit-backdrop-filter:blur(10px);color:var(--studio-text);box-shadow:var(--studio-shadow-sm);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:14px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.dash-add-chip:focus-visible{outline:2px solid color-mix(in srgb, var(--studio-green) 55%, transparent);outline-offset:2px}.dash-add-chip.is-active{border-color:var(--studio-green);background:color-mix(in srgb, var(--studio-green-soft) 75%, var(--studio-panel));box-shadow:0 8px 22px color-mix(in srgb, var(--studio-green) 16%, transparent)}.dash-add-chip-icon{background:color-mix(in srgb, var(--studio-cyan-soft) 80%, var(--studio-surface));width:40px;height:40px;color:var(--studio-cyan);border-radius:12px;flex:0 0 40px;place-items:center;font-size:18px;font-weight:700;line-height:1;display:grid}.dash-add-chip.is-active .dash-add-chip-icon{background:var(--studio-green-soft);color:var(--studio-green-dark)}.dash-add-chip-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-add-chip-copy strong{letter-spacing:-.015em;font-size:14px;font-weight:700;line-height:1.25}.dash-add-chip-copy span{color:var(--studio-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.create-row{flex-wrap:wrap;gap:8px;margin:0;display:flex}.create-row input{border:1px solid var(--studio-border);border-radius:var(--studio-radius-sm);background:var(--studio-surface);min-width:0;height:38px;color:var(--studio-text);flex:1;padding:0 12px}.create-row input:focus{outline:2px solid color-mix(in srgb, var(--studio-green) 45%, transparent);outline-offset:0;border-color:var(--studio-green);background:var(--studio-panel)}.dash-compose-scrim{z-index:40;-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out);background:#0b1a1c8c;place-items:center;padding:24px 16px;display:grid;position:fixed;inset:0}.dash-compose-scrim.is-open{opacity:1;pointer-events:auto}.dash-compose-panel{background:var(--studio-panel);border:1px solid var(--studio-border);border-radius:calc(var(--studio-radius) + 2px);width:min(520px,100%);max-height:min(86vh,640px);box-shadow:var(--studio-shadow);transform-origin:var(--compose-origin,50% 20%);opacity:0;transition:opacity var(--dur-modal) var(--ease-out), transform var(--dur-modal) var(--ease-out);flex-direction:column;gap:14px;padding:20px 20px 18px;display:flex;overflow:auto;transform:scale(.96)translateY(6px)}.dash-compose-scrim.is-open .dash-compose-panel{opacity:1;transform:scale(1)translateY(0)}.dash-compose-scrim.is-closing .dash-compose-panel{opacity:0;transition-duration:.18s;transform:scale(.96)translateY(4px)}.dash-compose-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dash-compose-head h2{letter-spacing:-.02em;color:var(--studio-text);margin:0;font-size:18px}.dash-compose-head p{color:var(--studio-muted);margin:4px 0 0;font-size:13px;line-height:1.4}.dash-compose-close{border:1px solid var(--studio-border);background:var(--studio-surface);width:32px;height:32px;color:var(--studio-muted);cursor:pointer;border-radius:8px;flex:none;font-size:18px;line-height:1}.dash-compose-body{flex-direction:column;gap:12px;display:flex}.dash-compose-body .muted{color:var(--studio-muted);margin:0;font-size:12px;line-height:1.45}.dash-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--studio-cyan);margin:0 0 14px;font-size:12px;font-weight:700}.project-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.project-card{text-align:left;color:inherit;background:color-mix(in srgb, var(--studio-panel) 92%, transparent);border:1px solid color-mix(in srgb, var(--studio-border) 75%, transparent);opacity:1;transition:border-color .16s ease, box-shadow .16s ease, transform var(--dur-press) var(--ease-out);border-radius:0;flex-direction:column;gap:0;padding:0;display:flex;position:relative;overflow:visible;transform:translateY(0);box-shadow:0 10px 28px #1e464814}.project-card-accent{opacity:0;z-index:3;pointer-events:none;background:#000;width:100%;height:1px;transition:opacity .22s ease-out;position:absolute;inset:100% 0 auto}.project-card:hover .project-card-accent,.project-card:focus-visible .project-card-accent{opacity:1}:root[data-theme=dark] .project-card-accent{background:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .project-card-accent{background:#fff}}.project-card-cover{aspect-ratio:210/280;border-bottom:1px solid var(--studio-border-soft);background:#ecefed;place-items:stretch stretch;max-height:300px;display:grid;position:relative;overflow:hidden}.project-card-preview{object-fit:contain;object-position:top center;background:#fff;width:100%;height:100%;display:block}.project-card-fallback{color:var(--studio-cyan);background:linear-gradient(180deg, color-mix(in srgb, var(--studio-cyan-soft) 55%, var(--studio-surface)), var(--studio-surface));place-content:center;justify-items:center;gap:8px;font-size:12px;display:grid;position:absolute;inset:0}.project-card-fallback[hidden]{display:none!important}.project-card-body{background:color-mix(in srgb, var(--studio-panel) 96%, transparent);flex-direction:column;gap:6px;min-width:0;padding:14px 15px 15px;display:flex}.project-card-title-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.project-card-body strong{font-family:var(--font);letter-spacing:-.02em;color:var(--studio-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:15px;overflow:hidden}.project-kind-tag{border:1px solid color-mix(in srgb, var(--studio-green) 35%, var(--studio-border));color:var(--studio-green-dark);background:color-mix(in srgb, var(--studio-green-soft) 70%, transparent);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex:none;max-width:100%;padding:3px 8px;font-size:11px;line-height:1.2;overflow:hidden}.project-kind-tag.is-repo{border-color:color-mix(in srgb, var(--studio-cyan) 40%, var(--studio-border));color:var(--studio-cyan);background:color-mix(in srgb, var(--studio-cyan-soft) 55%, transparent);max-width:58%}.project-kind-tag.is-shared{border-color:color-mix(in srgb, var(--ol-info) 40%, var(--studio-border));color:var(--ol-info);background:color-mix(in srgb, var(--ol-info) 12%, transparent)}.project-card-repo,.project-card-body span{color:var(--studio-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.project-card-meta{color:color-mix(in srgb, var(--studio-cyan) 35%, var(--studio-muted))!important;font-size:11px!important}.project-card.skeleton{min-height:320px}.project-card.skeleton .project-card-cover,.project-card.skeleton .project-card-body{background:linear-gradient(90deg, var(--studio-surface), var(--studio-hover), var(--studio-surface));background-size:200% 100%}.dash-empty{text-align:center;color:var(--studio-muted);background:color-mix(in srgb, var(--studio-panel) 70%, transparent);border:1px dashed var(--studio-border);border-radius:var(--studio-radius);grid-column:1/-1;padding:64px 28px}.dash-empty strong{color:var(--studio-text);letter-spacing:-.015em;margin-bottom:8px;font-size:16px;display:block}.dash-empty p{max-width:42ch;margin:0 auto;font-size:13px;line-height:1.5}.dash-busy{color:var(--studio-muted);align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.token-warn{color:var(--ol-warn);background:var(--ol-warn-soft);border-radius:999px;margin-right:4px;padding:4px 8px;font-size:12px}.ol-app{background:var(--ol-bg);overscroll-behavior:none;z-index:1;flex-direction:column;width:100%;height:100%;max-height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.ol-topbar{background:var(--chrome-bg);height:42px;-webkit-backdrop-filter:blur(var(--material-blur)) saturate(160%);border-bottom:1px solid var(--ws-separator);box-shadow:inset 0 1px 0 var(--chrome-edge);z-index:20;flex:0 0 42px;justify-content:space-between;align-items:center;padding:0 10px 0 4px;display:flex}.ol-top-left,.ol-top-right{align-items:center;gap:2px;min-width:0;display:flex}.ol-home{border-radius:var(--radius-sm);width:36px;height:32px;color:var(--ol-text);letter-spacing:0;background:0 0;border:0;place-items:center;font-size:16px;font-weight:750;line-height:1;display:grid}.ol-layout-seg{border:1px solid var(--ol-border-soft);background:color-mix(in srgb, var(--ol-panel) 72%, transparent);border-radius:9px;align-items:center;gap:1px;margin:0 6px 0 8px;padding:2px;display:inline-flex}.ol-layout-seg button{width:28px;height:26px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;transition:transform .1s ease-out,background .14s,color .14s;display:grid}.ol-layout-seg button:hover{color:var(--ol-text);background:var(--ol-hover)}.ol-layout-seg button:active{transform:scale(.94)}.ol-layout-seg button.active{color:var(--ol-text);background:color-mix(in srgb, var(--ol-green) 18%, var(--ol-panel))}@media (prefers-reduced-motion:reduce){.ol-layout-seg button{transition:background .12s,color .12s}.ol-layout-seg button:active{transform:none}}.ol-menu,.ol-project-name{position:relative}.ol-menu-btn,.ol-project-btn{color:var(--ol-text);border-radius:var(--radius-sm);background:0 0;border:0;padding:6px 10px;font-size:13px}.ol-menu-btn.open{background:var(--ol-hover)}.ol-project-btn{text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-weight:600;overflow:hidden}.ol-menu-dd{background:var(--chrome-bg);min-width:200px;-webkit-backdrop-filter:blur(var(--material-blur)) saturate(160%);border:1px solid var(--ol-border);border-radius:var(--radius-md);box-shadow:var(--ol-shadow);z-index:50;transform-origin:0 0;opacity:1;transition:opacity var(--dur-popover) var(--ease-out), transform var(--dur-popover) var(--ease-out);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);left:0;transform:scale(1)}.ol-menu-dd[data-instant=true]{transition-duration:0s}@starting-style{.ol-menu-dd[data-instant=true]{opacity:1;transform:scale(1)}}.ol-menu-dd button,.ol-menu-dd a{text-align:left;width:100%;color:var(--ol-text);border-radius:var(--radius-sm);background:0 0;border:0;padding:8px 10px;font-size:13px;text-decoration:none;display:block}.ol-menu-meta{color:var(--ol-muted);border-bottom:1px solid var(--ws-separator);margin-bottom:4px;padding:8px 10px 10px;font-size:12px}.ol-status{color:var(--ol-green);margin-right:8px;font-size:12px}.ol-user-chip{align-items:center;gap:6px;margin-right:6px;display:flex}.ol-user-chip .avatar{color:#fff;background:#5b7cfa;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.ol-user-chip input{width:110px;padding:4px 8px;font-size:12px}.ol-body{flex:1;min-height:0;display:flex;overflow:hidden}.ol-rail{z-index:4;background:var(--ol-rail);border-right:1px solid var(--ol-border);flex-direction:column;flex:0 0 48px;align-items:center;gap:4px;width:48px;padding:10px 0;display:flex;position:relative}.ol-rail button{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--ol-muted);background:0 0;border:0;place-items:center;display:grid;position:relative}.ol-rail button.active{background:color-mix(in srgb, var(--ol-text) 8%, transparent);color:var(--ol-text);box-shadow:none}.ol-rail-foot{align-items:center;gap:inherit;flex-direction:column;margin-top:auto;padding-top:8px;display:flex}.ol-rail-help{position:relative}.ol-rail-help-dd{transform-origin:0 100%;top:auto;bottom:0;left:calc(100% + 8px)}.ol-rail-help-dd .ol-menu-meta{border-bottom:0;border-top:1px solid var(--ws-separator);margin:4px 0 0;padding-top:10px}.rail-badge{background:var(--ol-danger);color:#fff;text-align:center;border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:2px;right:2px}.ol-side{background:var(--ol-panel);border-right:1px solid var(--ol-border);flex-direction:column;flex:0 0 240px;width:240px;min-width:0;min-height:0;display:flex;overflow:hidden}.ol-side-splitter{cursor:col-resize;z-index:2;touch-action:none;background:0 0;flex:0 0 6px;width:6px;position:relative}.ol-side-splitter:after{content:"";position:absolute;inset:0 -4px}.ol-side-head{border-bottom:1px solid var(--ws-separator);letter-spacing:-.01em;align-items:center;height:40px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.ol-side-body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px;display:flex;overflow:auto}.repo-line{margin:0;font-size:13px;line-height:1.45}.side-actions{gap:8px;display:flex}.setting-row{color:var(--ol-muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.sync-panel{gap:12px;padding:12px}.sync-hero,.sync-card{border:1px solid var(--ol-border);border-radius:12px}.sync-hero{background:linear-gradient(145deg,#7f7f7f14,#7f7f7f06);padding:13px}.sync-hero--git{background:linear-gradient(145deg,#32845a24,#32845a09)}.sync-hero--github{background:linear-gradient(145deg,#704cb621,#704cb608)}.sync-hero-head{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.sync-service-mark{width:32px;height:32px;color:var(--ol-text);background:#ffffff8c;border:1px solid #7f7f7f33;border-radius:9px;place-items:center;display:grid}.sync-hero-head>div{flex-direction:column;gap:2px;min-width:0;display:flex}.sync-hero-head strong,.sync-card-head strong{color:var(--ol-text);font-size:12px}.sync-hero-head div span,.sync-card-head div span{color:var(--ol-muted);font-size:11px}.sync-status-chip{color:#217a4a;background:#217a4a1a;border:1px solid #217a4a3b;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:650}.sync-status-chip.is-muted{color:var(--ol-muted);border-color:var(--ol-border);background:#7f7f7f14}.sync-hero p{color:var(--ol-muted);margin:10px 0 0;font-size:11px;line-height:1.5}.sync-card{background:var(--ol-panel);padding:12px}.sync-card-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.sync-card-head>div{flex-direction:column;gap:2px;display:flex}.sync-command{border:1px solid var(--ol-border);background:var(--ol-panel-2,#7f7f7f14);border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.sync-command code{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding:9px;font-size:10px;line-height:1.45;overflow:hidden}.sync-copy-button{color:var(--ol-text);border:0;border-left:1px solid var(--ol-border);cursor:pointer;background:0 0;padding:0 10px;font-size:11px}.sync-copy-button:hover{background:#7f7f7f14}.sync-credentials{margin:0}.sync-credentials>div{border-top:1px solid var(--ws-separator);grid-template-columns:54px minmax(0,1fr);gap:8px;padding:8px 0;font-size:11px;display:grid}.sync-credentials>div:first-child{border-top:0}.sync-credentials dt{color:var(--ol-muted)}.sync-credentials dd{min-width:0;color:var(--ol-text);margin:0}.sync-rules ul{color:var(--ol-muted);margin:0;padding-left:16px;font-size:11px;line-height:1.65}.sync-alert{background:#b6801b14;border:1px solid #b6801b40;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 11px;display:flex}.sync-alert>div{flex-direction:column;gap:2px;min-width:0;display:flex}.sync-alert strong,.sync-alert span{font-size:11px}.sync-alert span{color:var(--ol-muted);line-height:1.4}.sync-alert.is-error{background:#b4231812;border-color:#b4231840}.sync-alert.is-error strong{color:#b42318}.sync-repo-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.sync-repo-row>div{flex-direction:column;gap:3px;min-width:0;display:flex}.sync-repo-row span,.sync-activity span{color:var(--ol-muted);font-size:10px}.sync-repo-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sync-repo-row code{background:var(--ol-panel-2,#7f7f7f14);border-radius:6px;padding:3px 7px;font-size:10px}.sync-activity{border-top:1px solid var(--ws-separator);border-bottom:1px solid var(--ws-separator);grid-template-columns:1fr 1fr;margin:11px 0;display:grid}.sync-activity>div{flex-direction:column;gap:3px;min-width:0;padding:9px 6px 9px 0;display:flex}.sync-activity>div+div{border-left:1px solid var(--ol-border-soft);padding-left:9px}.sync-activity strong{color:var(--ol-text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.sync-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sync-actions button{border-radius:7px;flex:none;height:30px;min-height:30px;padding:0 12px;font-size:12px;font-weight:550}.sync-toggle{border-top:1px solid var(--ws-separator);justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.sync-toggle>span{flex-direction:column;gap:2px;display:flex}.sync-toggle strong{color:var(--ol-text);font-size:11px}.sync-toggle small{color:var(--ol-muted);font-size:10px;line-height:1.4}.sync-toggle input{width:16px;height:16px;accent-color:var(--ol-green);flex-shrink:0}.sync-note{color:var(--ol-muted);padding:1px 3px;font-size:10px;line-height:1.55}.sync-note strong{color:var(--ol-text);font-size:11px}.sync-note p{margin:4px 0 0}.sync-note code{font-size:9px}.sync-connect-card .create-row{margin-bottom:9px}.sync-connect-card>.sync-link-btn{width:100%}.sync-panel{gap:0;padding:0 14px 24px;overflow-x:hidden}.sync-section{min-width:0;padding:18px 0 20px}.sync-section+.sync-section{border-top:1px solid var(--ol-border)}.sync-section-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:12px;display:flex}.sync-section-heading>div{min-width:0}.sync-section-heading h3{color:var(--ol-text);letter-spacing:-.01em;margin:0;font-size:13px;font-weight:680;line-height:1.25}.sync-section-heading p{color:var(--ol-muted);margin:3px 0 0;font-size:10px;line-height:1.35}.sync-panel .sync-hero,.sync-panel .sync-card{background:0 0;border:0;border-radius:0}.sync-panel .sync-hero{padding:0 0 12px}.sync-panel .sync-hero-head{grid-template-columns:22px minmax(0,1fr);gap:8px}.sync-panel .sync-service-mark{width:22px;height:22px;color:var(--ol-text);background:0 0;border:0;border-radius:0}.sync-panel .sync-hero-head strong,.sync-panel .sync-card-head strong{font-size:11px;font-weight:600}.sync-panel .sync-card{border-top:1px solid var(--ws-separator);padding:12px 0}.sync-panel .sync-card-head{margin-bottom:8px}.sync-panel .sync-connect-card{padding-top:12px}.sync-panel .sync-connect-card .create-row{grid-template-columns:minmax(0,1fr) 72px;gap:6px;display:grid}.sync-panel .sync-connect-card input{width:100%;min-width:0}.sync-panel .sync-alert{border-radius:7px;min-height:44px;margin:0 0 12px;padding:8px 10px}.sync-panel .sync-status-chip{background:var(--ol-green-soft);border:0;border-radius:999px;flex:none;padding:2px 6px;font-size:9px}.sync-panel .sync-status-chip.is-muted{background:var(--ol-hover);border:0}.sync-panel .sync-repo-row code{text-overflow:ellipsis;white-space:nowrap;max-width:40%;overflow:hidden}.sync-panel .sync-actions{gap:6px}.sync-panel .sync-actions button{min-width:0;height:30px;min-height:30px;padding:0 12px;font-size:12px}.sync-panel .sync-connect-card>.sync-link-btn{color:#fff;background:#5a7385;border:1px solid #4a6272;border-radius:7px;min-width:0;min-height:34px;padding:7px 12px;font-size:12px;font-weight:620}.sync-panel .sync-connect-card>.sync-link-btn:not(:disabled):hover{background:#4f6878;border-color:#3f5564}:root[data-theme=dark] .sync-panel .sync-connect-card>.sync-link-btn{color:#f4f8fa;background:#6e8796;border-color:#5d7685}:root[data-theme=dark] .sync-panel .sync-connect-card>.sync-link-btn:not(:disabled):hover{background:#7a93a2}.sync-panel .sync-toggle{min-height:48px;padding:8px 0}.sync-panel .sync-toggle>span{min-width:0}.sync-panel .sync-toggle input{width:18px;height:18px}.sync-section--montana .sync-hero{padding-bottom:9px}.sync-command{border-radius:6px;min-width:0}.sync-copy-button{min-width:52px;min-height:40px;transition:color .12s ease-out,background-color .12s ease-out,transform .1s ease-out}.sync-copy-button:active{transform:scale(.97)}.sync-copy-button:focus-visible,.sync-details summary:focus-visible{outline:2px solid var(--ol-green);outline-offset:2px}.sync-section--montana .sync-credentials{border-bottom:1px solid var(--ws-separator);margin-top:10px}.sync-details{color:var(--ol-muted);font-size:10px;line-height:1.55}.sync-details summary{min-height:40px;color:var(--ol-muted);cursor:pointer;align-items:center;font-size:10px;font-weight:600;list-style:none;transition:color .12s ease-out,opacity .12s ease-out;display:flex}.sync-details summary::-webkit-details-marker{display:none}.sync-details summary:after{content:"›";margin-left:auto;font-size:16px;font-weight:400;transition:transform .14s ease-out;transform:rotate(90deg)}.sync-details[open] summary:after{transform:rotate(-90deg)}.sync-details p,.sync-details ul{margin:0 0 9px}.sync-details ul{padding-left:16px}@media (hover:hover) and (pointer:fine){.sync-copy-button:hover{background:var(--ol-hover)}.sync-details summary:hover{color:var(--ol-text)}}@media (prefers-reduced-motion:reduce){.sync-copy-button,.sync-details summary,.sync-details summary:after{transition:none}}.setting-inline{gap:6px;display:flex}.setting-inline input{flex:1;min-width:0}.danger-button{color:#b42318;border-color:#f2c5c1}.danger-button:hover{background:#fff1f0}.project-settings-head{border-bottom:1px solid var(--ws-separator);gap:10px;height:auto;min-height:52px}.project-settings-head>div{flex-direction:column;gap:1px;min-width:0;display:flex}.project-settings-head strong{color:var(--ol-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.project-settings-head>div>span{color:var(--ol-muted);font-size:10px;font-weight:500}.project-settings-status{color:var(--ol-muted);flex:none;align-items:center;gap:5px;font-size:10px;font-weight:500;display:inline-flex}.project-settings-status i{background:var(--ol-green);width:6px;height:6px;box-shadow:0 0 0 2px color-mix(in srgb, var(--ol-green) 13%, transparent);border-radius:50%}.ol-side-body.project-settings{overscroll-behavior:contain;gap:0;min-height:0;padding:0}.project-settings-section{border-bottom:1px solid var(--ws-separator);padding:16px 12px 18px}.project-settings-section:last-child{border-bottom:0}.project-settings-section-head{margin-bottom:13px}.project-settings-section-head h3{color:var(--ol-text);letter-spacing:.045em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700;line-height:1.35}.project-settings-section-head p{color:var(--ol-muted);margin:4px 0 0;font-size:10.5px;line-height:1.45}.project-settings-fields{flex-direction:column;gap:14px;display:flex}.project-settings-field{flex-direction:column;gap:7px;min-width:0;display:flex}.project-settings-label,.project-settings-label-row{color:var(--ol-text);font-size:11px;font-weight:600;line-height:1.35}.project-settings-label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.project-settings-label-row output{color:var(--ol-muted);font-family:var(--mono);font-size:10px;font-weight:500}.project-settings-field input:not([type=range]),.project-settings-field select{border-color:var(--ol-border);border-radius:var(--radius-sm);background:var(--ol-panel);width:100%;min-width:0;min-height:36px;font-size:11px}.project-settings-field input:not([type=range]):hover:not(:disabled),.project-settings-field select:hover:not(:disabled){border-color:color-mix(in srgb, var(--ol-muted) 65%, var(--ol-border))}.project-settings-field input:disabled,.project-settings-field select:disabled{background:var(--ol-surface)}.project-settings-field small{color:var(--ol-muted);font-size:10px;line-height:1.45}.project-settings-control-row{align-items:stretch;gap:6px;display:flex}.project-settings-control-row input{flex:1}.project-settings-save{min-width:54px;min-height:36px;padding:6px 10px;font-size:11px}.project-settings-summary{border:1px solid var(--ol-border-soft);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--ol-surface) 78%, transparent);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 10px;min-width:0;padding:10px;display:grid}.project-settings-summary>span{color:var(--ol-muted);font-size:10px}.project-settings-summary>strong{color:var(--ol-text);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:600;overflow:hidden}.project-settings-summary p{color:var(--ol-muted);grid-column:1/-1;margin:3px 0 0;font-size:10px;line-height:1.5}.project-settings-summary code{color:var(--ol-text);font-family:var(--mono);font-size:9.5px}.project-settings-field input[type=range]{width:100%;min-height:24px;accent-color:var(--ol-green);cursor:pointer;margin:0;padding:0}.project-settings-danger{background:color-mix(in srgb, var(--ol-danger-soft) 58%, transparent)}.project-settings-danger .project-settings-section-head h3{color:var(--ol-danger)}.project-settings-danger-button{border-color:color-mix(in srgb, var(--ol-danger) 38%, var(--ol-border));background:var(--ol-panel);width:100%;min-height:36px;color:var(--ol-danger);font-size:11px;font-weight:600}.project-settings-danger-button:hover:not(:disabled){border-color:var(--ol-danger);background:var(--ol-danger-soft)}@media (prefers-reduced-motion:reduce){.project-settings button,.project-settings input,.project-settings select{transition-duration:0s}}.ol-files{flex:1;min-height:0;margin:0;padding:4px 0 8px;list-style:none;overflow:auto}.ol-files ul{margin:0;padding:0;list-style:none}.fname{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ol-workspace{flex:1;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.ol-workspace.layout-editor,.ol-workspace.layout-pdf{grid-template-columns:1fr}.ol-editor-pane,.ol-pdf-pane{background:var(--ol-panel);flex-direction:column;min-width:0;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.ol-editor-pane{border-right:1px solid var(--ol-border)}.ol-editor-tabs{background:color-mix(in srgb, var(--ol-bg) 88%, var(--ol-panel));-webkit-backdrop-filter:blur(14px)saturate(150%);border-bottom:1px solid var(--ws-separator);align-items:stretch;gap:0;height:28px;min-height:28px;padding:0;display:flex}.tab-list{scrollbar-width:none;align-items:stretch;gap:0;min-width:0;max-width:min(78%,760px);display:flex;overflow:auto hidden}.tab-list::-webkit-scrollbar{width:0;height:0;display:none}.tab{border:0;border-right:1px solid color-mix(in srgb, var(--ol-text) 8%, transparent);cursor:pointer;height:100%;color:var(--ol-muted);background:0 0;align-items:center;gap:5px;max-width:200px;padding:0 5px 0 8px;font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:500;transition:background-color .12s ease-out,color .12s ease-out;display:flex;position:relative}.tab:hover{background:color-mix(in srgb, var(--ol-text) 5%, transparent);color:var(--ol-text)}.tab.is-active{background:var(--ol-panel);color:var(--ol-text);font-weight:600}.tab.is-active:after{content:"";background:var(--ol-panel);height:1px;position:absolute;bottom:0;left:0;right:0}.tab .ft-icon{flex:none;width:12px;height:12px}.tab-name{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.01em;overflow:hidden}.tab-close{color:var(--ol-muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:4px;place-items:center;width:18px;min-width:18px;height:18px;padding:0;line-height:1;transition:opacity .1s ease-out,background-color .1s ease-out,transform .1s ease-out;display:grid}.tab:hover .tab-close,.tab.is-active .tab-close{opacity:1}.tab-close:hover{background:color-mix(in srgb, var(--ol-text) 10%, transparent);color:var(--ol-text)}.tab-close:active{transform:scale(.92)}.tab-close-spacer{flex:0 0 18px;width:18px}.tab-dot{display:none}.tab-spacer{flex:1}.tab-actions{border:1px solid var(--ol-border);background:var(--ol-panel);border-radius:8px;flex:none;align-self:center;align-items:stretch;margin-right:10px;display:inline-flex;overflow:hidden}.tab-actions .ol-tool{border:0;border-right:1px solid var(--ol-border);background:0 0;border-radius:0;height:28px;padding:0 10px}.tab-actions .ol-tool:last-child{border-right:0}.tab-actions .ol-tool:hover:not(:disabled){background:var(--ol-hover)}.tab-actions .ol-tool:disabled{opacity:.45}.editor-layer{flex:1;height:auto;min-height:0;overflow:hidden}.editor-layer[hidden]{display:none!important}.ol-editor-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cm-host{flex:1;width:100%;height:100%;min-height:0}.cm-host .cm-editor{height:100%;min-height:0}.cm-host .cm-scroller{font-family:var(--mono);line-height:1.55;overflow:auto}.cm-host .cm-editor .cm-selectionLayer{pointer-events:none;z-index:1!important}.cm-host .cm-editor .cm-cursorLayer{pointer-events:none;z-index:2!important}.cm-host .cm-editor .cm-selectionLayer .cm-selectionBackground,.cm-host .cm-editor.cm-focused .cm-selectionLayer .cm-selectionBackground{background-color:#2f6fed73!important}:root[data-theme=dark] .cm-host .cm-editor .cm-selectionLayer .cm-selectionBackground,:root[data-theme=dark] .cm-host .cm-editor.cm-focused .cm-selectionLayer .cm-selectionBackground{background-color:#3579f68c!important}.cm-host .cm-content ::selection{color:inherit;background-color:#2f6fed73!important}.ol-pdf-chrome{z-index:5;flex:none}.ol-pdf-toolbar{background:var(--chrome-bg);-webkit-backdrop-filter:blur(12px)saturate(140%);border-bottom:1px solid var(--ws-separator);align-items:center;gap:10px;height:40px;padding:0 10px;display:flex}@media (hover:hover) and (pointer:fine){.ol-pdf-pane{position:relative}.ol-pdf-chrome{padding-bottom:10px;position:absolute;top:0;left:0;right:0}.ol-pdf-chrome .ol-pdf-toolbar{opacity:0;filter:grayscale()saturate(0)brightness(.88);pointer-events:none;transition:filter .16s,opacity .64s cubic-bezier(.4,0,.2,1) 1s,transform .64s cubic-bezier(.4,0,.2,1) 1s;transform:translateY(-4px)}.ol-pdf-chrome:hover .ol-pdf-toolbar,.ol-pdf-chrome:focus-within .ol-pdf-toolbar{opacity:1;filter:grayscale(0)saturate()brightness();pointer-events:auto;transition:filter .14s ease, opacity .16s var(--ease-out), transform .2s var(--ease-out);transform:translate(0,0)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){.ol-pdf-chrome .ol-pdf-toolbar{transition:filter 1ms,opacity 1ms 1s;transform:none}.ol-pdf-chrome:hover .ol-pdf-toolbar,.ol-pdf-chrome:focus-within .ol-pdf-toolbar{transition:filter 1ms,opacity 1ms}}@media (hover:hover) and (pointer:fine){.ol-app .ol-top-right .site-top-nav .site-top-link{opacity:0;filter:grayscale()saturate(0)brightness(.88);pointer-events:none;transition:filter .16s,opacity .64s cubic-bezier(.4,0,.2,1) 1s,color .18s cubic-bezier(.2,.8,.2,1),background-color .18s cubic-bezier(.2,.8,.2,1),transform .1s ease-out}.ol-app .ol-top-right .site-top-nav:hover .site-top-link,.ol-app .ol-top-right .site-top-nav:focus-within .site-top-link{opacity:1;filter:grayscale(0)saturate()brightness();pointer-events:auto;transition:filter .14s ease, opacity .16s var(--ease-out), color .18s cubic-bezier(.2, .8, .2, 1), background-color .18s cubic-bezier(.2, .8, .2, 1), transform .1s ease-out}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){.ol-app .ol-top-right .site-top-nav .site-top-link{transition:filter 1ms,opacity 1ms 1s}.ol-app .ol-top-right .site-top-nav:hover .site-top-link,.ol-app .ol-top-right .site-top-nav:focus-within .site-top-link{transition:filter 1ms,opacity 1ms}}.pdf-toolbar-spacer{flex:1}.ol-tool-group{align-items:center;gap:8px;min-width:0;display:inline-flex}.ol-tool{border:1px solid var(--ol-border);background:var(--ol-panel);height:28px;color:var(--ol-text);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.ol-tool:hover:not(:disabled){background:var(--ol-hover)}.ol-tool.on{background:var(--ol-green-soft);color:var(--ol-green-dark);border-color:color-mix(in srgb, var(--ol-green) 40%, var(--ol-border))}.ol-tool-toggle{border:1px solid var(--ol-border);background:var(--ol-panel);height:28px;color:var(--ol-text);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:8px;padding:0 8px 0 10px;font-size:12px;font-weight:600;display:inline-flex}.ol-tool-toggle.on{color:var(--ol-green-dark);border-color:color-mix(in srgb, var(--ol-green) 40%, var(--ol-border));background:color-mix(in srgb, var(--ol-green-soft) 70%, var(--ol-panel))}.ol-switch{background:var(--ol-border);width:28px;height:16px;transition:background-color .16s var(--ease-out);border-radius:999px;flex:none;position:relative}.ol-switch:after{content:"";width:12px;height:12px;transition:transform .16s var(--ease-out);background:#fff;border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0000002e}.ol-tool-toggle.on .ol-switch{background:var(--ol-green)}.ol-tool-toggle.on .ol-switch:after{transform:translate(12px)}.ol-logs-btn{border:1px solid var(--ol-border);background:var(--ol-panel);height:28px;color:var(--ol-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:0 10px;font-size:12px;font-weight:600}.ol-logs-btn.on{background:var(--ol-hover);color:var(--ol-text)}.ol-logs-btn.has-error{color:var(--ol-danger);background:#fff2f4;border-color:#f3b4be}.ol-pdf-body{flex:1;grid-template-rows:1fr;min-height:0;display:grid}.ol-pdf-view{background:#525659;flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.ol-pdf-view iframe{background:#525659;border:0;width:100%;height:100%}.ol-pdf-empty{text-align:center;color:#d7dce2;background:#525659;place-content:center;gap:12px;height:100%;display:grid}.ol-pdf-empty p{margin:0}.ol-logs{color:#e5e7eb;font-family:var(--mono);white-space:pre-wrap;background:#1f2933;border-top:1px solid #111827;margin:0;padding:10px 12px;font-size:12px;overflow:auto}@media (width<=900px){.dash-add-rail{grid-template-columns:1fr 1fr}.ol-workspace.layout-split{grid-template-columns:1fr}.ol-side{flex-basis:200px;width:200px}.ol-project-btn{max-width:120px}}.boot-screen{height:100%;color:var(--ol-muted);place-items:center;font-size:15px;display:grid}.auth-page{isolation:isolate;background:var(--studio-bg);place-items:center;min-height:100%;padding:36px 20px 48px;display:grid;position:relative}.auth-page--typst{--studio-bg:#f4f7f4;--studio-cyan:#4a8b8c;--studio-cyan-soft:#dceceb;align-content:center;padding:40px 20px 56px}:root[data-theme=dark] .auth-page--typst{--studio-bg:#0c1210}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .auth-page--typst{--studio-bg:#0c1210}}.auth-atmosphere{pointer-events:none;z-index:0;background-color:var(--studio-bg,#f4fafb);position:absolute;inset:0}.auth-atmosphere:after{content:"";background:0 0;position:absolute;inset:0}:root[data-theme=dark] .auth-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root[data-theme=dark] .auth-atmosphere:after{background:radial-gradient(circle at 50% 42%, transparent 0 18%, color-mix(in srgb, var(--studio-bg) 35%, transparent) 52%), linear-gradient(180deg, color-mix(in srgb, var(--studio-bg) 22%, transparent), color-mix(in srgb, var(--studio-bg) 58%, transparent))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .auth-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root:not([data-theme=light]):not([data-theme=calm]) .auth-atmosphere:after{background:radial-gradient(circle at 50% 42%, transparent 0 18%, color-mix(in srgb, var(--studio-bg) 35%, transparent) 52%), linear-gradient(180deg, color-mix(in srgb, var(--studio-bg) 22%, transparent), color-mix(in srgb, var(--studio-bg) 58%, transparent))}}.auth-shell{z-index:1;flex-direction:column;align-items:stretch;gap:26px;width:min(460px,100%);display:flex;position:relative}.auth-hero{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-hero-brand{font-family:var(--font);letter-spacing:-.05em;color:var(--studio-green);margin:4px 0 0;font-size:clamp(3rem,8vw,4.2rem);font-weight:800;line-height:.92}.auth-card{z-index:1;-webkit-backdrop-filter:blur(16px)saturate(150%);border:1px solid color-mix(in srgb, var(--studio-border) 70%, transparent);opacity:1;width:100%;transition:opacity var(--dur-toast) var(--ease-out), transform var(--dur-toast) var(--ease-out), background-color .56s var(--ease-out), border-color .56s var(--ease-out);background:#fffffff0;border-radius:20px;padding:22px;position:relative;transform:translateY(0)scale(1);box-shadow:0 22px 48px #1e46481a}:root[data-theme=dark] .auth-card{background:color-mix(in srgb, var(--studio-panel) 88%, transparent)}@starting-style{.auth-card{opacity:0;transform:translateY(10px)scale(.98)}}.auth-brand{align-items:center;gap:14px;margin-bottom:18px;display:flex}.auth-logo{filter:drop-shadow(0 8px 18px #138a073d);flex:none}.auth-brand-copy h1{font-family:var(--font);color:var(--studio-green);letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,3vw,2rem);font-weight:750;line-height:1.05}.auth-brand-copy p{color:var(--studio-muted);margin:6px 0 0;font-size:13px;line-height:1.4}.auth-page--typst .auth-tabs{border-bottom:1px solid var(--studio-border-soft);background:0 0;border-radius:0;gap:8px;margin-bottom:18px;padding:0;display:flex}.auth-page--typst .auth-tabs button{color:var(--studio-muted);box-shadow:none;background:0 0;border:0;border-radius:0;padding:10px 14px 12px;font-weight:650;position:relative}.auth-page--typst .auth-tabs button.active{color:var(--studio-green);box-shadow:none;background:0 0}.auth-page--typst .auth-tabs button.active:after{content:"";background:var(--studio-green);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:10px;right:10px}.auth-tabs{background:var(--studio-hover);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px;padding:4px;display:grid}.auth-tabs button{color:var(--studio-muted);background:0 0;border:0;border-radius:9px;padding:10px;font-weight:650}.auth-tabs button.active{background:var(--studio-panel);color:var(--studio-text);box-shadow:var(--studio-shadow-sm)}.auth-form{flex-direction:column;gap:13px;display:flex}.auth-invite-banner{border-radius:var(--studio-radius-sm);background:var(--studio-green-soft);border:1px solid color-mix(in srgb, var(--studio-green) 22%, transparent);color:var(--studio-text);margin:0 0 14px;padding:11px 13px;font-size:13px;line-height:1.45}.auth-form label{color:var(--studio-muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.auth-form input{border:1px solid var(--studio-border);border-radius:var(--studio-radius-sm);background:var(--studio-surface);height:42px;color:var(--studio-text);padding:0 12px}.auth-form input:focus{outline:2px solid color-mix(in srgb, var(--studio-green) 50%, transparent);outline-offset:0;border-color:var(--studio-green);background:var(--studio-panel)}.captcha-field{color:var(--studio-muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.captcha-row{align-items:center;gap:8px;display:flex}.captcha-row input{flex:1;min-width:0}.captcha-image{border:1px solid var(--studio-border);border-radius:var(--studio-radius-sm);background:var(--studio-panel);width:190px;height:64px}.captcha-loading{border:1px solid var(--studio-border);border-radius:var(--studio-radius-sm);background:var(--studio-surface);width:190px;height:64px;color:var(--studio-muted);align-items:center;padding:0 10px;display:inline-flex}.account-page{--account-accent:#6b7280;--account-accent-hover:#4b5563;--account-accent-soft:color-mix(in srgb, var(--account-accent) 16%, transparent);--account-sidebar:color-mix(in srgb, var(--ol-rail) 88%, var(--ol-panel));--account-bg:var(--ol-bg);--account-panel:var(--ol-panel);--account-border:var(--ol-border);--account-border-soft:var(--ol-border-soft);--account-text:var(--ol-text);--account-muted:var(--ol-muted);--account-hover:var(--ol-hover);--account-danger:var(--ol-danger);--account-danger-soft:var(--ol-danger-soft);--account-titlebar-h:40px;--account-sidebar-w:240px;background:var(--account-bg);height:100%;min-height:100%;color:var(--account-text);font-family:var(--font);flex-direction:column;display:flex}:root[data-theme=dark] .account-page{--account-accent:#9ca3af;--account-accent-hover:#d1d5db}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .account-page{--account-accent:#9ca3af;--account-accent-hover:#d1d5db}}.account-titlebar{height:var(--account-titlebar-h);background:color-mix(in srgb, var(--account-panel) 92%, transparent);-webkit-backdrop-filter:blur(var(--material-blur)) saturate(160%);border-bottom:1px solid var(--account-border-soft);box-shadow:inset 0 1px 0 var(--chrome-edge);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:0 10px 0 8px;display:flex}.account-titlebar-left,.account-titlebar-right{align-items:center;gap:6px;min-width:0;display:flex}.account-crumb{color:var(--account-muted);-webkit-user-select:none;user-select:none;font-size:12px}.account-crumb-current{letter-spacing:-.01em;color:var(--account-text);font-size:12px;font-weight:600}.account-user-pill{text-overflow:ellipsis;white-space:nowrap;max-width:160px;color:var(--account-muted);background:var(--account-hover);border-radius:2px;padding:2px 8px;font-size:11px;overflow:hidden}.account-tb-btn{color:var(--account-muted);font:inherit;cursor:pointer;transition:background .1s var(--ease-out), color .1s var(--ease-out), transform .1s ease-out;background:0 0;border:0;border-radius:2px;padding:4px 8px;font-size:12px}.account-tb-btn:hover{background:var(--account-hover);color:var(--account-text)}.account-tb-btn:active{transform:scale(.97)}.account-shell{grid-template-columns:var(--account-sidebar-w) minmax(0, 1fr);flex:1;min-height:0;display:grid}.account-sidebar{border-right:1px solid var(--account-border-soft);background:var(--account-sidebar);flex-direction:column;gap:8px;min-height:0;padding:10px 8px 16px;display:flex}.account-search{border:1px solid var(--account-border);background:var(--account-panel);border-radius:2px;align-items:center;gap:6px;height:28px;padding:0 8px;display:flex}.account-search:focus-within{border-color:var(--account-accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--account-accent) 45%, transparent)}.account-search-icon{color:var(--account-muted);-webkit-user-select:none;user-select:none;font-size:13px;line-height:1}.account-search input{min-width:0;color:var(--account-text);font:inherit;box-shadow:none;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:12px}.account-nav{flex-direction:column;gap:6px;min-height:0;padding-right:2px;display:flex;overflow:auto}.account-nav-item{text-align:left;width:100%;color:var(--account-text);cursor:pointer;transition:background .1s var(--ease-out), box-shadow .12s var(--ease-out), transform .1s ease-out;background:0 0;border:0;border-radius:2px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 10px 10px 12px;display:flex;box-shadow:inset 0 0 #0000}.account-nav-item:hover{background:var(--account-hover)}.account-nav-item:active{transform:scale(.99)}.account-nav-item.is-active{background:var(--account-accent-soft);box-shadow:inset 2px 0 0 var(--account-accent)}.account-nav-label{letter-spacing:-.01em;font-size:12px;font-weight:600}.account-nav-hint{color:var(--account-muted);font-size:11px;line-height:1.35}.account-nav-empty{color:var(--account-muted);padding:10px 8px;font-size:12px}.account-content{scroll-behavior:smooth;min-width:0;min-height:0;padding:18px 28px 64px;overflow:auto}.account-toast{border:1px solid color-mix(in srgb, var(--account-accent) 35%, var(--account-border));background:var(--account-accent-soft);color:var(--account-text);border-radius:2px;flex-wrap:wrap;gap:8px 12px;margin-bottom:16px;padding:8px 12px;font-size:12px;display:flex}.account-toast.is-error{border-color:color-mix(in srgb, var(--account-danger) 40%, var(--account-border));background:var(--account-danger-soft);color:var(--account-danger)}.account-toast.is-busy{border-color:var(--account-border);background:var(--account-hover);color:var(--account-muted)}.account-section{max-width:820px;margin-bottom:52px;scroll-margin-top:12px}.account-section-head{border-bottom:1px solid var(--account-border-soft);margin-bottom:14px;padding-bottom:12px}.account-section-head h1{letter-spacing:-.02em;margin:0 0 4px;font-size:20px;font-weight:600;line-height:1.2}.account-section-head p{color:var(--account-muted);margin:0;font-size:12px;line-height:1.45}.account-setting{border-bottom:1px solid var(--account-border-soft);grid-template-columns:minmax(180px,1.1fr) minmax(220px,1fr);align-items:start;gap:12px 24px;padding:20px 0;display:grid}.account-setting--stack{grid-template-columns:1fr}.account-setting-title{letter-spacing:-.01em;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.account-setting-desc{color:var(--account-muted);margin-top:2px;font-size:12px;line-height:1.4}.account-setting-control input,.account-inline input{border:1px solid var(--account-border);background:var(--account-panel);width:100%;height:28px;color:var(--account-text);font:inherit;transition:border-color .1s var(--ease-out), box-shadow .1s var(--ease-out);border-radius:2px;outline:none;padding:0 8px;font-size:13px}.account-setting-control input:focus,.account-inline input:focus{border-color:var(--account-accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--account-accent) 45%, transparent)}.account-inline{align-items:center;gap:8px;display:flex}.account-inline input{flex:1;min-width:0}.account-actions{flex-wrap:wrap;gap:8px;padding-top:14px;display:flex}.account-btn{appearance:none;border:1px solid var(--account-border);background:var(--account-panel);color:var(--account-text);font:inherit;cursor:pointer;height:28px;transition:background .1s var(--ease-out), border-color .1s var(--ease-out), color .1s var(--ease-out), transform .1s ease-out;border-radius:2px;padding:0 12px;font-size:12px;font-weight:550}.account-btn:hover:not(:disabled){background:var(--account-hover)}.account-btn:active:not(:disabled){transform:scale(.97)}.account-btn:disabled{opacity:.45;cursor:not-allowed}.account-btn-primary{background:var(--account-accent);border-color:var(--account-accent-hover);color:#fff}.account-btn-primary:hover:not(:disabled){background:var(--account-accent-hover);color:#fff}.account-btn-danger{color:var(--account-danger);border-color:color-mix(in srgb, var(--account-danger) 35%, var(--account-border))}.account-btn-danger:hover:not(:disabled){background:var(--account-danger-soft)}.account-badge{color:var(--account-muted);background:var(--account-hover);border:1px solid var(--account-border-soft);border-radius:2px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.account-badge.is-on{color:var(--account-accent);background:var(--account-accent-soft);border-color:color-mix(in srgb, var(--account-accent) 35%, var(--account-border))}.account-switch{color:var(--account-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:12px;display:inline-flex}.account-switch input{appearance:none;cursor:pointer;flex-shrink:0;margin:0;position:relative;border:1px solid var(--account-border)!important;background:var(--account-hover)!important;width:36px!important;height:20px!important;box-shadow:none!important;border-radius:999px!important;padding:0!important}.account-switch input:after{content:"";background:var(--account-muted);width:14px;height:14px;transition:transform .12s var(--ease-out), background .12s var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}.account-switch input:checked{background:color-mix(in srgb, var(--account-accent) 35%, var(--account-panel))!important;border-color:var(--account-accent)!important}.account-switch input:checked:after{background:var(--account-accent);transform:translate(16px)}.account-switch input:disabled{opacity:.55;cursor:not-allowed}.account-help-btn{border:1px solid var(--account-border);background:var(--account-panel);width:18px;height:18px;color:var(--account-muted);cursor:pointer;transition:border-color .1s var(--ease-out), color .1s var(--ease-out), transform .1s ease-out;border-radius:50%;padding:0;font-size:11px;font-weight:700;line-height:1}.account-help-btn:hover{border-color:var(--account-accent);color:var(--account-accent)}.account-help-btn:active{transform:scale(.96)}.account-help{border:1px solid var(--account-border);background:var(--account-panel);transform-origin:0 0;transition:opacity var(--dur-popover) var(--ease-out), transform var(--dur-popover) var(--ease-out);border-radius:2px;margin-top:8px;padding:10px 12px;font-size:12px}@starting-style{.account-help{opacity:0;transform:scale(.98)}}.account-help ol{margin:0 0 8px;padding-left:18px}.account-help li{margin:4px 0}.account-help a{color:var(--account-accent)}.account-reveal{border:1px solid color-mix(in srgb, var(--account-accent) 30%, var(--account-border));background:var(--account-accent-soft);border-radius:2px;align-items:center;gap:8px;margin:12px 0;padding:8px 10px;display:flex}.account-reveal code{word-break:break-all;font-family:var(--mono);flex:1;font-size:12px}.account-list{border:1px solid var(--account-border-soft);background:var(--account-panel);border-radius:2px;margin:12px 0 0;padding:0;list-style:none;overflow:hidden}.account-list li{border-bottom:1px solid var(--account-border-soft);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.account-list li:last-child{border-bottom:0}.account-list-main{flex-direction:column;gap:2px;min-width:0;display:flex}.account-list-main strong{font-size:13px;font-weight:600}.account-list-main span{color:var(--account-muted);font-size:11px}.account-list-empty{color:var(--account-muted);font-size:12px;justify-content:flex-start!important}.account-usage-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 8px;display:grid}.account-usage-stat{border:1px solid var(--account-border-soft);background:var(--account-panel);border-radius:2px;padding:12px 14px}.account-usage-stat span{color:var(--account-muted);font-size:11px;display:block}.account-usage-stat strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:22px;font-weight:650;display:block}.account-usage-sub{letter-spacing:-.01em;margin:22px 0 8px;font-size:13px;font-weight:650}.account-usage-empty{color:var(--account-muted);margin:0;padding:10px 0;font-size:12px}.account-usage-table{border-collapse:collapse;border:1px solid var(--account-border-soft);background:var(--account-panel);width:100%;font-size:12px}.account-usage-table th,.account-usage-table td{text-align:left;border-bottom:1px solid var(--account-border-soft);vertical-align:top;padding:8px 10px}.account-usage-table th{color:var(--account-muted);font-weight:600}.account-usage-table tr:last-child td{border-bottom:0}.account-usage-table td:nth-child(2),.account-usage-table td:nth-child(3),.account-usage-table th:nth-child(2),.account-usage-table th:nth-child(3){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.account-usage-table td strong{font-weight:600;display:block}.account-usage-subtext{color:var(--account-muted);margin-top:2px;font-size:11px;display:block}.account-usage-runs li{align-items:flex-start}.account-usage-runs .account-list-main strong{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.account-usage-dot{color:var(--account-muted);font-weight:450}.account-usage-ok{color:color-mix(in srgb, var(--ol-green,#248a3d) 80%, var(--account-text));font-size:11px;font-weight:650}.account-usage-fail{color:color-mix(in srgb, #c0392b 82%, var(--account-text));font-size:11px}.account-grid label{color:var(--account-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}@media (width<=860px){.account-shell{grid-template-columns:1fr}.account-sidebar{border-right:0;border-bottom:1px solid var(--account-border-soft);max-height:none;padding-bottom:10px}.account-nav{flex-direction:row;gap:4px;overflow-x:auto}.account-nav-item{min-width:132px}.account-nav-hint{display:none}.account-content{padding:14px 14px 48px}.account-setting{grid-template-columns:1fr;gap:8px}}@media (prefers-reduced-motion:reduce){.account-tb-btn,.account-nav-item,.account-btn,.account-help-btn,.account-help,.account-setting-control input,.account-inline input{transition:none!important}.account-tb-btn:active,.account-nav-item:active,.account-btn:active:not(:disabled),.account-help-btn:active{transform:none}.account-content{scroll-behavior:auto}}.token-warn{color:var(--ol-warn);margin-right:8px;font-size:12px}.ol-user-chip{background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;margin-right:6px;padding:2px 6px;display:flex}.ol-user-chip:hover{background:var(--ol-hover)}.user-label{color:var(--ol-text);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:12px;overflow:hidden}.linkish{color:var(--ol-green);cursor:pointer;background:0 0;border:0;padding:0 4px;text-decoration:underline}.banner-info{color:var(--studio-green-dark);background:var(--studio-green-soft);border-radius:var(--studio-radius-sm);padding:8px 10px;font-size:13px}.auth-page .banner-error{color:var(--ol-danger);background:var(--ol-danger-soft);border-radius:var(--studio-radius-sm);padding:8px 10px;font-size:13px}.dev-code{background:#fff8e6;border:1px solid #f0d78c;border-radius:6px;padding:8px 10px;font-size:13px}.dev-code code{font-family:var(--mono);letter-spacing:.08em;font-weight:700}.auth-extra{justify-content:space-between;gap:8px;display:flex}.help-wrap{vertical-align:middle;margin-left:8px;display:inline-flex;position:relative}.help-q{border:1px solid var(--ol-border);background:var(--ol-panel);width:20px;height:20px;color:var(--ol-muted);border-radius:50%;padding:0;font-size:12px;font-weight:700;line-height:1}.help-q:hover{border-color:var(--ol-green);color:var(--ol-green)}.help-pop{z-index:30;background:var(--chrome-bg);width:min(360px,78vw);-webkit-backdrop-filter:blur(var(--material-blur)) saturate(160%);border:1px solid var(--ol-border);border-radius:var(--radius-md);box-shadow:var(--ol-shadow);color:var(--ol-text);transform-origin:0 0;opacity:1;transition:opacity var(--dur-popover) var(--ease-out), transform var(--dur-popover) var(--ease-out);padding:14px;font-size:13px;font-weight:400;position:absolute;top:28px;left:0;transform:scale(1)}@starting-style{.help-pop{opacity:0;transform:scale(.97)}}.help-pop strong{margin-bottom:8px;display:block}.help-pop ol{margin:0 0 10px;padding-left:18px}.help-pop li{margin:4px 0}.help-pop a{color:var(--ol-green)}.share-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;opacity:1;transition:opacity .26s var(--ease-out);background:#141c2447;justify-content:center;align-items:flex-start;padding:72px 16px 24px;display:flex;position:fixed;inset:0;overflow:auto}@starting-style{.share-overlay{opacity:0}}.share-overlay.is-leaving{opacity:0;pointer-events:none;transition:opacity .16s var(--ease-out)}.share-overlay.is-leaving .share-modal{opacity:0;transition:opacity .16s var(--ease-out), transform .16s var(--ease-out);transform:scale(.98)}.share-modal{transform-origin:50%;opacity:1;color:#123033;width:min(880px,100vw - 32px);transition:opacity .28s var(--ease-out), transform .28s var(--ease-out);background:#fff;border:1px solid #1c484c1f;border-radius:0;padding:20px 22px 18px;font-size:13px;line-height:1.5;transform:scale(1);box-shadow:0 16px 40px #285a6024}.share-modal input,.share-modal select,.share-modal .btn-primary,.share-modal .btn-secondary,.share-modal .muted,.share-modal .share-hint,.share-modal .share-help-pop,.share-modal .share-empty,.share-modal .share-busy,.share-modal .share-role-tag,.share-modal .share-remove,.share-modal .share-person strong,.share-modal .share-link-box input{font-size:13px;line-height:1.5}.share-modal input,.share-modal select,.share-modal .btn-primary,.share-modal .btn-secondary{border-radius:0}.share-modal .btn-primary{background:#1a9a52;border-color:#148544}.share-section.is-guide-target,.share-grant-row.is-guide-target{border:1px solid color-mix(in srgb, var(--ol-info) 38%, var(--ol-border));background:color-mix(in srgb, var(--ol-info) 5%, var(--ol-panel));border-radius:10px;margin-inline:-8px;padding:8px}.share-guide-callout{border:1px solid var(--ol-border);border-left:3px solid var(--ol-info);background:var(--ol-surface);border-radius:9px;margin:10px 0 12px;padding:12px}.share-guide-callout-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.share-guide-callout-head span{color:var(--ol-muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.share-guide-callout-head strong{color:var(--ol-text);font-size:13px}.share-guide-callout p{color:var(--ol-muted);margin:6px 0 0;font-size:12px;line-height:1.55}.share-guide-callout-actions{align-items:center;gap:7px;margin-top:10px;display:flex}.share-guide-callout-actions>span{flex:1}.share-guide-callout-actions button{min-height:30px;color:var(--ol-text);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;padding:0 10px;font-size:12px;font-weight:650}.share-guide-skip{color:var(--ol-muted)!important}.share-guide-back{border-color:var(--ol-border)!important}.share-guide-next{border-color:var(--ol-text)!important;background:var(--ol-text)!important;color:var(--ol-panel)!important}.share-guide-callout-actions button:active{transform:scale(.97)}@starting-style{.share-modal{opacity:0;transform:scale(.96)translateY(10px)}}.share-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.share-modal .share-head{border-bottom:1px solid #1c484c1f;margin-bottom:16px;padding-bottom:12px}.share-head h2{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600;line-height:1.2}.share-close{color:var(--ol-muted);background:0 0;border:0;padding:0 4px;font-size:24px;line-height:1}.share-close:hover{color:var(--ol-text)}.share-banner{margin-bottom:10px}.share-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:8px 40px;display:grid}.share-col{flex-direction:column;gap:20px;min-width:0;display:flex}@media (width<=720px){.share-columns{grid-template-columns:1fr}}.share-section{border-top:1px solid var(--ws-separator);margin-top:16px;padding-top:14px}.share-modal .share-section{border-top:0;margin-top:0;padding-top:0}.share-section h3,.share-section-title{margin:0 0 10px;font-size:14px;font-weight:600}.share-modal .share-section h3,.share-modal .share-section-title{letter-spacing:-.01em;margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.share-section-title{align-items:center;gap:6px;display:flex}.share-help-btn{width:16px;height:16px;color:var(--ol-muted);background:0 0;border:1px solid;border-radius:50%;flex-shrink:0;padding:0;font-size:11px;font-weight:700;line-height:1}.share-help-btn:hover,.share-help-btn[aria-expanded=true]{color:var(--ol-text)}.share-help-pop{color:var(--ol-muted);margin:0 0 10px}.share-modal .share-ghost,.share-modal select.share-ghost,.share-modal .btn-secondary.share-ghost{box-shadow:none;background:0 0;border:0;padding-left:6px;padding-right:6px}.share-modal select.share-ghost:hover:not(:disabled),.share-modal .btn-secondary.share-ghost:hover:not(:disabled){background:#1c484c0d}.share-modal .share-remove{background:0 0;border:0}.share-invite-row{flex-wrap:wrap;gap:8px;display:flex}.share-invite-row input{flex:180px;min-width:0}.share-invite-row select{min-width:120px}.share-grant{flex-direction:column;gap:8px;display:flex}.share-grant-row{grid-template-columns:minmax(0,1fr) 88px 96px;align-items:stretch;gap:8px;display:grid}.share-modal .share-grant-field,.share-modal .share-grant-role,.share-modal .share-grant-go{box-sizing:border-box;height:34px;min-height:34px;color:inherit;font:inherit;background:#fff;border:1px solid #1c484c29;border-radius:0;margin:0;padding:0 10px;font-size:13px;line-height:32px}.share-modal .share-grant-field{width:100%;min-width:0}.share-modal .share-grant-field.is-mono{font-family:var(--mono);font-size:12px}.share-modal .share-grant-field.is-static{color:var(--ol-muted);align-items:center;line-height:1.3;display:flex}.share-modal .share-grant-role{width:100%;min-width:0;padding-right:6px}.share-modal .share-grant-go{color:#fff;white-space:nowrap;background:#1a9a52;border-color:#148544;padding:0 8px;font-weight:600;line-height:32px}.share-modal .share-grant-go:disabled{opacity:.45}.share-grant-extras{justify-content:flex-end;align-items:center;gap:12px;min-height:28px;display:flex}.share-grant-extras .share-ghost,.share-grant-extras .share-remove{height:28px;padding:0;font-size:13px}.template-modal{width:min(640px,100%)}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}@media (width<=560px){.template-grid{grid-template-columns:1fr}}.template-card{text-align:left;border:1px solid var(--ol-border-soft);cursor:pointer;width:100%;font:inherit;color:var(--ol-text);background:#fafbfc;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.template-card:hover{border-color:var(--ol-border)}.template-card.is-selected{border-color:var(--ol-text);background:color-mix(in srgb, var(--ol-text) 6%, #fafbfc)}.template-card strong{font-size:13px}.template-card-desc{color:var(--ol-muted);font-size:12px}.template-card-tags{flex-wrap:wrap;gap:4px;display:flex}.template-card-tags em{border:1px solid var(--ol-border-soft);color:var(--ol-muted);border-radius:999px;padding:1px 7px;font-size:11px;font-style:normal}.template-card-meta{color:var(--ol-muted);font-variant-numeric:tabular-nums;font-size:11px}.template-card{position:relative}.template-card-check{background:var(--ol-text);width:18px;height:18px;color:var(--ol-panel);border-radius:999px;place-items:center;font-size:11px;line-height:1;display:grid;position:absolute;top:8px;right:8px}.template-search{margin-bottom:12px}.template-search input{width:100%}.template-modal-body{max-height:min(50vh,460px);margin:0 -4px;padding:0 4px;overflow-y:auto}.template-modal-footer{border-top:1px solid var(--ws-separator);margin-top:14px;padding-top:14px}.template-modal-footer-selected{color:var(--ol-muted);margin-bottom:8px;font-size:12px}.template-modal-footer-selected strong{color:var(--ol-text)}.template-card-skeleton{cursor:default;pointer-events:none}.template-skel-line{background:linear-gradient(90deg, var(--ol-border-soft) 25%, color-mix(in srgb, var(--ol-border-soft) 40%, transparent) 50%, var(--ol-border-soft) 75%);background-size:200% 100%;border-radius:5px;animation:1.3s ease-in-out infinite template-skel-shimmer;display:block}.template-skel-title{width:60%;height:13px;margin-bottom:4px}.template-skel-desc{width:90%;height:11px;margin-bottom:6px}.template-skel-tags{border-radius:999px;width:40%;height:16px}@keyframes template-skel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.template-skel-line{animation:none}}.template-field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.template-field span:first-child{color:var(--ol-muted);font-size:12px;font-weight:600}.template-field small{color:var(--ol-muted);font-size:11.5px}.share-people{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.share-people li{background:#fff;border:1px solid #1c484c1f;border-radius:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.share-modal .share-people li{background:0 0;border:0;padding:6px 0}.share-person{align-items:center;gap:10px;min-width:0;display:flex}.share-person div{flex-direction:column;gap:2px;min-width:0;display:flex}.share-person strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.share-avatar{background:var(--ol-green-soft);width:32px;height:32px;color:var(--ol-green-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.share-person-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.share-member-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.share-member-actions .share-hint{margin:0}.share-role-tag{color:var(--ol-muted);white-space:nowrap;background:#f3f6f6;border-radius:0;padding:3px 8px}.share-remove{color:var(--ol-danger);border-color:#e7b4bc;padding:4px 10px}.share-empty{justify-content:center;background:0 0!important;border-style:dashed!important}.share-modal .share-empty{justify-content:flex-start;padding:2px 0;border:0!important}.share-hint{margin:0 0 10px}.share-link-box{gap:8px;margin-top:10px;display:flex}.share-link-box input{min-width:0;font-family:var(--mono);flex:1}.share-busy{margin-top:10px}.share-token-list{margin-top:12px}.share-section.is-guide-target,.share-guide-callout,.share-guide-callout-actions button{border-radius:0}:root[data-theme=dark] .share-modal{color:#f2f8f8;background:#102228;border-color:#ffffff1f;box-shadow:0 16px 40px #00000052}:root[data-theme=dark] .share-modal .share-grant-field,:root[data-theme=dark] .share-modal .share-grant-role{color:#f2f8f8;background:#0a1c228c;border-color:#ffffff29}:root[data-theme=dark] .share-modal .share-head{border-bottom-color:#ffffff1f}:root[data-theme=dark] .share-people li{background:#0a1c22f0;border-color:#ffffff1f}:root[data-theme=dark] .share-modal .share-people li{background:0 0;border-color:#0000}:root[data-theme=dark] .share-modal select.share-ghost:hover:not(:disabled),:root[data-theme=dark] .share-modal .btn-secondary.share-ghost:hover:not(:disabled),:root[data-theme=dark] .share-role-tag{background:#ffffff0f}.share-toast{z-index:1100;background:var(--ol-green-soft);color:var(--ol-green-dark);cursor:pointer;border:1px solid #b7dfb2;border-radius:6px;padding:8px 14px;font-size:13px;position:fixed;top:64px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #1018281f}.share-readonly-banner{color:var(--ol-warn);text-align:center;background:#fff8e6;border-bottom:1px solid #f0d78c;padding:6px 14px;font-size:12px}.project-shared-tag{background:var(--ol-green-soft);border-radius:4px;width:fit-content;max-width:100%;padding:2px 6px;color:var(--ol-green-dark)!important}.toast-stack{z-index:200;pointer-events:none;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{pointer-events:auto;border-radius:var(--radius-md);background:var(--chrome-bg);-webkit-backdrop-filter:blur(var(--material-blur)) saturate(160%);border:1px solid var(--ol-border);box-shadow:var(--ol-shadow);opacity:1;transition:opacity var(--dur-toast) var(--ease-out), transform var(--dur-toast) var(--ease-out);align-items:flex-start;gap:10px;padding:10px 12px;display:flex;transform:translateY(0)}@starting-style{.toast{opacity:0;transform:translateY(12px)}}.toast-body{flex:1;min-width:0}.toast-body p{word-break:break-word;margin:0;font-size:13px;line-height:1.45}.toast-body pre{max-height:160px;font-family:var(--mono);white-space:pre-wrap;color:var(--ol-muted);margin:6px 0 0;font-size:11px;overflow:auto}.toast-icon{color:#fff;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.toast-close{color:var(--ol-muted);background:0 0;border:0;padding:0 2px;font-size:18px;line-height:1}.toast-success{border-left:3px solid var(--ol-green)}.toast-success .toast-icon{background:var(--ol-green)}.toast-error{border-left:3px solid var(--ol-danger)}.toast-error .toast-icon{background:var(--ol-danger)}.toast-warning{border-left:3px solid var(--ol-warn)}.toast-warning .toast-icon{background:var(--ol-warn)}.toast-info{border-left:3px solid var(--ol-info)}.toast-info .toast-icon{background:var(--ol-info)}.dialog-backdrop{z-index:190;opacity:1;transition:opacity var(--dur-modal) var(--ease-out);background:#0f172a73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}@starting-style{.dialog-backdrop{opacity:0}}.dialog{background:var(--ol-panel);border:1px solid var(--ol-border);border-radius:var(--radius-lg);width:min(440px,100%);box-shadow:var(--ol-shadow);transform-origin:50%;opacity:1;transition:opacity var(--dur-modal) var(--ease-out), transform var(--dur-modal) var(--ease-out);padding:20px;transform:scale(1)}@starting-style{.dialog{opacity:0;transform:scale(.97)}}.dialog h3{letter-spacing:-.015em;margin:0 0 12px;font-size:16px}.dialog label{color:var(--ol-muted);margin-bottom:6px;font-size:12px;display:block}.dialog input{width:100%}.dialog-body{margin:0 0 16px;font-size:13px;line-height:1.55}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.spinner{vertical-align:-1px;border:2px solid;border-right-color:#0000;border-radius:50%;width:12px;height:12px;animation:.7s linear infinite spin;display:inline-block}.spinner.large{border-width:3px;width:26px;height:26px}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{flex-direction:column;gap:14px}.save-indicator{align-items:center;gap:6px;display:inline-flex}.save-dot{background:var(--ol-green);border-radius:50%;width:7px;height:7px}.save-dot.saving,.save-dot.syncing{background:var(--ol-warn);animation:1s ease-in-out infinite pulse}.save-dot.failed,.save-dot.offline{background:var(--ol-danger)}@keyframes pulse{50%{opacity:.35}}.icon-only{padding:6px 9px;line-height:1}.peer-list{gap:-4px;margin-right:8px;display:flex}.peer-dot{color:#fff;border:2px solid var(--ol-panel);border-radius:50%;place-items:center;width:22px;height:22px;margin-left:-6px;font-size:11px;font-weight:700;display:grid}.peer-dot.more{background:var(--ol-muted)}.land-page{--studio-green:#138a07;--studio-green-dark:#0f6e05;--studio-green-soft:#e4f0e3;--studio-cyan:#2f7f8a;--studio-cyan-soft:#d4eef2;--studio-bg:#eef7f8;--studio-panel:#fff;--studio-surface:#f3fafb;--studio-hover:#e4f2f4;--studio-border:#c5d8dc;--studio-border-soft:#d7e6e9;--studio-text:#152018;--studio-muted:#4f6670;isolation:isolate;min-height:100%;color:var(--studio-text);background-color:#dceff3;background-image:radial-gradient(1100px 560px at 50% -10%,#ffffffb8,#0000 68%),linear-gradient(#ffffffb3 0%,#e8f6f88c 38%,#d7eef3c7 100%);background-position:50%,50%;background-repeat:no-repeat;background-size:auto,auto;position:relative}:root[data-theme=dark] .land-page{--studio-green:#35b02a;--studio-green-dark:#2a8f21;--studio-green-soft:#1b3320;--studio-cyan:#7ec8d0;--studio-cyan-soft:#1c3840;--studio-bg:#102028;--studio-panel:#152830;--studio-surface:#1b323b;--studio-hover:#23404a;--studio-border:#2f4d57;--studio-border-soft:#27434c;--studio-text:#e2f0f2;--studio-muted:#9ab4bb;background-color:#14303a;background-image:radial-gradient(1100px 560px at 50% -10%,#7ec8d047,#0000 68%),linear-gradient(#1a3a446b 0%,#14303a8c 42%,#102830b8 100%)}:root[data-theme=calm] .land-page{--studio-green:#9c7b45;--studio-green-dark:#7c5f34;--studio-green-soft:#efe6d3;--studio-cyan:#8a8f6d;--studio-cyan-soft:#eae6d3;--studio-bg:#f2ecdf;--studio-panel:#fbf8f1;--studio-surface:#f7f1e4;--studio-hover:#ece2cd;--studio-border:#ddccac;--studio-border-soft:#e9ddc4;--studio-text:#35291b;--studio-muted:#8a7960;background-color:#ece2cb;background-image:radial-gradient(1100px 560px at 50% -10%,#fbf6eac7,#0000 68%),linear-gradient(#f8f2e2c7 0%,#efe4cbad 38%,#e6d8b8d6 100%)}.land-top{z-index:20;background:color-mix(in srgb, var(--studio-panel) 72%, transparent);-webkit-backdrop-filter:blur(16px)saturate(160%);border-bottom:1px solid var(--studio-border-soft);justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(16px,4vw,40px);display:flex;position:sticky;top:0}.land-page>main,.land-page>.land-foot{z-index:2;position:relative}.land-brand{align-items:center;gap:10px;min-width:0;display:flex}.land-brand-copy{flex-direction:column;line-height:1.15;display:flex}.land-brand-copy>.brand-wordmark{color:var(--studio-text);font-size:18px}.land-brand-copy>span:not(.brand-wordmark){color:var(--studio-muted);font-size:11px}.land-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.land-nav a,.land-nav-link,.land-nav-text{color:var(--studio-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;text-decoration:none}.land-nav a:hover,.land-nav-link:hover,.land-nav-text:hover{color:var(--studio-text);background:var(--studio-hover)}.land-nav-cta{border:1px solid var(--studio-border);background:var(--studio-panel);color:var(--studio-text);cursor:pointer;border-radius:999px;margin-left:6px;padding:8px 14px;font-size:13px;font-weight:700}.land-nav-cta:hover{border-color:var(--studio-green);color:var(--studio-green-dark)}.land-theme-toggle{border:1px solid var(--studio-border-soft);background:color-mix(in srgb, var(--studio-panel) 70%, transparent);width:36px;height:36px;color:var(--studio-text);cursor:pointer;border-radius:999px;place-items:center;margin-left:2px;font-size:15px;line-height:1;display:inline-grid}.land-theme-toggle:hover{border-color:var(--studio-cyan);background:var(--studio-hover)}.land-hero{text-align:center;max-width:920px;margin:0 auto;padding:clamp(48px,10vh,96px) 20px 40px}.land-hero-brand{font-family:var(--font);letter-spacing:-.055em;color:var(--studio-text);margin:0;font-size:clamp(3.4rem,10vw,5.6rem);font-weight:800;line-height:.92}.land-hero-tag{color:var(--studio-text);letter-spacing:.02em;margin:18px 0 0;font-size:clamp(15px,2vw,18px)}.land-hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.land-cta-primary{border-radius:999px;height:46px;padding:0 22px;font-size:15px;font-weight:700}.land-cta-secondary{border:1px solid var(--studio-border);background:var(--studio-panel);height:46px;color:var(--studio-text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:650;display:inline-flex}.land-play{background:var(--studio-green-soft);width:22px;height:22px;color:var(--studio-green-dark);border-radius:999px;place-items:center;font-size:10px;display:grid}.land-hero-note{color:var(--studio-muted);margin:22px 0 0;font-size:12px}.land-showcase{width:min(1120px,100% - 32px);margin:0 auto;padding:28px 0 72px}.land-showcase-head{max-width:40rem;margin:0 0 36px}.land-showcase-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--studio-cyan);margin:0 0 8px;font-size:12px;font-weight:700}.land-showcase-head h2{font-family:var(--font);letter-spacing:-.035em;color:var(--studio-text);margin:0;font-size:clamp(1.7rem,3.4vw,2.5rem);line-height:1.12}.land-showcase-head p{color:var(--studio-muted);margin:10px 0 0;font-size:14px;line-height:1.55}.land-showcase-list{gap:28px;display:grid}.land-showcase-item{border:1px solid var(--studio-border-soft);background:color-mix(in srgb, var(--studio-panel) 84%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);border-radius:22px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);align-items:stretch;gap:20px;padding:22px;display:grid;box-shadow:0 14px 36px #1e464814}.land-showcase-item.is-flip{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr)}.land-showcase-item.is-flip .land-showcase-copy{order:2}.land-showcase-item.is-flip .land-showcase-demo{order:1}.land-showcase-copy{flex-direction:column;justify-content:center;gap:10px;padding:8px 4px;display:flex}.land-showcase-index{font-family:var(--mono);color:var(--studio-cyan);letter-spacing:.06em;font-size:12px;font-weight:700}.land-showcase-copy h3{font-family:var(--font);letter-spacing:-.03em;color:var(--studio-text);margin:0;font-size:clamp(1.35rem,2.5vw,1.85rem);line-height:1.15}.land-showcase-copy p{color:var(--studio-muted);max-width:38ch;margin:0;font-size:14px;line-height:1.55}.land-showcase-cta{color:var(--studio-green-dark);cursor:pointer;background:0 0;border:0;align-self:start;margin-top:4px;padding:0;font-size:13px;font-weight:700}.land-showcase-cta:hover{color:var(--studio-green)}.land-showcase-demo{background:linear-gradient(160deg, color-mix(in srgb, var(--studio-cyan-soft) 48%, var(--studio-surface)), var(--studio-surface));border-radius:16px;place-items:center;min-height:0;padding:14px;display:grid}.land-showcase [data-reveal]{opacity:0;transition:opacity .56s var(--ease-out), transform .56s var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(28px)}.land-showcase [data-reveal].is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.land-showcase [data-reveal]{opacity:1;transition:none;transform:none}}.land-demo{background:var(--studio-panel);border:1px solid var(--studio-border-soft);border-radius:14px;width:min(100%,420px);padding:14px;box-shadow:0 8px 20px #1e464814}.land-demo-hint{color:var(--studio-muted);margin:10px 0 0;font-size:12px}.land-demo-canvas{cursor:pointer;text-align:left;background:0 0;border:0;gap:8px;width:100%;padding:4px;display:grid;position:relative}.land-demo-canvas:focus-visible{outline:2px solid var(--studio-cyan);outline-offset:2px;border-radius:8px}.land-viz-line{background:color-mix(in srgb, var(--studio-cyan) 22%, var(--studio-surface));border-radius:999px;height:8px}.land-viz-line.short{width:62%}.land-demo-caret{opacity:0;width:10px;height:10px;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);pointer-events:none;border-radius:999px;position:absolute;transform:translateY(6px)}.land-demo-caret.on{opacity:1;transform:translateY(0)}.land-demo-caret.c0{background:var(--studio-green);top:16px;left:38%}.land-demo-caret.c1{background:var(--studio-cyan);top:40px;left:62%}.land-demo-caret.c2{background:#6b8f71;top:64px;left:48%}.land-demo-hub{width:min(100%,420px);padding:12px 12px 10px}.land-hub-svg{width:100%;height:auto;display:block;overflow:visible}.land-hub-spoke{fill:none;stroke:color-mix(in srgb, var(--studio-muted) 35%, transparent);stroke-width:1.25px;stroke-linecap:round;transition:stroke .18s,stroke-width .18s,opacity .18s}.land-hub-spoke.is-on{stroke-width:1.75px;opacity:1}.land-hub-spoke.src-ai.is-on{stroke:#2f6fed}.land-hub-spoke.src-github.is-on{stroke:#138a07}.land-hub-spoke.src-git.is-on{stroke:#c45c26}.land-hub-spoke.src-online.is-on{stroke:#5b4b8a}.land-hub-bridge{fill:none;stroke:color-mix(in srgb, var(--studio-muted) 28%, transparent);stroke-width:1px;stroke-dasharray:3 4;stroke-linecap:round;opacity:.55;transition:stroke .18s,opacity .18s}.land-hub-bridge.is-on{stroke:#747118;opacity:1;animation:.9s linear land-hub-bridge-flow}@keyframes land-hub-bridge-flow{to{stroke-dashoffset:-28px}}.land-hub-pulse{opacity:.95;filter:drop-shadow(0 0 4px)}.land-hub-pulse.src-ai{color:#2f6fed}.land-hub-pulse.src-github{color:#138a07}.land-hub-pulse.src-git{color:#c45c26}.land-hub-pulse.src-online{color:#5b4b8a}.land-hub-node circle{fill:color-mix(in srgb, var(--studio-surface) 88%, var(--studio-panel));stroke:color-mix(in srgb, var(--studio-muted) 30%, transparent);stroke-width:1.25px;transition:fill .16s ease, stroke .16s ease, filter .16s ease, transform .16s var(--ease-out);transform-box:fill-box;transform-origin:50%}.land-hub-node text{fill:var(--studio-muted);letter-spacing:-.01em;pointer-events:none;font-size:8.5px;font-weight:650;transition:fill .16s}.land-hub-node.is-on circle{filter:drop-shadow(0 0 8px color-mix(in srgb, currentColor 45%, transparent));transform:scale(1.08)}.land-hub-node.ai{color:#2f6fed}.land-hub-node.github{color:#138a07}.land-hub-node.git{color:#c45c26}.land-hub-node.online{color:#5b4b8a}.land-hub-node.ai.is-on circle{fill:color-mix(in srgb, #2f6fed 22%, var(--studio-panel));stroke:#2f6fed}.land-hub-node.github.is-on circle{fill:color-mix(in srgb, #138a07 22%, var(--studio-panel));stroke:#138a07}.land-hub-node.git.is-on circle{fill:color-mix(in srgb, #c45c26 22%, var(--studio-panel));stroke:#c45c26}.land-hub-node.online.is-on circle{fill:color-mix(in srgb, #5b4b8a 22%, var(--studio-panel));stroke:#5b4b8a}.land-hub-node.ai.is-on text,.land-hub-node.github.is-on text,.land-hub-node.git.is-on text,.land-hub-node.online.is-on text{fill:var(--studio-text)}.land-hub-server rect:first-child{fill:color-mix(in srgb, var(--studio-surface) 90%, var(--studio-panel));stroke:color-mix(in srgb, var(--studio-muted) 32%, transparent);stroke-width:1.25px;transition:fill .16s,stroke .16s,filter .16s}.land-hub-server rect:not(:first-child){fill:color-mix(in srgb, var(--studio-muted) 28%, transparent);stroke:none;transition:fill .16s}.land-hub-server text{fill:var(--studio-muted);letter-spacing:.02em;font-size:9px;font-weight:700;transition:fill .16s}.land-hub-server.is-on rect:first-child{filter:drop-shadow(0 0 10px color-mix(in srgb, currentColor 40%, transparent))}.land-hub-server.from-ai.is-on{color:#2f6fed}.land-hub-server.from-github.is-on{color:#138a07}.land-hub-server.from-git.is-on{color:#c45c26}.land-hub-server.from-online.is-on{color:#5b4b8a}.land-hub-server.from-ai.is-on rect:first-child{fill:color-mix(in srgb, #2f6fed 20%, var(--studio-panel));stroke:#2f6fed}.land-hub-server.from-github.is-on rect:first-child{fill:color-mix(in srgb, #138a07 20%, var(--studio-panel));stroke:#138a07}.land-hub-server.from-git.is-on rect:first-child{fill:color-mix(in srgb, #c45c26 20%, var(--studio-panel));stroke:#c45c26}.land-hub-server.from-online.is-on rect:first-child{fill:color-mix(in srgb, #5b4b8a 20%, var(--studio-panel));stroke:#5b4b8a}.land-hub-server.is-on rect:not(:first-child){fill:color-mix(in srgb, currentColor 55%, transparent)}.land-hub-server.is-on text{fill:var(--studio-text)}@media (prefers-reduced-motion:reduce){.land-hub-pulse.is-on,.land-hub-bridge.is-on{animation:none}.land-hub-pulse.is-on{opacity:0}}.land-demo-ai{gap:10px;width:min(100%,440px);display:grid}.land-demo-ai-stages{min-height:210px;position:relative}.land-demo-ai-share,.land-demo-ai-chat{border:1px solid var(--studio-border-soft);background:var(--studio-surface);opacity:0;pointer-events:none;transition:opacity .28s var(--ease-out), transform .28s var(--ease-out);border-radius:12px;padding:12px;position:absolute;inset:0;transform:translateY(10px)}.land-demo-ai-share.is-on{opacity:1;pointer-events:auto;z-index:2;transform:translateY(0)}.land-demo-ai-share.is-exit{opacity:0;z-index:1;transform:translateY(-12px)scale(.98)}.land-demo-ai-share-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.land-demo-ai-share-head strong{color:var(--studio-text);font-size:14px}.land-demo-ai-share-hint{color:var(--studio-muted);margin:8px 0 0;font-size:12px;line-height:1.45}.land-demo-ai-url-row{opacity:0;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out);gap:6px;margin-top:12px;display:grid;transform:translateY(6px)}.land-demo-ai-url-row.is-on{opacity:1;transform:translateY(0)}.land-demo-ai-url{font-family:var(--mono);background:var(--studio-panel);border:1px solid var(--studio-border-soft);color:var(--studio-cyan);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:8px 10px;font-size:11px;display:block;overflow:hidden}.land-demo-ai-copied{color:var(--studio-green);opacity:0;transition:opacity .18s var(--ease-out);font-size:11px;font-weight:700}.land-demo-ai-copied.is-on{opacity:1}.land-demo-ai-chat.is-on{opacity:1;pointer-events:auto;z-index:3;grid-template-rows:auto 1fr auto;gap:8px;display:grid;transform:translateY(0)}.land-demo-ai-chat-head{letter-spacing:.04em;text-transform:uppercase;color:var(--studio-cyan);font-size:11px;font-weight:700}.land-demo-ai-chat-log{align-content:start;gap:8px;min-height:0;display:grid;overflow:hidden}.land-demo-ai-msg{opacity:0;max-width:92%;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out);border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.45;transform:translateY(8px)}.land-demo-ai-msg.is-on{opacity:1;transform:translateY(0)}.land-demo-ai-msg.user{background:color-mix(in srgb, var(--studio-cyan-soft) 70%, var(--studio-panel));color:var(--studio-text);justify-self:end;gap:6px;display:grid}.land-demo-ai-chip{font-family:var(--mono);color:var(--studio-cyan);text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.land-demo-ai-msg.agent{background:var(--studio-panel);border:1px solid var(--studio-border-soft);color:var(--studio-muted);justify-self:start}.land-demo-ai-msg.agent.reply{color:var(--studio-text)}.land-demo-ai-msg.agent.reply code{font-family:var(--mono);color:var(--studio-green-dark);font-size:11px}.land-demo-ai-msg.thinking{align-items:center;gap:4px;width:fit-content;padding:10px 12px;display:inline-flex}.land-demo-ai-msg.thinking i{background:var(--studio-cyan);opacity:.35;width:6px;height:6px;animation:land-ai-dot .9s var(--ease-out) infinite;border-radius:999px}.land-demo-ai-msg.thinking i:nth-child(2){animation-delay:.12s}.land-demo-ai-msg.thinking i:nth-child(3){animation-delay:.24s}@keyframes land-ai-dot{0%,to{opacity:.28;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.land-demo-ai-composer{border:1px dashed var(--studio-border);background:var(--studio-panel);opacity:0;min-height:34px;transition:opacity .2s var(--ease-out);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.land-demo-ai-composer.is-on{opacity:1}.land-demo-ai-paste{min-width:0;font-family:var(--mono);color:var(--studio-cyan);opacity:0;text-overflow:ellipsis;white-space:nowrap;transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);flex:1;font-size:10px;overflow:hidden;transform:translateY(4px)}.land-demo-ai-paste.is-on{opacity:1;transform:translateY(0)}.land-demo-ai-composer em{color:var(--studio-muted);flex-shrink:0;font-size:11px;font-style:normal}.land-demo-ai-badge{color:#fff;background:color-mix(in srgb, #9c36b5 55%, var(--studio-muted));letter-spacing:.02em;opacity:.45;transition:opacity .18s var(--ease-out), background-color .18s var(--ease-out);border-radius:3px;padding:2px 6px;font-size:10px;font-weight:700}.land-demo-ai-badge.on{opacity:1;background:#9c36b5}.land-demo-ai-logline{min-height:28px;color:var(--studio-muted);opacity:0;transition:opacity .24s var(--ease-out), transform .24s var(--ease-out);align-items:center;gap:8px;font-size:12px;display:flex;transform:translateY(6px)}.land-demo-ai-logline.is-on{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.land-demo-ai-share,.land-demo-ai-chat,.land-demo-ai-msg,.land-demo-ai-url-row,.land-demo-ai-paste,.land-demo-ai-logline,.land-demo-ai-msg.thinking i{transition:opacity .16s!important;animation:none!important;transform:none!important}}.land-demo-codex{gap:10px;width:min(100%,520px);display:grid}.land-demo-codex-shell{grid-template-columns:minmax(140px,.9fr) minmax(0,1.2fr);align-items:stretch;gap:10px;display:grid}.land-demo-codex-source,.land-demo-codex-panel{border:1px solid var(--studio-border-soft);background:color-mix(in srgb, var(--studio-panel) 88%, transparent);border-radius:12px;align-content:start;display:grid;overflow:hidden}.land-demo-codex-source-head,.land-demo-codex-head{border-bottom:1px solid var(--studio-border-soft);color:var(--studio-text);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:700;display:flex}.land-demo-codex-code{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;gap:2px;padding:10px;display:grid}.land-demo-codex-code:active{transform:scale(.99)}.land-demo-codex-line{font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, monospace);color:var(--studio-text);border-radius:4px;padding:1px 4px;font-size:11px;line-height:1.45;display:block}.land-demo-codex-line.muted{color:var(--studio-muted)}.land-demo-codex-code.is-selected .land-demo-codex-line.is-snip{background:color-mix(in srgb, var(--studio-cyan) 18%, transparent);color:var(--studio-text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--studio-cyan) 35%, transparent)}.land-demo-codex-attach{border:1px solid var(--studio-border);background:var(--studio-surface);color:var(--studio-text);cursor:pointer;border-radius:999px;height:30px;margin:0 10px 10px;font-size:11px;font-weight:650}.land-demo-codex-attach:disabled{opacity:.5;cursor:not-allowed}.land-demo-codex-attach:not(:disabled):active{transform:scale(.97)}.land-demo-codex-vis{background:color-mix(in srgb, var(--studio-hover) 80%, transparent);border:1px solid var(--studio-border-soft);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.land-demo-codex-vis button{color:var(--studio-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:650}.land-demo-codex-vis button.on{background:var(--studio-panel);color:var(--studio-text);box-shadow:0 1px 2px #00000014}.land-demo-codex-vis-hint{color:var(--studio-muted);margin:0;padding:0 10px 8px;font-size:11px}.land-demo-codex-log{gap:8px;max-height:148px;padding:0 10px 10px;display:grid;overflow:auto}.land-demo-codex-msg{color:var(--studio-text);border-radius:10px;gap:6px;padding:8px 10px;font-size:12px;line-height:1.45;display:grid}.land-demo-codex-msg.user{background:color-mix(in srgb, var(--studio-cyan-soft) 70%, var(--studio-surface));justify-self:end;max-width:92%}.land-demo-codex-msg.agent{background:color-mix(in srgb, var(--studio-hover) 85%, transparent);justify-self:start;max-width:94%}.land-demo-codex-snip{background:color-mix(in srgb, var(--studio-panel) 90%, #000 4%);border:1px solid var(--studio-border-soft);font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, monospace);white-space:pre-wrap;color:var(--studio-muted);border-radius:8px;margin:0;padding:6px 8px;font-size:10px}.land-demo-codex-msg.thinking{align-items:center;gap:4px;min-height:28px;display:inline-flex}.land-demo-codex-msg.thinking i{background:var(--studio-muted);border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite land-codex-dot}.land-demo-codex-msg.thinking i:nth-child(2){animation-delay:.12s}.land-demo-codex-msg.thinking i:nth-child(3){animation-delay:.24s}@keyframes land-codex-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.land-demo-codex-pending{border:1px dashed color-mix(in srgb, var(--studio-cyan) 40%, var(--studio-border));background:color-mix(in srgb, var(--studio-cyan-soft) 40%, transparent);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin:0 10px 8px;padding:6px 8px;font-size:11px;display:flex}.land-demo-codex-pending code{color:var(--studio-text);font-family:inherit}.land-demo-codex-pending button{color:var(--studio-muted);cursor:pointer;background:0 0;border:0;font-size:11px}.land-demo-codex-composer{grid-template-columns:1fr auto;gap:6px;padding:0 10px 10px;display:grid}.land-demo-codex-composer input{border:1px solid var(--studio-border);background:var(--studio-surface);height:34px;color:var(--studio-text);font:inherit;border-radius:999px;padding:0 12px;font-size:12px}.land-demo-codex-composer .btn-primary{border-radius:999px;height:34px;padding:0 12px;font-size:12px}@media (width<=720px){.land-demo-codex-shell{grid-template-columns:1fr}}@scope(.ol-app){:scope{--ws-accent:#0a84ff;--ws-accent-soft:color-mix(in srgb, var(--ws-accent) 11%, transparent);--ws-chrome:color-mix(in srgb, var(--ol-panel) 86%, transparent);--ws-sidebar:color-mix(in srgb, var(--ol-surface) 72%, var(--ol-panel));--ws-separator:#e8eaed;--ws-hairline:#e8eaed;--ws-control-h:30px;font-family:var(--font);background:var(--ol-panel)}.ol-topbar{background:var(--ws-chrome);border-bottom-color:var(--ws-separator);height:50px;box-shadow:inset 0 1px 0 var(--chrome-edge);-webkit-backdrop-filter:blur(24px)saturate(150%);flex-basis:50px;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);gap:12px;padding:0 10px 0 8px;display:grid;position:relative}.ol-top-left,.ol-top-center,.ol-top-right{align-items:center;min-width:0;display:flex}.ol-top-left{justify-content:flex-start;gap:5px}.ol-top-center{justify-content:center;gap:8px;padding:0 8px}.ol-top-right{justify-content:flex-end;gap:5px;overflow:hidden}.ol-home{border-radius:8px;flex:0 0 34px;width:34px;height:34px}.ol-project-name{min-width:0;max-width:min(28vw,300px)}.ol-history{flex:none;align-items:center;display:inline-flex}.ol-history button{width:28px;height:28px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;transition:background .14s,color .14s;display:grid}.ol-history button:hover:not(:disabled){color:var(--ol-text);background:var(--ol-hover)}.ol-history button:active:not(:disabled){transform:scale(.94)}.ol-history button:disabled{opacity:.4;cursor:default}@media (prefers-reduced-motion:reduce){.ol-history button{transition:none}}.ol-project-btn{text-align:left;border-radius:8px;align-items:center;gap:7px;width:100%;max-width:none;height:38px;padding:4px 8px;display:flex}.ol-project-context{flex-direction:column;gap:1px;min-width:0;display:flex}.ol-project-context strong,.ol-project-context small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ol-project-context strong{color:var(--ol-text);letter-spacing:-.012em;font-size:12.5px;font-weight:650;line-height:1.2}.ol-project-context small{color:var(--ol-muted);font-size:10px;font-weight:450;line-height:1.15}.ol-menu-btn{height:var(--ws-control-h);color:var(--ol-muted);border-radius:6px;padding:0 7px;font-size:11.5px}.ol-compile-action{height:var(--ws-control-h);border:1px solid var(--ws-separator);background:color-mix(in srgb, var(--ol-panel) 84%, var(--ol-hover));color:var(--ol-text);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:620;display:inline-flex;box-shadow:0 1px 2px #00000014}.ol-compile-action svg{color:var(--ws-accent)}.ol-layout-seg{height:var(--ws-control-h);border-color:var(--ws-separator);background:color-mix(in srgb, var(--ol-text) 5%, transparent);border-radius:7px;margin:0;padding:2px}.ol-layout-seg button{border-radius:5px;width:27px;height:24px}.ol-layout-seg button.active{color:var(--ol-text);background:var(--ol-panel);box-shadow:0 1px 2px #0000001a}.save-indicator{white-space:nowrap;min-width:0;margin:0;font-size:10.5px}.save-dot{width:6px;height:6px}.ol-top-right .site-top-nav{flex-wrap:nowrap}.ol-top-right .site-top-link{padding:5px 6px;font-size:11px}.ol-user-chip{border-radius:8px;min-width:30px;height:32px;margin:0;padding:2px 5px}.ol-user-chip .avatar{background:var(--user-color,var(--ws-accent,#0a84ff));color:#fff;width:23px;height:23px;font-size:10px}.user-label{max-width:84px;font-size:11px}.ol-share{height:var(--ws-control-h);border:1px solid var(--ws-separator);background:var(--ol-panel);color:var(--ol-text);border-radius:7px;padding:0 11px;font-size:11.5px;font-weight:600;box-shadow:0 1px 2px #00000012}.ol-top-right>.ol-ghost{background:0 0;border:0;width:30px;height:30px;padding:0}.ol-body{background:var(--ol-panel)}.ol-rail{background:var(--ws-sidebar);border-right-color:var(--ws-separator);flex-basis:50px;gap:3px;width:50px;padding:8px 6px}.ol-rail button{width:38px;height:38px;color:color-mix(in srgb, var(--ol-muted) 88%, transparent);border-radius:8px}.ol-rail button svg{width:18px;height:18px}.ol-rail button.active{color:var(--ol-text);background:color-mix(in srgb, var(--ol-text) 9%, transparent);box-shadow:none}.rail-badge{border:2px solid var(--ws-sidebar);top:1px;right:1px}.ol-side{background:var(--ws-sidebar);border-right-color:var(--ws-separator)}.ol-side-head,.notes-head,.chat-head,.changelog-head{border-bottom-color:var(--ws-separator);background:0 0;height:30px;min-height:30px;padding:0 10px;font-size:12px}.ft-head strong{color:var(--ol-text);letter-spacing:.025em;font-size:11px;font-weight:650}.ft-head-btn,.side-head-actions button{border-radius:6px;width:28px;height:28px}.ol-filetree{background:0 0}.ol-files{padding:5px 0 8px}.file-tree-row{border-radius:5px;min-height:27px;margin:0 6px}.file-tree-main{min-height:27px;padding-right:3px;font-size:12px;line-height:27px}.file-tree-row.is-active{background:var(--ws-accent-soft)}.file-tree-row.is-active .ft-icon{color:var(--ws-accent)}.tree-footer{border-top-color:var(--ws-separator);background:0 0;min-height:36px;padding:7px 11px}.ol-side-splitter{z-index:4;flex-basis:5px;width:5px;margin-left:-5px}.ol-side-splitter:before,.ol-splitter:before{content:"";inset-block:0;background:var(--ws-separator);width:1px;position:absolute;left:50%;transform:translate(-50%)}.ol-workspace{background:var(--ol-panel)}.ol-workspace.layout-split{grid-template-columns:var(--split-ratio,50%) 5px minmax(0, 1fr)}.ol-editor-pane,.ol-pdf-pane{background:var(--ol-panel)}.ol-editor-pane{border-right:0}.ol-editor-tabs,.ol-pdf-toolbar{background:color-mix(in srgb, var(--ol-panel) 90%, transparent);border-bottom-color:var(--ws-separator);-webkit-backdrop-filter:blur(18px)saturate(140%);height:30px;min-height:30px}.ol-editor-tabs{align-items:stretch}.tab-list{scrollbar-width:none;max-width:min(78%,820px);overflow-y:hidden}.tab{border-right-color:var(--ws-separator);min-width:88px;height:30px;padding-inline:8px 5px;font-size:11.5px}.tab.is-active{background:var(--ol-panel);font-weight:580}.tab.is-active:after{background:var(--ws-accent);height:2px;left:9px;right:9px}.tab-actions{border-color:var(--ws-separator);height:28px;box-shadow:none;border-radius:6px;margin-right:8px}.tab-actions .ol-tool{height:26px;font-size:11px}.ol-pdf-toolbar{gap:7px;padding:0 8px}.ol-tool-group{gap:5px}.ol-tool,.ol-tool-toggle,.ol-logs-btn,.pdf-zoom-controls{border-color:var(--ws-separator);background:0 0;border-radius:6px;height:28px;font-size:11px;font-weight:560}.ol-tool,.ol-tool-toggle{padding-inline:8px}.ol-tool.on,.ol-tool-toggle.on{color:var(--ws-accent);border-color:color-mix(in srgb, var(--ws-accent) 35%, var(--ws-separator));background:var(--ws-accent-soft)}.ol-tool-toggle.on .ol-switch{background:var(--ws-accent)}.ol-logs-btn{border-radius:6px;padding-inline:8px}.ol-app .btn-recompile,.ol-app .btn-primary{border:1px solid var(--ws-separator);background:color-mix(in srgb, var(--ol-panel) 82%, var(--ol-hover));min-height:30px;color:var(--ol-text);border-radius:7px;padding:5px 10px;font-size:11.5px;font-weight:620;box-shadow:0 1px 2px #00000012}.ol-app .btn-primary:not(:disabled){border-color:color-mix(in srgb, var(--ws-accent) 25%, var(--ws-separator))}.ol-pdf-toolbar .btn-recompile{display:none}.ol-pdf-empty .btn-recompile{justify-self:center;display:inline-flex}.ol-splitter{background:0 0;flex-basis:5px}.sync-rail{gap:5px}.sync-btn{border-color:var(--ws-separator);width:24px;height:24px;color:var(--ol-muted);box-shadow:0 2px 8px #0000001f}.sync-btn.on{color:var(--ws-accent);border-color:color-mix(in srgb, var(--ws-accent) 35%, var(--ws-separator));background:var(--ol-panel)}.pdf-viewer-pages{gap:16px;padding:18px}.pdf-page{box-shadow:0 2px 12px #0000003d}.pdf-outline{background:var(--ol-panel);border-right:1px solid var(--ws-hairline,var(--ol-border));flex-basis:200px;width:200px}.sync-panel,.ol-side-body.project-settings{background:0 0}.sync-section{padding-block:16px}.sync-panel .sync-card,.sync-panel .sync-hero{background:0 0;border-radius:0}.sync-panel .sync-actions button{height:30px;min-height:30px}.sync-panel .sync-connect-card>.sync-link-btn{min-height:34px}.project-settings-section{border-bottom-color:var(--ws-separator);padding:16px 13px 18px}.project-settings-section-head h3{letter-spacing:.055em;font-size:10.5px}.project-settings-summary{border:0;border-top:1px solid var(--ws-separator);border-bottom:1px solid var(--ws-separator);background:0 0;border-radius:0;padding:9px 0}.project-settings-danger{background:0 0}.project-settings-danger-button{width:auto}.notes-compose,.chat-compose,.notes-thread,.changelog-filters,.codex-topbar,.codex-form{border-color:var(--ws-separator);background:0 0}.notes-item,.changelog-item,.codex-thread-item,.tasks-item{border-radius:6px}.chat-bubble-body,.codex-msg-bubble{border-radius:12px}@media (hover:hover) and (pointer:fine){.ol-compile-action:hover:not(:disabled),.ol-share:hover:not(:disabled),.ol-app .btn-primary:hover:not(:disabled),.ol-app .btn-recompile:hover:not(:disabled){background:var(--ol-hover)}.ol-rail button:hover{color:var(--ol-text)}.ol-rail-foot button:hover{color:#111}.ol-rail button.active:hover{color:var(--ol-text);background:color-mix(in srgb, var(--ol-text) 12%, transparent)}.sync-btn:hover{color:var(--ws-accent);border-color:color-mix(in srgb, var(--ws-accent) 35%, var(--ws-separator));background:var(--ol-panel)}.ol-side-splitter:hover,.ol-side-splitter:focus-visible,.ol-splitter:hover,.ol-splitter:focus-visible{background:color-mix(in srgb, var(--ws-accent) 65%, transparent)}}@media (width<=1240px){.ol-topbar{grid-template-columns:minmax(230px,1fr) auto minmax(190px,1fr);gap:6px}.ol-top-right .site-top-nav,.ol-top-right .user-label{display:none}.ol-project-name{max-width:230px}}@media (width<=980px){.ol-topbar{grid-template-columns:minmax(190px,1fr) auto minmax(96px,1fr)}.ol-top-right .peer-list,.ol-top-right .chat-unread-chip,.ol-top-right>.ol-status{display:none}.ol-project-name{max-width:220px}}@media (width<=900px){.ol-workspace.layout-split{grid-template-rows:minmax(0,1fr) 5px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.ol-splitter{cursor:row-resize}.ol-splitter:before{inset-inline:0;width:auto;height:1px;top:50%;transform:translateY(-50%)}.sync-rail{flex-direction:row}}@media (width<=760px){.ol-topbar{grid-template-columns:minmax(150px,1fr) auto auto;padding-inline:5px}.ol-top-center .save-indicator,.ol-layout-seg button:nth-child(n+2),.ol-top-right .ol-user-chip,.ol-top-right>.ol-ghost{display:none}.ol-side{top:50px;left:50px}}@media (prefers-reduced-transparency:reduce){.ol-topbar,.ol-editor-tabs,.ol-pdf-toolbar{background:var(--ol-panel);-webkit-backdrop-filter:none}}@media (prefers-contrast:more){.ol-app{--ws-separator:#c9cdd3;--ws-hairline:#c9cdd3}.ol-topbar,.ol-side,.ol-rail,.ol-editor-tabs,.ol-pdf-toolbar{background:var(--ol-panel)}.ol-rail button.active,.tab.is-active{outline-offset:-1px;outline:1px solid}}.ol-app .ol-topbar{border:0;outline:0;box-shadow:0 10px 24px -22px #00000057}.ol-app .ol-topbar:after,.ol-app .ol-editor-tabs:after,.ol-app .ol-pdf-toolbar:after{display:none}.ol-app .ol-rail{background:linear-gradient(to right, color-mix(in srgb, var(--ws-sidebar) 96%, var(--ol-panel)), var(--ws-sidebar));border:0;outline:0;box-shadow:inset -12px 0 18px -22px #00000047}.ol-app .ol-side,.ol-app .ol-side-collab{background:var(--ws-sidebar);border:0;outline:0;box-shadow:inset -14px 0 22px -25px #00000047}.ol-app .ol-editor-pane,.ol-app .ol-pdf-pane{border:0;outline:0}.ol-app .ol-side-splitter{background:linear-gradient(to right, transparent, color-mix(in srgb, var(--ol-text) 3%, transparent) 48%, color-mix(in srgb, var(--ol-panel) 42%, transparent) 52%, transparent);width:8px;box-shadow:none;border:0;outline:0;flex:0 0 8px;margin:0}.ol-app .ol-workspace.layout-split{grid-template-columns:var(--split-ratio,50%) 8px minmax(0, 1fr)}.ol-app .ol-splitter{background:linear-gradient(to right, transparent, color-mix(in srgb, var(--ol-text) 4%, transparent) 44%, color-mix(in srgb, var(--ol-panel) 48%, transparent) 56%, transparent);width:8px;min-width:8px;box-shadow:none;border:0;outline:0}.ol-app .ol-side-splitter:before,.ol-app .ol-side-splitter:after,.ol-app .ol-splitter:before,.ol-app .ol-splitter:after{content:none;display:none}@media (width<=900px){.ol-app .ol-workspace.layout-split{grid-template-rows:minmax(0,1fr) 8px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.ol-app .ol-splitter{background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--ol-text) 4%, transparent) 44%, color-mix(in srgb, var(--ol-panel) 48%, transparent) 56%, transparent);width:auto;min-width:0;height:8px;min-height:8px}}@media (prefers-reduced-transparency:reduce){.ol-app .ol-topbar{box-shadow:0 8px 16px -18px color-mix(in srgb, var(--ol-text) 28%, transparent)}.ol-app .ol-rail,.ol-app .ol-side,.ol-app .ol-side-collab{background:var(--ol-surface)}}@media (prefers-reduced-motion:reduce){.ol-app button,.ol-app .ol-side-collab,.ol-app .ft-twistie{transition-duration:0s!important}}}@media (prefers-reduced-motion:reduce){.land-demo-codex-msg.thinking i{animation:none}}.land-demo-compile{gap:12px;display:grid}.land-demo-log{color:var(--studio-muted);gap:6px;min-height:72px;font-size:12px;display:grid}.land-demo-log strong{color:var(--studio-muted);font-size:14px}.land-demo-log.busy strong{color:var(--studio-cyan)}.land-demo-log.ok strong{color:var(--studio-green)}.land-demo-log .ok{color:var(--studio-cyan)}.land-demo-action{border-radius:999px;justify-self:start;height:36px;padding:0 14px;font-size:13px}.land-demo-pdf{grid-template-columns:96px 1fr;gap:10px;min-height:150px;display:grid}.land-demo-pdf aside{align-content:start;gap:6px;display:grid}.land-demo-pdf aside b{color:var(--studio-text);font-size:12px}.land-demo-pdf aside button{text-align:left;color:var(--studio-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:11px}.land-demo-pdf aside button.on{color:var(--studio-green-dark);background:var(--studio-green-soft)}.land-demo-page{border:1px solid var(--studio-border-soft);background-image:linear-gradient(180deg, transparent 18px, color-mix(in srgb, var(--studio-border) 55%, transparent) 19px), linear-gradient(#fff, #f8faf8);background-size:100% 22px,100% 100%;border-radius:8px;position:relative;overflow:hidden}:root[data-theme=dark] .land-demo-page{background-image:linear-gradient(180deg, transparent 18px, color-mix(in srgb, var(--studio-border) 55%, transparent) 19px), linear-gradient(var(--studio-surface), var(--studio-panel))}.land-demo-hl{background:color-mix(in srgb, var(--studio-green) 22%, transparent);border:1px solid color-mix(in srgb, var(--studio-green) 40%, transparent);width:72%;height:14%;transition:top .22s var(--ease-out), opacity .18s var(--ease-out);border-radius:6px;position:absolute;left:10%}.land-demo-github{text-align:center;place-items:center;gap:14px;display:grid}.land-demo-sync{align-items:center;gap:10px;display:flex}.land-demo-sync button{border:1px solid var(--studio-border);background:var(--studio-surface);color:var(--studio-muted);cursor:pointer;transition:color .16s var(--ease-out), border-color .16s var(--ease-out), background-color .16s var(--ease-out);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700}.land-demo-sync button.on{color:var(--studio-green-dark);border-color:var(--studio-green);background:var(--studio-green-soft)}.land-demo-sync em{color:var(--studio-cyan);font-style:normal}.land-demo-github code{font-family:var(--mono);color:var(--studio-muted);font-size:12px}.land-demo-share{gap:10px;display:grid}.land-demo-pills{flex-wrap:wrap;gap:8px;display:flex}.land-viz-pill{background:var(--studio-surface);width:fit-content;color:var(--studio-muted);cursor:pointer;transition:color .16s var(--ease-out), background-color .16s var(--ease-out), border-color .16s var(--ease-out);border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.land-viz-pill.on{background:var(--studio-green-soft);color:var(--studio-green-dark);border-color:color-mix(in srgb, var(--studio-green) 35%, transparent)}.land-viz-pill.muted.on{background:var(--studio-cyan-soft);color:var(--studio-cyan);border-color:color-mix(in srgb, var(--studio-cyan) 35%, transparent)}.land-viz-link{font-family:var(--mono);color:var(--studio-muted);background:var(--studio-surface);border-radius:8px;padding:8px 10px;font-size:12px}.land-demo-library{width:min(100%,360px);box-shadow:none;background:0 0;border:0;grid-template-columns:1fr 1fr;gap:10px;padding:0;display:grid}.land-viz-card{background:var(--studio-panel);border:1px solid var(--studio-border-soft);text-align:left;cursor:pointer;transition:border-color .16s var(--ease-out), transform .16s var(--ease-out);border-radius:12px;padding:0;display:grid;overflow:hidden}.land-viz-card.on{border-color:var(--studio-green);transform:translateY(-2px)}.land-viz-cover{aspect-ratio:3/4;background:linear-gradient(#fff 0 18%,#0000 18%),repeating-linear-gradient(#fff,#fff 10px,#eef2ef 11px)}.land-viz-cover.alt{background:linear-gradient(#f7fbf8 0 22%,#0000 22%),repeating-linear-gradient(#fff,#fff 10px,#e7eeea 11px)}:root[data-theme=dark] .land-viz-cover,:root[data-theme=dark] .land-viz-cover.alt{background:linear-gradient(180deg, var(--studio-panel) 0 18%, transparent 18%), repeating-linear-gradient(180deg, var(--studio-surface), var(--studio-surface) 10px, var(--studio-hover) 11px)}.land-viz-card strong{color:var(--studio-text);padding:6px 8px 0;font-size:11px}.land-viz-card em{color:var(--studio-cyan);padding:2px 8px 8px;font-size:10px;font-style:normal}.land-closing{text-align:center;max-width:560px;margin:0 auto;padding:24px 20px 56px}.land-closing h2{font-family:var(--font);letter-spacing:-.03em;margin:0;font-size:clamp(1.5rem,3vw,2rem)}.land-closing p{color:var(--studio-muted);margin:10px 0 20px;font-size:14px;line-height:1.5}.land-foot{border-top:1px solid var(--studio-border-soft);color:var(--studio-muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:18px clamp(16px,4vw,40px) 28px;font-size:12px;display:flex}.land-auth-scrim{z-index:60;-webkit-backdrop-filter:blur(14px);background:#0b1a1c6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.land-auth-panel{background:color-mix(in srgb, var(--studio-panel) 94%, transparent);border:1px solid var(--studio-border);border-radius:18px;width:min(440px,100%);max-height:min(90vh,720px);padding:20px 20px 18px;overflow:auto;box-shadow:0 24px 56px #1e46482e}.land-auth-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.land-auth-head h2{font-family:var(--font);letter-spacing:-.02em;margin:0;font-size:20px}.land-auth-close{border:1px solid var(--studio-border);background:var(--studio-surface);width:32px;height:32px;color:var(--studio-muted);cursor:pointer;border-radius:8px;font-size:18px}.land-auth-panel .auth-tabs{border-bottom:1px solid var(--studio-border-soft);background:0 0;border-radius:0;gap:8px;margin-bottom:16px;padding:0;display:flex}.land-auth-panel .auth-tabs button{color:var(--studio-muted);box-shadow:none;background:0 0;border:0;border-radius:0;padding:10px 14px 12px;font-weight:650;position:relative}.land-auth-panel .auth-tabs button.active{color:var(--studio-green);box-shadow:none;background:0 0}.land-auth-panel .auth-tabs button.active:after{content:"";background:var(--studio-green);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:10px;right:10px}.land-auth-panel .auth-form label{color:var(--studio-muted)}.land-auth-panel .auth-form input{background:var(--studio-surface);color:var(--studio-text);border-color:var(--studio-border)}.land-auth-panel .banner-info{color:var(--studio-cyan);font-size:13px}@media (width<=900px){.land-showcase-item,.land-showcase-item.is-flip{grid-template-columns:1fr}.land-showcase-item.is-flip .land-showcase-copy,.land-showcase-item.is-flip .land-showcase-demo{order:initial}}@media (width<=640px){.land-brand-copy span,.land-nav a,.land-nav-link{display:none}.land-nav a[href=\#features]{display:inline-flex}.land-demo-library{width:100%}}.auth-service-notice{color:var(--studio-muted);text-align:center;background:0 0;border:none;margin:0 0 14px;padding:0;font-size:12px;line-height:1.5}.auth-submit{letter-spacing:-.01em;background:var(--studio-green);border-color:var(--studio-green-dark);border-radius:12px;width:100%;height:46px;margin-top:6px;font-size:15px;font-weight:700}.project-error-tag{color:var(--ol-danger);background:var(--ol-danger-soft);border-radius:3px;align-self:flex-start;padding:1px 6px;font-size:11px}.project-card.skeleton{background:linear-gradient(90deg, var(--studio-surface) 25%, var(--studio-hover) 50%, var(--studio-surface) 75%);pointer-events:none;background-size:400% 100%;border-style:solid;height:auto;min-height:280px;animation:1.2s ease-in-out infinite shimmer}.project-card.skeleton .project-card-accent,.project-card.skeleton .project-card-icon,.project-card.skeleton .project-card-cover,.project-card.skeleton .project-card-body{display:none}@keyframes shimmer{to{background-position:-100% 0}}.ol-filetree{background:color-mix(in srgb, var(--ol-panel) 92%, transparent);flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.ol-side-head{justify-content:space-between}.ft-head strong{letter-spacing:.06em;text-transform:uppercase;color:var(--ol-muted);font-size:11px;font-weight:700}.side-head-actions{gap:1px;display:flex}.ft-head-btn,.side-head-actions button{width:24px;height:24px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;transition:background-color .1s ease-out,color .1s ease-out,transform .1s ease-out;display:inline-grid}.ft-head-btn:hover,.side-head-actions button:hover{background:color-mix(in srgb, var(--ol-text) 8%, transparent);color:var(--ol-text)}.ft-head-btn:active,.side-head-actions button:active{transform:scale(.94)}.ol-files{flex:1;min-height:0}.ol-files li{position:relative}.file-tree-row{border-radius:0;align-items:center;min-height:22px;margin:0 4px;padding-right:2px;transition:background-color 80ms ease-out;display:flex}.file-tree-row:hover{background:color-mix(in srgb, var(--ol-text) 6%, transparent)}.file-tree-row.is-focused:not(.is-active){outline:1px solid color-mix(in srgb, var(--ol-text) 18%, transparent);outline-offset:-1px}.file-tree-row.is-active{background:color-mix(in srgb, var(--studio-green,var(--ol-green)) 18%, transparent)}.file-tree-row.is-dragging{opacity:.45}.file-tree-row.is-drop-target,.ol-files.is-drop-target{background:color-mix(in srgb, var(--studio-green,var(--ol-green)) 16%, transparent);outline:1px dashed color-mix(in srgb, var(--studio-green,var(--ol-green)) 55%, transparent);outline-offset:-1px}.ol-filetree.is-root-drop .ol-files{outline:1px dashed color-mix(in srgb, var(--studio-green,var(--ol-green)) 55%, transparent);outline-offset:-2px}.file-tree-row[draggable=true]{cursor:grab}.file-tree-row[draggable=true]:active{cursor:grabbing}.file-tree-row.is-active .fname{color:var(--ol-text);font-weight:600}.file-tree-row.is-artifact .fname{color:var(--ol-muted);opacity:.85}.file-tree-main{text-align:left;min-width:0;color:var(--ol-text);cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:4px;padding:1px 2px 1px 0;font-size:13px;line-height:22px;display:flex}.file-tree-row.is-dir .fname{font-weight:550}.ft-indent{flex:none;height:22px;display:inline-flex}.ft-guide{border-right:1px solid color-mix(in srgb, var(--ol-text) 10%, transparent);box-sizing:content-box;width:8px;height:22px;margin-right:8px}.ft-twistie-hit,.ft-twistie-spacer{flex:0 0 16px;place-items:center;width:16px;height:16px;display:inline-grid}.ft-twistie{color:var(--ol-muted);transition:transform .12s ease-out;transform:rotate(0)}.ft-twistie.is-open{transform:rotate(90deg)}.ft-icon{flex:0 0 16px;width:16px;height:16px}.ft-folder{color:#dcb67a}.ft-folder.is-open{color:#e3c48a}.ft-tex{color:#3b82f6}.ft-bib{color:#a78bfa}.ft-pdf{color:#ef4444}.ft-sty{color:#f59e0b}.ft-img{color:#14b8a6}.ft-md{color:#64748b}.ft-json{color:#eab308}.ft-file{color:#94a3b8}.file-tree-more{width:20px;height:20px;color:var(--ol-muted);opacity:0;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:0 0 20px;place-items:center;transition:opacity 80ms ease-out,background-color 80ms ease-out,transform .1s ease-out;display:inline-grid}.file-tree-row:hover .file-tree-more{opacity:1}.file-tree-more:hover{background:color-mix(in srgb, var(--ol-text) 10%, transparent);color:var(--ol-text)}.file-tree-more:active{transform:scale(.94)}.main-badge{letter-spacing:.04em;color:color-mix(in srgb, var(--studio-green,var(--ol-green)) 80%, var(--ol-text));background:color-mix(in srgb, var(--studio-green,var(--ol-green)) 14%, transparent);border:0;border-radius:3px;flex:none;padding:0 4px;font-size:9px;font-weight:700;line-height:14px}.tree-empty{color:var(--ol-muted);text-align:center;padding:18px 10px;font-size:12px}.file-menu{z-index:60;background:color-mix(in srgb, var(--ol-panel) 92%, transparent);-webkit-backdrop-filter:blur(18px)saturate(170%);border:1px solid color-mix(in srgb, var(--ol-text) 12%, transparent);min-width:168px;box-shadow:0 12px 32px color-mix(in srgb, var(--ol-text) 14%, transparent);transform-origin:0 0;opacity:1;border-radius:10px;flex-direction:column;padding:4px;transition:opacity .18s ease-out,transform .18s ease-out;display:flex;position:fixed;transform:scale(1)}@starting-style{.file-menu{opacity:0;transform:scale(.97)}}.file-menu-sep{background:color-mix(in srgb, var(--ol-text) 10%, transparent);height:1px;margin:4px 6px}.file-menu button{text-align:left;color:var(--ol-text);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:13px;transition:background-color 80ms ease-out,transform .1s ease-out}.file-menu button:hover:not(:disabled){background:color-mix(in srgb, var(--ol-text) 7%, transparent)}.file-menu button:active:not(:disabled){transform:scale(.98)}.file-menu button:disabled{opacity:.45;cursor:default}.file-menu button.danger{color:var(--ol-danger)}.tree-footer{border-top:1px solid color-mix(in srgb, var(--ol-text) 8%, transparent);color:var(--ol-muted);background:color-mix(in srgb, var(--ol-panel) 80%, transparent);justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:11px;display:flex}.tree-footer label{cursor:pointer;align-items:center;gap:6px;display:flex}.ol-filetree.is-dragover{outline:2px dashed color-mix(in srgb, var(--studio-green,var(--ol-green)) 70%, transparent);outline-offset:-4px}.drop-hint{background:color-mix(in srgb, var(--studio-green,var(--ol-green)) 12%, transparent);color:var(--ol-green-dark,var(--ol-text));pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;font-size:13px;font-weight:600;display:grid;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.ft-twistie,.ft-head-btn,.file-tree-more,.file-menu,.file-menu button,.tab,.tab-close{transition:none}}.ol-workspace.layout-split{grid-template-columns:var(--split-ratio,50%) 6px 1fr}.ol-splitter{cursor:col-resize;background:var(--ol-border-soft);flex:0 0 6px;justify-content:center;align-items:center;display:flex;position:relative}.ol-splitter:after{content:"";position:absolute;inset:0 -5px}.sync-rail{z-index:2;flex-direction:column;gap:6px;display:flex;position:relative}.sync-btn{border:1px solid var(--ol-border);background:var(--ol-panel);width:22px;height:22px;color:var(--ol-text);box-shadow:var(--ol-shadow);cursor:pointer;border-radius:50%;place-items:center;font-size:12px;line-height:1;display:grid}.sync-btn:hover{background:var(--ol-green);color:#fff;border-color:var(--ol-green)}.sync-btn.on{background:var(--ol-green-soft);color:var(--ol-green-dark);border-color:var(--ol-green)}.pdf-viewer{background:var(--ol-viewer-bg);flex:1;height:100%;min-height:0;display:flex}.pdf-viewer-main{flex:1;min-width:0;min-height:0;position:relative;overflow:auto}.pdf-doc-loading{z-index:2;background:var(--ol-viewer-bg,#525659);position:absolute;inset:0}.pdf-viewer-pages{box-sizing:border-box;flex-direction:column;align-items:center;gap:12px;width:max-content;min-width:100%;min-height:100%;padding:12px;display:flex}.pdf-page{background:#fff;position:relative;box-shadow:0 1px 4px #0000002e}.pdf-page-canvas{image-rendering:auto;width:100%;height:100%;display:block}.pdf-zoom-controls{border:1px solid var(--ol-border);background:var(--ol-panel);border-radius:8px;align-items:center;height:28px;display:inline-flex;overflow:hidden}.pdf-zoom-btn{flex:0 0 28px;place-items:center;gap:0;width:28px;min-width:28px;height:100%;padding:0;display:grid;background:0 0!important;border:0!important;border-radius:0!important}.pdf-zoom-icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;width:14px;height:14px;display:block}.pdf-zoom-btn+.pdf-zoom-value,.pdf-zoom-btn+.pdf-zoom-input,.pdf-zoom-value+.pdf-zoom-btn,.pdf-zoom-input+.pdf-zoom-btn{border-left:1px solid var(--ol-border)}.pdf-zoom-value{min-width:52px;height:28px;color:var(--ol-text);font-variant-numeric:tabular-nums;cursor:text;background:0 0;border:0;padding:0 6px;font-size:12px;font-weight:600}.pdf-zoom-input{background:var(--ol-surface);width:52px;height:28px;color:inherit;text-align:center;border:0;border-radius:0;padding:0 4px;font-size:12px}.pdf-viewer.select-text .pdf-page-canvas{pointer-events:none}.pdf-viewer.click-to-source .pdf-page{cursor:crosshair}.pdf-viewer.click-to-source .textLayer{pointer-events:none;-webkit-user-select:none;user-select:none}.textLayer{opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;-webkit-user-select:text;user-select:text;transform-origin:0 0;z-index:2;line-height:1;position:absolute;inset:0;overflow:hidden}.textLayer span,.textLayer br{color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}.textLayer ::selection{background:color-mix(in srgb, var(--ol-info) 35%, transparent)}.pdf-outline{border-right:1px solid var(--ws-hairline,var(--ol-border));background:var(--ol-panel);width:220px;color:var(--ol-text);z-index:1;flex-direction:column;flex:0 0 220px;min-height:0;display:flex}:root[data-theme=dark] .pdf-outline,:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline{color:#eef2f7;background:#313841;border-right-color:#3d4652}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline{color:#eef2f7;background:#313841;border-right-color:#3d4652}}.pdf-outline-head{border-bottom:1px solid var(--ws-hairline,var(--ol-border-soft));height:36px;color:inherit;align-items:center;padding:0 12px;font-size:12px;font-weight:700;display:flex}:root[data-theme=dark] .pdf-outline-head,:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline-head{border-bottom-color:#3d4652}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline-head{border-bottom-color:#3d4652}}.pdf-outline-body{flex:1;min-height:0;padding:8px 0;overflow:auto}.pdf-outline-empty{color:color-mix(in srgb, currentColor 72%, transparent);padding:12px;font-size:12px}.pdf-outline-list{margin:0;padding:0;list-style:none}.pdf-outline-list .pdf-outline-list{padding-left:12px}.pdf-outline-item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;padding:5px 12px;font-size:12px;line-height:1.35;display:block}.pdf-outline-item:hover{background:color-mix(in srgb, currentColor 10%, transparent);color:inherit}:root[data-theme=dark] .pdf-outline-item:hover,:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline-item:hover{background:#3a434e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .pdf-outline-item:hover{background:#3a434e}}.pdf-tool-toggle.on{background:var(--ol-green-soft);color:var(--ol-green-dark);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ol-green) 40%, transparent)}.pdf-sync-hl{pointer-events:none;z-index:3;background:#138a0747;border:1px solid #138a07d9;border-radius:2px;animation:1.2s ease-out syncPulse;position:absolute}.pdf-sync-hint{margin-right:8px;font-size:11px}@keyframes syncPulse{0%{box-shadow:0 0 #138a0773}to{box-shadow:0 0 0 10px #138a0700}}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing.tasks-v-resizing{cursor:row-resize}body.resizing:has(.tasks-splitter:active){cursor:row-resize}body.resizing:has(.codex-splitter:active){cursor:row-resize}body.resizing:has(.chat-splitter:active){cursor:row-resize}body.resizing .pdf-viewer{pointer-events:none}.ol-pdf-body.with-logs{grid-template-rows:1fr minmax(160px,34%)}.ol-pdf-view,.ol-pdf-view iframe{background:var(--ol-viewer-bg)}.ol-pdf-empty{background:var(--ol-viewer-bg);color:#c9ced6}.compile-time{white-space:nowrap;font-size:11px}.btn-recompile{border-radius:8px;align-items:center;gap:7px;height:28px;padding:0 12px;font-size:12px;display:inline-flex}.ol-logs-btn.has-warning{border-color:var(--ol-warn);background:var(--ol-warn-soft);color:var(--ol-warn)}.ol-logs-panel{border-top:1px solid var(--ol-border);background:var(--ol-panel);flex-direction:column;min-height:0;display:flex}.logs-tabs{background:var(--ol-surface);border-bottom:1px solid var(--ws-separator);align-items:center;gap:4px;padding:4px 8px;display:flex}.logs-tabs button{color:var(--ol-muted);background:0 0;border:0;border-radius:4px;padding:5px 10px;font-size:12px}.logs-tabs button.on{background:var(--ol-panel);color:var(--ol-text);font-weight:600}.issue-list{flex:1;min-height:0;padding:6px;overflow:auto}.issue-empty{text-align:center;padding:16px}.issue{text-align:left;width:100%;color:var(--ol-text);background:0 0;border:0;border-left:3px solid #0000;border-radius:4px;align-items:flex-start;gap:10px;padding:7px 9px;display:flex}.issue:hover:not(:disabled){background:var(--ol-hover)}.issue:disabled{cursor:default;opacity:1}.issue-error{border-left-color:var(--ol-danger)}.issue-warning{border-left-color:var(--ol-warn)}.issue-badge{color:#fff;border-radius:3px;flex:none;padding:2px 5px;font-size:10px;font-weight:700}.issue-error .issue-badge{background:var(--ol-danger)}.issue-warning .issue-badge{background:var(--ol-warn)}.issue-text{flex-direction:column;gap:2px;min-width:0;display:flex}.issue-message{word-break:break-word;font-size:12.5px;line-height:1.45}.issue-loc{font-family:var(--mono);color:var(--ol-muted);font-size:11px}.ol-logs{background:var(--ol-log-bg);min-height:0;color:var(--ol-log-text);flex:1}.sync-error-banner{background:var(--ol-danger-soft);border-bottom:1px solid var(--ol-danger);color:var(--ol-danger);flex-direction:column;gap:2px;padding:8px 14px;font-size:12.5px;display:flex}.tunnel-banner{z-index:1200;background:color-mix(in srgb, var(--ol-warn,#b78100) 16%, var(--ol-panel,#fff));border-bottom:1px solid color-mix(in srgb, var(--ol-warn,#b78100) 45%, var(--ws-separator,#ddd));color:var(--ol-text);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:9px 14px;font-size:13px;display:flex;position:sticky;top:0}.tunnel-banner strong{color:var(--ol-warn,#b78100);font-weight:650}.tunnel-banner span{color:var(--ol-muted)}.share-readonly-banner{background:var(--ol-warn-soft);border-bottom:1px solid var(--ol-warn);color:var(--ol-warn);padding:7px 14px;font-size:12.5px}.asset-preview{background:var(--ol-surface);place-content:center;justify-items:center;gap:12px;height:100%;padding:24px;display:grid;overflow:auto}.asset-preview img{border:1px solid var(--ol-border);background:#fff;border-radius:4px;max-width:100%;max-height:70vh}.setting-divider{background:var(--ol-border-soft);height:1px;margin:4px 0}.hint{line-height:1.5}.menu-sep{background:var(--ol-border-soft);height:1px;margin:4px 2px}.ol-menu-dd kbd{float:right;font-family:var(--mono);color:var(--ol-muted);border:1px solid var(--ol-border-soft);border-radius:3px;margin-left:10px;padding:0 4px;font-size:10px}.linkish{color:var(--ol-info);background:0 0;border:0;padding:0 2px;text-decoration:underline}.token-warn{color:var(--ol-warn);background:var(--ol-warn-soft);border:1px solid var(--ol-warn);border-radius:3px;padding:2px 7px;font-size:12px}.crash-screen{text-align:center;place-content:center;justify-items:center;gap:12px;height:100%;padding:32px;display:grid}.crash-screen pre{background:var(--ol-surface);border:1px solid var(--ol-border);max-width:min(680px,90vw);font-family:var(--mono);text-align:left;border-radius:6px;padding:12px;font-size:12px;overflow:auto}.crash-actions{gap:8px;display:flex}.ol-side-collab{opacity:1;min-width:0;min-height:0;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);overflow:hidden;transform:translate(0)}.ol-side-collab.is-collapsed{pointer-events:none;opacity:0;border:0;flex-basis:0;width:0;overflow:hidden;transform:translate(8px)}.collab-pane{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.collab-pane.is-hidden{display:none}.notes-panel,.chat-panel,.tasks-panel,.chat-tasks-shell{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.chat-tasks-shell>.collab-pane{flex-direction:column;flex:1;min-height:0;display:flex}.chat-tasks-shell>.collab-pane.is-hidden{display:none}.notes-head,.chat-head{border-bottom:1px solid var(--ws-separator);letter-spacing:-.01em;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:flex}.chat-tabs{align-items:center;gap:2px;min-width:0;display:inline-flex}.chat-tabs button{color:var(--ol-muted);font:inherit;letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600}.chat-tabs button.active,.chat-tabs button:hover{background:var(--ol-hover);color:var(--ol-text)}.chat-tasks-head-actions{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.tasks-add-btn{width:24px;height:24px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;transition:background-color .1s ease-out,color .1s ease-out,transform .1s ease-out;display:inline-grid}.tasks-add-btn:hover:not(:disabled),.tasks-add-btn.is-active{background:color-mix(in srgb, var(--ol-text) 8%, transparent);color:var(--ol-text)}.tasks-add-btn:active:not(:disabled){transform:scale(.94)}.tasks-add-btn:disabled{opacity:.45;cursor:not-allowed}.tasks-add-btn.is-done{color:var(--ol-green)}.tasks-ai-btn{color:#8d9198;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;width:24px;height:24px;padding:0;transition:background-color .1s ease-out,color .1s ease-out,transform .1s ease-out,opacity .1s ease-out;display:inline-grid;position:relative}.tasks-ai-plane{width:18px;height:18px;display:block}.tasks-ai-label{letter-spacing:-.05em;color:var(--ol-text);pointer-events:none;font-size:6px;font-weight:800;line-height:1;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}.tasks-ai-btn:hover:not(:disabled),.tasks-ai-btn.is-active{background:color-mix(in srgb, var(--ol-text) 8%, transparent);color:#6f737a}.tasks-ai-btn:hover:not(:disabled) .tasks-ai-label,.tasks-ai-btn.is-active .tasks-ai-label{color:var(--ol-text)}.tasks-ai-btn:active:not(:disabled){transform:scale(.94)}.tasks-ai-btn:disabled{opacity:.45;cursor:not-allowed}.tasks-panel.is-hidden{display:none}.tasks-compose{border-bottom:1px solid var(--ws-separator);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.tasks-compose textarea,.tasks-edit{resize:vertical;border:1px solid var(--ol-border);background:var(--ol-surface);width:100%;color:var(--ol-text);font:inherit;border-radius:6px;padding:8px;font-size:13px}.tasks-compose-actions{justify-content:flex-end;gap:8px;display:flex}.tasks-compose-actions .btn-secondary{min-height:28px;padding:4px 10px;font-size:12px}.tasks-compose-hint{margin:0;font-size:12px}.tasks-quote-list{flex-direction:column;gap:6px;width:100%;margin:6px 0 0;display:flex}.tasks-quote{flex-direction:column;align-items:flex-start;gap:4px;width:100%;margin:0;display:flex}.tasks-quote-jump,.tasks-quote.is-draft .tasks-quote-jump{border:0;border-left:3px solid color-mix(in srgb, #7d8b99 55%, var(--ol-border));background:color-mix(in srgb, #8aa0b4 14%, var(--ol-surface));width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;flex-direction:row;align-items:flex-start;gap:8px;margin:0;padding:6px 8px;font-size:12px;font-style:normal;display:flex}.tasks-quote-copy{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.tasks-quote-file{color:var(--ol-muted);font-size:11px}.tasks-quote-text{font:inherit;font-family:inherit;font-size:12px;font-style:normal;font-weight:inherit;color:color-mix(in srgb, var(--ol-text) 78%, var(--ol-muted));white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:4;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.tasks-quote-clear,.tasks-quote-add{color:var(--ol-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.tasks-quote-clear:hover,.tasks-quote-add:hover{color:var(--ol-text)}.tasks-quote-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.tasks-item.is-active{outline:0}.tasks-split{flex-direction:column;flex:1;min-height:0;display:flex}.tasks-pane{flex-direction:column;min-height:0;display:flex;overflow:hidden}.tasks-pane-open{flex:auto}.tasks-resolved{border-top:1px solid var(--ws-separator);flex-direction:column;flex:none;min-height:0;display:flex}.tasks-resolved.is-open{flex:0 auto;max-height:40%}.tasks-resolved .tasks-list[hidden]{display:none}.tasks-resolved.is-open .tasks-list{flex:auto;min-height:0}.tasks-resolved-bar{width:100%;height:30px;color:var(--ol-text);font:inherit;letter-spacing:.02em;text-align:left;cursor:pointer;background:0 0;border:0;flex:0 0 30px;align-items:center;gap:6px;margin:0;padding:0 12px;font-size:11px;font-weight:600;display:flex}.tasks-resolved.is-open .tasks-resolved-bar{border-top:1px solid var(--ws-separator)}.tasks-resolved-bar:hover{background:var(--ol-hover)}.tasks-resolved-bar:focus-visible{outline:1px solid color-mix(in srgb, var(--ol-text) 35%, transparent);outline-offset:-1px}.tasks-resolved-bar .muted{font-weight:500}.tasks-pane-label{letter-spacing:.02em;color:var(--ol-text);flex-shrink:0;align-items:center;gap:6px;padding:6px 12px 4px;font-size:11px;font-weight:600;display:flex}.tasks-pane-label .muted{font-weight:500}.tasks-splitter{cursor:row-resize;touch-action:none;background:0 0;flex:0 0 5px;position:relative}.tasks-splitter:before{content:"";background:var(--ws-separator);height:1px;position:absolute;top:2px;left:10px;right:10px}.tasks-splitter:hover:before,.tasks-splitter:focus-visible:before{background:color-mix(in srgb, var(--ol-text) 35%, var(--ws-separator))}.tasks-list{flex-direction:column;flex:1;gap:4px;min-height:0;padding:4px 8px 8px;display:flex;overflow:auto}.tasks-items{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.tasks-item{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:8px;font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Helvetica Neue,Arial,sans-serif;overflow:visible}.tasks-item.is-editing{cursor:default}.tasks-item:hover{background:var(--ol-hover)}.tasks-item.is-editing{border-color:color-mix(in srgb, var(--ol-text) 32%, var(--ol-border));background:color-mix(in srgb, var(--ol-text) 7%, var(--ol-panel))}.tasks-item.is-selected:not(.is-editing){background:0 0;border-color:#0000}.tasks-item.is-selected:not(.is-editing):hover{background:var(--ol-hover)}.tasks-item.is-selected:not(.is-editing) .tasks-index{color:var(--ol-text);text-decoration:underline;-webkit-text-decoration-color:var(--ol-text);text-decoration-color:var(--ol-text);text-underline-offset:2px;text-decoration-thickness:1.5px}.tasks-row{align-items:flex-start;gap:8px;display:flex}.tasks-index{min-width:1.1em;color:var(--ol-muted);flex-shrink:0;margin-top:1px;font-size:12px;font-weight:700}.tasks-check{cursor:pointer;flex-shrink:0;align-items:flex-start;margin:0;display:inline-flex}.tasks-check input{appearance:none;border:1px solid var(--ol-border);background-color:var(--ol-surface);cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:10px 10px;border-radius:3px;flex-shrink:0;width:14px;height:14px;margin:3px 0 0}.tasks-check input:checked{background-color:var(--ol-muted);border-color:var(--ol-muted);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E")}.tasks-check input:checked:after{content:none}.tasks-check input:disabled{opacity:.55;cursor:not-allowed}.tasks-body{text-align:left;min-width:0;font:inherit;white-space:pre-wrap;word-break:break-word;color:var(--ol-text);background:0 0;border:0;flex:1;margin:0;padding:0;font-size:13px;line-height:1.45;overflow:visible}.tasks-item.is-resolved .tasks-body{color:var(--ol-muted);text-decoration:line-through}.tasks-edit{flex:1;min-width:0}.tasks-hover-meta{display:none}.notes-filters{gap:2px;display:inline-flex}.notes-filters button{color:var(--ol-muted);background:0 0;border:0;border-radius:4px;padding:3px 7px;font-size:11px}.notes-filters button.active,.notes-filters button:hover{background:var(--ol-hover);color:var(--ol-text)}.notes-compose{border-bottom:1px solid var(--ws-separator);flex-direction:column;gap:8px;padding:10px 12px;display:flex}.notes-compose textarea,.notes-reply-box textarea,.chat-compose textarea{resize:vertical;border:1px solid var(--ol-border);background:var(--ol-surface);width:100%;color:var(--ol-text);font:inherit;border-radius:6px;padding:8px;font-size:13px}.notes-quote{border-left:3px solid var(--ol-green);background:var(--ol-hover);color:var(--ol-muted);white-space:pre-wrap;max-height:72px;margin:0;padding:6px 8px;font-size:12px;overflow:auto}.notes-list{flex:1;min-height:0;margin:0;padding:8px;list-style:none;overflow:auto}.notes-empty,.chat-empty{padding:12px;font-size:13px}.notes-item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:8px;padding:8px;display:flex}.notes-item:hover{background:var(--ol-hover)}.notes-item.active{background:var(--ol-hover);border-color:var(--ol-border)}.notes-item.resolved{opacity:.65}.notes-avatar,.chat-avatar{color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.notes-avatar.small{width:20px;height:20px;font-size:10px}.notes-item-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notes-item-body strong{font-size:12px}.notes-item-body em,.notes-item-body span{color:var(--ol-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.notes-item-body em{color:var(--ol-text)}.notes-badge{color:var(--ol-muted);white-space:nowrap;font-size:10px}.notes-thread{border-top:1px solid var(--ws-separator);flex-direction:column;gap:8px;max-height:45%;padding:10px 12px;display:flex;overflow:auto}.notes-thread-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.notes-replies{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.notes-replies li{gap:8px;display:flex}.notes-replies strong{font-size:12px;display:block}.notes-replies time{color:var(--ol-muted);font-size:11px}.notes-replies p{white-space:pre-wrap;margin:4px 0 0;font-size:13px}.notes-reply-box{flex-direction:column;gap:6px;display:flex}.chat-workspace{flex-direction:column;flex:1;min-height:0;display:flex}.chat-list{flex-direction:column;gap:12px;min-height:0;padding:12px;display:flex;overflow:auto}.chat-splitter{cursor:row-resize;touch-action:none;z-index:3;background:0 0;flex:0 0 7px;position:relative}.chat-splitter:before{content:"";background:var(--ws-separator);height:1px;position:absolute;top:3px;left:0;right:0}.chat-splitter:hover:before,.chat-splitter:focus-visible:before{background:color-mix(in srgb, var(--ol-text) 40%, var(--ws-separator))}.chat-bubble{align-items:flex-start;gap:8px;display:flex}.chat-bubble.mine{flex-direction:row-reverse}.chat-bubble-body{background:var(--ol-hover);border-radius:10px;max-width:85%;padding:8px 10px}.chat-bubble.mine .chat-bubble-body{background:color-mix(in srgb, var(--ol-green) 18%, var(--ol-panel))}.chat-meta{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.chat-meta strong{font-size:12px}.chat-meta time{color:var(--ol-muted);font-size:11px}.chat-bubble-body p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px}.chat-compose{border-top:0;flex-direction:column;gap:8px;min-height:0;padding:10px 12px;display:flex;position:relative;overflow:visible}.chat-compose .btn-primary{flex-shrink:0}.chat-workspace .chat-compose textarea{resize:none;flex:1;min-height:40px}.chat-bubble.mention-me .chat-bubble-body{outline:1px solid color-mix(in srgb, var(--ol-green) 55%, transparent);background:color-mix(in srgb, var(--ol-green) 12%, var(--ol-hover))}.chat-mention{color:var(--ol-green);font-weight:600}.chat-mention.me{background:color-mix(in srgb, var(--ol-green) 18%, transparent);border-radius:3px;padding:0 2px}.chat-mention-menu{background:var(--ol-panel);border:1px solid var(--ol-border);z-index:5;border-radius:8px;max-height:220px;margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% - 4px);left:12px;right:12px;overflow:auto;box-shadow:0 8px 24px #0000002e}.chat-mention-menu button{width:100%;color:var(--ol-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;display:flex}.chat-mention-menu button:hover,.chat-mention-menu button.active{background:var(--ol-hover)}.chat-mention-menu em{color:var(--ol-muted);font-size:11px;font-style:normal;display:block}.chat-avatar.tiny{flex:none;width:22px;height:22px;font-size:11px}.chat-unread-chip{font-weight:600;color:var(--ol-danger)!important}.cm-annotation-mark{background:#e6770047;border-bottom:2px solid #e67700}.cm-annotation-mark.active{background:#e677006b}.cm-task-quote-mark{background:#8aa0b438;border-bottom:2px solid #7d8b998c}.cm-task-quote-mark.active{background:#8aa0b457}.cm-task-quote-gutter .cm-gutterElement{color:#7d8b99;min-width:1.1em;padding:0 2px}.cm-task-quote-gutter .cm-activeLineGutter{color:#7d8b99}.cm-task-quote-gutter-mark{min-width:1.1em;font-size:10px;font-weight:600;line-height:inherit;color:#8aa0b4;text-align:center;display:inline-block}.cm-conflict-card{box-sizing:border-box;border:1px solid var(--ol-border);border-radius:var(--radius-md);background:var(--ol-panel);width:100%;box-shadow:var(--ol-shadow-sm);color:var(--ol-text);font-family:var(--font);margin:4px 0 8px;padding:10px 12px}.cm-conflict-card.is-active{border-color:color-mix(in srgb, var(--ol-info) 55%, var(--ol-border))}.cm-conflict-head{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.cm-conflict-head strong{font-size:13px}.cm-conflict-head span{color:var(--ol-muted);font-size:11.5px;line-height:1.45}.cm-conflict-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}@media (width<=900px){.cm-conflict-grid{grid-template-columns:1fr}}.cm-conflict-pane{appearance:none;border:1px solid var(--ol-border-soft);background:var(--ol-surface);width:100%;min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;margin:0;padding:0;transition:border-color .12s ease-out,background-color .12s ease-out,box-shadow .12s ease-out,transform .1s ease-out;display:flex;overflow:hidden}.cm-conflict-pane.is-current{border-color:color-mix(in srgb, var(--review-del-edge) 28%, var(--ol-border-soft))}.cm-conflict-pane.is-proposed{border-color:color-mix(in srgb, var(--review-add-edge) 32%, var(--ol-border-soft))}.cm-conflict-pane:hover:not(:disabled){background:var(--ol-hover)}.cm-conflict-pane.is-current:hover:not(:disabled){border-color:color-mix(in srgb, var(--review-del-edge) 55%, var(--ol-border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--review-del-edge) 22%, transparent)}.cm-conflict-pane.is-proposed:hover:not(:disabled){border-color:color-mix(in srgb, var(--review-add-edge) 55%, var(--ol-border));background:var(--review-add-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--review-add-edge) 22%, transparent)}.cm-conflict-pane:active:not(:disabled){transform:scale(.985)}.cm-conflict-pane:focus-visible{outline:2px solid var(--ol-info);outline-offset:2px}.cm-conflict-pane:disabled{cursor:default;opacity:.72}@media (prefers-reduced-motion:reduce){.cm-conflict-pane{transition:none}.cm-conflict-pane:active:not(:disabled){transform:none}}.cm-conflict-label{border-bottom:1px solid var(--ol-border-soft);color:var(--ol-muted);padding:5px 8px;font-size:11px;font-weight:600}.cm-conflict-body{max-height:220px;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;margin:0;padding:6px 0;font-size:12px;line-height:1.5;overflow:auto}.cm-conflict-line{border-left:3px solid #0000;padding:0 8px}.cm-conflict-line.is-add{background:var(--review-add-bg);color:var(--review-add-fg);border-left-color:var(--review-add-edge)}.cm-conflict-line.is-del{background:var(--review-del-bg);color:var(--review-del-fg);border-left-color:var(--review-del-edge)}.notes-conflicts{border-bottom:1px solid var(--ol-border-soft);margin:0 0 14px;padding:0 0 12px}.notes-conflicts-count{background:var(--review-del-bg);color:var(--review-del-fg);border-radius:999px;margin-left:6px;padding:0 6px;font-size:11px;font-weight:600}.notes-conflicts-hint{margin:0 12px 8px;font-size:12px;line-height:1.45}.notes-conflict-list{margin:0;padding:0 8px;list-style:none}.notes-conflict-item{border:1px solid var(--ol-border-soft);background:var(--ol-surface);width:100%;color:var(--ol-text);text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:3px;margin-bottom:6px;padding:8px 10px;display:flex}.notes-conflict-item.active{border-color:color-mix(in srgb, var(--ol-info) 50%, var(--ol-border))}.notes-conflict-item strong{font-size:12.5px}.notes-conflict-place{color:var(--ol-muted);font-size:11px}.notes-conflict-item em{color:var(--ol-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-style:normal;overflow:hidden}.notes-conflict-detail{margin:8px 12px 0}.notes-conflict-preview{grid-template-columns:1fr 1fr;gap:8px;margin-top:6px;display:grid}.notes-conflict-preview span{color:var(--ol-muted);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.notes-conflict-preview pre{background:var(--ol-surface);border:1px solid var(--ol-border-soft);max-height:140px;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;border-radius:6px;margin:0;padding:6px 8px;font-size:11px;overflow:auto}.cm-diff-add{background:#2ea04338}.cm-diff-del-block{box-sizing:border-box;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.cm-diff-del-line{color:color-mix(in srgb, var(--ol-text) 72%, #f85149);font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;word-break:break-word;opacity:.92;background:#f8514938;border-left:3px solid #f85149b3;padding:0 2px 0 6px}:root[data-theme=dark] .cm-diff-add{background:#3fb95047}:root[data-theme=dark] .cm-diff-del-line{background:#f8514947}.codex-panel{background:var(--ol-panel);flex-direction:column;flex:1;gap:0;min-width:0;height:100%;min-height:0;font-size:13px;display:flex;overflow:hidden}.codex-conflicts{border-bottom:1px solid var(--ol-border-soft);background:var(--ol-surface);flex:none;max-height:42%;padding:8px 10px 10px;overflow:auto}.codex-ai-api-inbox{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.codex-ai-api-inbox-lead{margin:0;padding:12px 14px 0;font-size:12px;line-height:1.5}.codex-conflicts.is-inbox{border-bottom:0;flex:1;max-height:none}.codex-thread-item.is-inbox{box-shadow:inset 2px 0 0 var(--ol-text)}.codex-inbox-count{background:var(--review-del-bg);color:var(--review-del-fg);border-radius:999px;padding:0 6px;font-size:11px;font-weight:600}.codex-conflicts-head{align-items:center;gap:6px;display:flex}.codex-conflicts-head span{background:var(--review-del-bg);color:var(--review-del-fg);border-radius:999px;padding:0 6px;font-size:11px;font-weight:600}.codex-conflicts-hint{margin:4px 0 8px;font-size:11.5px;line-height:1.45}.codex-conflict-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.codex-conflict-card{border:1px solid var(--ol-border-soft);background:var(--ol-panel);border-radius:8px;padding:8px}.codex-conflict-card.is-active{border-color:color-mix(in srgb, var(--ol-info) 50%, var(--ol-border))}.codex-conflict-card.is-pending{opacity:.72}.codex-conflict-jump{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:2px;padding:0;display:flex}.codex-conflict-jump span{color:var(--ol-muted);font-size:11px}.codex-conflict-panes{grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;display:grid}@media (width<=900px){.codex-conflict-panes{grid-template-columns:1fr}}.codex-conflict-panes .cm-conflict-body{max-height:88px;font-size:11px}.codex-topbar{z-index:3;isolation:isolate;border-bottom:1px solid var(--ws-separator);background:color-mix(in srgb, var(--ol-panel) 92%, transparent);-webkit-backdrop-filter:blur(14px)saturate(150%);justify-content:space-between;align-items:center;gap:8px;padding:11px 12px 10px;display:flex;position:relative}.codex-topbar-main,.codex-topbar-actions{align-items:center;gap:6px;min-width:0;display:flex}.codex-topbar-main{flex:1;overflow:hidden}.codex-topbar-actions{flex-shrink:0;min-width:auto}.codex-topbar-title{align-items:center;gap:7px;min-width:0;display:flex}.codex-topbar-title strong{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.codex-icon-btn{width:30px;height:30px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.codex-icon-btn:hover,.codex-icon-btn.active,.codex-topbar-btn:hover,.codex-topbar-btn.active{background:var(--ol-hover);color:var(--ol-text)}.codex-topbar-btn{height:30px;color:var(--ol-muted);font:inherit;letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex;position:relative}.codex-inbox-badge{background:var(--review-del-bg);min-width:14px;height:14px;color:var(--review-del-fg);text-align:center;border-radius:999px;padding:0 4px;font-size:9px;font-weight:700;line-height:14px;position:absolute;top:2px;right:2px}.codex-icon-btn:active,.codex-topbar-btn:active,.codex-new-btn:active,.codex-form .btn-primary:active,.codex-actions .ol-ghost:active{transform:scale(.97)}.codex-new-btn{height:30px;color:var(--ol-muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.codex-new-btn:hover{background:var(--ol-hover);color:var(--ol-text)}.codex-new-btn:disabled,.codex-icon-btn:disabled,.codex-topbar-btn:disabled{opacity:.45;cursor:not-allowed}.codex-new-btn.block,.ol-ghost.block{justify-content:center;width:100%}.codex-pill{letter-spacing:.02em;color:var(--ol-muted);background:var(--ol-hover);border-radius:999px;flex-shrink:0;align-items:center;padding:2px 7px;font-size:10px;font-weight:600;line-height:1.2;display:inline-flex}.codex-pill.tiny{padding:1px 6px}.codex-pill.shared{color:color-mix(in srgb, var(--ol-green) 80%, var(--ol-text));background:color-mix(in srgb, var(--ol-green) 16%, transparent)}.codex-new-wrap{flex-shrink:0;display:inline-flex;position:relative}.codex-new-menu{z-index:90;border:1px solid var(--ws-hairline,var(--ol-border-soft));background:var(--ol-panel);border-radius:12px;min-width:132px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #10182824,0 2px 8px #1018280f}.codex-new-menu button{width:100%;min-height:32px;color:var(--ol-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:12px;display:block}.codex-new-menu button:hover{background:var(--ol-hover)}.codex-history{flex-direction:column;flex:1;min-height:0;display:flex}.codex-history-search{padding:10px 12px 6px}.codex-history-search input{border:1px solid var(--ol-border-soft);background:var(--ol-surface);width:100%;color:var(--ol-text);font:inherit;border-radius:9px;padding:8px 10px;font-size:12px}.codex-history-list{flex-direction:column;flex:1;gap:2px;min-height:0;padding:4px 8px 12px;display:flex;overflow:auto}.codex-thread-item{border-radius:10px;align-items:stretch;gap:2px;transition:background .12s ease-out;display:flex;position:relative}.codex-thread-item:hover,.codex-thread-item.active{background:var(--ol-hover)}.codex-thread-item.running .codex-thread-title{color:color-mix(in srgb, var(--ol-green) 70%, var(--ol-text))}.codex-thread-main{text-align:left;min-width:0;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;gap:4px;padding:9px 8px 9px 10px;display:flex}.codex-thread-title-row{align-items:center;gap:6px;min-width:0;display:flex}.codex-thread-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:560;overflow:hidden}.codex-running-dot{background:var(--ol-green);width:6px;height:6px;box-shadow:0 0 0 0 color-mix(in srgb, var(--ol-green) 50%, transparent);border-radius:50%;flex-shrink:0;animation:1.4s ease-out infinite codex-pulse}.codex-thread-sub{min-width:0;color:var(--ol-muted);align-items:center;gap:6px;font-size:11px;display:flex}.codex-thread-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.codex-thread-tools{align-items:flex-start;padding:6px 4px 0 0;display:flex;position:relative}.codex-thread-more{width:28px;height:28px;color:var(--ol-muted);cursor:pointer;font:inherit;letter-spacing:.08em;background:0 0;border:0;border-radius:7px;line-height:1}.codex-thread-more:hover{background:color-mix(in srgb, var(--ol-panel) 70%, transparent);color:var(--ol-text)}.codex-thread-menu{z-index:5;border:1px solid var(--ol-border-soft);background:var(--ol-panel);min-width:128px;box-shadow:var(--ol-shadow-sm);border-radius:10px;flex-direction:column;gap:2px;padding:4px;animation:.14s ease-out codex-sheet-in;display:flex;position:absolute;top:32px;right:4px}.codex-thread-menu button{color:var(--ol-text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:12px}.codex-thread-menu button:hover{background:var(--ol-hover)}.codex-thread-menu button.danger{color:var(--ol-danger)}.codex-rename-form{flex:1;align-items:center;gap:6px;padding:8px;display:flex}.codex-rename-form input{border:1px solid var(--ol-border-soft);background:var(--ol-panel);min-width:0;color:var(--ol-text);font:inherit;border-radius:8px;flex:1;padding:6px 8px;font-size:12px}.codex-history-foot{border-top:1px solid var(--ws-separator);flex-direction:column;gap:6px;padding:10px 12px 12px;display:flex}.codex-sheet{border-bottom:1px solid var(--ws-separator);flex-direction:column;gap:8px;padding:10px 12px;animation:.18s ease-out codex-sheet-in;display:flex}.codex-sheet-head{color:var(--ol-muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.codex-sheet textarea{resize:vertical;border:1px solid var(--ol-border-soft);background:var(--ol-surface);width:100%;color:var(--ol-text);font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:inherit;border-radius:12px;padding:10px 12px;line-height:1.45}.codex-workspace{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.codex-messages{flex-direction:column;flex:1;gap:18px;min-height:0;padding:16px 14px;display:flex;overflow:auto}.codex-splitter{cursor:row-resize;touch-action:none;z-index:3;background:0 0;flex:0 0 7px;position:relative}.codex-splitter:before{content:"";background:var(--ws-separator);height:1px;position:absolute;top:3px;left:0;right:0}.codex-splitter:hover:before,.codex-splitter:focus-visible:before{background:color-mix(in srgb, var(--ol-text) 40%, var(--ws-separator))}.codex-composer-pane{z-index:1;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.codex-error-thread{flex-shrink:0;max-height:4.8em;margin:0 14px 8px;overflow:auto}.codex-composer-pane .codex-form,.codex-composer-pane .codex-composer-box{flex:1;min-width:0;max-width:100%;min-height:0}.codex-composer-pane .codex-composer-box textarea{flex:1;min-height:40px}.codex-empty,.codex-empty-state{text-align:center;flex-direction:column;align-items:center;gap:8px;margin:auto 0;padding:24px 16px;display:flex}.codex-empty-state strong{letter-spacing:-.02em;font-size:14px}.codex-empty-state p{max-width:28ch;margin:0;font-size:12px;line-height:1.5}.codex-empty-state .codex-slow-hint{max-width:36ch;color:color-mix(in srgb, var(--ol-muted) 88%, var(--ol-warn));margin-top:2px}.codex-slow-hint-inline{max-width:42ch;margin:2px 0 0;font-size:11px;line-height:1.45}.codex-msg{cursor:pointer;flex-direction:column;gap:5px;max-width:100%;font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Helvetica Neue,Arial,sans-serif;display:flex}.codex-msg-author{font-size:11px;font-weight:600}.codex-msg.user{align-items:flex-start}.codex-msg-bubble{border:1px solid var(--ol-border);background:var(--ol-panel);max-width:100%;color:var(--ol-text);font-size:var(--editor-font-size,13.5px);word-break:break-word;border-radius:14px;padding:8px 12px;line-height:1.55;display:inline-block}.codex-msg-text{color:var(--ol-text);font-size:var(--editor-font-size,13.5px);word-break:break-word;margin:0;line-height:1.55}.codex-md>:first-child{margin-top:0}.codex-md>:last-child{margin-bottom:0}.codex-md p{margin:.45em 0}.codex-md h1,.codex-md h2,.codex-md h3{color:var(--ol-text);margin:.75em 0 .35em;font-weight:650;line-height:1.35}.codex-md h1{font-size:1.2em}.codex-md h2{font-size:1.1em}.codex-md h3{font-size:1.02em}.codex-md ul,.codex-md ol{margin:.4em 0;padding-left:1.35em}.codex-md li{margin:.2em 0}.codex-md strong{font-weight:650}.codex-md code{font-family:var(--mono);background:color-mix(in srgb, var(--ol-text) 6%, transparent);border-radius:4px;padding:.1em .35em;font-size:.92em}.codex-md .site-md-pre{border:1px solid var(--ol-border-soft);background:color-mix(in srgb, var(--ol-text) 4%, var(--ol-surface));border-radius:10px;margin:.55em 0;padding:10px 12px;overflow:auto}.codex-md .site-md-pre code{background:0 0;padding:0;font-size:12px;line-height:1.5}.codex-md .site-md-table{margin:.55em 0;font-size:12.5px}.codex-md .site-md-table th,.codex-md .site-md-table td{border-color:var(--ol-border);padding:6px 8px}.codex-md a{color:var(--ol-info);text-underline-offset:2px;text-decoration:underline}.codex-msg-status{color:color-mix(in srgb, var(--ol-green) 65%, var(--ol-muted));align-items:center;gap:6px;font-size:12px;font-weight:550;display:inline-flex}.codex-msg-foot{opacity:0;pointer-events:none;justify-content:space-between;align-items:center;gap:8px;min-height:22px;font-size:11px;transition:opacity .12s;display:flex}.codex-msg.is-open .codex-msg-foot{opacity:1;pointer-events:auto}.codex-msg.user .codex-msg-foot{justify-content:flex-start}.codex-msg-actions{align-items:center;gap:6px;display:flex}.codex-msg-action-btn{width:22px;height:22px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.codex-msg-action-btn:hover{background:var(--ol-hover);color:var(--ol-text)}.codex-files{color:var(--ol-muted);margin:2px 0 0;padding-left:16px;font-size:11px}.codex-units{font-size:11px}.codex-error{margin:0 14px 8px;font-size:12px}.codex-form{background:color-mix(in srgb, var(--ol-panel) 92%, transparent);-webkit-backdrop-filter:blur(14px)saturate(150%);border-top:0;flex-direction:column;gap:6px;padding:8px 12px 12px;display:flex}.codex-attachment-chip{border:1px solid var(--ol-border-soft);background:var(--ol-surface);color:var(--ol-muted);border-radius:9px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;animation:.14s ease-out codex-sheet-in;display:flex}.codex-attachment-icon{color:var(--ws-accent,var(--ol-info));flex-shrink:0}.codex-attachment-label{color:var(--ol-text);flex-shrink:0;font-weight:620}.codex-attachment-quote{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.codex-attachment-remove{width:18px;height:18px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.codex-attachment-remove:hover{background:var(--ol-hover);color:var(--ol-text)}.codex-task-chips{flex-wrap:wrap;gap:6px;display:flex}.codex-task-chip{border:1px solid var(--ol-border-soft);background:var(--ol-surface);max-width:100%;color:var(--ol-muted);border-radius:9px;align-items:center;gap:5px;padding:5px 7px 5px 8px;font-size:11px;animation:.14s ease-out codex-sheet-in;display:inline-flex}.codex-task-chip-icon{color:var(--ws-accent,var(--ol-info));flex-shrink:0}.codex-task-chip-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ol-text);font-weight:500;overflow:hidden}.codex-task-picker-wrap{display:inline-flex;position:relative}.codex-composer-icon-btn.is-active{background:color-mix(in srgb, var(--ws-accent,var(--ol-info)) 12%, transparent);color:var(--ws-accent,var(--ol-info))}.codex-task-picker-badge{background:var(--ws-accent,var(--ol-info));color:#fff;text-align:center;pointer-events:none;border-radius:999px;min-width:12px;height:12px;padding:0 3px;font-size:9px;font-weight:700;line-height:12px;position:absolute;top:1px;right:1px}.codex-task-picker{border:1px solid var(--ws-hairline,var(--ol-border-soft));background:var(--ol-panel);border-radius:12px;flex-direction:column;animation:.14s ease-out codex-sheet-in;display:flex;overflow:hidden;box-shadow:0 12px 32px #10182824,0 2px 8px #1018280f}.codex-task-picker-portal{min-width:220px}.codex-task-picker-head{border-bottom:1px solid var(--ol-border-soft);color:var(--ol-text);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 8px;font-size:12px;font-weight:620;display:flex}.codex-task-picker-refresh{color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 6px;font-size:11px}.codex-task-picker-refresh:hover:not(:disabled){background:var(--ol-hover);color:var(--ol-text)}.codex-task-picker-refresh:disabled{opacity:.5;cursor:default}.codex-task-picker-list{flex:1;min-height:0;padding:6px;overflow:auto}.codex-task-picker-empty{text-align:center;color:var(--ol-muted);margin:18px 8px;font-size:12px}.codex-task-picker-item{cursor:pointer;color:var(--ol-text);border-radius:8px;align-items:flex-start;gap:8px;padding:8px 9px;font-size:12px;line-height:1.45;display:flex}.codex-task-picker-item:hover{background:var(--ol-hover)}.codex-task-picker-item.is-checked{background:color-mix(in srgb, var(--ws-accent,var(--ol-info)) 10%, transparent)}.codex-task-picker-item input{accent-color:var(--ws-accent,var(--ol-info));flex-shrink:0;margin-top:2px}.codex-task-picker-body{white-space:pre-wrap;word-break:break-word;min-width:0}.codex-task-picker-foot{border-top:1px solid var(--ol-border-soft);justify-content:flex-end;gap:6px;padding:8px 10px;display:flex}.codex-task-picker-foot .ol-ghost,.codex-task-picker-foot .ol-primary{border-radius:8px;padding:5px 10px;font-size:12px}.codex-composer-box{z-index:2;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;gap:2px;padding:4px 0 0;display:flex;position:relative;overflow:visible}.codex-form,.codex-composer-bar,.codex-composer-bar-left{min-width:0}.codex-composer-box:focus-within{border-color:#0000}.codex-composer-box textarea{resize:none;width:100%;min-height:40px;color:var(--ol-text);font-family:Noto Sans SC,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:var(--editor-font-size,13.5px);background:0 0;border:0;border-radius:0;padding:2px 2px 4px;line-height:1.55}.codex-composer-box textarea:focus{outline:none}.codex-composer-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;width:100%;min-width:0;display:grid;overflow:visible}.codex-composer-bar-left{flex:1;align-items:center;min-width:0;display:flex;position:relative;overflow:visible}.codex-composer-bar-track{flex-wrap:nowrap;align-items:center;gap:4px;width:100%;min-width:0;display:flex;overflow:visible}.codex-composer-item{flex:none}.codex-composer-item.is-measure{visibility:hidden;pointer-events:none;position:absolute}.codex-composer-more-wrap{flex:none;position:relative}.codex-composer-more{width:22px;height:26px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;transition:background-color .1s ease-out,color .1s ease-out,transform .1s ease-out;display:inline-grid}.codex-composer-more:hover,.codex-composer-more.is-open{background:var(--ol-hover);color:var(--ol-text)}.codex-composer-more:active{transform:scale(.94)}.codex-composer-overflow-panel{z-index:120;background:color-mix(in srgb, var(--ol-panel) 94%, transparent);-webkit-backdrop-filter:blur(18px)saturate(150%);border:1px solid var(--ws-separator);min-width:max-content;box-shadow:var(--ol-shadow-sm);opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out,ease-out), transform .18s var(--ease-out,ease-out);border-radius:10px;flex-direction:column;align-items:stretch;gap:4px;padding:6px;display:flex;position:absolute;top:50%;left:calc(100% + 4px);transform:translateY(-50%)translate(4px)}.codex-composer-overflow-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(-50%)translate(0)}.codex-composer-overflow-panel.is-portal{z-index:10000;opacity:1;pointer-events:auto;position:fixed;transform:none}.codex-composer-overflow-panel .codex-composer-item{white-space:nowrap}.codex-composer-bar .codex-send-btn{grid-area:1/2}.codex-menu-select{align-items:center;display:inline-flex;position:relative}.codex-model-picker.is-open{z-index:30}.codex-select-pill{height:auto;min-height:26px;color:var(--ws-accent,var(--ol-info));cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:flex-start;align-items:center;gap:4px;padding:4px 8px 5px;font-size:12px;font-weight:500;line-height:1.35;display:inline-flex;overflow:visible}.codex-select-pill:hover,.codex-menu-select.is-open .codex-select-pill{background:var(--ol-hover)}.codex-select-pill:disabled{opacity:.45;cursor:not-allowed}.codex-select-pill-label{text-overflow:ellipsis;white-space:nowrap;max-width:150px;padding-bottom:.14em;line-height:1.35;overflow:hidden}.codex-select-pill svg{opacity:.7;pointer-events:none;flex:0 0 9px;width:9px;height:9px;display:block}.codex-menu-list{z-index:80;border:1px solid var(--ws-hairline,var(--ol-border-soft));background:var(--ol-panel);border-radius:12px;min-width:max(100%,148px);margin:0;padding:6px;list-style:none;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 12px 32px #10182824,0 2px 8px #1018280f}.codex-menu-list.is-portal{z-index:10000;width:max-content;min-width:148px;max-width:220px;position:fixed}.codex-model-flyout{z-index:10000;box-shadow:none;box-sizing:border-box;background:0 0;border:0;padding:0;position:fixed}.codex-model-provider-row{flex-flow:wrap;justify-content:flex-end;align-items:flex-end;gap:6px;max-width:100%;display:flex}.codex-model-provider-col{--codex-model-list-gap:10px;flex-direction:column;align-items:stretch;display:flex;position:relative}.codex-model-provider-btn{border:1px solid var(--ol-border-soft);background:var(--ol-panel);min-height:28px;color:var(--ol-text);cursor:default;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;justify-content:center;align-items:center;max-width:168px;padding:5px 12px;font-size:12px;font-weight:500;line-height:1.2;display:inline-flex;overflow:hidden;box-shadow:0 2px 8px #1018280f}.codex-model-provider-col.is-hover .codex-model-provider-btn,.codex-model-provider-btn.is-active,.codex-model-provider-btn.is-selected{background:var(--ol-panel);color:var(--ol-text);border-color:var(--ol-border-soft)}.codex-model-list{left:50%;bottom:calc(100% + var(--codex-model-list-gap));z-index:95;border:1px solid var(--ws-hairline,var(--ol-border-soft));background:var(--ol-panel);opacity:0;min-width:max(100%,148px);max-width:220px;max-height:240px;animation:codex-model-list-in .16s var(--ease-out,ease-out) forwards;border-radius:12px;flex-direction:column;gap:2px;margin:0;padding:6px;list-style:none;display:flex;position:absolute;overflow:auto;transform:translate(-50%)translateY(4px);box-shadow:0 12px 32px #10182824,0 2px 8px #1018280f}.codex-model-list-bridge{z-index:94;width:max(100%,148px);height:var(--codex-model-list-gap);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.codex-model-list .codex-menu-item{white-space:nowrap;justify-content:flex-start}@keyframes codex-model-list-in{0%{opacity:0;transform:translate(-50%)translateY(6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (prefers-reduced-motion:reduce){.codex-model-list{opacity:1;animation:none;transform:translate(-50%)translateY(0)}}.codex-model-picker .codex-select-pill-label{max-width:132px}.codex-model-picker .codex-select-pill{max-width:154px}.codex-menu-item{width:100%;min-height:32px;color:var(--ol-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;font-size:12px;font-weight:450;line-height:1.3;display:flex}.codex-menu-item:hover{background:var(--ol-hover)}.codex-menu-item.is-selected{background:color-mix(in srgb, var(--ws-accent,var(--ol-info)) 12%, transparent);color:var(--ws-accent,var(--ol-info));font-weight:550}.codex-menu-item svg{opacity:.9;flex:none}.codex-composer-icon-btn{width:26px;height:26px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;display:inline-flex;position:relative}.codex-composer-icon-btn:hover{background:var(--ol-hover);color:var(--ol-text)}.codex-pause-btn{background:var(--ws-danger,#c0392b)!important;color:#fff!important}.codex-send-btn{background:var(--ol-text);width:28px;height:28px;color:var(--ol-panel);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .1s ease-out,opacity .1s ease-out;display:inline-flex}.codex-send-btn:hover:not(:disabled){opacity:.88}.codex-send-btn:active:not(:disabled){transform:scale(.94)}.codex-send-btn:disabled{background:var(--ol-hover);color:var(--ol-muted);cursor:not-allowed}.codex-send-btn .spinner{border-color:currentColor #0000 currentColor currentColor}.codex-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.codex-log{background:var(--ol-log-bg);max-height:160px;color:var(--ol-log-text);font-family:var(--mono);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0 14px 12px;padding:8px;font-size:11px;overflow:auto}.codex-agent-switch{background:color-mix(in srgb, var(--ol-text) 6%, transparent);border-radius:8px;align-items:center;gap:2px;height:26px;padding:2px;display:inline-flex}.codex-agent-switch button{height:22px;color:var(--ol-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 9px;font-size:12px;font-weight:500;line-height:1}.codex-agent-switch button:hover:not(:disabled){color:var(--ol-text)}.codex-agent-switch button.is-active{background:var(--ol-panel);color:var(--ol-text);box-shadow:0 1px 2px #1018281f}.codex-agent-switch button:disabled{opacity:.45;cursor:not-allowed}.codex-paper-auto-apply{border:1px solid color-mix(in srgb, var(--ol-text) 14%, transparent);height:26px;color:var(--ol-muted);cursor:pointer;background:0 0;border-radius:8px;padding:0 9px;font-size:12px;font-weight:500;line-height:1}.codex-paper-auto-apply:hover:not(:disabled){color:var(--ol-text);border-color:color-mix(in srgb, var(--ol-text) 28%, transparent)}.codex-paper-auto-apply.is-on{background:color-mix(in srgb, var(--ol-green,#1a7f37) 16%, transparent);border-color:color-mix(in srgb, var(--ol-green,#1a7f37) 40%, transparent);color:var(--ol-text)}.codex-paper-auto-apply:disabled{opacity:.45;cursor:not-allowed}.codex-agent-tag{background:color-mix(in srgb, var(--ol-text) 7%, transparent);color:var(--ol-muted);vertical-align:1px;border-radius:6px;margin-left:6px;padding:0 6px;font-size:10px;font-weight:600;line-height:16px}.codex-agent-tag.is-paper{background:color-mix(in srgb, var(--ol-info) 14%, transparent);color:var(--ol-info)}.paper-patch-list{flex-direction:column;gap:8px;margin-top:8px;display:flex}.paper-patch-card{border:1px solid var(--ol-border-soft);background:color-mix(in srgb, var(--ol-panel) 88%, transparent);border-radius:10px;overflow:hidden}.paper-patch-card.is-applied{border-color:color-mix(in srgb, var(--ol-green) 40%, var(--ol-border-soft))}.paper-patch-card.is-stale{border-color:color-mix(in srgb, var(--ol-warn) 45%, var(--ol-border-soft))}.paper-patch-card.is-discarded{opacity:.65}.paper-patch-head{align-items:center;gap:8px;padding:6px 8px;display:flex}.paper-patch-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:inherit;font:inherit;font-family:var(--mono);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:0;font-size:12px;font-weight:400;overflow:hidden}.paper-patch-path:hover{font-weight:700}.paper-patch-hint{margin:0 8px 8px;font-size:11.5px;line-height:1.45}.paper-patch-panes{grid-template-columns:1fr 1fr;gap:6px;padding:0 8px 8px;display:grid}.paper-patch-panes .cm-conflict-body{max-height:140px;font-size:11px}.paper-patch-stat{font-family:var(--mono);font-variant-numeric:tabular-nums;gap:6px;font-size:11px;display:inline-flex}.paper-patch-add{color:var(--review-add-fg)}.paper-patch-del{color:var(--review-del-fg)}.paper-patch-status{background:color-mix(in srgb, var(--ol-text) 7%, transparent);color:var(--ol-muted);border-radius:5px;padding:0 6px;font-size:10px;font-weight:600;line-height:16px}.paper-patch-status.is-pending{background:color-mix(in srgb, var(--ol-info) 14%, transparent);color:var(--ol-info)}.paper-patch-status.is-applied{background:color-mix(in srgb, var(--ol-green) 16%, transparent);color:var(--ol-green)}.paper-patch-status.is-stale{background:color-mix(in srgb, var(--ol-warn) 18%, transparent);color:var(--ol-warn)}.paper-patch-summary{margin:0;padding:0 8px 6px;font-size:11.5px;line-height:1.5}.paper-patch-diff{border-top:1px solid var(--ol-border-soft);background:var(--ol-surface);max-height:260px;color:var(--ol-text);font-family:var(--mono);flex-direction:column;margin:0;padding:6px 0;font-size:11px;line-height:1.55;display:flex;overflow:auto}.paper-diff-line{color:var(--ol-text);white-space:pre-wrap;word-break:break-word;border-left:3px solid #0000;padding:1px 10px}.paper-diff-line.is-add{background:var(--review-add-bg);color:var(--review-add-fg);border-left-color:var(--review-add-edge)}.paper-diff-line.is-del{background:var(--review-del-bg);color:var(--review-del-fg);border-left-color:var(--review-del-edge)}.paper-diff-line.is-hunk{color:var(--ol-muted)}.paper-patch-actions{border-top:1px solid var(--ol-border-soft);gap:8px;padding:8px;display:flex}.paper-patch-actions button{font-size:12px}@keyframes codex-sheet-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes codex-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--ol-green) 45%, transparent)}70%{box-shadow:0 0 0 6px #0000}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.codex-sheet,.codex-thread-menu,.codex-attachment-chip,.codex-task-chip,.codex-task-picker,.codex-running-dot{animation:none}.codex-icon-btn:active,.codex-new-btn:active,.codex-send-btn:active,.codex-actions .ol-ghost:active{transform:none}}@media (prefers-reduced-transparency:reduce){.codex-topbar,.codex-form{-webkit-backdrop-filter:none;background:var(--ol-panel)}}.changelog-panel{flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.changelog-head{border-bottom:1px solid var(--ws-separator);letter-spacing:-.01em;justify-content:space-between;align-items:center;gap:8px;height:40px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.changelog-filters{border-bottom:1px solid var(--ws-separator);gap:2px;padding:8px 12px;display:flex}.changelog-filters button{color:var(--ol-muted);background:0 0;border:0;border-radius:4px;padding:3px 8px;font-size:11px}.changelog-filters button.active,.changelog-filters button:hover{background:var(--ol-hover);color:var(--ol-text)}.changelog-list{flex-direction:column;flex:1;gap:6px;min-height:0;padding:8px;display:flex;overflow:auto}.changelog-empty{padding:12px;font-size:13px}.changelog-item{text-align:left;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:8px;width:100%;padding:8px;display:flex}.changelog-item:hover{background:var(--ol-hover)}.changelog-item.is-selected{border-color:color-mix(in srgb, var(--ol-green) 45%, transparent);background:color-mix(in srgb, var(--ol-green) 10%, transparent)}.changelog-item.is-ai{background:#9c36b514;border-color:#9c36b559}.changelog-item.is-ai.is-selected{border-color:color-mix(in srgb, var(--ol-green) 50%, #9c36b5);background:color-mix(in srgb, var(--ol-green) 10%, transparent)}.changelog-avatar{color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.changelog-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.changelog-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.changelog-meta time{color:var(--ol-muted);font-size:11px}.changelog-ai-badge{color:#fff;letter-spacing:.02em;background:#9c36b5;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:700}.changelog-git-badge{color:#fff;letter-spacing:.02em;background:#1971c2;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:700}.changelog-file{color:var(--ol-text);font-size:12px}.changelog-file em{color:var(--ol-muted);font-style:normal}.changelog-note{color:var(--ol-text);margin-top:4px;font-size:12px;line-height:1.45;display:block}.changelog-note em{color:#9c36b5;margin-right:6px;font-style:normal;font-weight:600}.changelog-item:not(.is-ai) .changelog-note em{color:var(--ol-green)}.changelog-preview{background:var(--ol-surface);border:1px solid var(--ol-border-soft);font-family:var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--ol-muted);border-radius:4px;max-height:64px;margin:0;padding:6px 8px;font-size:11px;display:block;overflow:hidden}@media (width<=900px){.ol-workspace.layout-split{grid-template-rows:1fr 6px 1fr;grid-template-columns:1fr}.ol-splitter{cursor:row-resize}.dash-head{flex-direction:column;align-items:stretch}.dash-search-wrap{flex:auto;width:100%}.dash-add-rail{grid-template-columns:1fr 1fr}.user-label{display:none}.ol-menu-btn{padding:6px 7px}.dash-top{border-radius:0;flex-wrap:wrap;gap:8px;height:auto;min-height:52px;margin:0;padding:8px 14px}}@media (width<=640px){.ol-side{z-index:30;box-shadow:var(--ol-shadow);position:absolute;top:42px;bottom:0;left:48px}.compile-time,.dash-tagline,.token-warn{display:none}}@media (hover:hover) and (pointer:fine){.ol-home:hover{background:var(--ol-green-soft)}.btn-primary:hover:not(:disabled),.btn-recompile:hover:not(:disabled),.ol-share:hover:not(:disabled),.auth-submit:hover:not(:disabled){background:var(--studio-green-dark,var(--ol-green-dark))}.btn-secondary:hover:not(:disabled),.ol-ghost:hover:not(:disabled){background:var(--ol-surface)}.dash .ol-ghost:hover:not(:disabled){background:var(--studio-hover)}.ol-menu-btn:hover,.ol-project-btn:hover,.ol-menu-dd button:hover,.ol-menu-dd a:hover,.file-menu button:hover:not(:disabled){background:var(--ol-hover)}.ol-rail button:hover{background:var(--ol-hover);color:var(--ol-text)}.ol-rail-foot button:hover{color:#111}:root[data-theme=dark] .ol-rail-foot button:hover,:root:not([data-theme=light]):not([data-theme=calm]) .ol-rail-foot button:hover{color:#fff}.ol-side-splitter:hover,.ol-side-splitter:focus-visible,.ol-splitter:hover,.ol-splitter:focus-visible{background:var(--ol-green)}.tab:hover{color:var(--ol-text)}.tab-close:hover{background:var(--ol-hover);color:var(--ol-text)}.project-card:hover{border-color:color-mix(in srgb, var(--studio-border) 75%, transparent);box-shadow:0 10px 28px #1e464814}.dash-add-chip:hover{border-color:color-mix(in srgb, var(--studio-cyan) 55%, var(--studio-border));background:color-mix(in srgb, var(--studio-cyan-soft) 40%, var(--studio-panel))}.dash-add-chip.is-active:hover{border-color:var(--studio-green);background:color-mix(in srgb, var(--studio-green-soft) 75%, var(--studio-panel))}.dash-compose-close:hover{background:var(--studio-hover);color:var(--studio-text)}}@media (prefers-reduced-transparency:reduce){:root{--chrome-bg:var(--ol-panel);--material-blur:0px}.auth-page,.dash{--studio-chrome:var(--studio-panel)}.ol-topbar,.account-titlebar,.ol-menu-dd,.file-menu,.help-pop,.toast,.auth-card,.ol-pdf-toolbar{-webkit-backdrop-filter:none;background:var(--ol-panel)}.auth-card{background:var(--studio-panel)}.dash-atmosphere:after,.auth-atmosphere:after{background:color-mix(in srgb, var(--studio-bg) 72%, transparent)}.dash-compose-scrim,.land-auth-scrim{-webkit-backdrop-filter:none;background:#0b1a1c9e}.land-top,.land-showcase-item{-webkit-backdrop-filter:none;background:color-mix(in srgb, var(--studio-panel) 96%, transparent)}}@media (prefers-reduced-motion:reduce){button:not(:disabled):active{transform:none}.toast,.dialog,.dialog-backdrop,.share-overlay,.share-modal,.ol-menu-dd,.file-menu,.help-pop,.ol-side-collab,.project-card,.auth-card,.dash-compose-scrim,.dash-compose-panel{transition:opacity .16s!important;animation:none!important;transform:none!important}.land-page{background-attachment:scroll,scroll,scroll}.land-showcase [data-reveal]{opacity:1!important;transition:none!important;transform:none!important}.land-demo-caret,.land-demo-hl,.land-demo-sync button,.land-demo-ai-badge,.land-viz-pill,.land-viz-card{transition:opacity .18s!important;animation:none!important}@starting-style{.toast,.dialog,.share-modal,.ol-menu-dd,.file-menu,.help-pop,.project-card,.auth-card,.dash-compose-panel{opacity:0;transform:none}}.ol-side-collab.is-collapsed,.dash-compose-scrim.is-open .dash-compose-panel,.dash-compose-scrim.is-closing .dash-compose-panel{transform:none}}.dash--d{--studio-green:#1a9a52;--studio-green-dark:#148544;--studio-green-soft:#1a9a521f;--studio-cyan:#2f8588;--studio-cyan-soft:#2f85881f;--studio-bg:#f3fafb;--studio-panel:#fffffff0;--studio-surface:#fff;--studio-hover:#eef7f8;--studio-border:#1c484c1f;--studio-border-soft:#1c484c12;--studio-text:#123033;--studio-muted:#1c3e4294;--studio-chrome:#fffffff0;--studio-shadow:0 16px 40px #285a601a;--studio-shadow-sm:0 6px 18px #285a6012;color:var(--studio-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] .dash--d{--studio-green:#2fd67a;--studio-green-dark:#1fb865;--studio-green-soft:#2fd67a29;--studio-cyan:#7ec8c9;--studio-cyan-soft:#7ec8c929;--studio-bg:#07161c;--studio-panel:#0e242a9e;--studio-surface:#122c34b8;--studio-hover:#244852b8;--studio-border:#ffffff24;--studio-border-soft:#ffffff14;--studio-text:#f2f8f8;--studio-muted:#dcececb8;--studio-chrome:#0a1c228c;--studio-shadow:0 18px 48px #00000059;--studio-shadow-sm:0 8px 24px #00000038;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d{--studio-green:#2fd67a;--studio-green-dark:#1fb865;--studio-green-soft:#2fd67a29;--studio-cyan:#7ec8c9;--studio-cyan-soft:#7ec8c929;--studio-bg:#07161c;--studio-panel:#0e242a9e;--studio-surface:#122c34b8;--studio-hover:#244852b8;--studio-border:#ffffff24;--studio-border-soft:#ffffff14;--studio-text:#f2f8f8;--studio-muted:#dcececb8;--studio-chrome:#0a1c228c;--studio-shadow:0 18px 48px #00000059;--studio-shadow-sm:0 8px 24px #00000038;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=calm] .dash--d{--studio-green:#9c7b45;--studio-green-dark:#7c5f34;--studio-green-soft:#9c7b4529;--studio-cyan:#8a8f6d;--studio-cyan-soft:#8a8f6d29;--studio-bg:#f2ecdf;--studio-panel:#fbf8f1f0;--studio-surface:#f8f3e7;--studio-hover:#ece1cb;--studio-border:#3a2e1e24;--studio-border-soft:#3a2e1e14;--studio-text:#35291b;--studio-muted:#3a2e1e99;--studio-chrome:#fbf8f1f0;--studio-shadow:0 16px 40px #3a2e1e1f;--studio-shadow-sm:0 6px 18px #3a2e1e14;color:var(--studio-text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.dash--d .dash-atmosphere{background-color:var(--studio-bg,#f4fafb);background-image:none}.dash--d .dash-atmosphere:after{background:0 0}:root[data-theme=dark] .dash--d .dash-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root[data-theme=dark] .dash--d .dash-atmosphere:after{background:linear-gradient(90deg,#051218c7 0%,#0512186b 48%,#05121847 100%),linear-gradient(#05121859,#051218b8 78%,#07161c)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-atmosphere{background-color:#07161c;background-image:url(/studio/bg-d-mountain.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover}:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-atmosphere:after{background:linear-gradient(90deg,#051218c7 0%,#0512186b 48%,#05121847 100%),linear-gradient(#05121859,#051218b8 78%,#07161c)}}:root[data-theme=calm] .dash--d .dash-atmosphere{background-color:#f8f4ea;background-image:none}:root[data-theme=calm] .dash--d .dash-atmosphere:after{background:0 0}:root[data-theme=calm] .dash--d .dash-top{background:#efe6d1}:root[data-theme=calm] .dash--d .dash-side-rail{background:#f4efe1}.dash-glass-filter{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.dash--d .dash-title{color:var(--studio-text);letter-spacing:.08em;font-size:15px;font-weight:750}.dash--d .dash-tagline{color:var(--studio-muted);font-size:11px}.dash--d .dash-pill{border:1px solid var(--studio-border);background:var(--studio-surface);color:var(--studio-text);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:inline-flex}.dash--d .dash-avatar{background:var(--studio-green);color:#062014;border-radius:999px;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.dash--d .dash-main{box-sizing:border-box;flex-direction:row;flex:1;align-items:stretch;gap:10px;width:100%;max-width:none;min-height:0;margin:0;padding:16px 22px 16px 0;display:flex;position:relative;overflow:hidden}.dash--d .dash-chrome{flex-shrink:0}.dash--d .dash-side-rail{width:176px;height:auto;box-shadow:none;-webkit-backdrop-filter:none;box-sizing:border-box;background:#ffffff57;border:0;border-radius:0;flex-direction:column;flex:0 0 176px;align-self:flex-start;gap:2px;margin:0;padding:8px 8px 16px 10px;display:flex}:root[data-theme=dark] .dash--d .dash-side-rail{background:#07161c61}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-side-rail{background:#07161c61}}.dash--d .dash-side-sep{background:color-mix(in srgb, var(--studio-text) 10%, transparent);border:0;height:1px;margin:8px 8px 6px}.dash--d .dash-side-item{width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--studio-text);text-align:left;cursor:pointer;transition:background-color .14s var(--ease-out), color .14s var(--ease-out), transform var(--dur-press) var(--ease-out);background:0 0;border:0;border-radius:0;align-items:center;gap:10px;margin:0;padding:9px 10px;display:flex}.dash--d .dash-side-item:hover{background:color-mix(in srgb, var(--studio-text) 6%, transparent)}.dash--d .dash-side-item:active{transform:scale(.98)}.dash--d .dash-side-item.is-active{background:color-mix(in srgb, var(--studio-text) 8%, transparent)}.dash--d .dash-side-item.is-active .dash-side-copy strong{font-weight:750}.dash--d .dash-side-icon{width:20px;height:20px;color:color-mix(in srgb, var(--studio-text) 62%, transparent);background:0 0;flex:0 0 20px;place-items:center;font-size:15px;line-height:1;display:grid}.dash--d .dash-side-item.is-active .dash-side-icon{color:var(--studio-text)}.dash--d .dash-side-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.dash--d .dash-side-copy strong{letter-spacing:-.02em;font-size:13px;font-weight:600;line-height:1.25}.dash--d .dash-side-copy span{color:var(--studio-muted);font-size:11px;line-height:1.3}.dash--d .dash-stage{flex-direction:column;flex:1;min-width:0;min-height:0;padding-left:6px;display:flex;overflow:hidden}.dash--d .dash-pane{min-height:0;animation:dash-pane-in .18s var(--ease-out);flex-direction:column;flex:1;display:flex;overflow:hidden}@keyframes dash-pane-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.dash--d .dash-pane{animation:none}}.dash--d .dash-pane-head{flex:none;margin-bottom:16px}.dash--d .dash-pane-lead{color:var(--studio-muted);margin:6px 0 0;font-size:13px;line-height:1.45}.dash--d .dash-pane-status{color:var(--studio-text);margin:0 0 12px;font-size:13px}.dash--d .dash-github-cards{grid-template-columns:1fr 1fr;gap:16px;min-height:0;display:grid;overflow:auto}.dash--d .dash-github-card{--account-accent:#4b5563;--account-accent-hover:#1f2937;--account-accent-soft:color-mix(in srgb, var(--account-accent) 16%, transparent);--account-panel:#ffffffb8;--account-border:#1c484c29;--account-border-soft:#1c484c1a;--account-text:var(--studio-text);--account-muted:var(--studio-muted);--account-hover:color-mix(in srgb, var(--studio-text) 6%, transparent);--account-danger:var(--ol-danger);--account-danger-soft:var(--ol-danger-soft);-webkit-backdrop-filter:blur(12px)saturate(160%);background:linear-gradient(115deg,#ffffff6b,#ffffff29 55%,#e0f8fc33);border:1px solid #ffffff75;border-radius:18px;padding:20px 22px 18px;box-shadow:inset 0 1px #ffffffc2,0 10px 28px #184c5414}.dash--d .dash-github-card .account-section-head{margin-bottom:14px}.dash--d .dash-github-card .account-section-head h2{letter-spacing:-.03em;margin:0 0 6px;font-size:1.05rem}.dash--d .dash-github-card .create-row{margin:4px 0 0}.github-token-form{position:relative}.autofill-trap{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:-10000px;overflow:hidden}.dash--d .dash-templates-body{flex:1;min-height:0;padding-right:4px;overflow:auto}.dash--d .tpl-group{margin-bottom:22px}.dash--d .tpl-group-head{margin:0 0 12px}.dash--d .tpl-group-head h2{color:var(--studio-muted);letter-spacing:-.01em;margin:0;font-size:13px;font-weight:650}.dash--d .tpl-group-lead{color:var(--studio-muted);margin:4px 0 0;font-size:12px;font-weight:450}.dash--d .tpl-group-empty{color:var(--studio-muted);margin:0;font-size:13px;line-height:1.5}.dash--d .tpl-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:stretch;gap:16px;margin:0;padding:0;list-style:none;display:grid}.dash--d .tpl-grid>li{min-width:0;display:flex}.dash--d .tpl-card{width:100%;height:100%;color:var(--studio-text);text-align:left;cursor:pointer;-webkit-backdrop-filter:none;transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out), transform var(--dur-press) var(--ease-out);background:#fff;border:1px solid #1c484c1f;border-radius:14px;flex-direction:column;padding:0;display:flex;overflow:hidden;box-shadow:0 10px 24px #285a601a}.dash--d .tpl-card:hover{border-color:#1c484c38;box-shadow:0 14px 28px #285a6024}.dash--d .tpl-card:active{transform:scale(.98)}.dash--d .tpl-card.is-selected{border-color:color-mix(in srgb, var(--studio-text) 28%, transparent);box-shadow:0 10px 24px #285a601a, 0 0 0 2px color-mix(in srgb, var(--studio-text) 14%, transparent)}.dash--d .tpl-cover{aspect-ratio:3/2;background:#f4f6f6;border-bottom:1px solid #1c484c14;flex:none;height:auto;padding:0;position:relative;overflow:hidden}.dash--d .tpl-cover-preview{object-fit:cover;object-position:top center;opacity:0;background:#fff;width:100%;height:100%;display:block}.dash--d .tpl-cover-preview.is-ready{opacity:1;transition:opacity .14s var(--ease-out)}@media (prefers-reduced-motion:reduce){.dash--d .tpl-cover-preview,.dash--d .tpl-cover-preview.is-ready{opacity:1;transition:none}}.dash--d .tpl-cover-fallback{width:100%;height:100%;color:var(--studio-text);background:#f6f8f8;flex-direction:column;justify-content:flex-end;gap:6px;padding:16px;display:flex}.dash--d .tpl-cover-fallback strong{font-size:14px;line-height:1.3}.dash--d .tpl-cover-fallback span{color:var(--studio-muted);font-size:12px}.dash--d .tpl-cover-badge{z-index:1;letter-spacing:.02em;color:var(--studio-muted);pointer-events:none;background:#fff;border:1px solid #1c484c1f;border-radius:999px;padding:3px 7px;font-size:11px;font-style:normal;font-weight:550;line-height:1.2;position:absolute;top:8px;right:8px}.dash--d .tpl-card-body{background:#fff;flex-direction:column;flex:1 0 auto;gap:8px;min-height:0;padding:14px 14px 16px;display:flex}.dash--d .tpl-card-body strong{letter-spacing:-.02em;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:none;font-size:14px;line-height:1.35;display:-webkit-box;overflow:hidden}.dash--d .tpl-card-desc{min-height:54px;color:var(--studio-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1 0 auto;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.dash--d .tpl-card-body .template-card-tags{flex-wrap:wrap;flex:none;gap:6px;min-height:24px;margin-top:2px;display:flex;overflow:visible}.dash--d .tpl-card-body .template-card-tags em{text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:100%;overflow:hidden}.dash--d .tpl-card-skeleton{pointer-events:none}.dash--d .dash-templates-foot{background:#fff;border:1px solid #1c484c1f;border-radius:14px;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 14px;display:flex}.dash--d .dash-templates-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.dash--d .tpl-upload-open{border-radius:999px;height:36px;padding:0 14px}.dash--d .tpl-upload{background:#fff;border:1px solid #1c484c1f;border-radius:14px;flex-direction:column;flex:none;gap:14px;margin:0 0 16px;padding:16px;display:flex}.dash--d .tpl-upload-copy strong{font-size:14px;display:block}.dash--d .tpl-upload-copy p{color:var(--studio-muted);margin:4px 0 0;font-size:12px;line-height:1.45}.dash--d .tpl-upload-fields{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.dash--d .tpl-upload .template-field{color:var(--studio-muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.dash--d .tpl-upload .template-field input,.dash--d .tpl-upload .template-field select{height:36px;color:var(--studio-text);background:#fff;border:1px solid #1c484c24;border-radius:8px;padding:0 10px}.dash--d .tpl-upload-actions{flex-wrap:wrap;gap:8px;display:flex}:root[data-theme=dark] .dash--d .tpl-upload{background:#0a1c22f0;border-color:#ffffff1f}:root[data-theme=dark] .dash--d .tpl-upload .template-field input,:root[data-theme=dark] .dash--d .tpl-upload .template-field select{color:#f2f8f8;background:#0a1c22f0;border-color:#ffffff24}.dash--d .dash-template-search{min-width:min(100%,260px)}.dash--d .dash-template-search input{background:#fff;border:1px solid #1c484c1f;border-radius:999px;height:36px;padding:0 14px}.dash--d .dash-busy{z-index:3;margin:0;position:absolute;top:22px;right:24px}.dash--d .dash-library{min-height:0;animation:dash-pane-in .18s var(--ease-out);flex-direction:column;flex:1;margin-top:0;display:flex;overflow:hidden}@media (prefers-reduced-motion:reduce){.dash--d .dash-library{animation:none}}:root[data-theme=dark] .dash--d .dash-github-card{--account-accent:#9ca3af;--account-accent-hover:#d1d5db;--account-panel:#0a1c228c;--account-border:#ffffff29;--account-text:#f2f8f8;--account-muted:#dcececb3}:root[data-theme=dark] .dash--d .dash-github-card,:root[data-theme=dark] .dash--d .tpl-card{background:#0a1c22f0;border-color:#ffffff1f;box-shadow:0 14px 32px #00000047}:root[data-theme=dark] .dash--d .tpl-cover{background:#0b1c22}:root[data-theme=dark] .dash--d .tpl-cover-preview{background:#102228}:root[data-theme=dark] .dash--d .tpl-cover-fallback{color:#f2f8f8;background:#102228}:root[data-theme=dark] .dash--d .tpl-cover-badge{color:#dcececb8;background:#0a1c22eb;border-color:#ffffff24}:root[data-theme=dark] .dash--d .tpl-card-body{background:#0a1c22f0}:root[data-theme=dark] .dash--d .dash-templates-foot{background:#0a1c22f0;border-color:#ffffff1f}:root[data-theme=dark] .dash--d .dash-template-search input{color:#f2f8f8;background:#0a1c22f0;border-color:#ffffff24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-github-card,:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .tpl-card{background:#0a1c22f0;border-color:#ffffff1f}}@media (width<=900px){.dash--d .dash-main{gap:6px;padding:12px 12px 12px 0}.dash--d .dash-side-rail{flex:0 0 72px;align-self:flex-start;width:72px;height:auto;padding:4px 4px 12px 6px}.dash--d .dash-side-sep{margin:6px 4px}.dash--d .dash-side-copy span{display:none}.dash--d .dash-side-item{text-align:center;flex-direction:column;gap:4px;padding:8px 6px}.dash--d .dash-github-cards{grid-template-columns:1fr}}.dash--d .dash-library-head{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:12px 20px;margin-bottom:14px;display:flex}.dash--d .dash-library-title{font-family:var(--font);letter-spacing:-.03em;color:var(--studio-text);margin:0;font-size:1.35rem;font-weight:750;line-height:1.2}.dash--d .dash-hero{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-bottom:14px;display:flex}.dash--d .dash-search-wrap--top{isolation:isolate;-webkit-backdrop-filter:none;width:clamp(112px,13vw,168px);transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out);background:#12303312;border:1px solid #1c484c1f;border-radius:999px;flex:0 168px;overflow:hidden;box-shadow:inset 0 1px 2px #1c484c29,inset 0 2px 5px #1c484c0f}.dash--d .dash-search-wrap--top:before{content:none}.dash--d .dash-search-wrap--top>*{z-index:1}.dash--d .dash-search-wrap--top:focus-within{border-color:color-mix(in srgb, var(--studio-green) 55%, #1c484c33);box-shadow:inset 0 1px 2px #1c484c29, inset 0 2px 5px #1c484c0f, 0 0 0 2px color-mix(in srgb, var(--studio-green) 18%, transparent)}:root[data-theme=calm] .dash--d .dash-search-wrap--top{background:#3a2e1e14;border-color:#3a2e1e1f;box-shadow:inset 0 1px 2px #3a2e1e29,inset 0 2px 5px #3a2e1e12}:root[data-theme=calm] .dash--d .dash-search-wrap--top:focus-within{border-color:color-mix(in srgb, var(--studio-green) 50%, #3a2e1e38);box-shadow:inset 0 1px 2px #3a2e1e29, inset 0 2px 5px #3a2e1e12, 0 0 0 2px color-mix(in srgb, var(--studio-green) 20%, transparent)}:root[data-theme=dark] .dash--d .dash-search-wrap--top{background:#00000052;border-color:#ffffff14;box-shadow:inset 0 1px 3px #00000080,inset 0 2px 7px #00000047}:root[data-theme=dark] .dash--d .dash-search-wrap--top:focus-within{border-color:color-mix(in srgb, var(--studio-green) 45%, #ffffff29);box-shadow:inset 0 1px 3px #00000080, inset 0 2px 7px #00000047, 0 0 0 2px color-mix(in srgb, var(--studio-green) 22%, transparent)}.dash--d .dash-search{height:26px;color:var(--studio-text);box-shadow:none;transition:background-color .52s var(--ease-out), border-color .52s var(--ease-out), color .52s var(--ease-out), box-shadow .52s var(--ease-out);background:0 0;border:0;border-radius:999px;padding:0 10px 0 28px;font-size:11px}:root[data-theme=dark] .dash--d .dash-search{color:#fff;box-shadow:none;background:0 0;border:0}.dash--d .dash-search::placeholder{color:color-mix(in srgb, var(--studio-muted) 80%, transparent)}.dash--d .dash-search:focus{outline:none}.dash--d .dash-search-icon{color:var(--studio-muted);left:8px}.dash--d .dash-search-kbd{border:1px solid var(--studio-border);color:var(--studio-muted);background:var(--studio-surface);border-radius:7px;padding:5px 7px;font-size:11px;line-height:1;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.dash--d .dash-service-notice{color:var(--studio-muted);justify-content:center;margin-bottom:16px}.dash--d .dash-add-rail{gap:12px;margin-bottom:22px}.dash--d .dash-add-chip{isolation:isolate;-webkit-backdrop-filter:blur(10px)saturate(170%)brightness(1.04);color:var(--studio-text);transition:background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform var(--dur-press) var(--ease-out);background:linear-gradient(115deg,#ffffff4d,#ffffff1f 55%,#e0f8fc2e);border:1px solid #ffffff75;border-radius:16px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffc2,inset 0 -1px #1c484c14,0 8px 22px #184c5414}.dash--d .dash-add-chip:before{content:"";z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(90% 180% at 16% -110%,#ffffffbf,#0000 62%),radial-gradient(60% 120% at 92% 145%,#a4dce824,#0000 68%);position:absolute;inset:0}.dash--d .dash-add-chip>*{z-index:1;position:relative}.dash--d .dash-add-chip:active{transform:scale(.97)}:root[data-theme=dark] .dash--d .dash-add-chip{color:#fff;background:linear-gradient(115deg,#253c4461,#08191f38 58%,#1d343c4d);border:1px solid #ffffff24;box-shadow:inset 0 1px #ffffff17,0 10px 24px #0003}.dash--d .dash-add-chip-icon{color:#1c3e428c;background:#1c3e4214}:root[data-theme=dark] .dash--d .dash-add-chip-icon{color:#ebf5f5b8;background:#ffffff1a}.dash--d .dash-add-chip-icon--create{color:#1c3e429e;background:#1c3e421f}.dash--d .dash-add-chip.is-active{background:linear-gradient(115deg,#ffffff6b,#ffffff2e 55%,#ebf0f247);border-color:#1c484c47}.dash--d .dash-add-chip.is-active .dash-add-chip-icon{color:#1c3e42b3;background:#1c3e421f}.dash--d .dash-add-chip-copy span{color:var(--studio-muted)}.dash--d .dash-filter-row{flex:1;justify-content:flex-end;align-items:center;gap:12px;min-width:min(100%,360px);margin-bottom:0;display:flex}.dash--d .dash-filters{flex-wrap:nowrap;align-items:stretch;gap:0;display:flex;position:relative}.dash--d .dash-filters-rail{pointer-events:none;background:#1230331f;height:1px;position:absolute;bottom:0;left:0;right:0}:root[data-theme=dark] .dash--d .dash-filters-rail{background:#ffffff1f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-filters-rail{background:#ffffff1f}}.dash--d .dash-filters-ink{opacity:0;pointer-events:none;z-index:1;will-change:transform, width, opacity;background:#000;height:1px;transition:transform .42s cubic-bezier(.22,1,.36,1),width .42s cubic-bezier(.22,1,.36,1),opacity .22s ease-out;position:absolute;bottom:0;left:0}.dash--d .dash-filters-ink.is-ready{opacity:1}:root[data-theme=dark] .dash--d .dash-filters-ink{background:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .dash-filters-ink{background:#fff}}.dash--d .dash-filters button{z-index:2;color:var(--studio-muted);letter-spacing:.01em;white-space:nowrap;background:0 0;border:0;border-radius:0;padding:10px 14px;font-size:13px;font-weight:500;transition:color .22s ease-out;position:relative}.dash--d .dash-filters button.is-active{color:var(--studio-text);background:0 0}:root[data-theme=dark] .dash--d .dash-filters button.is-active{color:#fff;background:0 0}@media (hover:hover) and (pointer:fine){.dash--d .dash-filters button:hover{color:var(--studio-text);background:0 0}:root[data-theme=dark] .dash--d .dash-filters button:hover{color:#fff;background:0 0}}.dash--d .dash-view-toggle{background:var(--studio-surface);border:1px solid var(--studio-border);border-radius:10px;gap:4px;padding:3px;display:inline-flex}.dash--d .dash-view-toggle button{width:32px;height:28px;color:var(--studio-muted);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.dash--d .dash-view-toggle button.is-active{background:color-mix(in srgb, var(--studio-green-soft) 60%, var(--studio-panel));color:var(--studio-text)}:root[data-theme=dark] .dash--d .dash-view-toggle button.is-active{color:#fff;background:#ffffff1f}.dash--d .project-grid{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;gap:16px;min-height:0;padding:2px 6px 18px 2px;overflow:hidden auto}.dash--d .project-grid.is-list{grid-template-columns:1fr;gap:8px}.dash--d .project-grid.is-list .project-card{border-radius:0;flex-direction:row;align-items:center;gap:14px;min-height:72px;padding:12px 14px;display:flex}.dash--d .project-card{cursor:pointer;transition:border-color .16s ease, box-shadow .16s ease, background-color .16s ease, transform var(--dur-press) var(--ease-out);background:#fffffff7;border:1px solid #1c484c1f;border-radius:0;animation:none;overflow:visible;box-shadow:0 10px 28px #285a6014}.dash--d .project-card:active{transform:scale(.97)}:root[data-theme=dark] .dash--d .project-card{background:#0a1c22e0;border:1px solid #ffffff1f;box-shadow:0 14px 32px #00000047}.dash--d .project-card:focus-visible{outline:2px solid color-mix(in srgb, var(--studio-green) 60%, transparent);outline-offset:2px}.dash--d .project-card-cover{aspect-ratio:3/4;background:#e8f0f2;border-radius:0;max-height:none;overflow:hidden}:root[data-theme=dark] .dash--d .project-card-cover{background:#0b1c22}.dash--d .project-card-preview{object-fit:contain;object-position:top center;background:#fff;width:100%;height:100%}:root[data-theme=dark] .dash--d .project-card-preview{background:#0b1c22}.dash--d .project-card-scrim{pointer-events:none;background:linear-gradient(#0000,#041014d1 100%);height:42%;position:absolute;inset:auto 0 0}:root[data-theme=light] .dash--d .project-card-scrim,:root[data-theme=calm] .dash--d .project-card-scrim{background:linear-gradient(#0000,#ffffffeb 100%)}.dash--d .project-card-badge{z-index:2;color:#dff7ea;background:#143c28b8;border:1px solid #2fd67a59;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;top:10px;left:10px}.dash--d .project-card-fav{z-index:2;color:#ffffffbf;background:#00000047;border:1px solid #ffffff24;border-radius:999px;place-items:center;width:30px;height:30px;padding:0;line-height:1;display:grid;position:absolute;top:8px;right:8px}.dash--d .project-card-fav.is-on{color:#ffd56a}.dash--d .project-card-body{z-index:2;background:0 0;gap:6px;padding:14px 14px 12px;position:absolute;bottom:0;left:0;right:0}:root[data-theme=light] .dash--d .project-card-body strong{color:#123033;text-shadow:none}:root[data-theme=light] .dash--d .project-card-meta{color:#1c3e429e!important}:root[data-theme=calm] .dash--d .project-card-body strong{color:#35291b;text-shadow:none}:root[data-theme=calm] .dash--d .project-card-meta{color:#3a2e1e99!important}.dash--d .project-card-body strong{color:#fff;text-shadow:0 1px 8px #00000059;font-size:15px}.dash--d .project-card-foot{align-items:center;gap:8px;display:flex}.dash--d .project-card-meta{color:#e6f0f0b8!important;font-size:11px!important}.dash--d .project-list-main{flex:1;gap:7px;min-width:0;display:grid}.dash--d .project-list-title{align-items:center;gap:9px;min-width:0;display:flex}.dash--d .project-list-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--studio-text);letter-spacing:-.02em;font-size:15px;font-weight:720;overflow:hidden}.dash--d .project-list-kind{color:var(--studio-green-dark);background:var(--studio-green-soft);border-radius:999px;flex:none;padding:3px 8px;font-size:10px;font-weight:700}.dash--d .project-list-details{flex-wrap:wrap;align-items:center;gap:5px 16px;min-width:0;display:flex}.dash--d .project-list-details>span{text-overflow:ellipsis;white-space:nowrap;max-width:min(36ch,100%);color:var(--studio-muted);font-size:11px;overflow:hidden}.dash--d .project-list-fav{border:1px solid var(--studio-border);background:color-mix(in srgb, var(--studio-surface) 74%, transparent);width:32px;height:32px;color:var(--studio-muted);border-radius:999px;flex:none;place-items:center;padding:0;font-size:16px;display:grid}.dash--d .project-list-fav.is-on{color:#c58b12}.dash--d .project-list-open{color:var(--studio-muted);flex:none;font-size:24px;font-weight:300}.dash--d .project-card-accent{opacity:0;background:#000;width:100%;height:1px;transition:opacity .22s ease-out;inset:100% 0 auto}.dash--d .project-card:hover .project-card-accent,.dash--d .project-card:focus-visible .project-card-accent{opacity:1}:root[data-theme=dark] .dash--d .project-card-accent{background:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .dash--d .project-card-accent{background:#fff}}:root[data-theme=light] .dash--d .project-card-accent{background:#000}.dash--d .dash-empty{border-color:var(--studio-border);color:var(--studio-muted);background:#ffffffc7}:root[data-theme=dark] .dash--d .dash-empty{color:#e6f0f0b3;background:#0a1c2259;border-color:#ffffff29}.dash--d .dash-empty strong{color:var(--studio-text)}.dash--d .dash-foot{text-align:center;color:var(--studio-muted);flex:none;margin-top:12px;padding-bottom:4px;font-size:12px}:root[data-theme=dark] .dash--d .dash-foot{color:#dcecec80}.dash--d .dash-compose-panel{border-color:var(--studio-border);color:var(--studio-text);box-shadow:var(--studio-shadow);background:#fffffffa}:root[data-theme=dark] .dash--d .dash-compose-panel{background:#0c1e24eb;border-color:#ffffff24}.dash--d .create-row input{border-color:var(--studio-border);color:var(--studio-text);background:#fff}:root[data-theme=dark] .dash--d .create-row input{color:#fff;background:#ffffff0f;border-color:#ffffff24}.dash--d .token-warn{color:#a15c00;background:#fff8e6;border-color:#e8b23c73}:root[data-theme=dark] .dash--d .token-warn{color:#e8b23c;background:#2a2314a6;border-color:#e8b23c59}.dash--d .ol-ghost.icon-only{border-color:var(--studio-border);color:var(--studio-text);background:#fff;border-radius:999px}:root[data-theme=dark] .dash--d .ol-ghost.icon-only{color:#fff;background:#ffffff0f;border-color:#ffffff24}@media (hover:hover) and (pointer:fine){.dash--d .project-card:hover{border-color:#1c484c1f;transform:none;box-shadow:0 10px 28px #285a6014}:root[data-theme=dark] .dash--d .project-card:hover{background:#0a1c22e0;border-color:#ffffff1f;box-shadow:0 14px 32px #00000047}.dash--d .dash-add-chip:hover{background:linear-gradient(115deg,#ffffff6b,#f5f7f838 55%,#ebf0f247);border-color:#1c484c38;box-shadow:inset 0 1px #ffffffd9,0 10px 26px #184c541c}:root[data-theme=dark] .dash--d .dash-add-chip:hover{background:#1230388c;border-color:#ffffff47}.dash--d .project-card-fav:hover{background:#0000006b}}@media (prefers-reduced-transparency:reduce){.dash--d .project-card,.dash--d .dash-compose-panel{-webkit-backdrop-filter:none!important;background:#fff!important}:root[data-theme=dark] .dash--d .project-card,:root[data-theme=dark] .dash--d .dash-compose-panel{background:#102228!important}.dash--d .dash-atmosphere:after{background:#ffffff59}:root[data-theme=dark] .dash--d .dash-atmosphere:after{background:#07161cb8}}:root[data-theme=light] .dash--d{--studio-green:#1a9a52;--studio-green-dark:#148544;--studio-green-soft:#1a9a521f;--studio-cyan:#2f8588;--studio-cyan-soft:#2f85881f;--studio-bg:#f3fafb;--studio-panel:#fff;--studio-surface:#fff;--studio-hover:#eef7f8;--studio-border:#1c484c24;--studio-border-soft:#1c484c14;--studio-text:#123033;--studio-muted:#1c3e429e;--studio-chrome:#fff;--studio-shadow:0 16px 40px #285a601a;--studio-shadow-sm:0 6px 18px #285a6012;color:#123033;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=light] .dash--d .dash-atmosphere{background-color:#f4fafb;background-image:none}:root[data-theme=light] .dash--d .dash-atmosphere:after{background:0 0}@supports ((-webkit-backdrop-filter:url("#dash-liquid-refraction")) or (backdrop-filter:url("#dash-liquid-refraction"))){.dash--d .dash-add-chip{-webkit-backdrop-filter:blur(9px)saturate(175%)brightness(1.05)url(#dash-liquid-refraction);backdrop-filter:blur(9px)saturate(175%)brightness(1.05)url(#dash-liquid-refraction)}}:root[data-theme=light] .dash--d .dash-title,:root[data-theme=light] .dash--d .dash-library-title,:root[data-theme=light] .dash--d .dash-pill,:root[data-theme=light] .dash--d .dash-user-name{color:#123033}:root[data-theme=light] .dash--d .dash-tagline,:root[data-theme=light] .dash--d .dash-service-notice,:root[data-theme=light] .dash--d .dash-filters button,:root[data-theme=light] .dash--d .dash-add-chip-copy span,:root[data-theme=light] .dash--d .dash-side-copy span,:root[data-theme=light] .dash--d .dash-pane-lead,:root[data-theme=light] .dash--d .dash-foot{color:#1c3e429e}:root[data-theme=light] .dash--d .dash-search-wrap--top{background:#12303312;border-color:#1c484c1f;box-shadow:inset 0 1px 2px #1c484c29,inset 0 2px 5px #1c484c0f}:root[data-theme=light] .dash--d .dash-search-wrap--top:focus-within{border-color:color-mix(in srgb, var(--studio-green) 55%, #1c484c33);box-shadow:inset 0 1px 2px #1c484c29, inset 0 2px 5px #1c484c0f, 0 0 0 2px color-mix(in srgb, var(--studio-green) 18%, transparent)}:root[data-theme=light] .dash--d .dash-search{color:#123033;box-shadow:none;background:0 0;border:0}:root[data-theme=light] .dash--d .dash-search::placeholder,:root[data-theme=light] .dash--d .dash-search-icon,:root[data-theme=light] .dash--d .dash-search-kbd{color:#1c3e4280}:root[data-theme=light] .dash--d .dash-search-kbd{background:#f3fafb;border-color:#1c484c1f}:root[data-theme=light] .dash--d .dash-add-chip{color:#123033;background:linear-gradient(115deg,#ffffff4d,#ffffff1f 55%,#e0f8fc2e);border-color:#ffffff75;box-shadow:inset 0 1px #ffffffc2,inset 0 -1px #1c484c14,0 8px 22px #184c5414}:root[data-theme=light] .dash--d .dash-add-chip-icon{color:#1c3e428c;background:#1c3e4214}:root[data-theme=light] .dash--d .dash-add-chip.is-active{background:linear-gradient(115deg,#ffffff6b,#ffffff2e 55%,#ebf0f247);border-color:#1c484c47}:root[data-theme=light] .dash--d .dash-filters-rail{background:#1230331f}:root[data-theme=light] .dash--d .dash-filters-ink{background:#000}:root[data-theme=light] .dash--d .dash-filters button.is-active{color:#123033;background:0 0}:root[data-theme=light] .dash--d .dash-view-toggle{background:#fff;border-color:#1c484c1f}:root[data-theme=light] .dash--d .dash-view-toggle button{color:#1c3e428c}:root[data-theme=light] .dash--d .dash-view-toggle button.is-active{color:#123033;background:#1a9a5224}:root[data-theme=light] .dash--d .project-card{background:#fff;border-color:#1c484c24;box-shadow:0 10px 28px #285a6014}:root[data-theme=light] .dash--d .dash-compose-panel,:root[data-theme=light] .dash--d .create-row input,:root[data-theme=light] .dash--d .ol-ghost.icon-only{color:#123033;background:#fff;border-color:#1c484c24}:root[data-theme=light] .auth-atmosphere{background-color:#f4fafb;background-image:none}:root[data-theme=light] .auth-atmosphere:after{background:0 0}:root[data-theme=light] .auth-card{color:#123033;background:#fffffff5}@media (hover:hover) and (pointer:fine){:root[data-theme=light] .dash--d .project-card:hover{background:#fff;border-color:#1c484c24;box-shadow:0 10px 28px #285a6014}:root[data-theme=light] .dash--d .dash-add-chip:hover{background:linear-gradient(115deg,#ffffff6b,#f5f7f838 55%,#ebf0f247);border-color:#1c484c38}:root[data-theme=light] .dash--d .dash-filters button:hover:not(.is-active){color:#123033;background:0 0}:root[data-theme=light] .dash--d .dash-view-toggle button:hover:not(.is-active){color:#123033;background:#1a9a521a}:root[data-theme=light] .dash--d .dash-pill:hover,:root[data-theme=light] .dash--d .ol-ghost.icon-only:hover:not(:disabled){background:#eef7f8;border-color:#1c484c38}:root[data-theme=dark] .dash--d .dash-filters button:hover:not(.is-active){color:#fff;background:0 0}:root[data-theme=dark] .dash--d .dash-view-toggle button:hover:not(.is-active){color:#fff;background:#ffffff1a}:root[data-theme=dark] .dash--d .dash-pill:hover{background:#ffffff14;border-color:#ffffff38}:root[data-theme=dark] .dash--d .ol-ghost.icon-only:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff38}}@media (width<=900px){.dash--d .dash-user-name{display:none}}.theme-sand-slot{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.theme-sand-layer{z-index:0;pointer-events:none;display:block;position:absolute;inset:0}.theme-sand-layer--fallback{z-index:0;width:100vw;height:100vh;position:fixed;inset:0}.dash-frame,.auth-shell{z-index:2;position:relative}.dash,.auth-page,.account-page,.boot-screen{z-index:1;position:relative}:root[data-theme-morph="1"] .dash,:root[data-theme-morph="1"] .auth-page{background:0 0}:root[data-theme-morph="1"] .dash-atmosphere,:root[data-theme-morph="1"] .auth-atmosphere{opacity:1}:root[data-theme-morph="1"] .dash--d,:root[data-theme-morph="1"] .dash--d .dash-top,:root[data-theme-morph="1"] .dash--d .dash-title,:root[data-theme-morph="1"] .dash--d .dash-tagline,:root[data-theme-morph="1"] .dash--d .dash-filters button,:root[data-theme-morph="1"] .dash--d .dash-view-toggle,:root[data-theme-morph="1"] .dash--d .dash-view-toggle button,:root[data-theme-morph="1"] .dash--d .dash-pill,:root[data-theme-morph="1"] .dash--d .dash-service-notice,:root[data-theme-morph="1"] .dash--d .dash-empty,:root[data-theme-morph="1"] .dash--d .dash-foot,:root[data-theme-morph="1"] .dash--d .dash-add-chip,:root[data-theme-morph="1"] .dash--d .dash-add-chip-copy span,:root[data-theme-morph="1"] .dash--d .dash-add-chip-icon,:root[data-theme-morph="1"] .dash--d .dash-search,:root[data-theme-morph="1"] .dash--d .dash-search-icon,:root[data-theme-morph="1"] .dash--d .dash-search-kbd,:root[data-theme-morph="1"] .dash--d .dash-library-title,:root[data-theme-morph="1"] .dash--d .project-card,:root[data-theme-morph="1"] .dash--d .ol-ghost.icon-only,:root[data-theme-morph="1"] .ol-topbar,:root[data-theme-morph="1"] .ol-rail,:root[data-theme-morph="1"] .ol-side,:root[data-theme-morph="1"] .ol-status,:root[data-theme-morph="1"] .auth-card,:root[data-theme-morph="1"] .auth-page{transition:color .64s var(--ease-out), background-color .64s var(--ease-out), border-color .64s var(--ease-out), box-shadow .64s var(--ease-out)}.site-top-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2px;display:inline-flex}.site-top-link{color:var(--ol-muted,var(--studio-muted));font:inherit;letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;border-radius:980px;padding:8px 11px;font-size:13px;font-weight:590;transition:color .18s cubic-bezier(.2,.8,.2,1),background-color .18s cubic-bezier(.2,.8,.2,1),transform .1s ease-out;position:relative}.site-top-link:hover{color:var(--ol-text,var(--studio-text));background:color-mix(in srgb, var(--ol-text,#111) 6%, transparent)}.site-top-link:active{transform:scale(.97)}.site-top-link.is-active{color:var(--ol-text,var(--studio-text));background:color-mix(in srgb, var(--ol-text,#111) 8%, transparent)}.site-nav-dot{width:6px;height:6px;box-shadow:0 0 0 2px color-mix(in srgb, var(--ol-panel,#fff) 85%, transparent);background:#ff3b30;border-radius:50%;position:absolute;top:7px;right:5px}.land-nav .site-top-link{color:var(--studio-muted)}.land-nav .site-top-link:hover,.land-nav .site-top-link.is-active{color:var(--studio-text);background:color-mix(in srgb, var(--studio-text) 7%, transparent)}.dash-user .site-top-nav{margin-right:4px}.ol-top-right .site-top-nav{margin-right:2px}.ol-top-right .site-top-link{padding:6px 9px;font-size:12px}.apple-site{--apple-spring:cubic-bezier(.2, .8, .2, 1);--apple-ink:var(--ol-text,#1d1d1f);--apple-secondary:color-mix(in srgb, var(--apple-ink) 58%, transparent);--apple-tertiary:color-mix(in srgb, var(--apple-ink) 42%, transparent);--apple-fill:color-mix(in srgb, var(--ol-panel,#fff) 72%, transparent);--apple-fill-solid:color-mix(in srgb, var(--ol-panel,#fff) 92%, #f5f5f7 8%);--apple-line:color-mix(in srgb, var(--apple-ink) 10%, transparent);min-height:100%;color:var(--apple-ink);font-family:var(--font);background:#f5f5f7;position:relative;overflow-x:clip}:root[data-theme=dark] .apple-site{--apple-fill:#1c1c1ec7;--apple-fill-solid:#1c1c1e;--apple-line:#ffffff1f;background:#000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .apple-site{--apple-fill:#1c1c1ec7;--apple-fill-solid:#1c1c1e;--apple-line:#ffffff1f;background:#000}}:root[data-theme=calm] .apple-site{--apple-fill:color-mix(in srgb, var(--ol-panel,#fbf8f1) 72%, transparent);--apple-fill-solid:color-mix(in srgb, var(--ol-panel,#fbf8f1) 92%, #f2ecdf 8%);--apple-line:color-mix(in srgb, var(--apple-ink) 10%, transparent);background:#f2ecdf}.apple-site-atmosphere{pointer-events:none;z-index:0;background:radial-gradient(70% 55% at 12% -10%,#788caa38,#0000 58%),radial-gradient(55% 45% at 88% 0,#5a6e8229,#0000 55%),linear-gradient(#0000 0%,#f5f5f766 70%);position:fixed;inset:0}:root[data-theme=dark] .apple-site-atmosphere{background:radial-gradient(70% 55% at 12% -10%,#5a6e8c47,#0000 58%),radial-gradient(55% 45% at 88% 0,#465a7833,#0000 55%),linear-gradient(#00000026,#0000 55%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .apple-site-atmosphere{background:radial-gradient(70% 55% at 12% -10%,#5a6e8c47,#0000 58%),radial-gradient(55% 45% at 88% 0,#465a7833,#0000 55%),linear-gradient(#00000026,#0000 55%)}}:root[data-theme=calm] .apple-site-atmosphere{background:radial-gradient(70% 55% at 12% -10%,#9c7b4529,#0000 58%),radial-gradient(55% 45% at 88% 0,#8a8f6d24,#0000 55%),linear-gradient(#0000 0%,#f2ecdf66 70%)}.apple-site-chrome{z-index:20;-webkit-backdrop-filter:blur(22px)saturate(180%);background:color-mix(in srgb, var(--apple-fill-solid) 62%, transparent);border-bottom:1px solid var(--apple-line);position:sticky;top:0}.apple-site-chrome-inner{box-sizing:border-box;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:none;min-height:52px;margin:0;padding:8px 22px;display:flex}.apple-site-chrome-left{flex:none;min-width:0}.apple-site-chrome-right{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.apple-site-nav-spacer{pointer-events:none;visibility:hidden;flex-shrink:0}.apple-site-nav-spacer--search{flex:0 168px;width:clamp(112px,13vw,168px);height:34px}.apple-site-nav-spacer--trail{flex:none;width:clamp(148px,15vw,204px);height:34px}.apple-site-chrome-right .site-top-nav{margin-right:4px}.apple-site-back{background:color-mix(in srgb, var(--apple-ink) 6%, transparent);color:var(--apple-ink);font:inherit;letter-spacing:-.01em;cursor:pointer;transition:transform .1s ease-out, background-color .18s var(--apple-spring);border:0;border-radius:980px;align-items:center;gap:2px;padding:7px 12px 7px 10px;font-size:13px;font-weight:590;display:inline-flex}.apple-site-back span{margin-top:-1px;font-size:18px;line-height:1}.apple-site-back:hover{background:color-mix(in srgb, var(--apple-ink) 10%, transparent)}.apple-site-back:active{transform:scale(.97)}.apple-site-main{z-index:1;max-width:980px;margin:0 auto;padding:48px 22px 72px;position:relative}.apple-site--wide .apple-site-main{width:100%;max-width:none}.apple-site--wide .apple-site-chrome-inner{padding-left:clamp(20px,3vw,40px);padding-right:clamp(20px,3vw,40px)}.apple-site--wide .apple-site-main{padding:40px clamp(20px,3vw,40px) 64px}.apple-site--wide .apple-site-hero{margin-bottom:28px}.apple-site-hero{animation:apple-site-rise .42s var(--apple-spring) both;margin-bottom:36px}.apple-site-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--apple-tertiary);margin:0 0 10px;font-size:13px;font-weight:650}.apple-site-title{letter-spacing:-.045em;margin:0;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:700;line-height:1.05}.apple-site-subtitle{letter-spacing:-.015em;max-width:34em;color:var(--apple-secondary);margin:14px 0 0;font-size:1.125rem;line-height:1.45}.apple-site-body{animation:apple-site-rise .52s var(--apple-spring) 40ms both}.apple-site--fill{flex-direction:column;height:100%;display:flex;overflow:hidden}.apple-site--fill .apple-site-main{flex:1;width:100%;min-height:0;padding:16px 22px;overflow:hidden auto}.apple-site--fill .apple-site-body{min-height:min-content}.apple-site--fill .apple-price-grid{align-content:start;align-items:start;width:100%}.apple-site--fill .apple-price-panel{padding:14px 16px 12px}.apple-site--fill .apple-price-title-row{margin-bottom:4px}.apple-site--fill .apple-price-lead{margin:0 0 10px}.apple-site-footnote{color:var(--apple-tertiary);margin:18px 0 0;font-size:13px;line-height:1.45}.apple-site-banner{border-radius:14px;margin-bottom:16px;padding:12px 14px;font-size:14px}.apple-site-banner.is-error{color:#ff3b30;background:#ff3b301f}.apple-material{background:var(--apple-fill);-webkit-backdrop-filter:blur(24px)saturate(160%);border:1px solid var(--apple-line);border-radius:22px;box-shadow:inset 0 1px #ffffff59,0 18px 40px #0000000f}.apple-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px 16px;display:grid}.apple-price-panel{grid-template-rows:subgrid;grid-row:span var(--price-span);background:var(--apple-fill);-webkit-backdrop-filter:blur(28px)saturate(170%);border:1px solid var(--apple-line);border-radius:10px;padding:20px 22px 22px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff6,0 8px 24px #0000000d}.apple-price-panel.is-current{border-color:color-mix(in srgb, #6ba3ff 72%, var(--apple-line))}:root[data-theme=dark] .apple-price-panel.is-current{border-color:color-mix(in srgb, #8eb0ff 78%, var(--apple-line))}.apple-price-head{min-width:0}.apple-feature-list{margin:0;padding:0;list-style:none;display:contents}.apple-feature-list li.is-empty{min-height:2.6em}.apple-price-title-row{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.apple-price-kicker{color:var(--apple-tertiary);letter-spacing:-.01em;margin:0;font-size:12px;font-weight:600}.apple-price-free{letter-spacing:-.03em;font-size:22px;font-weight:650;line-height:1.2;display:inline-block}.apple-price-lead{letter-spacing:-.01em;max-width:34em;color:var(--apple-secondary);margin:0 0 14px;font-size:13px;line-height:1.45;position:relative}.apple-feature-list li{border:0;gap:2px;padding:0;display:grid}.apple-feature-list strong{letter-spacing:-.01em;font-size:13px;font-weight:600}.apple-feature-list span{color:var(--apple-secondary);font-size:12px;line-height:1.4}.apple-feature-list .is-pro strong,.apple-feature-list .is-pro span{color:#1d3f8f}:root[data-theme=dark] .apple-feature-list .is-pro strong,:root[data-theme=dark] .apple-feature-list .is-pro span{color:#8eb0ff}.usage-guide{gap:clamp(20px,2.4vw,30px);width:100%;min-width:0;display:grid}.usage-picker{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(16px,2vw,28px);display:grid}.usage-picker-group{gap:10px;min-width:0;display:grid}.usage-picker-label{color:var(--apple-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.usage-picker-row{flex-wrap:wrap;gap:8px;display:flex}.usage-tab{border:1px solid var(--apple-line);background:var(--apple-fill);min-width:0;color:inherit;text-align:left;cursor:pointer;border-radius:16px;flex:190px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"num name""num hint";align-items:center;column-gap:11px;padding:11px 14px;transition:background .18s,border-color .18s;display:grid}.usage-tab:hover{background:color-mix(in srgb, var(--apple-ink) 6%, transparent)}.usage-tab.is-active{border-color:color-mix(in srgb, var(--apple-ink) 40%, transparent);background:color-mix(in srgb, var(--apple-ink) 8%, transparent)}.usage-tab-num{background:color-mix(in srgb, var(--apple-ink) 7%, transparent);width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--apple-line);color:var(--apple-secondary);letter-spacing:.03em;border-radius:10px;grid-area:num;place-items:center;font-size:11px;font-weight:700;display:grid}.usage-tab.is-active .usage-tab-num{background:var(--apple-ink);box-shadow:none;color:var(--apple-fill-solid)}.usage-tab-name{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;grid-area:name;font-size:.95rem;font-weight:650;overflow:hidden}.usage-tab-hint{color:var(--apple-secondary);text-overflow:ellipsis;white-space:nowrap;grid-area:hint;font-size:.78rem;line-height:1.35;overflow:hidden}.usage-panel{background:var(--apple-fill);-webkit-backdrop-filter:blur(28px)saturate(170%);border:1px solid var(--apple-line);border-radius:28px;gap:clamp(20px,2vw,28px);min-width:0;padding:clamp(24px,2.6vw,36px);animation:.24s both usage-panel-in;display:grid;box-shadow:inset 0 1px #fff6,0 18px 40px #0000000f}@keyframes usage-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.usage-panel-head{gap:8px;max-width:46em;display:grid}.usage-panel-kicker{color:var(--apple-tertiary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.usage-panel-head h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:720;line-height:1.1}.usage-panel-head p{letter-spacing:-.015em;color:var(--apple-secondary);margin:0;font-size:1rem;line-height:1.5}.usage-steps{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.usage-step{border:1px solid var(--apple-line);background:color-mix(in srgb, var(--apple-ink) 3%, transparent);border-radius:18px;align-content:start;gap:8px;min-width:0;padding:18px 18px 20px;display:grid}.usage-step-num{background:var(--apple-ink);width:26px;height:26px;color:var(--apple-fill-solid);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.usage-step strong{letter-spacing:-.02em;font-size:.98rem;font-weight:650;line-height:1.3}.usage-step p{letter-spacing:-.015em;color:var(--apple-secondary);margin:0;font-size:.9rem;line-height:1.5}.usage-step code{background:color-mix(in srgb, var(--apple-ink) 6%, transparent);width:fit-content;max-width:100%;box-shadow:inset 0 0 0 1px var(--apple-line);color:var(--apple-ink);letter-spacing:-.01em;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin-top:2px;padding:7px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.4;display:block}.usage-outcome{border-top:1px solid var(--apple-line);gap:5px;padding-top:20px;display:grid}.usage-outcome strong{color:var(--apple-tertiary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.usage-outcome p{max-width:60em;color:var(--apple-secondary);margin:0;font-size:.92rem;line-height:1.5}.apple-docs-layout,.apple-news-layout{grid-template-columns:minmax(180px,220px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.apple-docs-rail,.apple-news-rail{flex-direction:column;gap:4px;display:flex;position:sticky;top:72px}.apple-site--split{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.apple-site--split .apple-site-atmosphere{flex:none}.apple-site--split .apple-site-chrome{flex-shrink:0}.apple-site--split .apple-site-main{flex-direction:column;flex:1;min-height:0;padding-bottom:22px;display:flex;overflow:hidden}.apple-site--split .apple-site-hero{flex-shrink:0}.apple-site--split .apple-site-body{flex-direction:column;flex:1;min-height:0;display:flex}.apple-site--split .apple-site-banner{flex-shrink:0}.apple-site--split .apple-news-layout{flex:1;align-items:stretch;min-height:0}.apple-site--split .apple-news-rail,.apple-site--split .apple-news-panel{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--apple-ink) 22%, transparent) transparent;min-height:0;overflow:hidden auto}.apple-site--split .apple-news-rail{padding-right:4px;position:static}.apple-site--split .apple-news-rail::-webkit-scrollbar{background:0 0;width:8px;height:8px}.apple-site--split .apple-news-panel::-webkit-scrollbar{background:0 0;width:8px;height:8px}.apple-site--split .apple-news-rail::-webkit-scrollbar-track{background:0 0}.apple-site--split .apple-news-panel::-webkit-scrollbar-track{background:0 0}.apple-site--split .apple-news-rail::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--apple-ink) 22%, transparent) padding-box;border:2px solid #0000;border-radius:980px;min-height:36px}.apple-site--split .apple-news-panel::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--apple-ink) 22%, transparent) padding-box;border:2px solid #0000;border-radius:980px;min-height:36px}.apple-site--split .apple-news-rail::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}.apple-site--split .apple-news-panel::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}.apple-site--split .apple-news-rail::-webkit-scrollbar-corner{background:0 0;width:0;height:0;display:none}.apple-site--split .apple-news-panel::-webkit-scrollbar-corner{background:0 0;width:0;height:0;display:none}.apple-docs-rail-item,.apple-news-item{text-align:left;color:inherit;cursor:pointer;transition:background-color .18s var(--apple-spring), transform .1s ease-out;background:0 0;border:0;border-radius:14px;padding:12px 14px}.apple-docs-rail-item:hover,.apple-news-item:hover{background:color-mix(in srgb, var(--apple-ink) 5%, transparent)}.apple-docs-rail-item:active,.apple-news-item:active{transform:scale(.985)}.apple-docs-rail-item.is-active,.apple-news-item.is-active{background:var(--apple-fill);box-shadow:inset 0 0 0 1px var(--apple-line)}.apple-docs-rail-item{letter-spacing:-.015em;font-size:14px;font-weight:600}.apple-news-item strong{letter-spacing:-.02em;font-size:14px;font-weight:650;line-height:1.3;display:block}.apple-news-item span{color:var(--apple-tertiary);margin-top:4px;font-size:12px;display:block}.apple-news-item em{color:var(--apple-secondary);margin-top:6px;font-size:12px;font-style:normal;line-height:1.4;display:block}.apple-docs-panel,.apple-news-panel{min-height:280px;animation:apple-site-rise .36s var(--apple-spring) both;padding:clamp(22px,4vw,32px)}.apple-docs-panel h2,.apple-news-head h2{letter-spacing:-.035em;margin:0 0 12px;font-size:clamp(1.55rem,3vw,2rem);font-weight:700;line-height:1.15}.apple-docs-panel p{letter-spacing:-.015em;color:var(--apple-secondary);margin:0 0 14px;font-size:1.05rem;line-height:1.55}.apple-docs-panel p:last-child{margin-bottom:0}.apple-docs-bullets{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.apple-docs-bullets li{letter-spacing:-.015em;color:var(--apple-secondary);padding-left:16px;font-size:.98rem;line-height:1.5;position:relative}.apple-docs-bullets li:before{content:"";background:color-mix(in srgb, var(--apple-ink) 35%, transparent);border-radius:50%;width:5px;height:5px;position:absolute;top:.62em;left:0}.apple-docs-code{background:color-mix(in srgb, var(--apple-ink) 5%, transparent);box-shadow:inset 0 0 0 1px var(--apple-line);border-radius:14px;max-height:min(360px,50vh);margin:18px 0 0;padding:14px 16px;overflow:auto}.apple-docs-code code{letter-spacing:-.01em;color:var(--apple-ink);white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.55}.apple-news-head{border-bottom:1px solid var(--apple-line);margin-bottom:18px;padding-bottom:16px}.apple-news-head p{color:var(--apple-tertiary);margin:0;font-size:13px}.apple-tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.apple-tags span{letter-spacing:-.01em;color:var(--apple-secondary);background:color-mix(in srgb, var(--apple-ink) 5%, transparent);border-radius:980px;padding:4px 9px;font-size:11px;font-weight:600}.site-md h1,.site-md h2,.site-md h3{letter-spacing:-.03em;color:var(--apple-ink);line-height:1.2}.site-md h1{margin:0 0 .75em;font-size:1.55rem}.site-md h2{margin:1.35em 0 .5em;font-size:1.25rem}.site-md h3{margin:1.15em 0 .4em;font-size:1.05rem}.site-md p,.site-md li{letter-spacing:-.01em;color:var(--apple-secondary);font-size:15px;line-height:1.6}.site-md a{color:inherit;text-underline-offset:2px;text-decoration:underline}.site-md-pre{border:1px solid var(--apple-line);background:color-mix(in srgb, var(--apple-ink) 4%, transparent);border-radius:14px;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5;overflow:auto}.site-md-table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}.site-md-table th,.site-md-table td{border:1px solid var(--apple-line);text-align:left;padding:8px 10px}@keyframes apple-site-rise{0%{opacity:0;transform:translateY(10px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.apple-site-hero,.apple-site-body,.apple-docs-panel,.apple-news-panel{animation:none}.site-top-link,.apple-site-back,.apple-docs-rail-item,.apple-news-item,.usage-tab{transition:none}.usage-panel{animation:none}}@media (prefers-reduced-transparency:reduce){.apple-site-chrome,.apple-material,.apple-price-panel,.usage-panel{-webkit-backdrop-filter:none;background:var(--apple-fill-solid)}}@media (width<=720px){.apple-site-chrome-inner{padding:8px 14px}.apple-site-nav-spacer{display:none}.apple-site-main{padding:32px 16px 56px}.apple-price-grid{grid-template-columns:1fr;row-gap:16px}.apple-price-panel{grid-row:auto;display:block}.apple-feature-list{gap:10px;display:grid}.apple-feature-list li.is-empty{display:none}.usage-picker,.usage-steps,.apple-docs-layout,.apple-news-layout{grid-template-columns:1fr}.apple-docs-rail,.apple-news-rail{flex-direction:row;gap:6px;padding-bottom:4px;position:static;overflow-x:auto}.apple-docs-rail-item,.apple-news-item{flex:none;max-width:240px}.apple-site--split{height:auto;min-height:100%;display:block;overflow:visible}.apple-site--split .apple-site-main,.apple-site--split .apple-site-body,.apple-site--split .apple-news-layout{flex:none;height:auto;min-height:0;display:block;overflow:visible}.apple-site--split .apple-news-rail,.apple-site--split .apple-news-panel{overscroll-behavior:auto;overflow-y:visible}.apple-site--split .apple-news-rail{overflow-x:auto}}.ol-app .ol-topbar,.ol-app .ol-editor-tabs,.ol-app .ol-pdf-toolbar{box-shadow:none;border-bottom:0}.ol-app .ol-topbar:after,.ol-app .ol-editor-tabs:after,.ol-app .ol-pdf-toolbar:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(to bottom, color-mix(in srgb, var(--ol-text) 7%, transparent), transparent);opacity:.45;height:6px;position:absolute;bottom:-5px;left:0;right:0}.ol-app .ol-topbar,.ol-app .ol-editor-tabs,.ol-app .ol-pdf-toolbar{position:relative}.ol-app .ol-menu-btn,.ol-app .site-top-link,.ol-app .ol-project-btn,.ol-app .ol-user-chip,.ol-app .ol-share,.ol-app .ol-compile-action,.ol-app .ol-layout-seg,.ol-app .ol-layout-seg button,.ol-app .tab-actions,.ol-app .tab-actions .ol-tool,.ol-app .ol-tool,.ol-app .ol-tool-toggle,.ol-app .ol-logs-btn,.ol-app .pdf-zoom-controls,.ol-app .pdf-zoom-value,.ol-app .pdf-zoom-btn{box-shadow:none;border-color:#0000}.ol-app .ol-share,.ol-app .ol-compile-action,.ol-app .ol-layout-seg,.ol-app .tab-actions,.ol-app .ol-tool,.ol-app .ol-tool-toggle,.ol-app .ol-logs-btn,.ol-app .pdf-zoom-controls{background:0 0}.ol-app .ol-compile-action,.ol-app .ol-share{border-radius:6px}.ol-app .ol-layout-seg{background:color-mix(in srgb, var(--ol-text) 5%, transparent);border-radius:6px;gap:2px;padding:2px}.ol-app .ol-layout-seg button.active{background:color-mix(in srgb, var(--ol-panel) 94%, var(--ol-hover));box-shadow:0 1px 2px #00000017}.ol-app .site-top-link{background:0 0;border-radius:5px}.ol-app .tab-actions{gap:3px;margin-right:6px;overflow:visible}.ol-app .tab-actions .ol-tool{border:0;border-radius:5px;padding-inline:7px}.ol-app .ol-pdf-toolbar{overflow:hidden}@media (hover:hover) and (pointer:fine){.ol-app .ol-pdf-chrome,.ol-app .ol-pdf-chrome .ol-pdf-toolbar{overflow:visible}}.ol-app .ol-pdf-toolbar .ol-tool-group{flex:0 auto;overflow:hidden}.ol-app .ol-pdf-toolbar .ol-tool-group:last-child{justify-content:flex-end}.ol-app .pdf-zoom-controls{flex:none;overflow:visible}.ol-app .pdf-zoom-btn+.pdf-zoom-value,.ol-app .pdf-zoom-btn+.pdf-zoom-input,.ol-app .pdf-zoom-value+.pdf-zoom-btn,.ol-app .pdf-zoom-input+.pdf-zoom-btn{border-left-color:color-mix(in srgb, var(--ol-text) 9%, transparent)}.ol-app .layout-split .tab-actions{display:none}.ol-fade-scroll:not(.cm-host){overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ol-panel) var(--ol-panel);overflow-y:auto!important}.cm-host.ol-fade-scroll .cm-scroller{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ol-panel) var(--ol-panel);overflow:auto!important}.ol-fade-scroll:not(.cm-host):hover,.ol-fade-scroll:not(.cm-host).is-scrolling,.cm-host.ol-fade-scroll:hover .cm-scroller,.cm-host.ol-fade-scroll.is-scrolling .cm-scroller{scrollbar-color:color-mix(in srgb, var(--ol-muted,#6e6e73) 62%, transparent) transparent}.ol-fade-scroll:not(.cm-host)::-webkit-scrollbar{background:0 0;width:8px;height:8px}.cm-host.ol-fade-scroll .cm-scroller::-webkit-scrollbar{background:0 0;width:8px;height:8px}.ol-fade-scroll:not(.cm-host)::-webkit-scrollbar-track{background:0 0}.cm-host.ol-fade-scroll .cm-scroller::-webkit-scrollbar-track{background:0 0}.ol-fade-scroll:not(.cm-host)::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:4px;min-height:36px}.cm-host.ol-fade-scroll .cm-scroller::-webkit-scrollbar-thumb{background:padding-box padding-box;border:2px solid #0000;border-radius:4px;min-height:36px}.ol-fade-scroll:not(.cm-host):hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ol-muted,#6e6e73) 62%, transparent) padding-box}.ol-fade-scroll:not(.cm-host).is-scrolling::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ol-muted,#6e6e73) 62%, transparent) padding-box}.cm-host.ol-fade-scroll:hover .cm-scroller::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ol-muted,#6e6e73) 62%, transparent) padding-box}.cm-host.ol-fade-scroll.is-scrolling .cm-scroller::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ol-muted,#6e6e73) 62%, transparent) padding-box}.ol-fade-scroll:not(.cm-host)::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}.ol-fade-scroll:not(.cm-host)::-webkit-scrollbar-corner{background:0 0;width:0;height:0;display:none}.cm-host.ol-fade-scroll .cm-scroller::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}.cm-host.ol-fade-scroll .cm-scroller::-webkit-scrollbar-corner{background:0 0;width:0;height:0;display:none}@media (hover:hover) and (pointer:fine){.ol-app .ol-menu-btn:hover,.ol-app .site-top-link:hover,.ol-app .ol-project-btn:hover,.ol-app .ol-history button:hover:not(:disabled),.ol-app .ol-user-chip:hover,.ol-app .ol-share:hover:not(:disabled),.ol-app .ol-compile-action:hover:not(:disabled),.ol-app .tab-actions .ol-tool:hover:not(:disabled),.ol-app .ol-tool:hover:not(:disabled),.ol-app .ol-tool-toggle:hover:not(:disabled),.ol-app .ol-logs-btn:hover:not(:disabled){background:color-mix(in srgb, var(--ol-text) 6%, transparent)}}@media (width<=1120px){.ol-app .ol-pdf-toolbar .compile-time,.ol-app .ol-pdf-toolbar .ol-tool-toggle>span:first-child{display:none}.ol-app .ol-pdf-toolbar .ol-tool,.ol-app .ol-pdf-toolbar .ol-tool-toggle,.ol-app .ol-pdf-toolbar .ol-logs-btn{padding-inline:6px}}@media (prefers-reduced-transparency:reduce){.ol-app .ol-topbar:after,.ol-app .ol-editor-tabs:after,.ol-app .ol-pdf-toolbar:after{background:var(--ol-border-soft);opacity:1;height:1px;bottom:-1px}}@media (prefers-contrast:more){.ol-app .ol-topbar,.ol-app .ol-editor-tabs,.ol-app .ol-pdf-toolbar{border-bottom:1px solid}.ol-app .ol-topbar:after,.ol-app .ol-editor-tabs:after,.ol-app .ol-pdf-toolbar:after{display:none}}:root[data-theme=dark] .ol-app,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app{--ws-separator:#2a3038;--ws-hairline:#2a3038}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=calm]) .ol-app{--ws-separator:#2a3038;--ws-hairline:#2a3038}}.ol-app .ol-topbar,.ol-app .ol-editor-tabs,.ol-app .ol-pdf-toolbar,.ol-app .ol-rail,.ol-app .ol-side,.ol-app .ol-side-collab,.ol-app .ol-filetree,.ol-app .sync-panel,.ol-app .project-settings,.ol-app .collab-pane,.ol-app .ol-editor-pane,.ol-app .ol-pdf-pane,.ol-app .ol-side-splitter,.ol-app .ol-splitter{box-shadow:none!important;border:0!important;outline:0!important}.ol-app .ol-topbar{border-bottom:1px solid var(--ws-hairline)!important}.ol-app .ol-topbar:after,.ol-app .ol-editor-tabs:after,.ol-app .ol-pdf-toolbar:after{content:none!important;background:0 0!important;display:none!important}.ol-app .ol-rail{background:color-mix(in srgb, var(--ws-sidebar) 97%, var(--ol-panel));border-right:1px solid var(--ws-hairline)!important}.ol-app .ol-side,.ol-app .ol-side-collab{background:var(--ws-sidebar);border-right:0!important}.ol-app .ol-side-head,.ol-app .notes-head,.ol-app .chat-head,.ol-app .changelog-head,.ol-app .codex-topbar,.ol-app .codex-test-note,.ol-app .codex-sheet,.ol-app .notes-compose,.ol-app .changelog-filters,.ol-app .logs-tabs,.ol-app .pdf-outline-head,.ol-app .project-settings-section,.ol-app .project-settings-head,.ol-app .ft-head{border-top:0!important;border-left:0!important;border-right:0!important;border-bottom:1px solid var(--ws-hairline)!important;box-shadow:none!important}.ol-app .ol-editor-tabs,.ol-app .ol-pdf-toolbar{border-bottom:1px solid var(--ws-hairline)!important}.ol-app .tab{border-right:1px solid var(--ws-hairline)!important;box-shadow:none!important}.ol-app .tab.is-active:after{content:none!important;display:none!important}.ol-app .ol-side-splitter{cursor:col-resize;background:linear-gradient(var(--ws-hairline), var(--ws-hairline)) center / 1px 100% no-repeat, transparent!important;flex:0 0 6px!important;width:6px!important;margin:0!important}.ol-app .ol-workspace.layout-split{grid-template-columns:var(--split-ratio,50%) 6px minmax(0, 1fr)}.ol-app .ol-editor-pane,.ol-app .ol-pdf-pane{z-index:0}.ol-app .ol-splitter{z-index:8;cursor:col-resize;position:relative;background:linear-gradient(var(--ws-hairline), var(--ws-hairline)) center / 1px 100% no-repeat, transparent!important;width:6px!important;min-width:6px!important;overflow:visible!important}.ol-app .sync-rail{z-index:9;pointer-events:auto;flex-direction:column;gap:5px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ol-app .ol-side-splitter:before,.ol-app .ol-side-splitter:after,.ol-app .ol-splitter:before,.ol-app .ol-splitter:after{content:none!important;box-shadow:none!important;background:0 0!important;border:0!important;display:none!important}.ol-app .sync-btn,.ol-app .sync-btn:hover,.ol-app .sync-btn.on,.ol-app .sync-btn:hover:not(:disabled){outline:0;border:1px solid var(--ws-hairline)!important;box-shadow:none!important}.ol-app .sync-btn{border-radius:50%;place-items:center;width:22px;height:22px;padding:0;transition:transform .1s ease-out,background .14s,color .14s;display:grid}.ol-app .sync-btn:active:not(:disabled){transform:scale(.96)}.ol-app .sync-btn-fwd,.ol-app .sync-btn-fwd:hover,.ol-app .sync-btn-fwd.on{background:var(--ol-panel)!important;color:#7d8b99!important}.ol-app .sync-btn-back,.ol-app .sync-btn-back:hover,.ol-app .sync-btn-back.on{color:#fff!important;background:#8a939c!important}@media (prefers-reduced-motion:reduce){.ol-app .sync-btn{transition:none}}@media (width<=900px){.ol-app .ol-workspace.layout-split{grid-template-rows:minmax(0,1fr) 6px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.ol-app .ol-splitter{cursor:row-resize;background:linear-gradient(var(--ws-hairline), var(--ws-hairline)) center / 100% 1px no-repeat, transparent!important;width:auto!important;min-width:0!important;height:6px!important}.ol-app .sync-rail{flex-direction:row}}@media (prefers-reduced-transparency:reduce){.ol-app .ol-rail,.ol-app .ol-side,.ol-app .ol-side-collab{background:var(--ol-surface)}}.ol-app .ol-user-chip .avatar,.ol-app .peer-dot,.ol-app .notes-avatar,.ol-app .chat-avatar,.ol-app .changelog-avatar,.share-avatar[style*=background]{background-color:var(--user-color,var(--ws-accent,#0a84ff));color:#fff!important}.ol-app .peer-dot[style*=background],.ol-app .notes-avatar[style*=background],.ol-app .chat-avatar[style*=background],.ol-app .changelog-avatar[style*=background],.ol-app .ol-user-chip .avatar[style*=background]{color:#fff!important}.cm-wrap{flex:1;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.cm-wrap .cm-host{width:100%;height:100%;min-height:0;overflow:hidden}.cm-codex-chip-row{z-index:40;align-items:center;gap:6px;display:inline-flex;position:absolute}.cm-codex-chip{z-index:40;border:1px solid var(--ws-hairline);background:var(--ol-panel);height:28px;color:var(--ol-text);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font:400 12px/1 SF Pro Text,Helvetica Neue,system-ui,sans-serif;display:inline-flex;position:relative;box-shadow:0 6px 18px #1018281f}.cm-codex-chip:hover{background:var(--ol-hover)}.cm-codex-chip.is-on{background:color-mix(in srgb, var(--ol-text) 8%, var(--ol-hover))}.cm-codex-chip:active{transform:scale(.97)}.ol-app .codex-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--ol-text) 3.2%, var(--ol-panel)) 0, var(--ol-panel) 88px)}.ol-app .codex-panel>.codex-topbar{-webkit-backdrop-filter:blur(20px)saturate(165%);background:linear-gradient(180deg, color-mix(in srgb, #fff 58%, var(--ol-panel)) 0%, color-mix(in srgb, var(--ol-panel) 86%, transparent) 100%)!important;border-bottom-color:color-mix(in srgb, var(--ws-hairline) 70%, transparent)!important;box-shadow:inset 0 1px #ffffffc7,0 1px #00000006!important}.ol-app .codex-panel>.codex-topbar:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#fffc 18% 82%,#0000);height:1px;position:absolute;inset:0 12px auto}.ol-app .codex-panel>.codex-topbar:after{content:"";pointer-events:none;background:linear-gradient(#00000006,#0000);height:5px;position:absolute;bottom:-5px;left:0;right:0}.ol-app .codex-panel .codex-form{background:linear-gradient(180deg, color-mix(in srgb, var(--ol-text) 1.5%, transparent), color-mix(in srgb, var(--ol-panel) 94%, transparent));-webkit-backdrop-filter:blur(16px)saturate(150%)}.ol-app .codex-panel .codex-composer-box{box-shadow:none;background:0 0}:root[data-theme=dark] .ol-app .codex-panel,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app .codex-panel{background:linear-gradient(180deg, color-mix(in srgb, #fff 4%, var(--ol-panel)) 0, var(--ol-panel) 88px)}:root[data-theme=dark] .ol-app .codex-panel>.codex-topbar,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app .codex-panel>.codex-topbar{background:linear-gradient(180deg, color-mix(in srgb, #fff 8%, var(--ol-panel)) 0%, color-mix(in srgb, var(--ol-panel) 92%, #000) 100%)!important;box-shadow:inset 0 1px #ffffff1f,0 1px #0000002e!important}:root[data-theme=dark] .ol-app .codex-panel>.codex-topbar:before,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app .codex-panel>.codex-topbar:before{background:linear-gradient(90deg,#0000,#ffffff29 20% 80%,#0000)}:root[data-theme=dark] .ol-app .codex-panel>.codex-topbar:after,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app .codex-panel>.codex-topbar:after{background:linear-gradient(#00000014,#0000)}:root[data-theme=dark] .ol-app .codex-panel .codex-composer-box,:root:not([data-theme=light]):not([data-theme=calm]) .ol-app .codex-panel .codex-composer-box{box-shadow:none;background:0 0}@media (prefers-reduced-transparency:reduce){.ol-app .codex-panel>.codex-topbar,.ol-app .codex-panel .codex-form{-webkit-backdrop-filter:none;background:var(--ol-panel)!important}}.ol-app .ol-body{flex:1;min-height:0;overflow:hidden}.ol-app .ol-workspace{flex:1;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;max-height:100%;display:grid;overflow:hidden}.ol-app .ol-editor-pane,.ol-app .ol-pdf-pane,.ol-app .ol-side,.ol-app .ol-side-collab,.ol-app .ol-filetree{min-height:0;max-height:100%;overflow:hidden}.ol-app .ol-editor-body,.ol-app .editor-layer,.ol-app .cm-wrap,.ol-app .cm-host,.ol-app .cm-host .cm-editor,.ol-app .ol-pdf-body,.ol-app .ol-pdf-view,.ol-app .pdf-viewer{flex:1;min-height:0;overflow:hidden}.ol-app .cm-host .cm-scroller,.ol-app .ol-files,.ol-app .pdf-viewer-main,.ol-app .ol-side-body,.ol-app .issue-list{min-height:0;overflow:auto!important}
