/* Bopoli: a playful construction kit, shared by game and library. */
@font-face{font-family:NeoHand;src:url('/play/assets/pangolin-latin-m8jKOiJo.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root,.sk-root{--paper:#fffdf6!important;--paper-light:#f3ebff!important;--ink:#413256!important;--ink2:#655573!important;--mute:#806c8d!important;--clay:#b2e7bb!important;--clay-d:#86c795!important;--hand:NeoHand,cursive!important;--neo-bg:#f4efff;--neo-panel:#fffdf6;--neo-border:#655573;--neo-accent:#bcefc6}
body{background:#f4efff!important;color:#413256}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8d61be!important;outline-offset:4px}#boot{background:#eee4ff!important;color:#413256!important}#boot:before{color:#655082;font:40px NeoHand,cursive;letter-spacing:3px}#boot:after{color:#806c8d;font:19px NeoHand,cursive}
#neo-shell{color:#413256}#neo-shell button{color:#413256;border:1.5px solid #655573;border-radius:12px;background:#fffdf6;font:17px NeoHand,cursive;box-shadow:2px 3px 0 #655573;transition:transform .14s,box-shadow .14s,background .14s}#neo-shell button:hover{background:#f0e5ff;transform:translateY(-2px)}#neo-shell button:active{transform:translate(1px,2px);box-shadow:0 1px 0 #655573}#neo-shell .neo-primary{background:#bcefc6;color:#413256;border-color:#655573}#neo-shell .neo-primary:hover{background:#c9f6d1}
.neo-header{top:14px;left:18px;right:18px;height:64px;padding:0;gap:15px;background:none;border:0;backdrop-filter:none;pointer-events:none}.neo-header>*{pointer-events:auto}.neo-wordmark{min-width:175px;background:#d8c8ff;border:2px solid #655573;border-radius:18px 10px 19px 11px;box-shadow:3px 4px 0 #655573;padding:8px 15px;color:#413256;font:25px NeoHand,cursive;letter-spacing:1px;transform:rotate(-2deg)}.neo-wordmark span{color:#655573;font:8px 'Segoe UI',sans-serif;letter-spacing:2px;text-align:center}.neo-city{padding:8px 16px;border-radius:14px;background:#fffdf6e8}.neo-city strong{font:21px NeoHand,cursive}.neo-city span{font-size:10px;color:#806c8d}.neo-stat{background:#fffdf6;border:1.5px solid #655573;border-radius:14px;padding:8px 13px;box-shadow:2px 3px 0 #655573}.neo-stat small{color:#806c8d;font-size:8px;letter-spacing:1px;margin-bottom:2px}.neo-stat strong{font:19px NeoHand,cursive}.neo-budget{position:relative;background:#fff0bd}.neo-money-pop{position:absolute;left:20%;top:100%;font:22px NeoHand,cursive;color:#306e45;pointer-events:none;white-space:nowrap;animation:neo-money 1.45s ease-out forwards}#neo-shell #neo-save{background:#ffcfac}#neo-shell #neo-coop{background:#c7ddff}
.neo-tools{top:auto;bottom:18px;left:50%;transform:translateX(-50%);right:auto;width:min(1350px,calc(100% - 36px));padding:10px;display:flex;align-items:stretch;gap:9px;overflow:visible;background:#fffdf6f5;border:2px solid #655573;border-radius:22px 20px 17px 24px;box-shadow:4px 5px 0 #655573;z-index:2}.neo-section{display:none}#neo-shell .neo-library{width:105px;flex:0 0 105px;margin:0;padding:10px 7px;background:#bcefc6;border:1.5px solid #655573;border-radius:13px;text-align:center;transform:rotate(-2deg)}#neo-shell .neo-library:before{content:'✦';display:block;font:27px NeoHand,cursive;color:#43855a;line-height:1.1}#neo-shell .neo-library strong{color:#413256;font:17px NeoHand,cursive}#neo-shell .neo-library span{color:#55745d;font:9px/1.3 'Segoe UI',sans-serif;margin-top:4px}#neo-categories{display:flex;flex:1;min-width:0;gap:5px;overflow-x:auto;overflow-y:hidden;padding:3px 3px 5px;scrollbar-width:thin;scrollbar-color:#baa4d2 transparent}#neo-shell .neo-tool{flex:1 0 65px;min-width:65px;width:auto;height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:5px 4px;margin:0;text-align:center;background:transparent;border:1.5px solid transparent;box-shadow:none;color:#413256}#neo-shell .neo-tool:hover{background:#efe4ff;transform:translateY(-2px) rotate(-2deg)}#neo-shell .neo-tool.active{background:#ffe1bd;border-color:#655573;box-shadow:2px 2px 0 #655573;color:#413256}.neo-tool-label{font:13px NeoHand,cursive;white-space:nowrap}.neo-tool-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#e7def8}.neo-tool-icon svg{width:31px;height:31px;color:#655573;overflow:visible}#neo-categories .neo-tool:nth-child(4n+2) .neo-tool-icon{background:#d3e6ff}#neo-categories .neo-tool:nth-child(4n+3) .neo-tool-icon{background:#d9f0ce}#neo-categories .neo-tool:nth-child(4n) .neo-tool-icon{background:#ffe3c7}#neo-shell kbd{display:none}#neo-shell #neo-more{width:77px;flex:0 0 77px;padding:5px;background:#e7d9ff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px}#neo-more strong{font-size:27px;line-height:1}#neo-more span{font-size:12px;line-height:1.2}.neo-tools-foot{display:none;position:absolute;bottom:calc(100% + 14px);right:0;grid-template-columns:repeat(2,minmax(140px,1fr));gap:10px;margin:0;padding:18px;width:390px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 240px);overflow:auto;background:#fffdf6;border:2px solid #655573;border-radius:18px;box-shadow:4px 5px 0 #655573}.neo-more-open .neo-tools-foot{display:grid}#neo-shell .neo-tools-foot button,.neo-tools-foot a{padding:11px;border:1px solid #b9a5c7;border-radius:10px;background:#f5edff;color:#413256;font:15px NeoHand,cursive;text-align:center;width:100%;height:auto;min-width:0}.neo-tools-foot a{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.neo-tools-foot .neo-tool-icon{width:30px;height:30px}.neo-tools-foot .neo-tool-icon svg{width:26px;height:26px}#neo-shell #neo-menu{display:none!important}
.neo-timeline{top:94px;bottom:auto;left:50%;gap:12px;padding:6px 10px;border:1.5px solid #655573;border-radius:14px;background:#fffdf6eF;box-shadow:2px 3px 0 #655573;font:15px NeoHand,cursive}#neo-shell .neo-timeline button{padding:5px 10px;background:#d9efcd;font-size:15px;box-shadow:1px 2px 0 #655573}.neo-connection{color:#806c8d;border-color:#d4c4df;padding-left:12px;font:12px NeoHand,cursive}.neovelier-connected .neo-connection{color:#37734a}
#local-lab{top:94px;right:18px;color:#413256}#local-lab summary{background:#eee0ff;color:#413256;border:1.5px solid #655573;border-radius:12px;box-shadow:2px 3px 0 #655573;font:16px NeoHand,cursive;padding:9px 13px;transform:rotate(2deg)}#local-lab[open] summary{transform:none}#local-lab .inside{background:#fffdf6;color:#413256;border:2px solid #655573;box-shadow:4px 5px 0 #655573;border-radius:16px;max-height:calc(100dvh - 275px)}#local-lab button,#local-lab a{background:#f2e5ff;color:#413256;border:1px solid #a48ab7;font:15px NeoHand,cursive;border-radius:9px}#local-lab button:hover,#local-lab a:hover{background:#e2d3f7}#local-lab p,#local-lab label,#local-version{color:#786284}#local-lab nav button[aria-selected=true],#local-catalog{background:#c4ebcb!important;color:#413256!important;border-color:#7fa88a!important}#local-lab input,#local-lab select{background:#f9f3ff;color:#413256;border-color:#b9a5c7}#net-invitation{background:#e1efdb;color:#355b40}#net-sync{color:#357248!important}#net-members{color:#655573;border-color:#d4c4df}#local-placement{background:#fff4c6;color:#413256;border:2px solid #655573;bottom:145px;left:50%;border-radius:14px;box-shadow:3px 4px 0 #655573}#local-placement button{color:#655082}
#neo-library-dialog,#neo-styles-dialog,#neo-management{background:#fffdf6;color:#413256;border:2px solid #655573;border-radius:18px;box-shadow:6px 7px 0 #655573}#neo-library-dialog::backdrop,#neo-styles-dialog::backdrop,#neo-management::backdrop{background:#3b2b5066;backdrop-filter:blur(4px)}.neo-dialog-head{border-color:#d4c4df;background:#e8dbff;font:21px NeoHand,cursive;border-radius:16px 16px 0 0}#neo-styles-dialog p{color:#786284}#neo-shell .neo-style-grid button[aria-pressed=true]{background:#bcefc6;color:#413256;border-color:#655573}
.sk-card,.sk-b,.bm-drawer,.bm-sheet,.bm-pop,.sk-tag,.sk-tip{background:#fffdf6!important;color:#413256!important;border:1.5px solid #8a759a!important;border-radius:14px!important;box-shadow:3px 4px 0 #65557340!important;font-family:NeoHand,cursive!important}.sk-root button{font-family:NeoHand,cursive!important}.sk-root input,.sk-root select{color:#413256!important;background:#f5edff!important;border-color:#b9a5c7!important}.bm{left:50%!important;right:auto!important;bottom:145px!important;transform:translateX(-50%)!important;max-width:calc(100vw - 40px)!important}.bm-drawer-host{color:#413256!important}.bm-drawer h3{color:#413256!important}.bm-card{background:#f2e9fa!important;color:#413256!important;border:1px solid #c5b1d3!important;border-radius:12px!important}.bm-card .bm-nm,.bm-card .bm-ft,.bm-card .cost{color:#413256!important}.bm-card .bm-sub{color:#806c8d!important}.bm-card.on{background:#d9edcf!important;border-color:#73996f!important}.sk-root .adv-panel,.sk-root .rg-panel{left:24px!important;bottom:145px!important}.sk-root{--sk-col-top:155px!important}
/* Welcome page and architecture cabinet use the same materials. */
.neo-home,.neo-catalog,.neo-about{background:#f4efff!important;color:#413256}.neo-home header,.neo-home footer,.neo-catalog header{border-color:#d0bddf}.neo-home .brand{font:28px NeoHand,cursive;letter-spacing:2px;color:#413256;background:#d8c8ff;border:2px solid #655573;border-radius:15px 10px 14px 11px;padding:7px 18px;box-shadow:3px 4px 0 #655573;transform:rotate(-2deg)}.neo-home header nav,.neo-home footer,.neo-home .caption{color:#806c8d}.neo-home .eyebrow,.neo-catalog .eyebrow,.neo-catalog .edition{color:#806094;letter-spacing:1.5px}.neo-home h1{font:clamp(48px,5.5vw,79px)/1.04 NeoHand,cursive;letter-spacing:-2px;margin:24px 0}.neo-home h1 em{color:#8c61ac}.neo-home .intro{color:#786284;font-size:16px;max-width:425px}.neo-home .button,.neo-home button{border:2px solid #655573;background:#ffcfac;color:#413256;border-radius:13px;box-shadow:3px 4px 0 #655573;font:19px NeoHand,cursive;padding:12px 18px;transition:transform .15s}.neo-home .primary{background:#bcefc6;transform:rotate(-2deg)}.neo-home .button:hover,.neo-home button:hover{filter:none;transform:translateY(-3px)}.neo-home .model{border:2px solid #655573;border-radius:25px 18px 23px 20px;box-shadow:7px 8px 0 #c2acd7;background:#e8e3f5;animation:none;transform:rotate(1deg)}.neo-home .model-foot{background:#fffdf6;border-top:2px solid #655573}.neo-home .model-foot small{color:#997ca7}.neo-home .model-foot strong{font:23px NeoHand,cursive}.neo-home .model-foot button{font-size:16px;padding:8px 11px;background:#e7d9ff}.neo-home .features{gap:20px;border:0;padding-top:20px}.neo-home .features article{background:#e8dcff;border:1.5px solid #ad94bc;border-radius:16px;padding:22px}.neo-home .features article:nth-child(2){background:#deefd8}.neo-home .features article:nth-child(3){background:#ffe7d0}.neo-home .features strong{font:27px NeoHand,cursive;color:#655082}.neo-home .features p{color:#786284}.neo-catalog .back,.neo-catalog .intro p:not(.eyebrow){color:#786284}.neo-catalog h1{font:clamp(32px,4vw,50px)/1.15 NeoHand,cursive;letter-spacing:-.5px}.neo-catalog .stamp{background:#ffe1bd;color:#655082;border:2px solid #655573;border-radius:38% 47% 43% 39%;transform:rotate(8deg);font:36px NeoHand,cursive;box-shadow:3px 3px 0 #d5bad9}.neo-catalog .stamp small{color:#806c8d}.neo-catalog .filters label,.neo-catalog .model-options label,.neo-catalog #count,.neo-catalog .meta,.neo-catalog .note,.neo-catalog #detail-state,.neo-catalog dt,.neo-catalog .models figcaption,.neo-catalog #model-status{color:#806c8d}.neo-catalog input,.neo-catalog select{background:#fffdf6!important;color:#413256!important;border-color:#b9a5c7!important;border-radius:10px!important}.neo-catalog .card{background:#fffdf6;border:1.5px solid #b9a5c7;border-radius:14px;padding:7px 7px 14px;transition:transform .16s,box-shadow .16s}.neo-catalog .card:hover{background:#fffdf6;border-color:#655573;transform:translateY(-4px) rotate(-1deg);box-shadow:3px 4px 0 #c2acd7}.neo-catalog .plate{background:#e8e3f5}.neo-catalog .name{font:19px/1.2 NeoHand,cursive;color:#413256}.neo-catalog .local{color:#44815b}.neo-catalog dialog{background:#fffdf6;color:#413256;border:2px solid #655573;box-shadow:5px 6px 0 #655573}.neo-catalog dialog::backdrop{background:#3b2b5066}.neo-catalog dialog h2{font:32px NeoHand,cursive}.neo-catalog #close{background:#eedfff;color:#655573;border-color:#b9a5c7}.neo-catalog #place-model{background:#bcefc6;color:#413256;border:1.5px solid #655573;font:19px NeoHand,cursive;border-radius:11px;box-shadow:2px 3px 0 #655573}.neo-catalog .models canvas{border-color:#c8b5da}.neo-about h1{font:46px NeoHand,cursive;color:#655082}.neo-about h2{font:27px NeoHand,cursive}.neo-about a{color:#8c61ac}.neo-about small{color:#806c8d}.neo-about code{background:#e7d9ff}
@keyframes neo-money{0%{opacity:0;transform:translateY(0)}15%{opacity:1}100%{opacity:0;transform:translateY(45px)}}
@media(max-width:1100px){.neo-header{gap:11px}.neo-wordmark{min-width:148px;font-size:22px}.neo-city{padding:7px 10px}.neo-city strong{font-size:18px}.neo-stat strong{font-size:16px}.neo-tools{width:calc(100% - 28px)}#neo-categories{gap:3px}.neo-timeline{left:50%}.neo-home .hero{gap:35px}}
@media(max-width:760px){.neo-header{top:10px;left:12px;right:12px;height:54px;gap:12px}.neo-wordmark{font-size:20px;min-width:142px;padding:7px 10px}.neo-wordmark span{font-size:7px;letter-spacing:1.4px}.neo-budget{padding:7px 10px}.neo-budget strong{font-size:16px}.neo-budget small{font-size:7px}.neo-tools,.neo-tools-open .neo-tools{display:flex;top:auto;bottom:12px;width:calc(100% - 20px);padding:7px;gap:6px;border-radius:17px}#neo-shell .neo-library{width:77px;flex-basis:77px;padding:5px}#neo-shell .neo-library strong{font-size:14px}#neo-shell .neo-library span{font-size:8px}#neo-shell .neo-library:before{font-size:22px}#neo-shell .neo-tool{height:72px;flex-basis:60px;min-width:60px}.neo-tool-label{font-size:12px}.neo-tool-icon{width:33px;height:33px}.neo-tool-icon svg{width:28px;height:28px}#neo-shell #neo-more{width:59px;flex-basis:59px;padding:4px}#neo-more span{font-size:11px}.neo-timeline{top:81px;bottom:auto;gap:8px;font-size:13px;max-width:calc(100vw - 20px)}#neo-shell .neo-timeline button{font-size:13px;padding:4px 7px}.neo-connection{font-size:11px;padding-left:8px}#local-lab{top:136px;right:12px}#local-lab summary{font-size:14px;padding:8px 10px}#local-lab .inside{max-width:calc(100vw - 24px);max-height:calc(100dvh - 305px)}.bm{left:50%!important;bottom:125px!important;max-width:calc(100vw - 20px)!important}.bm-drawer{max-height:55dvh!important;overflow-y:auto}#local-placement{bottom:120px;left:50%;width:90vw;font-size:12px}.neo-dialog-head{font-size:17px;padding:0 12px}#neo-shell .neo-dialog-head button{font-size:13px;padding:7px 10px}.neo-tools-foot{grid-template-columns:repeat(2,minmax(0,1fr));width:340px;padding:12px}.neo-home h1{font-size:55px;letter-spacing:-1px}.neo-home .brand{font-size:21px;padding:5px 10px;letter-spacing:1px}.neo-home .intro{font-size:15px}.neo-home .button{font-size:17px}.neo-home .features{margin-top:20px}.neo-catalog .name{font-size:16px}.neo-catalog .stamp{font-size:28px}.neo-catalog .embedded h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){#neo-shell button,.neo-home .button,.neo-home button,.neo-catalog .card{transition:none}.neo-money-pop{animation:none;display:none}}
@media(max-width:900px){.bm-dh{display:flex!important;flex-wrap:wrap!important;height:auto!important;gap:7px!important;padding-bottom:8px!important}.bm-dh .bm-tabs,.bm-dh .bm-extra{order:2;flex:1 0 100%!important;width:100%!important;max-width:100%;overflow-x:auto;overflow-y:hidden;min-height:31px;padding-bottom:3px}.bm-dh .bm-extra{order:3}.bm-dh .bm-tabs>*{flex-shrink:0}.bm-dh .bm-chip,.bm-dh h3{flex-shrink:0}.bm-dh .bm-sp{min-width:0!important}.bm-dh .bm-sbox{margin-left:auto}.bm-dh .bm-note{order:4;width:100%}.bm-drawer .sk-tape{display:none}}
