:root{--h:"Bebas Neue", sans-serif;--s:"Barlow Condensed", sans-serif;--b:"Barlow", sans-serif;--black:#000;--ink:#12262b;--g:#888;--gb:#e0e0e0;--gbg:#f5f5f5;--w:#fff;--red:#6b0205;--teal:#01686f}*{box-sizing:border-box}html,body{height:100%}body{font-family:var(--b);background:var(--w);color:var(--black);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}.cfg-root{flex-direction:column;height:100dvh;display:flex}.topbar{border-bottom:1px solid var(--gb);z-index:20;background:#fffffff7;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;overflow:hidden}.brand{flex-wrap:nowrap;align-items:center;gap:14px;min-width:0;display:flex}.brand a{align-items:center;display:flex}.brand img{object-fit:contain;mix-blend-mode:multiply;width:150px;height:150px;margin:-43px -14px -43px -38px}.model-select,.topbar-right select{appearance:none;color:var(--black);-webkit-text-fill-color:var(--black);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:0;padding-right:26px}.model-select{font-family:var(--s);letter-spacing:3px;text-transform:uppercase;border:1px solid var(--gb);background-color:var(--w);cursor:pointer;padding:6px 26px 6px 8px;font-size:13px;font-weight:600}.topbar .model{font-family:var(--s);letter-spacing:4px;text-transform:uppercase;color:var(--g);font-size:13px;font-weight:600}.topbar-right{align-items:center;gap:16px;display:flex}.topbar-right select{font-family:var(--s);letter-spacing:2px;text-transform:uppercase;border:1px solid var(--gb);background-color:var(--w);cursor:pointer;padding:6px 26px 6px 8px;font-size:12px;font-weight:600}.topbar .exit{font-family:var(--s);letter-spacing:3px;text-transform:uppercase;color:var(--g);font-size:12px;font-weight:600;text-decoration:none}.topbar .exit:hover{color:var(--black)}.app{flex:1;min-height:0;display:flex}.canvas-wrap{flex:1;min-width:0;position:relative}.canvas-wrap canvas{display:block}.loading{color:var(--g);background:var(--gbg);font-family:var(--s);text-transform:uppercase;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.loading-manta{object-fit:contain;mix-blend-mode:multiply;width:88px;height:88px;animation:1.6s ease-in-out infinite manta-pulse}@keyframes manta-pulse{0%,to{opacity:.55;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}.loading-model{letter-spacing:5px;color:var(--g);margin:10px 0 22px;font-size:13px}.loading-bar{background:var(--gb);width:180px;height:2px;overflow:hidden}.loading-fill{background:var(--black);height:100%;transition:width .2s ease-out}.loading-pct{letter-spacing:3px;color:var(--g);margin-top:14px;font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}.panel{background:var(--w);border-left:1px solid var(--gb);flex-direction:column;flex-shrink:0;width:380px;display:flex}.panel-scroll{flex:1;padding:24px 32px 20px;overflow-y:auto}.panel h1{font-family:var(--h);letter-spacing:2px;text-transform:uppercase;margin:0 0 4px;font-size:38px;font-weight:400;line-height:.9}.panel h1 span{color:var(--g)}.lede{font-family:var(--s);letter-spacing:3px;text-transform:uppercase;color:var(--g);margin-bottom:24px;font-size:13px}.section{border-top:1px solid var(--gb);padding:20px 0 8px}.section>h2{font-family:var(--s);letter-spacing:3px;text-transform:uppercase;cursor:pointer;margin:0 0 16px;font-size:14px;font-weight:600}.section>h2:hover{color:var(--ink)}.zone{margin-bottom:18px}.zone-label{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.zone-label .name{font-family:var(--s);letter-spacing:2px;text-transform:uppercase;font-size:13px;font-weight:600}.zone-label .val{color:var(--g);font-size:12px}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{cursor:pointer;outline-offset:2px;border:1px solid #00000026;border-radius:50%;outline:2px solid #0000;width:30px;height:30px;padding:0;transition:outline-color .2s}.swatch.active{outline-color:var(--black)}.engine{border:1px solid var(--gb);cursor:pointer;justify-content:space-between;align-items:center;margin-bottom:10px;padding:13px 16px;display:flex}.engine.active{border-color:var(--black);box-shadow:inset 0 0 0 1px var(--black)}.engine .nm{font-family:var(--s);letter-spacing:2px;text-transform:uppercase;font-size:14px;font-weight:600}.engine .tag{color:var(--g);letter-spacing:1px;text-transform:uppercase;font-size:11px}.modal-backdrop{z-index:50;background:#0a0a0a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--w);width:100%;max-width:440px;max-height:90dvh;padding:28px 32px 32px;position:relative;overflow-y:auto}.modal-close{width:36px;height:36px;color:var(--black);cursor:pointer;background:0 0;border:none;padding:0;font-size:28px;line-height:1;position:absolute;top:8px;right:8px}.modal-close:hover{opacity:.55}.modal h2{font-family:var(--h);letter-spacing:1px;text-transform:uppercase;margin:0 0 6px;font-size:30px;font-weight:400}.modal-config{color:var(--g);margin:0 0 18px;font-size:11px;line-height:1.7}.modal p{font-size:14px;line-height:1.6}.modal label{font-family:var(--s);letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:600;display:block}.modal input,.modal textarea{width:100%;font-family:var(--b);border:1px solid var(--gb);background:var(--w);letter-spacing:0;margin-top:6px;padding:10px 12px;font-size:15px;display:block}.modal input:focus,.modal textarea:focus{outline:2px solid var(--black)}.modal .btn{margin-top:6px}.hp-field{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.form-error{color:var(--red);font-size:13px}.std-list{margin:0;padding:0;list-style:none}.std-list li{border-bottom:1px solid var(--gbg);justify-content:space-between;align-items:baseline;padding:7px 0;font-size:14px;display:flex}.std-list li:last-child{border-bottom:none}.std-list em{font-style:normal;font-family:var(--s);letter-spacing:2px;text-transform:uppercase;color:var(--g);font-size:11px;font-weight:600}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:10px 0;font-size:14px;display:flex}.toggle input{accent-color:var(--black);cursor:pointer;width:17px;height:17px}.toggle .price{color:var(--g);font-size:12px;font-style:normal}.summary{border-top:1px solid var(--gb);background:var(--gbg);padding:16px 32px 20px}.summary .rows{color:var(--g);margin-bottom:12px;font-size:12px;line-height:1.8}.btn{font-family:var(--s);letter-spacing:3px;text-transform:uppercase;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 32px;font-size:12px;font-weight:600;transition:all .3s;display:inline-flex}.btn.primary{background:var(--black);color:#fff}.btn.primary:hover{background:var(--ink)}.btn.ghost{border:1px solid var(--gb);color:var(--black);background:0 0;margin-top:8px}.btn.ghost:hover{border-color:var(--black)}.summary-row{gap:8px;display:flex}.summary-row .btn{padding-left:12px;padding-right:12px}@media (max-width:800px){html,body{height:auto;overflow:visible}.cfg-root{height:auto}.app{flex-direction:column}.canvas-wrap{flex:none;height:55svh}.panel{border-left:none;border-top:1px solid var(--gb);width:100%}.panel-scroll{flex:none;padding:20px;overflow:visible}.topbar{gap:8px;height:56px;padding:0 12px}.topbar .model,.topbar .exit{display:none}.brand{gap:8px}.brand img{width:100px;height:100px;margin:-29px -10px -29px -26px}.model-select{letter-spacing:1.5px;background-position:right 6px center;max-width:38vw;padding:5px 20px 5px 6px;font-size:11px}.topbar-right{gap:8px}.topbar-right select{letter-spacing:1px;background-position:right 6px center;padding:5px 20px 5px 6px;font-size:11px}}
