:root{color:#28313d;background:#f3f8ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f3f8ff}button,input{font:inherit}button{border:0}.landing-shell,.chooser-shell,.editor-shell{min-height:100vh;background:linear-gradient(rgba(55,132,215,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(55,132,215,.075) 1px,transparent 1px),#f7fbff;background-size:32px 32px,32px 32px,auto}.top-nav{position:fixed;top:16px;left:16px;z-index:10;display:inline-flex;align-items:center;width:fit-content;max-width:calc(100vw - 32px);min-height:70px;padding:12px 16px;background:#ffffffe6;border:1px solid #dfe8f5;border-radius:20px;box-shadow:0 10px 28px #2b466712;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-brand,.logo-button{cursor:pointer}.nav-brand{display:inline-flex;align-items:center;justify-self:start;gap:12px;color:#27313f;background:transparent;font-size:15px;font-weight:800;line-height:1.05;text-align:left}.nav-brand small{display:block;margin-top:2px;color:#536173;font-size:11px;font-weight:650;white-space:nowrap}.brand-cube,.logo-button{display:grid;place-items:center;width:42px;height:42px;color:#fff;background:linear-gradient(145deg,#78bcfb,#2375d2);border-radius:11px;box-shadow:inset 0 1px #ffffff8c,0 8px 18px #2476d23d}.hero-cta,.wide-create-button,.export-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#fff;background:linear-gradient(180deg,#67b4f4,#2f82d9);border:1px solid #1f70c5;border-radius:14px;box-shadow:inset 0 1px #ffffff73,0 8px 18px #2072c742;cursor:pointer;font-weight:800}.hero-grid{position:relative;min-height:100vh;overflow:hidden;padding:154px 32px 64px}.hero-copy{position:relative;z-index:2;width:min(720px,92vw)}.hero-copy h1{margin:0;color:#28313d;font-size:clamp(52px,6.2vw,88px);line-height:.95;letter-spacing:0;white-space:nowrap}.hero-copy p{width:min(640px,90vw);margin:24px 0 0;color:#384555;font-size:clamp(18px,2vw,24px);line-height:1.55}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:30px}.hero-cta{justify-content:space-between;min-width:224px;min-height:66px;padding:14px 14px 14px 24px;border-radius:32px;box-shadow:0 0 0 12px #4599e821,inset 0 1px #ffffff73,0 10px 22px #2a77cd47}.hero-cta span{display:grid;place-items:center;width:43px;height:43px;color:#fff;background:#ffffff29;border:1px solid rgba(255,255,255,.35);border-radius:999px}.hero-capabilities{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-capabilities span{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;color:#2b5f99;background:#ffffffc7;border:1px solid #dce8f5;border-radius:10px;font-size:14px;font-weight:800;box-shadow:0 8px 20px #2b46670f}.hero-models{position:absolute;top:112px;right:14px;z-index:1;width:min(55vw,760px);height:min(52vw,620px);pointer-events:none}.hero-models canvas,.category-preview canvas,.model-stage canvas{display:block;width:100%!important;height:100%!important}.howto-section{padding:0 32px 58px}.howto-inner{width:min(960px,100%);margin:0 auto}.howto-inner h2{margin:0 0 14px;color:#28313d;font-size:22px;line-height:1.2;letter-spacing:0}.howto-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.howto-step{display:grid;align-items:center;justify-items:center;gap:14px;min-width:0;min-height:260px;padding:34px 22px 30px;text-align:center;background:#ffffffd1;border:1px solid #dce8f5;border-radius:8px;box-shadow:0 10px 24px #2b46670f}.howto-step__icon{display:grid;flex:0 0 auto;place-items:center;width:128px;height:128px;color:#fff;background:#2f82d9;border-radius:26px;box-shadow:inset 0 1px #ffffff61,0 18px 34px #2f82d92e}.howto-step__icon svg{width:62px;height:62px}.howto-step__body{display:grid;min-width:0;gap:5px}.howto-step strong{color:#28313d;font-size:21px;line-height:1.3}.howto-step small{color:#536173;font-size:14px;font-weight:700;line-height:1.45}.site-footer{padding:22px 32px 30px;background:#ffffff9e;border-top:1px solid #dfe8f5}.site-footer__inner{display:flex;align-items:center;justify-content:space-between;gap:18px;width:min(960px,100%);margin:0 auto;color:#536173;font-size:13px;font-weight:700}.site-footer__links{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.site-footer a{color:#2b5f99;text-decoration:none}.site-footer a:hover,.site-footer a:focus-visible{color:#1f65b2;text-decoration:underline}.legal-shell{min-height:100vh;background:linear-gradient(rgba(55,132,215,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(55,132,215,.055) 1px,transparent 1px),#f7fbff;background-size:32px 32px,32px 32px,auto}.legal-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;min-height:78px;padding:14px 24px;background:#ffffffe0;border-bottom:1px solid #dfe8f5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.legal-brand{display:inline-flex;align-items:center;gap:12px;color:#27313f;font-size:15px;font-weight:800;line-height:1.05;text-decoration:none}.legal-brand small{display:block;margin-top:2px;color:#536173;font-size:11px;font-weight:650;white-space:nowrap}.legal-document{width:min(900px,calc(100% - 44px));margin:0 auto;padding:44px 0 66px}.legal-kicker{margin:0 0 8px;color:#2f82d9;font-size:13px;font-weight:850}.legal-document h1{margin:0;color:#28313d;font-size:clamp(32px,5vw,48px);line-height:1.1;letter-spacing:0}.legal-lead{margin:16px 0 0;color:#384555;font-size:16px;line-height:1.8}.legal-date{margin:16px 0 0;color:#6d7785;font-size:13px;font-weight:700}.legal-sections{display:grid;gap:30px;margin-top:38px}.legal-section{padding-top:24px;border-top:1px solid #dfe8f5}.legal-section h2{margin:0 0 14px;color:#28313d;font-size:19px;line-height:1.35;letter-spacing:0}.legal-section p,.legal-section li,.legal-table td,.legal-table th{color:#384555;font-size:14px;line-height:1.85}.legal-section p{margin:0 0 12px}.legal-section ul{display:grid;gap:8px;margin:0;padding-left:22px}.legal-table-wrap{overflow-x:auto;border:1px solid #dfe8f5;border-radius:8px;background:#ffffffbd}.legal-table{width:100%;min-width:620px;border-collapse:collapse}.legal-table th,.legal-table td{padding:13px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #e7eef7}.legal-table tr:last-child th,.legal-table tr:last-child td{border-bottom:0}.legal-table th{width:210px;color:#28313d;font-weight:850}.contact-document{width:min(720px,calc(100% - 44px));margin:0 auto;padding:44px 0 66px}.contact-document h1{margin:0;color:#28313d;font-size:clamp(32px,5vw,48px);line-height:1.1;letter-spacing:0}.contact-card{display:grid;gap:18px;margin-top:30px;padding:24px;background:#ffffffd1;border:1px solid #dfe8f5;border-radius:8px;box-shadow:0 10px 24px #2b46670f}.contact-email{margin:0;color:#28313d;font-size:22px;font-weight:850;line-height:1.6;word-break:break-word}.contact-note{margin:0;color:#536173;line-height:1.85}.contact-actions{display:flex;align-items:center;justify-content:flex-start;gap:16px}.contact-submit{display:inline-flex;align-items:center;justify-content:center;min-width:128px;min-height:44px;padding:10px 16px;color:#fff;background:#2f82d9;border:1px solid #1f70c5;border-radius:8px;cursor:pointer;font-weight:850;text-decoration:none}.compact-bar{display:flex;align-items:center;gap:12px;min-height:62px;padding:10px;background:#fffc;border-bottom:1px solid #e2eaf4}.chooser-inner{width:min(920px,calc(100vw - 44px));margin:0 auto;padding:44px 0 72px;text-align:center}.chooser-inner h1{margin:0 0 34px;color:#28313d;font-size:clamp(26px,4vw,38px);letter-spacing:0}.category-list{display:grid;gap:16px}.category-card{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:28px;min-height:178px;padding:26px 24px;text-align:left;background:#ffffffe0;border:2px dashed #d7e0eb;border-radius:18px}.category-title-row{display:flex;align-items:center;gap:12px}.category-title-row svg{color:#2f82d9}.category-copy h2{margin:0;color:#28313d;font-size:clamp(34px,6vw,46px);line-height:1;letter-spacing:0}.category-copy p{margin:16px 0 22px;color:#536173;font-size:16px;line-height:1.5}.wide-create-button{width:100%;min-height:50px;border-radius:12px}.category-preview{width:220px;height:132px;filter:drop-shadow(0 16px 22px rgba(38,102,157,.2));pointer-events:none}.editor-shell{display:grid;grid-template-columns:336px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr);overflow:hidden}.editor-topbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:#ffffffe0;border-bottom:1px solid #e2eaf4;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.editor-left,.editor-actions{display:flex;align-items:center;gap:8px}.logo-button{flex:0 0 auto}.editor-panel{grid-row:2;height:calc(100vh - 56px);overflow:auto;padding:8px 12px 18px;background:#ffffffe6;border-right:1px solid #e2eaf4}.accordion-section{display:grid;gap:10px;padding:8px 0 22px;border-bottom:1px solid #eef2f7}.accordion-section.is-active{border:1px solid #2f82d9;border-radius:8px;padding:8px}.accordion-title{display:flex;align-items:center;justify-content:space-between;min-height:28px;color:#28313d;font-size:13px;font-weight:850}.tool-section{padding-top:0}.tool-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tool-button{display:grid;place-items:center;gap:5px;min-width:0;min-height:58px;padding:8px 6px;color:#2f75cb;background:#f7fbff;border:1px solid #dce8f5;border-radius:9px;box-shadow:inset 0 1px #ffffffc7;cursor:grab;font-size:12px;font-weight:850}.tool-button:hover,.tool-button:focus-visible,.tool-button.is-active{background:#ebf5ff;border-color:#aad2fb}.tool-button.is-active{color:#1f65b2;box-shadow:inset 0 1px #ffffffc7,0 0 0 2px #2f82d92e}.tool-button:active{cursor:grabbing}.tool-help{margin-top:8px;padding:8px 10px;color:#235c99;background:#edf6ff;border:1px solid #cfe5fb;border-radius:8px;font-size:12px;font-weight:800;line-height:1.45}.split-selection-button,.delete-selection-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:42px;margin:0 0 6px;gap:8px;color:#ad2d2d;background:#fff7f7;border:1px solid #f0caca;border-radius:8px;cursor:pointer;font-size:13px;font-weight:850}.split-selection-button{color:#1f65b2;background:#f2f8ff;border-color:#c8def6}.split-selection-button:hover,.split-selection-button:focus-visible{background:#e9f4ff;border-color:#9cc9f5}.delete-selection-button:hover,.delete-selection-button:focus-visible{background:#ffecec;border-color:#e6a7a7}.delete-selection-button--panel-bottom{margin:12px 0 0}.field-grid{display:grid;grid-template-columns:1fr;gap:8px}.field{display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:8px}.field__label{color:#3f4b5d;font-size:13px;font-weight:650}.field__control{display:grid;grid-template-columns:30px minmax(72px,1fr) 34px 30px;align-items:center;min-width:0;overflow:hidden;background:#f3f3f6;border:0;border-radius:6px}.field__control input{width:100%;min-width:0;padding:7px 6px;color:#28313d;text-align:right;background:transparent;border:0;outline:0;font-weight:750}.field__unit{color:#6d7785;font-size:12px}.icon-button{display:grid;place-items:center;width:30px;height:32px;color:#2f82d9;background:transparent;cursor:pointer}.icon-button:hover{background:#e7f1ff}.segmented-row{display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:8px;min-height:34px}.segmented-row>span{color:#3f4b5d;font-size:13px;font-weight:650}.segmented-control{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:3px;background:#f0f2f6;border-radius:7px}.segmented-control button{min-height:28px;color:#526071;background:transparent;border-radius:6px;cursor:pointer;font-size:12px;font-weight:800}.segmented-control button.is-active{color:#2f75cb;background:#fff;box-shadow:0 1px 4px #1f46701f}.layout-control{display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:8px}.layout-control>span{color:#3f4b5d;font-size:13px;font-weight:650}.layout-pad{position:relative;min-height:82px;overflow:hidden;background:linear-gradient(rgba(47,130,217,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(47,130,217,.08) 1px,transparent 1px),#f9fcff;background-size:18px 18px;border:1px solid #dce8f5;border-radius:9px;box-shadow:inset 0 0 0 2px #ffffffb8;touch-action:none}.layout-pad:before{position:absolute;inset:16px 22px;content:"";border:2px solid rgba(47,130,217,.46);border-radius:5px;background:#2f82d912}.handle-marker,.divider-line{position:absolute;z-index:2;display:block;touch-action:none}.handle-marker,.divider-pad{cursor:grab}.divider-pad:active{cursor:grabbing}.divider-line{pointer-events:none;touch-action:none}.handle-marker{background:#2f82d9;box-shadow:0 0 0 4px #2f82d924}.handle-marker:active,.divider-line:active{cursor:grabbing}.handle-marker--front,.handle-marker--back{width:48px;height:10px;margin-left:-24px}.handle-marker--front{bottom:15px}.handle-marker--back{top:15px}.handle-marker--left,.handle-marker--right{width:10px;height:48px;margin-top:-24px}.handle-marker--left{left:21px}.handle-marker--right{right:21px}.handle-marker--slot{border-radius:999px}.handle-marker--notch{border-radius:3px 3px 8px 8px}.divider-line--column{top:17px;bottom:17px;width:24px;margin-left:-12px}.divider-line--row{left:23px;right:23px;height:24px;margin-top:-12px}.divider-line:before{position:absolute;content:"";background:#2f82d9;box-shadow:0 0 0 4px #2f82d924;border-radius:999px}.divider-line--column:before{top:0;bottom:0;left:50%;width:8px;margin-left:-4px}.divider-line--row:before{top:50%;right:0;left:0;height:8px;margin-top:-4px}.divider-pad--staggered .divider-line--column:before{background:linear-gradient(180deg,#2f82d9 0 38%,transparent 38% 48%,#2f82d9 48% 100%)}.editor-workspace{position:relative;grid-column:2;grid-row:2;min-width:0;min-height:0;overflow:hidden}.model-stage{position:absolute;inset:0}.model-interaction-layer{position:absolute;inset:0;z-index:3;pointer-events:none}.model-plan{position:absolute;top:50%;left:50%;width:min(60vw,760px);min-width:360px;max-width:calc(100% - 120px);border-radius:16px;pointer-events:none;transform:translate(-50%,-50%);touch-action:none}.model-plan--active-tool,.model-plan--dragging-tool,.model-plan--handle-tool{pointer-events:auto}.model-plan__box{position:absolute;inset:0;background:linear-gradient(rgba(47,130,217,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(47,130,217,.08) 1px,transparent 1px),#ffffff14;background-size:22px 22px;border:1px dashed rgba(47,130,217,.34);border-radius:inherit;opacity:0;transition:opacity .12s ease}.model-plan--active-tool .model-plan__box,.model-plan:focus-within .model-plan__box{opacity:.68}.handle-drop-zone{position:absolute;z-index:2;display:block;padding:0;background:#2f82d914;border:1px dashed rgba(47,130,217,.34);border-radius:12px;cursor:copy;opacity:0;transition:opacity .12s ease,background .12s ease,border-color .12s ease}.model-plan--handle-tool .handle-drop-zone{opacity:.12}.model-plan--handle-tool .handle-drop-zone:hover,.model-plan--handle-tool .handle-drop-zone:focus-visible{background:#2f82d929;border-color:#2f82d99e;opacity:.42;outline:none}.handle-drop-zone--front,.handle-drop-zone--back{left:20%;width:60%;height:32%}.handle-drop-zone--front{bottom:0}.handle-drop-zone--back{top:0}.handle-drop-zone--left,.handle-drop-zone--right{top:15%;width:30%;height:70%}.handle-drop-zone--left{left:0}.handle-drop-zone--right{right:0}.handle-side-drop{position:absolute;inset:0;z-index:2;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:stretch;color:#1f65b2;pointer-events:none}.handle-side-drop__label,.model-tool-hint{justify-self:center;align-self:start;margin-top:10px;padding:7px 10px;color:#1f65b2;background:#ffffffe6;border:1px solid #b8d9ff;border-radius:8px;box-shadow:0 8px 18px #2b46671a;font-size:12px;font-weight:850;white-space:nowrap}.handle-side-drop__edge{display:grid;place-items:center;min-width:0;color:#2b6fbd;background:#2f82d921;border:1px dashed rgba(47,130,217,.42);font-size:12px;font-weight:850;writing-mode:vertical-rl}.handle-side-drop__edge--left{border-radius:16px 0 0 16px}.handle-side-drop__edge--right{border-radius:0 16px 16px 0}.model-tool-hint{position:absolute;left:50%;bottom:-44px;z-index:3;margin:0;transform:translate(-50%)}.scene-dimension-label{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;color:#1262b7;background:#fffffff0;border:1px solid #b8d9ff;border-radius:8px;box-shadow:0 8px 18px #2b46671f;font-size:12px;font-weight:850;line-height:1;pointer-events:none;white-space:nowrap}.export-button{min-height:38px;padding:8px 16px;border-radius:10px}.export-button:disabled{cursor:wait;opacity:.72}.notice{position:absolute;top:86px;left:18px;z-index:5;max-width:min(460px,calc(100% - 36px));padding:10px 12px;border-radius:10px;font-size:14px;font-weight:700;box-shadow:0 10px 24px #2b466714}.notice--info{color:#255172;background:#e2f2ff}.notice--success{color:#23523d;background:#e2f4eb}.notice--error{color:#6c2c2c;background:#f6dfdc}@media(max-width:820px){.top-nav{left:10px;max-width:calc(100vw - 20px)}.hero-models{top:auto;right:-18px;bottom:68px;width:min(96vw,540px);height:390px;opacity:.76}.site-footer__inner{align-items:flex-start;flex-direction:column}.editor-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(460px,64vh) auto;overflow:auto}.editor-topbar,.editor-panel,.editor-workspace{grid-column:1}.editor-panel{grid-row:3;height:auto;border-right:0;border-top:1px solid #e2eaf4;border-bottom:0}.editor-workspace{grid-row:2;min-height:460px}.model-plan{top:50%;left:50%;width:min(92vw,520px);min-width:0;max-width:calc(100% - 32px)}}@media(max-width:700px){.top-nav{min-height:66px;border-radius:16px}.hero-grid{padding:126px 20px 320px}.hero-models{top:456px;right:-28px;bottom:auto;width:min(106vw,500px);height:290px}.hero-copy p{max-width:330px;font-size:18px}.hero-cta{min-width:214px}.hero-capabilities{max-width:280px}.howto-section{padding:0 20px 44px}.howto-steps{grid-template-columns:1fr}.howto-step{min-height:220px;padding:28px 18px 24px}.howto-step__icon{width:108px;height:108px;border-radius:22px}.howto-step__icon svg{width:54px;height:54px}.site-footer{padding:20px}.legal-topbar{min-height:70px;padding:12px 16px}.legal-document{width:min(100% - 32px,900px);padding:32px 0 52px}.contact-document{width:min(100% - 32px,720px);padding:32px 0 52px}.contact-card{padding:18px}.contact-actions{align-items:stretch;flex-direction:column}.contact-submit{width:100%}.legal-table{min-width:560px}.category-card{grid-template-columns:1fr;gap:12px;min-height:0;padding:22px 18px}.category-preview{justify-self:center;height:116px}.category-copy h2{font-size:38px}.editor-left,.editor-actions{flex-wrap:wrap}.field,.segmented-row,.layout-control{grid-template-columns:1fr}}
