@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@600&family=Yomogi&family=Zen+Old+Mincho:wght@600&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@500;600;700&display=swap');
:root{color-scheme:dark;--bg:#100e15;--panel:#1b1722;--panel2:#221c2d;--line:#382d46;--muted:#b0a4bd;--text:#f6f0fc;--purple:#b78aed;--accent:#c59bfa}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'Noto Sans JP',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:8px;padding:10px 15px;font-size:14px;transition:background .15s}button:hover{background:#3b2b4e}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:#b389e4;color:#190f28;border-color:#b389e4;font-weight:700}button.primary:hover{background:#d0aff7}button.active{background:#34253e;border-color:#7e5a9f}a{color:var(--accent);font-size:14px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{display:grid;place-items:center;width:42px;height:47px;border:1px solid #9364be;font:32px Georgia,serif;color:#d9bcfa;border-radius:16px 16px 6px 6px}.brand b{font:22px Georgia,serif;letter-spacing:4px}.brand small{display:block;font-size:12px;letter-spacing:2px;color:var(--muted)}.header-right{display:flex;align-items:center;gap:10px}.header-right>span{font-size:12px;color:var(--muted);margin-right:12px}main{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 90px)}aside{padding:32px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:24px}nav{display:grid;gap:10px}nav button{text-align:left;border-color:transparent;background:none;padding:14px 10px}nav span{color:var(--purple);margin-right:10px;font-size:20px}.eyebrow{font-size:12px;letter-spacing:2.3px;color:var(--purple);font-weight:600}.workspace{padding:28px 34px 40px;min-width:0}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}h1{font:600 30px/1.5 'Noto Serif JP',serif;margin:7px 0 0}h2{font-size:19px;margin:0 0 18px}h3{font-size:15px;margin:0 0 15px}.badge{border:1px solid #493655;padding:6px 12px;border-radius:30px;color:#bda8d0;font-size:11px;letter-spacing:2px}.editor-grid{display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:22px;align-items:start}.stack{display:grid;gap:20px;min-width:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.panel-head h2{margin:0}.panel-head small,.muted{color:var(--muted);font-size:13px}label{display:block;font-size:14px;color:#d4c6e1;margin-bottom:16px}input:not([type=range],[type=checkbox],[type=file],[type=color]),textarea,select{display:block;width:100%;margin-top:7px;background:#120f19;border:1px solid #44364f;color:var(--text);padding:10px 12px;border-radius:7px;min-width:0}input[type=color]{display:block;width:100%;height:40px;margin-top:7px;border:1px solid var(--line);border-radius:6px;background:#120f19}input[type=range]{width:100%;accent-color:var(--purple);display:block;margin-top:10px}input[type=checkbox]{accent-color:var(--purple)}textarea{resize:vertical;min-height:85px;line-height:1.6}.row{display:flex;gap:12px;align-items:center}.row>*{flex:1;min-width:0}.row label{align-self:start}.range-label{display:flex;justify-content:space-between;gap:10px}.range-label output{color:#dec5ff;font-variant-numeric:tabular-nums}.hint{font-size:12px;color:var(--muted);line-height:1.8;margin:8px 0 16px}.notice{padding:12px 14px;border-left:2px solid var(--purple);background:#282032;font-size:13px;color:#d8c6e8;margin:14px 0}.preview-panel{padding:0;overflow:hidden}.preview-panel .panel-head{padding:18px 22px;margin:0}.stage{min-height:270px;background:radial-gradient(ellipse at 50% 45%,#41305266,transparent 65%),repeating-conic-gradient(#17131e 0% 25%,#1c1724 0% 50%) 0 0/24px 24px;display:grid;place-items:center;padding:36px 24px;overflow:auto}.stage.light{background:repeating-conic-gradient(#d5cddf 0% 25%,#e3dceb 0% 50%) 0 0/24px 24px}.stage-controls{padding:15px 22px;display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);flex-wrap:wrap}.segments{display:flex;gap:7px}.segments button{font-size:12px;padding:7px 11px}.preview-caption{font-size:12px;color:var(--muted)}.voice-demo{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;padding:20px 10px}.demo-person{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:180px}.demo-avatar{background:linear-gradient(145deg,#b797d6,#483256);display:grid;place-items:center;font:32px 'Noto Serif JP',serif;border:2px solid #d0b0ec;overflow:hidden}.demo-avatar img{width:100%;height:100%;object-fit:cover}.demo-name{font-weight:700;color:white;text-align:center;paint-order:stroke fill;-webkit-text-stroke:4px #100b17;line-height:1.3;overflow-wrap:anywhere}.demo-status{font-size:11px;color:#baacc7}.character{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.character-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.character-head .avatar{width:44px;height:44px;border-radius:10px;background:#4d345e;display:grid;place-items:center;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.character-head b{font-size:14px;flex:1}.character-head button{padding:4px 8px}.character label{margin-bottom:12px}.character .hint{margin-bottom:4px}.file-button{display:block;cursor:pointer;border:1px dashed #756083;border-radius:7px;padding:10px;text-align:center;font-size:13px}.file-button input{display:none}.output-area{height:150px;font:12px/1.5 Consolas,monospace}.url-area{font-size:12px;overflow-wrap:anywhere;word-break:break-all;color:#cbb4e5;background:#110e17;padding:14px;border-radius:8px;margin:12px 0}.full{width:100%}.export-buttons{display:flex;gap:10px;flex-wrap:wrap}.export-buttons button{flex:1}.dimensions{font:12px Consolas,monospace;color:#c8b4d9}.rooms{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.rooms button{font-size:13px;padding:7px 10px}.rooms button.selected{background:#664680;border-color:#a078c0}.error{color:#ffc195;font-size:13px}.chat-scale{width:100%;overflow:auto;padding:15px}.chat-preview{background:transparent;box-sizing:border-box;transform-origin:top left}.chat-preview .chat-author{font-weight:700;margin-bottom:8px}.chat-preview .chat-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.design-work{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px}.canvas-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:radial-gradient(ellipse at center,#302137,#141019);border:1px solid #564064}.canvas-wrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.canvas-toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:16px}.canvas-toolbar p{font-size:12px;margin:0;color:var(--muted)}.asset-list{display:grid;gap:8px;margin-top:16px}.asset-item{display:flex;gap:8px}.asset-item>button:first-child{flex:1;text-align:left}.asset-item>button:last-child{padding:8px 12px}.color-presets{display:flex;gap:8px;margin:12px 0}.color-presets button{flex:1;font-size:12px;padding:8px}.asset-type{display:flex;gap:7px;margin-bottom:20px}.asset-type button{flex:1;padding:10px 5px;font-size:13px}dialog{color:var(--text);background:#211a2b;border:1px solid #715487;border-radius:16px;max-width:650px;width:90vw;padding:32px}dialog::backdrop{background:#08060bbd;backdrop-filter:blur(4px)}dialog li{margin-bottom:16px}dialog p{font-size:14px;color:#c5b6d3}.close{float:right;padding:3px 12px;font-size:22px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#e5d1ff;color:#21132d;padding:12px 24px;border-radius:8px;box-shadow:0 8px 45px #0008;opacity:0;pointer-events:none;transition:opacity .2s;z-index:20;max-width:90vw;font-size:14px}#toast.show{opacity:1}.footnote{font-size:12px;color:var(--muted);margin-top:14px}.check{display:flex;gap:10px;align-items:center}.check input{margin:0}.file-note{font-size:11px;color:#b59cc6}details{font-size:13px;margin-top:16px}summary{cursor:pointer;color:#cdb5e1}.image-preview{background:repeating-conic-gradient(#211928 0% 25%,#2a2133 0% 50%) 0 0/20px 20px;padding:20px;display:grid;place-items:center;border-radius:8px;margin-bottom:16px}.image-preview canvas{max-width:100%;max-height:180px;object-fit:contain}.mini{padding:5px 10px;font-size:12px}@keyframes hop{0%,100%{transform:translateY(0)}45%{transform:translateY(calc(-1 * var(--hop, 9px)))}}
@media(min-width:1600px){.workspace{max-width:1700px}.editor-grid{grid-template-columns:390px minmax(0,1fr)}.stage{min-height:330px}}@media(max-width:1150px){main{grid-template-columns:195px minmax(0,1fr)}aside{padding:25px 12px}.workspace{padding:24px 20px}.editor-grid,.design-work{grid-template-columns:1fr}.header-right>span{display:none}.stage{min-height:240px}}@media(max-width:700px){header{height:auto;padding:15px;flex-wrap:wrap}.header-right{gap:6px;flex-wrap:wrap}.header-right button{font-size:12px;padding:7px 10px}main{display:block}aside{padding:10px;border-right:0;border-bottom:1px solid var(--line)}aside>.eyebrow,aside>a{display:none}nav{display:flex;gap:3px}nav button{font-size:12px;padding:8px;flex:1}nav span{display:none}.workspace{padding:22px 14px}h1{font-size:25px}.badge{display:none}.panel{padding:18px}.preview-panel{padding:0}.canvas-wrap{min-height:0;aspect-ratio:16/9}.row{gap:8px}.segments{flex-wrap:wrap}}
.chat-scroll{width:100%;max-height:65vh;overflow:auto;padding:2px;scrollbar-gutter:stable}.chat-scaled{position:relative;max-width:100%;margin:0 auto}.chat-preview{position:absolute;left:0;top:0;box-sizing:border-box;padding:4px;transform-origin:top left;overflow:visible;font-family:"Noto Sans JP","Yu Gothic",sans-serif}.chat-area-outline{position:absolute;left:0;right:0;top:0;border:1px dashed #cfabe8;pointer-events:none}.chat-content{display:flow-root}.chat-content .chat-text{font-weight:500;line-height:1.5;word-break:normal;white-space:pre-wrap}.stage-controls>.error,.stage-controls>.preview-caption{flex:1;min-width:180px}.discord-demo{font:bold 32px Georgia,serif;opacity:.8}.canvas-wrap:focus-within{outline:1px solid var(--purple);outline-offset:3px}[readonly]{color:var(--muted)!important}#maskPosition{font-variant-numeric:tabular-nums}
.background-presets{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 16px}.background-presets button{padding:8px;font-size:12px;text-align:left}.bg-swatch{display:block;height:56px;border-radius:4px;margin-bottom:6px;background-size:cover;background-position:center;border:1px solid #ffffff15}.bg-silk{background:radial-gradient(ellipse at 100% 0%,#9872b8,transparent 90%),linear-gradient(140deg,#362642,#513567)}.bg-deco{background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 17px,#b39bc53b 18px 19px,transparent 20px 30px),#2b203b}.bg-weave{background:repeating-linear-gradient(45deg,transparent 0 15px,#cbb5df30 16px 17px,transparent 18px 32px),repeating-linear-gradient(-45deg,transparent 0 15px,#cbb5df30 16px 17px,transparent 18px 32px),#392d48}.bg-mist{background:radial-gradient(ellipse at 100% 0%,#d4bcdf,transparent),linear-gradient(130deg,#ded3e8,#9a84b0)}.bg-plain{background:#342a42}


.align-tools{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.brand-mark{object-fit:cover;border-radius:12px}.bg-pastel{background:linear-gradient(135deg,#e7d9ec,#bed7e5)}.bg-grid{background:repeating-linear-gradient(90deg,transparent 0 9px,#c179ff55 10px 11px),#181126}.bg-paper{background:#dcccaa}.bg-sunset{background:linear-gradient(135deg,#614964,#b78683)}

.nav-icon{width:22px;height:22px;flex:none;vertical-align:middle;margin-right:10px}.streamkit-button{display:block!important;border:1px solid #ad86cf!important;border-radius:10px;padding:12px!important;text-align:center;background:#372447;color:#f5eaff!important;text-decoration:none!important}.streamkit-button:hover{background:#513661}.visual-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 18px}.picker-card{padding:8px;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}.picker-card[aria-pressed=true]{border-color:#d0a1fa;background:#48305d;box-shadow:0 0 0 1px #d0a1fa}.picker-card canvas{width:100%;height:auto}.font-sample{font-size:20px;font-weight:600}.picker-card small{font:12px sans-serif}[hidden]{display:none!important}.bg-swatch{width:100%;height:auto!important;display:block;aspect-ratio:16/9}

nav .standee-link{display:flex;align-items:center;padding:15px 12px;margin-top:8px;color:var(--text,#eee);text-decoration:none;border-radius:10px}nav .standee-link:hover{background:#3e2a50}

.puppet-work{max-width:1200px;margin:30px auto;padding:20px;display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:24px}.puppet-stage{position:sticky;top:20px;height:75vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent}.puppet-layers img{width:100%;height:100%;object-fit:contain}.expression-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.expression-grid img{width:100%;height:100px;object-fit:contain;background:#2e2538}.expression-grid label{border:1px solid #65516e;padding:10px;border-radius:10px}meter{width:100%}.broadcast .puppet-work{display:block;padding:0;margin:0}.broadcast .setup,.broadcast header{display:none}.broadcast .puppet-stage{position:fixed;inset:0;height:100vh}.output-controls{position:fixed;z-index:2;top:12px;left:12px;padding:12px;background:#21162ee8;border-radius:12px;max-width:450px}.output-controls.running{opacity:0}.output-controls.running:hover,.output-controls.running:focus-within{opacity:1}@media(max-width:760px){.puppet-work{grid-template-columns:1fr}.puppet-stage{height:50vh}}
.puppet-work{margin:0;padding:0;max-width:none}.expression-grid>*{min-width:0}.expression-grid input{max-width:100%;font-size:12px}.puppet-layers{position:absolute;inset:0}.puppet-layers img{position:absolute;inset:0}.puppet-stage:not(.green){background:repeating-conic-gradient(#302938 0 25%,#261f2e 0 50%) 0/24px 24px}.broadcast{background:transparent}.broadcast .puppet-stage:not(.green){background:transparent}#emptyPuppet{font-size:14px;padding:20px;text-align:center;z-index:1}.expression-grid img:not([src]){display:none}.expression-grid label{margin:0}.puppet-work .setup{min-width:0}

.guidelines{max-width:880px;line-height:1.95}.guidelines h3{margin-top:30px;font-size:18px}.guidelines li{margin:8px 0}.workspace input[type=file]{max-width:100%}.puppet-work .setup{max-height:none}.puppet-stage{border-radius:12px;min-width:0}.puppet-layers img{object-fit:contain;width:100%;height:100%}
@media(max-width:1250px){header{height:auto;min-height:80px;flex-wrap:wrap;padding:16px 20px;gap:12px}.header-right{flex-wrap:wrap}main{grid-template-columns:1fr}aside{padding:12px 20px;border-right:0;border-bottom:1px solid var(--line);gap:10px;display:block}aside>.eyebrow{display:none}nav{display:flex;flex-wrap:wrap;gap:6px}nav button{padding:10px;font-size:13px}.streamkit-button{margin-top:10px;display:inline-block!important;padding:8px 14px!important}.workspace{padding:20px}.editor-grid,.design-work{grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:16px}.panel{padding:16px}.puppet-work{grid-template-columns:minmax(250px,330px) minmax(0,1fr);gap:16px}.expression-grid{grid-template-columns:1fr 1fr}.expression-grid label{padding:8px}.expression-grid input{width:100%}}
@media(max-width:1000px){.editor-grid,.design-work,.puppet-work{display:flex;flex-direction:column}.editor-grid>.stack,.design-work>.stack,.puppet-work>section{width:100%}.editor-grid>.stack:last-child,.design-work>.stack:last-child{order:-1}.preview-panel .stage{min-height:180px;max-height:36vh;overflow:auto}.design-work>.stack:last-child{display:contents}.design-work>.stack:last-child>section:first-child{order:-2;width:100%;position:sticky;top:0;z-index:3;padding:10px;box-shadow:0 4px 20px #0006}.design-work .canvas-wrap{max-height:35vh;overflow:auto}.design-work #layoutCanvas{width:min(100%,62.22vh);height:auto;max-height:none;display:block;margin:auto}.design-work .canvas-toolbar p,.design-work .canvas-toolbar~.hint{display:none}.align-tools{gap:4px;margin:6px 0}.align-tools button{font-size:11px;padding:5px 8px}.asset-list{max-height:110px;overflow:auto}.puppet-stage{order:-1;position:sticky;top:0;height:32vh!important;z-index:2}.expression-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.visual-picker{grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.broadcast .puppet-stage{height:100vh!important}}
@media(max-width:600px){.workspace{padding:12px}.header-right>span{display:none}.expression-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.row{flex-wrap:wrap}.page-heading{margin-bottom:12px}h1{font-size:24px}}


.help-icon{width:20px;height:20px;vertical-align:middle;margin-right:7px}.header-right [data-tab=guidelines] .nav-icon{width:18px;height:18px}.layout-chat-controls{margin:12px 0}.layout-chat-controls[open]{padding:12px;border:1px solid var(--line);border-radius:8px}.layout-chat-controls summary{cursor:pointer}

.brand b{font:700 22px/1.4 "Noto Sans JP",sans-serif;letter-spacing:.02em}.brand-mark{width:58px;height:58px;object-fit:contain;border:0;border-radius:0;background:transparent}.brand small{letter-spacing:.04em}
