:root{--fp-ink:#14251f;--fp-muted:#65716b;--fp-paper:#f7f3eb;--fp-panel:#fffdf8;--fp-line:#d8d4ca;--fp-accent:#fb6b4a;--fp-green:#1d4b3d;--fp-shadow:0 18px 50px rgba(20,37,31,.12)}
*{box-sizing:border-box}[hidden]{display:none!important}.floor-page{background:#eee9df;color:var(--fp-ink);min-width:280px}.floor-page button,.floor-page input,.floor-page select{font:inherit}.floor-site-header{background:#f7f3eb;border-bottom:1px solid rgba(20,37,31,.1)}
.floor-editor{width:min(1560px,calc(100% - 32px));margin:0 auto;padding:30px 0 56px}.editor-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.editor-heading h1{font-size:clamp(2rem,4vw,4rem);line-height:.95;letter-spacing:-.055em;margin:5px 0 0}.floor-eyebrow,.panel-top p,.plan-summary>div>p,.template-dialog>p,.small-screen-dialog>p{margin:0;color:var(--fp-accent);font-size:.72rem;font-weight:900;letter-spacing:.13em}.heading-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:16px}.heading-links a,.heading-links button{color:var(--fp-green);font-size:.86rem;font-weight:750;text-decoration:none}.heading-links button{min-height:32px;padding:4px 10px;border:1px solid rgba(29,75,61,.28);border-radius:999px;background:transparent;cursor:pointer}.heading-links button:hover,.heading-links button:focus-visible{background:var(--fp-green);color:white}.project-field{width:min(330px,100%);display:grid;gap:5px}.project-field label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.project-field input{width:100%;border:1px solid var(--fp-line);border-radius:10px;background:#fff;padding:10px 12px;color:var(--fp-ink);font-weight:750}.project-field output{color:#557068;font-size:.72rem;text-align:right}
.editor-toolbar,.editor-settings{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--fp-ink);color:white;border-radius:15px;padding:8px;box-shadow:var(--fp-shadow)}.toolbar-group{display:flex;align-items:center;gap:5px}.editor-toolbar button,.export-menu>summary{min-height:42px;border:0;border-radius:9px;background:transparent;color:inherit;padding:0 12px;font-weight:780;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.editor-toolbar button:hover,.editor-toolbar button:focus-visible,.export-menu>summary:hover,.editor-toolbar button[aria-pressed=true]{background:rgba(255,255,255,.14)}.editor-toolbar button:disabled{opacity:.32;cursor:not-allowed}.zoom-controls{border-inline:1px solid rgba(255,255,255,.15);padding-inline:10px}.zoom-indicator{min-width:72px}.export-menu{position:relative}.export-menu>summary{list-style:none}.export-menu>summary::-webkit-details-marker{display:none}.export-menu>div{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:210px;padding:7px;background:white;border:1px solid var(--fp-line);border-radius:12px;box-shadow:var(--fp-shadow)}.export-menu>div button{width:100%;justify-content:flex-start;color:var(--fp-ink)}.export-menu>div button:hover{background:#f2eee6}.mobile-action{display:none!important}
.editor-settings{margin-top:8px;justify-content:flex-start;background:#fffdf8;color:var(--fp-ink);box-shadow:none;border:1px solid var(--fp-line);padding:7px 10px;overflow:auto}.editor-settings label{display:flex;align-items:center;gap:7px;min-height:34px;padding:0 8px;font-size:.78rem;font-weight:750;white-space:nowrap}.editor-settings input[type=checkbox]{accent-color:var(--fp-accent);width:16px;height:16px}.editor-settings select{border:1px solid var(--fp-line);border-radius:7px;background:white;padding:5px 7px;color:var(--fp-ink)}
.editor-workspace{position:relative;display:grid;grid-template-columns:230px minmax(360px,1fr) 270px;gap:8px;margin-top:8px;min-height:630px}.editor-panel,.canvas-column{border:1px solid var(--fp-line);background:var(--fp-panel);border-radius:14px;overflow:hidden}.editor-panel{padding:15px}.panel-top{display:flex;align-items:start;justify-content:space-between;gap:10px}.panel-top h2{font-size:1rem;margin:3px 0}.panel-help{margin:9px 0 14px;color:var(--fp-muted);font-size:.75rem}.sheet-close{display:none;border:0;background:transparent;font-size:1.7rem;line-height:1;color:var(--fp-ink)}
.library-section{border-top:1px solid var(--fp-line);padding:13px 0}.library-section:first-child{border-top:0;padding-top:0}.library-section h3{font-size:.76rem;margin:0 0 8px;text-transform:uppercase;letter-spacing:.07em}.library-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.library-item{appearance:none;border:1px solid var(--fp-line);border-radius:10px;background:white;color:var(--fp-ink);padding:9px 5px;min-height:72px;display:grid;place-items:center;gap:4px;text-align:center;cursor:grab;font-size:.68rem;font-weight:750}.library-item:hover,.library-item:focus-visible{border-color:var(--fp-accent);box-shadow:0 0 0 2px rgba(251,107,74,.12)}.library-item svg{width:29px;height:29px;stroke:var(--fp-green);fill:none;stroke-width:1.7}
.canvas-column{position:relative;background:#d9d6cf;min-width:0}.canvas-column:focus-within{outline:2px solid rgba(251,107,74,.5);outline-offset:2px}#canvas-wrap{height:590px;width:100%;overflow:hidden;background:#ddd9d1;touch-action:none;cursor:default}#canvas-wrap.pan-active{cursor:grab}#canvas-wrap.pan-active:active{cursor:grabbing}.canvas-status{height:39px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;color:#5f6c66;background:#f7f4ed;font-size:.72rem}.canvas-status b{color:var(--fp-ink)}
.property-empty{min-height:430px;display:grid;place-content:center;text-align:center;color:var(--fp-muted);padding:20px}.property-empty span{font-size:3rem;color:#b9bdb8}.property-empty p{font-size:.81rem;line-height:1.6}.property-panel form{margin-top:15px}.property-panel label{display:grid;gap:5px;color:#52615b;font-size:.7rem;font-weight:780}.property-panel input{min-width:0;width:100%;height:38px;border:1px solid var(--fp-line);border-radius:8px;padding:7px 9px;background:white;color:var(--fp-ink)}.property-panel input[type=color]{padding:3px}.field-full{margin-bottom:9px}.property-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.property-grid label>div{position:relative}.property-grid small{position:absolute;right:7px;top:11px;color:#859089}.property-grid label>div input{padding-right:31px}.property-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:15px}.property-actions button{border:1px solid var(--fp-line);border-radius:8px;background:white;color:var(--fp-ink);padding:9px 5px;font-size:.7rem;font-weight:780}.property-actions .danger{grid-column:1/-1;color:#a43c2c;border-color:#e4b9b0}.property-actions button:hover{background:#f3efe7}
.plan-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:12px;padding:20px 24px;background:var(--fp-green);color:white;border-radius:14px}.plan-summary h2{margin:3px 0;font-size:1.2rem}.plan-summary small{color:#c4d4ce}.plan-summary dl{display:flex;gap:clamp(18px,4vw,62px);margin:0}.plan-summary dl div{display:grid;gap:3px}.plan-summary dt{color:#bfd0ca;font-size:.7rem}.plan-summary dd{font-size:1rem;font-weight:850;margin:0}.floor-disclaimer{max-width:860px;margin:16px auto 0;text-align:center;color:#66736e;font-size:.75rem;line-height:1.55}
dialog{border:0}.template-dialog,.small-screen-dialog{width:min(720px,calc(100% - 28px));border-radius:18px;padding:25px;background:#fffdf8;color:var(--fp-ink);box-shadow:var(--fp-shadow)}dialog::backdrop{background:rgba(13,27,22,.68);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:15px;top:13px;border:0;background:transparent;font-size:1.8rem;color:var(--fp-ink);cursor:pointer}.template-dialog h2,.small-screen-dialog h2{font-size:1.8rem;letter-spacing:-.035em;margin:5px 0 7px}.template-dialog>span,.small-screen-dialog>span{display:block;color:var(--fp-muted);line-height:1.5}.template-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:22px 0 13px}.template-options button{border:1px solid var(--fp-line);border-radius:11px;background:white;color:var(--fp-ink);min-height:115px;padding:12px 7px;display:grid;place-items:center;gap:8px;cursor:pointer}.template-options button:hover{border-color:var(--fp-accent)}.template-options i{display:block;width:45px;height:35px;border:2px solid var(--fp-green);background:linear-gradient(90deg,transparent 48%,var(--fp-green) 49%,var(--fp-green) 52%,transparent 53%),linear-gradient(0deg,transparent 48%,var(--fp-green) 49%,var(--fp-green) 52%,transparent 53%)}.template-dialog small{color:var(--fp-muted)}.small-screen-dialog{text-align:center;max-width:440px}.screen-icon{font-size:3.5rem;color:var(--fp-accent)!important}.small-screen-dialog>div{display:grid;gap:8px;margin-top:20px}.small-screen-dialog a,.small-screen-dialog button{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:9px;font-weight:800;text-decoration:none}.small-screen-dialog a{background:var(--fp-green);color:white}.small-screen-dialog button{border:1px solid var(--fp-line);background:white;color:var(--fp-ink)}
.app-message{position:fixed;z-index:100;left:50%;bottom:20px;transform:translateX(-50%);padding:11px 16px;border-radius:9px;background:var(--fp-ink);color:white;box-shadow:var(--fp-shadow);font-size:.8rem}.sheet-scrim{display:none}
@media(max-width:1050px){.editor-workspace{grid-template-columns:205px minmax(360px,1fr)}.property-panel{position:fixed;z-index:70;right:0;bottom:0;top:auto;width:min(390px,100%);max-height:78dvh;border-radius:18px 18px 0 0;transform:translateY(105%);transition:transform .25s ease;box-shadow:var(--fp-shadow)}.property-panel.sheet-open{transform:none}.mobile-action#open-properties{display:flex!important}.sheet-close{display:block}.plan-summary{align-items:flex-start}.plan-summary dl{display:grid;grid-template-columns:repeat(3,auto)}}
@media(max-width:760px){.floor-editor{width:100%;padding:12px 0 30px}.floor-site-header{position:relative}.editor-heading{padding:0 14px;display:block}.editor-heading h1{font-size:2.25rem}.project-field{margin-top:14px;width:100%}.project-field output{text-align:left}.editor-toolbar{position:sticky;top:4px;z-index:50;border-radius:0;overflow-x:auto;justify-content:flex-start;padding-inline:8px}.toolbar-group{flex:none}.editor-toolbar button,.export-menu>summary{min-width:44px;min-height:44px;padding:0 10px}.editor-toolbar button span,.export-menu>summary span{display:none}.mobile-action{display:flex!important}.zoom-controls{order:2}.editor-settings{border-radius:0;border-inline:0;margin-top:0}.editor-workspace{display:block;min-height:0;margin-top:0}.canvas-column{border-radius:0;border-inline:0}#canvas-wrap{height:calc(100dvh - 265px);min-height:390px}.canvas-status{font-size:.65rem}.library-panel,.property-panel{position:fixed;z-index:70;left:0;right:0;bottom:0;top:auto;width:100%;max-height:78dvh;border-radius:18px 18px 0 0;transform:translateY(105%);transition:transform .25s ease;box-shadow:var(--fp-shadow);overflow:auto}.library-panel.sheet-open,.property-panel.sheet-open{transform:none}.library-grid{grid-template-columns:repeat(4,1fr)}.sheet-scrim{position:fixed;display:none;z-index:60;inset:0;border:0;background:rgba(13,27,22,.55)}body.sheet-active .sheet-scrim{display:block}.plan-summary{border-radius:0;margin-top:0;padding:18px 14px;display:block}.plan-summary dl{margin-top:16px;grid-template-columns:repeat(3,1fr);gap:14px}.floor-disclaimer{padding-inline:16px}.template-options{grid-template-columns:repeat(2,1fr)}.template-options button{min-height:90px}}
@media(max-width:430px){.heading-links{gap:8px 12px}.heading-links a,.heading-links button{font-size:.74rem}.heading-links button{min-height:30px}.editor-toolbar{gap:3px}.editor-toolbar button,.export-menu>summary{padding:0 8px}.library-grid{grid-template-columns:repeat(3,1fr)}.plan-summary dl{grid-template-columns:1fr 1fr}.snap-size span{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.library-panel,.property-panel{transition:none}}
