@font-face{font-family:Noto Sans JP;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-jp-japanese-400-normal-4dGCN58M.woff2)format("woff2"),url(./noto-sans-jp-japanese-400-normal-B6M6SIJT.woff)format("woff")}@font-face{font-family:Noto Sans JP;font-style:normal;font-display:swap;font-weight:700;src:url(./noto-sans-jp-japanese-700-normal-C3wh_X9J.woff2)format("woff2"),url(./noto-sans-jp-japanese-700-normal-DGh5i7lu.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080a0f;--panel:#11141c;--panel2:#171b25;--line:#292e3b;--text:#f5f7fb;--muted:#9098aa;--accent:#bcff5c;--accent2:#7af0ce;--danger:#ff7187;--shadow:0 20px 60px #0009;background:var(--bg);color:var(--text);font-synthesis:none;font-family:Inter,Noto Sans JP,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{background:var(--bg);isolation:isolate;grid-template-rows:auto minmax(120px,1fr) auto auto;height:100dvh;display:grid;position:relative}.topbar{height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;z-index:4;background:linear-gradient(#0b0e15 0%,#0b0e15ed 72%,#0000);justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{background:var(--accent);color:#11170b;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid;transform:rotate(-5deg)}.brand>div:last-child{min-width:0;display:grid}.brand input{text-overflow:ellipsis;background:0 0;border:0;width:min(48vw,260px);padding:0;font-size:15px;font-weight:750}.brand small,.eyebrow{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:9px}.top-actions{align-items:center;gap:7px;display:flex}.fps{font-variant-numeric:tabular-nums;border:1px solid var(--line);background:#151923d9;border-radius:99px;padding:7px 9px;font-size:11px}.fps i{background:#ffbd55;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.fps i.good{background:var(--accent)}.icon-btn{border:1px solid var(--line);background:#181c26;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.icon-btn svg{width:19px}.viewport{touch-action:none;background:radial-gradient(circle at 50% 40%,#2c3151,#080a0f 72%);position:relative;overflow:hidden}.mmd-canvas{width:100%;height:100%;display:block}.viewport-badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.08em;color:#cdd3df;background:#080a0f99;border:1px solid #ffffff1c;border-radius:9px;align-items:center;gap:6px;padding:7px 9px;font-size:9px;display:flex;position:absolute;top:10px;left:12px}.viewport-badge svg{width:13px;color:var(--accent)}.empty-stage{text-align:center;z-index:2;background:radial-gradient(circle at 50% 38%,#273448aa,#0000 45%);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.hero-icon{color:#11170b;background:linear-gradient(145deg, var(--accent), var(--accent2));border-radius:22px;place-items:center;width:66px;height:66px;margin-bottom:16px;display:grid;box-shadow:0 10px 50px #9cff5430}.hero-icon svg{width:29px}.empty-stage h1{letter-spacing:-.045em;margin:5px 0 8px;font-size:clamp(24px,7vw,38px);line-height:1.06}.empty-stage p{color:#aab1c0;max-width:340px;margin:0 0 18px;font-size:12px;line-height:1.65}.empty-stage>div:not(.hero-icon){gap:9px;display:flex}.empty-stage button,.action-grid button,.wide,.preset-grid button{background:#1a1e29;border:1px solid #303646;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 15px;font-weight:650;display:flex}.empty-stage button svg,.wide svg,.action-grid svg{width:18px}.primary{background:var(--accent)!important;color:#11170b!important;border-color:#0000!important}.empty-stage>small{color:#747d90;margin-top:13px}.loading{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#090b11dd;place-content:center;justify-items:center;gap:12px;font-size:13px;display:grid;position:absolute;inset:0}.loading progress{width:180px;height:4px;accent-color:var(--accent)}.spinner{border:3px solid #40475a;border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.transport{z-index:5;background:linear-gradient(#10131b,#0c0f16);border-top:1px solid #272c38;padding:8px 14px 7px}.timeline-copy{color:#a2a9b8;font-variant-numeric:tabular-nums;justify-content:space-between;font-size:9px;display:flex}.transport>input{width:100%;height:15px;accent-color:var(--accent);margin:0}.transport-actions{justify-content:center;align-items:center;gap:4px;height:43px;display:flex}.transport-actions button{background:0 0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.transport-actions svg{width:18px}.transport-actions .play{background:var(--text);color:#0b0e13;width:45px;height:45px}.transport-actions .play svg{fill:currentColor}.speed{border:1px solid var(--line);background:#1a1e29;border-radius:10px;align-items:center;height:34px;margin-left:8px;padding:0 5px 0 8px;display:flex}.speed>svg{width:14px}.speed>svg:last-child{width:12px}.speed select{appearance:none;background:0 0;border:0;padding:0 4px;font-size:11px}.bottom-nav{height:calc(64px + env(safe-area-inset-bottom));padding:2px 6px env(safe-area-inset-bottom);border-top:1px solid var(--line);z-index:7;background:#0d1017;justify-content:space-around;display:flex}.bottom-nav button{color:#7f8798;background:0 0;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-width:45px;font-size:9px;display:flex}.bottom-nav svg{width:19px}.bottom-nav button.active{color:var(--accent);background:#baff5b0e}.sheet{left:0;right:0;bottom:calc(64px + env(safe-area-inset-bottom));z-index:6;max-height:min(66dvh,590px);box-shadow:var(--shadow);background:linear-gradient(#171b25,#10131b);border:1px solid #303543;border-radius:22px 22px 0 0;flex-direction:column;display:flex;position:absolute}.sheet-grip{background:#434959;border-radius:99px;width:42px;height:4px;margin:8px auto 2px}.sheet header,.importer header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 16px 10px;display:flex}.sheet h2,.importer h2{margin:2px 0 0;font-size:18px}.sheet-body{overscroll-behavior:contain;padding:12px 14px 22px;overflow:auto}.control{border-bottom:1px solid #252a36;justify-content:space-between;align-items:center;min-height:51px;font-size:13px;display:flex}.control>label:first-child,.range-control label{font-weight:600}.control select{background:#202531;border:1px solid #353b4a;border-radius:10px;padding:8px}.toggle{background:#343a48;border-radius:99px;width:48px;height:28px;padding:3px;transition:all .2s}.toggle span{background:#eef1f7;border-radius:50%;width:22px;height:22px;transition:all .2s;display:block}.toggle.on{background:var(--accent)}.toggle.on span{background:#0b1106;transform:translate(20px)}.range-control{border-bottom:1px solid #252a36;padding:12px 0}.range-control>div{justify-content:space-between;font-size:12px;display:flex}.range-control output{color:var(--accent);font-variant-numeric:tabular-nums}.range-control input{width:100%;accent-color:var(--accent)}.color{color:var(--muted);align-items:center;gap:7px;font-family:monospace;display:flex}.color input{background:0 0;border:0;width:35px;height:30px;padding:0}.action-grid,.preset-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px;display:grid}.preset-grid{grid-template-columns:repeat(3,1fr)}.mode-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.mode-grid button{text-align:left;background:#1c202b;border:1px solid #303644;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:8px;min-height:84px;padding:10px;display:grid}.mode-grid button svg{color:#929bad;grid-row:1/3;width:20px}.mode-grid button b{font-size:12px}.mode-grid button small{color:var(--muted);font-size:9px}.mode-grid button.active,.quality-row button.active{border-color:var(--accent);background:#baff5b12}.mode-grid button.active svg{color:var(--accent)}.section-label{color:var(--muted);margin:15px 0 7px;font-size:10px;display:block}.quality-row{gap:5px;padding-bottom:3px;display:flex;overflow:auto}.quality-row button{background:#1b202a;border:1px solid #303644;border-radius:9px;flex:none;min-height:35px;padding:0 10px;font-size:10px}.wide{width:100%;margin:6px 0}.model-card{background:#1b1f29;border:1px solid #2d3340;border-radius:14px;grid-template-columns:42px 1fr 40px 40px;align-items:center;gap:7px;margin-bottom:8px;padding:10px;display:grid;position:relative}.model-card.selected{border-color:#aeea59}.model-orb{width:42px;height:42px;color:var(--accent);background:#2b3140;border-radius:13px;place-items:center;display:grid}.model-copy{min-width:0;display:grid}.model-copy input{background:0 0;border:0;min-width:0;padding:0;font-weight:650}.model-copy small{white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:9px;overflow:hidden}.chips{gap:4px;margin-top:4px;display:flex}.chips span{background:#303645;border-radius:5px;padding:2px 5px;font-size:8px}.danger{color:var(--danger)}.order{display:none}.analysis,.diagnostics{color:var(--muted);background:#0d1016;border:1px solid #282d39;border-radius:13px;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;padding:12px;font-size:10px;display:grid}.material-diagnostics{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);border-radius:14px;overflow:clip}.material-diagnostics summary{cursor:pointer;align-items:center;min-height:44px;padding:0 14px;font-weight:750;display:flex}.material-diagnostic-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:9px 14px;display:grid}.material-diagnostic-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-diagnostic-row b{color:var(--accent)}.material-diagnostic-row small{color:var(--muted);grid-column:1/-1}.analysis b,.diagnostics b{color:var(--text);grid-column:1/-1;font-size:12px}.analysis em{color:#ffc56e;grid-column:1/-1}.empty-mini{height:100px;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050609c7;place-items:end center;display:grid;position:fixed;inset:0}.importer{width:min(100%,540px);padding-bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:var(--shadow);background:#151923;border:1px solid #343a48;border-radius:24px 24px 0 0}.importer>button{text-align:left;background:#202530;border:1px solid #343b4a;border-radius:15px;align-items:center;gap:14px;width:calc(100% - 28px);min-height:67px;margin:10px 14px 0;padding:10px 14px;display:flex}.importer>button>svg{color:var(--accent)}.importer>button span{display:grid}.importer>button small{color:var(--muted);margin-top:3px;font-size:10px}.privacy{color:#bce782;background:#baff5b0c;border-radius:12px;align-items:center;gap:7px;margin:14px 15px 0;padding:10px;font-size:10px;display:flex}.privacy svg{width:15px}.toast{z-index:30;left:12px;right:12px;top:calc(66px + env(safe-area-inset-top));max-height:42dvh;box-shadow:var(--shadow);background:#23171d;border:1px solid #783c4e;border-radius:15px;padding:13px 46px 13px 14px;font-size:12px;position:fixed;overflow:auto}.toast>button{background:0 0;position:absolute;top:6px;right:6px}.toast>button svg{width:17px}.toast b,.toast small,.toast em{display:block}.toast p{white-space:pre-wrap;color:#e7cbd3;margin:6px 0}.toast em{color:#ffbfcb;font-style:normal}.toast small{color:#b48d98}.section-label+*{margin-bottom:5px}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f5;--panel:#fff;--panel2:#f7f8fa;--line:#cfd5df;--text:#161a21;--muted:#60697a;--accent:#5c8f00;--accent2:#008b75;--shadow:0 20px 60px #44506b30}.app{background:var(--bg)}[data-theme=light] .topbar,[data-theme=light] .transport,[data-theme=light] .bottom-nav{background:#f8fafdef}[data-theme=light] .sheet,[data-theme=light] .importer{background:#fff}[data-theme=light] .viewport{background:#cbd5e6}[data-theme=light] .model-card,[data-theme=light] .mode-grid button,[data-theme=light] .control select,[data-theme=light] .wide,[data-theme=light] .preset-grid button,[data-theme=light] .action-grid button{background:#f2f4f8}@media (orientation:landscape) and (max-height:600px){.app{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) 310px}.topbar{grid-column:1/3}.viewport{grid-area:2/1/4}.transport{grid-area:2/2;padding-top:18px}.bottom-nav{grid-area:3/2}.sheet{width:400px;left:auto;top:calc(58px + env(safe-area-inset-top));bottom:calc(64px + env(safe-area-inset-bottom));border-radius:20px 0 0 20px;max-height:none}.empty-stage h1{font-size:25px}.empty-stage p{margin-bottom:10px}.hero-icon{width:48px;height:48px;margin-bottom:8px}.transport-actions{flex-wrap:wrap;height:auto;margin-top:12px}.importer{border-radius:24px 0 0 24px;justify-self:end;height:100%}.modal-backdrop{place-items:stretch stretch}}@media (max-width:370px){.bottom-nav span{font-size:8px}.bottom-nav svg{width:18px}.bottom-nav button{min-width:0}.transport{padding-inline:8px}.sheet-body{padding-inline:10px}.empty-stage{padding-inline:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}.selection-badge{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0e15d9;border:1px solid #baff5b55;border-radius:12px;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:8px 11px;font-size:10px;display:flex;position:absolute;bottom:72px;left:12px;box-shadow:0 8px 28px #0007}.selection-badge b{white-space:nowrap;text-overflow:ellipsis;max-width:43vw;overflow:hidden}.selection-badge span{color:var(--accent);font-weight:700}.selection-badge small{color:var(--muted)}.edit-toolbar{z-index:8;left:50%;bottom:calc(154px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#111621e8;border:1px solid #343b4b;border-radius:17px;align-items:stretch;gap:3px;width:min(100% - 18px,560px);min-height:54px;padding:5px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 14px 38px #0009}.edit-toolbar button{color:#929bad;background:0 0;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:42px;min-height:44px;font-size:8px;display:flex}.edit-toolbar button svg{width:18px;height:18px}.edit-toolbar button.active{color:var(--accent);background:#baff5b18;box-shadow:inset 0 0 0 1px #baff5b42}.edit-toolbar button[aria-label]{max-width:44px}.edit-settings{grid-template-columns:1fr 1fr;gap:10px;display:grid}.edit-settings>.control,.edit-settings>.range-control{border:1px solid var(--line);background:#0d1017;border-radius:12px;min-height:56px;margin:0;padding-inline:8px}.vector-editor{border:1px solid var(--line);background:#0d1017;border-radius:14px;margin:12px 0;padding:10px}.vector-editor h3,.sheet-body h3{color:#cbd1dc;margin:0 0 8px;font-size:12px}.number-editor{border-top:1px solid #242a36;grid-template-columns:minmax(64px,1fr) 42px minmax(65px,92px) auto 42px;align-items:center;gap:5px;min-height:45px;font-size:11px;display:grid}.number-editor:first-of-type{border-top:0}.number-editor>label{font-weight:600}.number-editor button{background:#252b37;border:1px solid #363d4c;border-radius:9px;height:36px;font-weight:800}.number-editor input,.text-field{font-variant-numeric:tabular-nums;background:#181d27;border:1px solid #363d4c;border-radius:9px;min-width:0;height:36px;padding:0 8px}.number-editor>span{color:var(--muted)}.pose-status{background:linear-gradient(135deg,#baff5b0e,#7af0ce08);border:1px solid #baff5b35;border-radius:14px;grid-template-columns:1fr auto;margin-bottom:10px;padding:11px 12px;display:grid}.pose-status span{color:var(--accent);letter-spacing:.08em;font-size:9px}.pose-status b{grid-area:1/2/3;align-self:center}.pose-status small{color:var(--muted);font-size:9px}.search{background:#111620;border:1px solid #343b4a;border-radius:12px;align-items:center;gap:8px;height:43px;margin:7px 0;padding:0 11px;display:flex}.search svg{width:17px;color:var(--muted)}.search input{background:0 0;border:0;width:100%}.bone-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:180px;padding:2px;display:grid;overflow:auto}.bone-list button{text-align:left;background:#1a1f29;border:1px solid #2f3543;border-radius:10px;align-content:center;min-height:48px;padding:7px 9px;display:grid}.bone-list button.active{border-color:var(--accent);background:#baff5b12}.bone-list b{font-size:11px}.bone-list small{color:var(--muted);font-size:8px}.saved-pose,.vmd-card{border:1px solid var(--line);background:#171c26;border-radius:13px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;margin:8px 0;padding:10px;display:grid}.saved-pose>div,.vmd-card>div{min-width:0;display:grid}.saved-pose small,.vmd-card small{color:var(--muted);white-space:normal;font-size:9px}.saved-pose button,.vmd-card button{background:#262c39;border-radius:9px;min-width:38px;height:36px;padding:0 9px}.saved-pose svg{width:16px}.vmd-card{grid-template-columns:minmax(0,1fr)}.vmd-card b{overflow-wrap:anywhere}.vmd-card em{color:var(--accent);font-size:10px;font-style:normal}.hint{color:var(--muted);border-left:2px solid var(--accent);background:#baff5b08;padding:9px;font-size:10px;line-height:1.55}.text-field{width:100%}.mode-grid button{grid-template-rows:auto auto auto auto;align-content:center}.mode-grid button svg{grid-row:1/5}.mode-grid button em,.mode-grid button span{color:#b4bdcc;font-size:8px;font-style:normal}.mode-grid button span{color:#7ddfc5}.mode-grid button em{margin-top:3px}.mode-grid button small{line-height:1.3}.projects-dialog{width:min(100%,640px);max-height:min(84dvh,720px);padding-bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:var(--shadow);background:#151923;border:1px solid #343a48;border-radius:24px 24px 0 0;overflow:auto}.projects-dialog header{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#151923f5;justify-content:space-between;align-items:center;padding:14px;display:flex;position:sticky;top:0}.projects-dialog h2{margin:2px 0;font-size:18px}.projects-dialog article{border:1px solid var(--line);background:#1b202a;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;margin:10px 14px;padding:10px;display:grid}.projects-dialog article>div{min-width:0;display:grid}.projects-dialog article input{background:0 0;border:0;min-width:0;font-weight:700}.projects-dialog article small{color:var(--muted);white-space:normal;font-size:9px}.projects-dialog article button{background:#292f3c;border-radius:10px;min-width:38px;height:38px;padding:0 10px}.projects-dialog article svg{width:16px}.update-banner{z-index:40;left:10px;right:10px;top:calc(65px + env(safe-area-inset-top));box-shadow:var(--shadow);background:#17210fef;border:1px solid #8bc73d;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:10px;font-size:11px;display:grid;position:fixed}.update-banner button{background:#2d3b20;border-radius:9px;height:35px;padding:0 9px}.update-banner button:first-of-type{background:var(--accent);color:#11170b}.offline-chip{z-index:35;right:10px;top:calc(66px + env(safe-area-inset-top));color:#b9efc5;white-space:nowrap;background:#17251d;border:1px solid #65b97a;border-radius:99px;padding:8px 12px;font-size:10px;position:fixed}.app.presentation-capture .viewport-badge,.app.presentation-capture .selection-badge,.app.presentation-capture .edit-toolbar,.app.presentation-capture .offline-chip{visibility:hidden}.mode-mmd-original .viewport{background:radial-gradient(circle at 50% 36%,#33506a,#0c111c 72%)}.mode-cel .viewport{background:linear-gradient(145deg,#4a467a,#16283e 62%,#0b101a)}.mode-soft .viewport{background:radial-gradient(circle at 45% 35%,#8d799a,#455671 50%,#202739)}.mode-pbr-studio .viewport{background:radial-gradient(at 52% 36%,#525964,#1d222b 54%,#080a0e)}.mode-live .viewport{background:radial-gradient(circle at 24% 15%,#7a244c55,#0000 42%),radial-gradient(circle at 78% 15%,#1a7f9c66,#0000 45%),linear-gradient(#111125,#080813)}.mode-cinematic .viewport{background:radial-gradient(circle at 68% 28%,#75614b55,#0000 36%),linear-gradient(150deg,#1c222c,#07090d 72%)}.mode-lightweight .viewport{background:#111722}.letterbox .viewport:before,.letterbox .viewport:after{content:"";z-index:4;pointer-events:none;background:#000;height:7.5%;position:absolute;left:0;right:0}.letterbox .viewport:before{top:0}.letterbox .viewport:after{bottom:0}[data-theme=light] .edit-toolbar,[data-theme=light] .selection-badge{background:#f8fafdef}.bone-label-layer{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bone-label{color:#dff8ff;white-space:nowrap;text-overflow:ellipsis;will-change:transform;border:1px solid #7fdfff55;border-radius:5px;max-width:150px;padding:2px 5px;position:absolute;top:0;left:0;overflow:hidden}.bone-label.selected{color:#11170b;border-color:var(--accent);font-weight:800;background:var(--accent)!important}.pose-toolbar{z-index:3;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#151a24f2;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:-12px -14px 10px;padding:8px 14px;display:grid;position:sticky;top:-12px}.pose-toolbar button,.quick-options button,.bone-list-controls button,.bone-list-controls select,.step-selector button,.bone-shortcuts button{background:#202633;border:1px solid #343b4a;border-radius:10px;min-height:42px;padding:6px 8px;font-size:10px}.pose-toolbar button.active,.quick-options button.active,.step-selector button.active,.bone-overlay-controls button.active{border-color:var(--accent);color:var(--accent);background:#baff5b18}.pose-toolbar svg{width:17px}.section-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.section-row h3{margin:0}.section-row button{min-height:38px;color:var(--muted);background:#202633;border-radius:10px;align-items:center;gap:5px;display:flex}.section-row svg{width:15px}.bone-overlay-controls{background:#0d1119;border:1px solid #303746;border-radius:14px;margin:10px 0;padding:11px}.quick-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:8px;display:grid}.quick-options button{min-width:0;padding-inline:3px}.overlay-toggles{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;display:grid}.overlay-toggles .control{border:1px solid #272e3a;border-radius:10px;min-height:42px;padding:0 7px}.overlay-toggles .toggle{width:38px;height:24px}.overlay-toggles .toggle span{width:18px;height:18px}.overlay-toggles .toggle.on span{transform:translate(14px)}.bone-list-controls{grid-template-columns:minmax(0,1fr) auto auto;gap:5px;margin:6px 0;display:grid}.bone-list-controls select{min-width:0}.bone-shortcuts{gap:5px;padding:3px 0 7px;display:flex;overflow-x:auto}.bone-shortcuts button{flex:none;align-items:center;gap:4px;min-height:36px;display:flex}.bone-shortcuts svg{fill:currentColor;width:13px}.bone-tree{overscroll-behavior:contain;background:#0c1017;border:1px solid #303746;border-radius:12px;max-height:min(31dvh,300px);scroll-padding-block:44px;overflow:auto}.bone-tree-row{min-height:48px;padding-left:min(calc(var(--bone-depth) * 11px), 66px);border-bottom:1px solid #252b36;grid-template-columns:34px minmax(0,1fr) 36px;align-items:center;display:grid}.bone-tree-row:last-child{border-bottom:0}.bone-tree-row.active{box-shadow:inset 3px 0 var(--accent);background:linear-gradient(90deg,#baff5b21,#0000)}.tree-toggle,.tree-favorite{min-width:34px;min-height:42px;color:var(--muted);background:0 0;place-items:center;display:grid}.tree-toggle:disabled{opacity:.18}.tree-toggle svg,.tree-favorite svg{width:16px;transition:transform .16s}.tree-toggle svg.open{transform:rotate(90deg)}.tree-favorite.active{color:#ffd46a}.tree-favorite.active svg{fill:currentColor}.bone-tree-select{text-align:left;background:0 0;align-content:center;min-width:0;min-height:47px;display:grid}.bone-tree-select b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.bone-tree-select small{color:var(--muted);font-size:8px}.selected-bone-card{background:#baff5b0c;border:1px solid #baff5b55;border-radius:13px;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;margin:12px 0 4px;padding:10px 12px;display:grid}.selected-bone-card>div{display:grid}.selected-bone-card span,.selected-bone-card small{color:var(--muted);font-size:9px}.selected-bone-card button{background:#252b37;border-radius:10px;height:40px}.selected-bone-card button.active{color:#ffd46a}.selected-bone-card button.active svg{fill:currentColor}.step-selector{grid-template-columns:auto repeat(3,1fr);align-items:center;gap:4px;margin:8px 0;display:grid}.step-selector>span{color:var(--muted);font-size:9px}.quaternion-readout{color:var(--muted);background:#0b0e14;border-radius:9px;gap:4px;padding:8px;font-size:9px;display:grid}.quaternion-readout code{color:#bdeaff;overflow-x:auto}.axis-note{color:#ffd27a;font-size:9px}.selection-badge{grid-template-columns:minmax(0,auto) minmax(0,1fr);display:grid}.selection-badge em{color:#ffd06b;grid-column:1/-1;font-size:8px;font-style:normal}.bone-candidate-popover{z-index:45;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#151a24f7;border:1px solid #596274;border-radius:16px;width:min(278px,100vw - 16px);max-height:min(320px,65dvh);position:fixed;overflow:auto;box-shadow:0 18px 50px #000b}.bone-candidate-popover header{border-bottom:1px solid var(--line);background:#151a24f5;justify-content:space-between;align-items:center;padding:10px;display:flex;position:sticky;top:0}.bone-candidate-popover header>div{display:grid}.bone-candidate-popover header button{background:0 0;width:40px;height:40px}.bone-candidate-popover>div>button{text-align:left;background:0 0;border-bottom:1px solid #282f3b;width:100%;min-height:52px;padding:8px 11px;display:grid}.bone-candidate-popover small{color:var(--muted);font-size:8px}.confirm-dialog{width:min(100% - 20px,420px);margin-bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:var(--shadow);background:#171c26;border:1px solid #3a4352;border-radius:20px;gap:8px;padding:18px;display:grid}.confirm-dialog h2,.confirm-dialog p{margin:2px 0}.confirm-dialog p{color:var(--muted);font-size:11px}.confirm-dialog button{background:#242b38;border:1px solid #343b4a;border-radius:12px;min-height:48px}[data-theme=light] .pose-toolbar,[data-theme=light] .bone-overlay-controls,[data-theme=light] .bone-tree,[data-theme=light] .bone-candidate-popover,[data-theme=light] .confirm-dialog{background:#f8fafdf5}[data-theme=light] .number-editor input,[data-theme=light] .text-field,[data-theme=light] .search,[data-theme=light] .vector-editor,[data-theme=light] .pose-status,[data-theme=light] .vmd-card,[data-theme=light] .saved-pose,[data-theme=light] .projects-dialog,[data-theme=light] .projects-dialog header,[data-theme=light] .projects-dialog article{background:#f5f7fa}@media (orientation:landscape) and (max-height:600px){.edit-toolbar{width:min(100% - 340px,560px);bottom:12px;left:calc(50% - 155px)}.selection-badge{bottom:76px}.projects-dialog{border-radius:24px 0 0 24px;justify-self:end;height:100%;max-height:none}.modal-backdrop{place-items:stretch stretch}.bone-list{max-height:135px}.sheet-body{padding-bottom:12px}}@media (max-width:370px){.edit-toolbar{gap:1px;width:calc(100% - 10px);padding:4px}.edit-toolbar button{min-width:37px}.edit-toolbar button:nth-last-child(-n+2){max-width:36px}.number-editor{grid-template-columns:minmax(58px,1fr) 38px minmax(56px,78px) auto 38px}.projects-dialog article{grid-template-columns:minmax(0,1fr) auto auto}.projects-dialog article>button:first-of-type{grid-column:2/4;width:100%}.saved-pose{grid-template-columns:minmax(0,1fr) auto auto}.saved-pose>button:first-of-type{grid-column:2/4;width:100%}.update-banner{grid-template-columns:1fr 1fr}.update-banner b{grid-column:1/-1}}.bottom-nav{min-height:calc(64px + env(safe-area-inset-bottom))}@media (orientation:landscape) and (max-height:600px){.app{grid-template-rows:auto minmax(0,1fr) 64px}.bottom-nav{height:64px;min-height:64px}}
