.ro-insect-settings{border-top:1px solid var(--border,#596658);margin-top:14px;padding-top:12px;color:inherit}
.ro-insect-settings summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;cursor:pointer;font-size:15px;font-weight:650;min-height:36px;list-style:none}
.ro-insect-settings summary::before{content:'›';font-size:23px;line-height:1;transition:transform .15s}
.ro-insect-settings[open] summary::before{transform:rotate(90deg)}
.ro-insect-settings summary small{font-size:12px;font-weight:500;opacity:.8;margin-left:auto}
.ro-insect-settings-body{padding:10px 0 2px}
.ro-insect-settings-body>p{font-size:12px;line-height:1.5;margin:8px 0 12px;opacity:.85}
.ro-insect-frequency{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:600}
.ro-insect-frequency select{width:auto;flex:1;max-width:220px;min-height:42px;font-size:14px}
.ro-insect-settings fieldset{border:0;padding:8px 0 0;margin:14px 0;min-width:0}
.ro-insect-settings legend{padding:0;font-size:14px;font-weight:650}
.ro-insect-settings legend span{font-size:12px;font-weight:400;opacity:.8;margin-left:8px}
.ro-insect-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:7px}
.ro-insect-pick{display:flex;align-items:center;min-width:0;border:1px solid rgba(144,163,126,.35);border-radius:9px;background:rgba(139,165,117,.06);padding:3px 4px 3px 7px}
.ro-insect-pick:has(input:checked){background:rgba(139,165,117,.14);border-color:rgba(149,182,107,.6)}
.ro-insect-pick label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;margin:0;cursor:pointer;font-size:13px;line-height:1.25;font-weight:500}
.ro-insect-pick input[type=checkbox]{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:#8ba967}
.ro-insect-pick img{width:42px;height:42px;object-fit:contain;flex:0 0 42px}
.ro-insect-pick label span{overflow-wrap:anywhere}
.ro-insect-preview{display:grid;place-items:center;width:40px;min-height:42px;flex:0 0 40px;border:0;background:transparent;color:inherit;border-radius:7px;cursor:pointer;padding:8px;opacity:.78}
.ro-insect-preview:hover,.ro-insect-preview:focus-visible{background:rgba(139,165,117,.2);opacity:1}
.ro-insect-preview svg{width:19px;height:19px}
.ro-insect-empty{font-size:12px;line-height:1.45;margin:8px 0 0}.ro-insect-empty:empty{display:none}
.ro-insect-save{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 6px}
.ro-insect-save .btn{min-height:42px;font-size:12px;white-space:normal}
.ro-insect-save .ro-inline-save-status{width:100%;font-size:12px}
.ro-insect-modal{width:min(620px,calc(100vw - 28px));max-width:620px!important}
.ro-insect-modal h3{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;font-size:20px;font-weight:650}
.ro-insect-modal h3 span{font-size:12px;font-weight:400;opacity:.8}
.ro-insect-preview-stage{height:290px;position:relative;overflow:hidden;border-radius:12px;background:radial-gradient(ellipse at top,#566244,#252e22);isolation:isolate}
.ro-insect-preview-stage[data-phase=night]{background:radial-gradient(ellipse at top,#29332d,#0b1617)}
.ro-insect-preview-host{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ro-insect-preview-wood{position:absolute;inset:28% 12%;border:5px solid #4c3524;box-shadow:0 3px 10px #0008,inset 0 0 16px #1d150e66;border-radius:7px 10px 5px 9px;background:repeating-linear-gradient(2deg,transparent 0 4px,#43261115 5px 6px,transparent 7px 14px),linear-gradient(105deg,#b29267,#ccb58b 50%,#a98a62);color:#322419;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;font-family:inherit}
.ro-insect-preview-stage[data-phase=night] .ro-insect-preview-wood{filter:brightness(.62);color:#eee2c6;background:repeating-linear-gradient(2deg,transparent 0 4px,#241d171a 5px 6px,transparent 7px 14px),linear-gradient(105deg,#665741,#71644e 50%,#554631)}
.ro-insect-preview-wood b{font-size:22px;font-weight:650}.ro-insect-preview-wood span{font-size:15px}
.ro-insect-modal>p{font-size:13px;min-height:2.8em;line-height:1.4}
@media(max-width:550px){.ro-insect-settings summary small{width:100%;margin:0 0 0 22px}.ro-insect-preview-stage{height:250px}.ro-insect-settings-body>p{font-size:12px}.ro-insect-preview-wood b{font-size:18px}.ro-insect-preview-wood span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.ro-insect-settings summary::before{transition:none}}
.ro-episode-picker{display:flex;flex-wrap:wrap;align-items:end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border,#596658)}
.ro-episode-picker label{display:flex;flex-direction:column;gap:6px;flex:1 1 200px;min-width:0;font-size:13px;font-weight:650}
.ro-episode-picker select{width:100%;min-width:0;min-height:42px;font-size:13px}.ro-episode-picker .btn{min-height:42px}
.ro-insect-modal>.ro-episode-preview-note{font-size:11px;opacity:.75;min-height:0;margin-top:-4px}
.ro-episode-fixture{position:absolute;left:50%;top:51%;width:64px;height:5px;background:#442c1c;transform:translate(-50%,-50%);box-shadow:0 1px #dbbc8880}
[data-fixture=leaf] .ro-episode-fixture,[data-fixture=flower] .ro-episode-fixture,[data-fixture=vine] .ro-episode-fixture,[data-fixture=hop] .ro-episode-fixture{width:80px;height:36px;border-radius:80% 0 80% 0;background:repeating-linear-gradient(22deg,transparent 0 7px,#acc05f26 8px 9px),linear-gradient(130deg,#253e22,#607e38);box-shadow:2px 3px 4px #15201077;rotate:-16deg}
[data-fixture=flower] .ro-episode-fixture::after{content:'';position:absolute;left:30px;top:9px;width:14px;height:14px;border-radius:50%;background:#e9c96b;box-shadow:8px 0 #e3dcb0,-8px 0 #eee0b1,0 8px #e3dcb0,0 -8px #eee0b1}
[data-fixture=hop] .ro-episode-fixture{width:25px;height:42px;border-radius:45%;rotate:8deg;background:repeating-linear-gradient(165deg,#7d9850 0 6px,#567035 7px 9px,#9aaa66 10px)}
[data-fixture=bolt] .ro-episode-fixture{width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,#c6b48f 44%,#514539 47% 53%,#a58f6b 56%);box-shadow:1px 2px 3px #261c17a0}
[data-fixture=light] .ro-episode-fixture{width:14px;height:18px;border-radius:45%;background:#f8d98a;box-shadow:0 0 22px 10px #e8b36166}
[data-fixture=steam] .ro-episode-fixture{width:15px;height:64px;border-radius:50%;background:linear-gradient(90deg,transparent,#e0e1ce88,transparent);filter:blur(4px);rotate:12deg}
[data-fixture=foam] .ro-episode-fixture{width:52px;height:13px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff5d3,#d6bc79);box-shadow:0 2px 2px #8b6b3855}
[data-fixture=swap] .ro-episode-fixture{width:90%;height:25px;overflow:hidden;background:#362819;color:#e8d5ae;font-size:12px;line-height:25px;text-align:center}
[data-fixture=swap] .ro-episode-fixture::after{content:'Tauschangebot · Theke · 16:00–20:00';display:block;animation:ro-preview-tape 14s linear infinite}
@keyframes ro-preview-tape{from{transform:translateX(45%)}to{transform:translateX(-45%)}}
@media(prefers-reduced-motion:reduce){.ro-episode-fixture::after{animation:none!important}}
/* Scene previews use the same stage coordinates and clock as their actors. */
.ro-episode-stage .ro-insect-preview-wood{inset:8% 3%;border-width:7px;background:repeating-linear-gradient(2deg,transparent 0 3px,#48291316 4px 5px,transparent 6px 16px),radial-gradient(ellipse at 75% 80%,#5a3c2425,transparent 40%),linear-gradient(100deg,#a78960,#c6ae85 48%,#a1835e)}
.ro-episode-stage .ro-episode-fixture{top:48%;z-index:1;rotate:none;font-style:normal;transform:translate(calc(-50% + var(--fixture-x,0px)),calc(-50% + var(--fixture-y,0px))) rotate(var(--fixture-angle,0deg));}
.ro-episode-stage .ro-insect-preview-host{z-index:2}
.ro-episode-local-layer{z-index:2}.ro-episode-local-layer.ro-episode-props{z-index:3}
.ro-episode-stage[data-fixture=edge] .ro-episode-fixture{width:86%;height:2px;top:62%;background:#66492c55;box-shadow:0 1px #dfc39666;transform:translate(-50%,-50%)}
.ro-episode-stage:is([data-fixture=leaf],[data-fixture=flower],[data-fixture=vine]) .ro-episode-fixture{width:126px;height:126px;background:none;box-shadow:none;border-radius:0;filter:drop-shadow(2px 4px 2px #17221165)}
.ro-episode-stage .ro-episode-fixture svg{display:block;width:100%;height:100%;overflow:visible}
.ro-episode-stage[data-fixture=vine] .ro-episode-fixture::before{content:'';position:absolute;left:-80px;top:100px;width:100px;height:4px;border-radius:50%;background:#52642d;rotate:-35deg}
.ro-episode-stage[data-fixture=flower] .ro-episode-fixture::after{left:52px;top:53px;width:25px;height:25px;box-shadow:14px 0 #ead99b,-14px 0 #f0dfae,0 14px #e6d19a,0 -14px #eee3ba}
.ro-episode-stage[data-fixture=hop] .ro-episode-fixture{width:61px;height:92px;background:none;box-shadow:none;border-radius:0;filter:drop-shadow(3px 3px 2px #17221160)}
.ro-episode-stage[data-fixture=bolt] .ro-episode-fixture{width:35px;height:35px;border:2px solid #67533b;box-shadow:2px 3px 3px #2b211999;transform:translate(-50%,-50%)}
.ro-episode-stage[data-fixture=crevice] .ro-episode-fixture{width:155px;height:11px;clip-path:polygon(0 50%,12% 32%,25% 54%,38% 0,55% 20%,72% 5%,86% 43%,100% 50%,81% 63%,64% 100%,42% 70%,27% 83%,11% 67%);background:#23170e;transform:translate(-50%,-50%)}
.ro-episode-stage[data-fixture=foam] .ro-episode-fixture{width:80px;height:24px;top:calc(48% + 18px);transform:translate(-50%,-50%)}
.ro-episode-stage[data-fixture=light] .ro-episode-fixture{width:24px;height:33px;border:2px solid #745b39;box-shadow:0 0 45px 24px #edbc6566;transform:translate(-50%,-50%)}
.ro-episode-stage[data-fixture=steam] .ro-episode-fixture{width:65px;height:75px;background:none;filter:none;border-radius:0;transform:translate(-50%,-50%)}
.ro-episode-stage .ro-demo-pot{position:absolute;top:65px;left:-8px;width:80px;height:39px;border-radius:8px 8px 28px 28px;background:linear-gradient(90deg,#5c4631,#b59d79 40%,#806344);box-shadow:0 3px 5px #35221599,inset 0 3px #d2b484}
.ro-episode-stage[data-fixture=steam] .ro-episode-fixture>span{position:absolute;left:4px;bottom:0;width:25px;height:70px;border-radius:50%;background:linear-gradient(90deg,transparent,#eee5cd99,transparent);filter:blur(4px);animation:ro-demo-steam 2.2s ease-in-out infinite}
.ro-episode-stage[data-fixture=steam] .ro-episode-fixture>span:nth-of-type(2){left:23px;animation-delay:-.7s}.ro-episode-stage[data-fixture=steam] .ro-episode-fixture>span:nth-of-type(3){left:42px;animation-delay:-1.4s}
@keyframes ro-demo-steam{0%,100%{transform:translate(0,0) skew(-8deg);opacity:.5}50%{transform:translate(7px,-18px) skew(8deg);opacity:.9}}
.ro-episode-stage[data-fixture=swap] .ro-episode-fixture{width:90%;height:37px;font-size:15px;line-height:37px;text-align:left;transform:translate(-50%,-50%);box-shadow:0 -3px #8d7149,0 3px #d1b27e}
.ro-episode-stage[data-fixture=swap] .ro-episode-fixture::after{content:none}
.ro-episode-demo-tape{display:flex;width:max-content;white-space:nowrap}.ro-episode-demo-tape>span{display:block;flex:0 0 600px;width:600px}
@media(max-width:550px){.ro-episode-stage:is([data-fixture=leaf],[data-fixture=flower],[data-fixture=vine]) .ro-episode-fixture{width:86px;height:86px}.ro-episode-stage[data-fixture=flower] .ro-episode-fixture::after{left:32px;top:33px;width:20px;height:20px}.ro-episode-stage[data-fixture=hop] .ro-episode-fixture{width:43px;height:65px}}
@media(prefers-reduced-motion:reduce){.ro-episode-stage .ro-episode-fixture>span{animation:none!important}}
.ro-life-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px 16px;margin:12px 0}.ro-life-options label{display:flex;align-items:flex-start;gap:9px;line-height:1.4}.ro-life-options input{flex:none;margin-top:3px}
