.config-section{padding:var(--section-padding-y) var(--space-xl);border-bottom:1px solid var(--color-border)}.config-section__title{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 .55rem;font-size:.75rem;font-weight:600}.config-section__body{font-size:var(--font-size-base);color:var(--color-text)}.config-section__placeholder{padding:var(--space-sm) var(--space-md);background:var(--color-bg-panel-section);color:var(--color-text-muted);font-size:var(--font-size-sm);border-radius:6px;margin:0}.config-section--accordion{padding:0}.config-section__trigger{width:100%;min-height:var(--touch-target-min);padding:var(--space-md) var(--space-lg);border:none;border-bottom:1px solid var(--color-border);background:var(--color-bg-panel);color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:center;margin:0;display:flex}.config-section__trigger .config-section__title{margin:0}.config-section__trigger[aria-expanded=true]{background:var(--color-bg-panel-section)}.config-section__chevron{width:.5rem;height:.5rem;margin-left:var(--space-sm);border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);flex-shrink:0;transition:transform .2s;transform:rotate(45deg)}.config-section__trigger[aria-expanded=true] .config-section__chevron{margin-top:.25rem;transform:rotate(-135deg)}.config-section--accordion .config-section__body{padding:var(--space-md) var(--space-lg) var(--space-lg)}@media (width<=767px){.config-section:not(.config-section--accordion){padding:var(--space-md) var(--space-lg)}}.share-preview-card{margin-top:var(--space-md);border-radius:var(--radius-card);border:1px solid var(--color-border);background:var(--color-bg-elevated);max-width:100%;overflow:hidden}.share-preview-card__image-wrap{aspect-ratio:16/9;background:var(--color-bg);justify-content:center;align-items:center;display:flex}.share-preview-card__image{object-fit:cover;width:100%;height:100%;display:block}.share-preview-card__placeholder{padding:var(--space-md);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.share-preview-card__body{padding:var(--space-md)}.share-preview-card__title{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text);font-weight:600}.share-preview-card__details{gap:.35rem;margin:0;display:grid}.share-preview-card__row{justify-content:space-between;gap:var(--space-sm);font-size:var(--font-size-sm);display:flex}.share-preview-card__row dt{color:var(--color-text-muted);margin:0}.share-preview-card__row dd{text-align:right;margin:0;font-weight:500}.export-section{gap:var(--space-md);flex-direction:column;max-width:100%;display:flex}.export-section__group{gap:var(--space-sm);flex-direction:column;display:flex}.export-section__label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.export-section__actions{gap:var(--space-sm);flex-wrap:wrap;max-width:100%;display:flex}.export-section__btn{min-width:min(100%,8rem);min-height:var(--touch-target-min);border-radius:var(--radius-control);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;flex:auto;padding:.5rem .75rem;font-weight:500;transition:background .15s,border-color .15s}.export-section__btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong)}.export-section__btn:disabled{opacity:.55;cursor:not-allowed}.export-section__file-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.export-section__message{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.export-section__message--error{color:#e57373}@media (width<=767px){.export-section__btn{flex:1 1 calc(50% - var(--space-sm))}}.planner-toast{z-index:1000;border:1px solid var(--color-border,#c8c8c2);max-width:min(28rem,100vw - 2rem);color:var(--color-text,#3a3a38);background:#f7f3ecf5;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.4;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #3a3a381f}.planner-toast__message{flex:1;margin:0}.planner-toast__close{color:inherit;cursor:pointer;opacity:.75;background:0 0;border:none;flex-shrink:0;padding:0 .25rem;font-size:1.25rem;line-height:1}.planner-toast__close:hover{opacity:1}.planner-top-bar{align-items:center;gap:var(--space-md);min-height:2.75rem;padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-panel);flex-shrink:0;display:flex}.planner-top-bar__group{align-items:center;gap:var(--space-sm);display:flex}.planner-top-bar__group--grow{flex:1}.planner-top-bar__btn{min-height:var(--touch-target-min);padding:0 var(--space-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;border-radius:6px;font-weight:500}.planner-top-bar__btn:hover{border-color:var(--color-text-muted)}.planner-top-bar__btn:disabled{opacity:.45;cursor:not-allowed}.planner-top-bar__btn:disabled:hover{border-color:var(--color-border)}.planner-top-bar__btn--primary{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-text)}.planner-top-bar__save{align-items:center;gap:var(--space-sm);display:flex}.planner-top-bar__save-status{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;cursor:default}.planner-top-bar__save-status--unsaved{color:var(--color-summary-accent)}.planner-top-bar__save-status--error{color:var(--color-danger,#c0392b)}.planner-top-bar__save-status--pending{font-style:italic}.planner-top-bar__demo-group{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.planner-top-bar__demo-scenarios{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.planner-top-bar__demo-btn{align-items:center;gap:var(--space-xs);min-height:2rem;padding:0 var(--space-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;display:inline-flex}.planner-top-bar__demo-btn:hover:not(:disabled){border-color:var(--color-accent)}.planner-top-bar__demo-btn--run{min-height:2.5rem;padding:0 var(--space-lg);border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-base);font-weight:600}.planner-top-bar__demo-btn--run:hover:not(:disabled){filter:brightness(1.05);border-color:var(--color-accent)}.planner-top-bar__demo-btn--scenario-active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 18%, var(--color-bg-elevated))}.planner-top-bar__demo-btn:disabled{opacity:.6;cursor:not-allowed}.planner-top-bar__demo-icon{font-size:.875rem}.object-panel-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.object-panel-header__info{align-items:flex-start;gap:var(--space-sm);min-width:0;display:flex}.object-panel-header__icon{flex-shrink:0;font-size:1.25rem;line-height:1.4}.object-panel-header__text{min-width:0}.object-panel-header__type{font-size:var(--font-size-lg);color:var(--color-text);letter-spacing:.02em;margin:0;font-weight:600}.object-panel-header__label{margin:var(--space-xs) 0 0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.object-panel-header__back{padding:var(--space-xs) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-panel-section);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;flex-shrink:0}.object-panel-header__back:hover{background:var(--color-bg-app)}.object-inspector__body{min-height:0;padding:var(--panel-padding,1rem);flex:auto;overflow-y:auto}.object-inspector__section-title{margin:0 0 var(--control-gap,.625rem);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-weight:600}.object-inspector__fields{gap:var(--control-gap,.625rem);flex-direction:column;display:flex}.object-inspector__field{gap:var(--space-xs);flex-direction:column;display:flex}.object-inspector__label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.object-inspector__input{min-height:2.5rem;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-elevated);color:var(--color-text)}.object-inspector__hint,.object-inspector__empty{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0;line-height:1.45}.object-inspector__action{min-height:var(--touch-target-min);padding:0 var(--space-md);border:1px solid var(--color-accent);border-radius:var(--radius-card);background:var(--color-accent-subtle);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;align-self:flex-start;font-weight:600}.object-inspector__field-group+.object-inspector__field-group{margin-top:var(--section-gap,.875rem)}.context-panel__header{padding:var(--panel-padding);border-bottom:1px solid var(--color-border);flex-shrink:0}.context-panel__title{align-items:center;gap:var(--space-sm);font-size:var(--font-size-lg);color:var(--color-text);margin:0;font-weight:600;display:flex}.context-panel__title-icon{font-size:1.125rem;line-height:1}.shell-preset-grid{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.shell-preset-tile{min-height:2.75rem;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;font-weight:500;transition:border-color .15s,background .15s;display:flex;position:relative}.shell-preset-tile:hover:not(:disabled){border-color:var(--color-accent)}.shell-preset-tile--active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 14%, var(--color-bg-elevated));box-shadow:inset 0 0 0 1px var(--color-accent)}.shell-preset-tile--active:after{content:"✓";top:var(--space-xs);right:var(--space-xs);color:var(--color-accent);font-size:.65rem;line-height:1;position:absolute}.shell-preset-tile:disabled{opacity:.45;cursor:not-allowed}.shell-preset-tile__label{line-height:1.2}.shell-preset-tile__hint{color:var(--color-text-muted);margin-top:2px;font-size:.7rem;font-weight:400}.shell-preset-tile--with-swatch{align-items:center;gap:var(--space-sm);flex-direction:row}.shell-preset-tile__swatch{border-radius:var(--radius-sm,4px);border:1px solid color-mix(in srgb, var(--color-text) 20%, transparent);flex-shrink:0;width:1.25rem;height:1.25rem}.shell-compact-btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:2rem;padding:0 var(--space-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;border-radius:999px;font-weight:500;display:inline-flex}.shell-compact-btn:hover:not(:disabled){border-color:var(--color-accent)}.shell-compact-btn:disabled{opacity:.5;cursor:not-allowed}.shell-compact-btn--destructive{border-color:color-mix(in srgb, #ef4444 40%, var(--color-border));color:#f87171}.shell-action-chip{align-items:center;gap:var(--space-xs);min-height:2rem;padding:0 var(--space-md);border:1px solid var(--color-border);background:var(--color-bg-panel-section);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;border-radius:999px;display:inline-flex}.shell-action-chip:hover:not(:disabled){border-color:var(--color-accent)}.shell-action-chip--active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 12%, var(--color-bg-panel-section))}.shell-action-chip--checkbox.shell-action-chip--checked{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 18%, var(--color-bg-panel-section))}.shell-action-chip:disabled{opacity:.5;cursor:not-allowed}.shell-action-chip__mark{color:var(--color-text-muted);font-size:.75rem;line-height:1}.shell-action-chip--checked .shell-action-chip__mark{color:var(--color-accent)}.shell-dense-row{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:2.25rem;padding:var(--space-xs) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);display:flex}.shell-dense-row:last-child{border-bottom:none}.shell-dense-row__label{color:var(--color-text-muted);flex-shrink:0}.shell-dense-row__value{color:var(--color-text);text-align:right;font-weight:600}.shell-collapsible-more{border-top:1px solid var(--color-border);margin-top:var(--space-md);padding-top:var(--space-sm)}.shell-collapsible-more__trigger{width:100%;min-height:2rem;padding:var(--space-xs) 0;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.shell-collapsible-more__trigger:hover{color:var(--color-text)}.shell-collapsible-more__chevron{transition:transform .15s}.shell-collapsible-more__chevron--open{transform:rotate(180deg)}.shell-collapsible-more__content{padding:var(--space-sm) 0 var(--space-md)}.shell-panel-hero-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--color-border);background:var(--color-bg-panel);flex-shrink:0}.shell-panel-hero-footer__btn{width:100%;min-height:3rem;padding:0 var(--space-lg);border:1px solid var(--color-accent);border-radius:var(--radius-card,8px);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-base);cursor:pointer;justify-content:center;align-items:center;font-weight:600;display:flex}.shell-panel-hero-footer__btn:hover:not(:disabled){filter:brightness(1.05)}.shell-panel-hero-footer__btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-muted)}.shell-validation-chip{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:999px;font-size:.75rem;font-weight:500;line-height:1.2;display:inline-flex}.shell-validation-chip--info{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-text-muted)}.shell-validation-chip--warning{color:#fbbf24;background:#f59e0b2e}.shell-validation-chip--error{color:#f87171;background:#ef44442e}.shell-segment{gap:var(--space-xs);flex-wrap:wrap;display:flex}.shell-segment__btn{min-width:0;min-height:2.25rem;padding:0 var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;text-align:center;white-space:nowrap;flex:auto;font-weight:500;transition:border-color .15s,background .15s}.shell-segment__btn:hover:not(:disabled){border-color:var(--color-accent)}.shell-segment__btn--active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 14%, var(--color-bg-elevated));box-shadow:inset 0 0 0 1px var(--color-accent)}.shell-segment__btn:disabled{opacity:.45;cursor:not-allowed}.shell-metric-card{min-height:4.25rem;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;display:flex}.shell-metric-card__value{letter-spacing:-.02em;color:var(--color-text);font-size:1.35rem;font-weight:700;line-height:1.1}.shell-metric-card__label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:.7rem;font-weight:500}.tool-panel-option-card{gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-panel-section);flex-direction:column;display:flex}.tool-panel-option-card--disabled{opacity:.55}.tool-panel-option-card--disabled .tool-panel-option-card__toggle{cursor:not-allowed}.tool-panel-option-card__header{gap:var(--space-xs);flex-direction:column;display:flex}.tool-panel-option-card__toggle{align-items:flex-start;gap:var(--space-sm);text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;padding:0;display:flex}.tool-panel-option-card__chevron{width:1rem;color:var(--color-text-muted);flex-shrink:0;margin-top:.1rem;line-height:1}.tool-panel-option-card__heading{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;flex:1;min-width:0;display:flex}.tool-panel-option-card__title{font-size:var(--font-size-base);color:var(--color-text);margin:0;font-weight:600}.tool-panel-option-card__hint{padding-left:calc(1rem + var(--space-sm));font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0;line-height:1.45}.tool-panel-option-card__body{gap:var(--space-sm);flex-direction:column;display:flex}.tool-panel-option-card__footer{gap:var(--space-sm);padding-top:var(--space-xs);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.setup-tile-shell__body{gap:var(--control-gap);flex-direction:column;display:flex}.parking-tool-panel__field{flex-direction:column;gap:.35rem;display:flex}.parking-tool-panel__field-label{color:#94a3b8;font-size:.78rem}.parking-tool-panel__input-row{align-items:center;gap:.35rem;display:flex}.parking-tool-panel__input{flex:1;min-width:0}.parking-tool-panel__unit{color:#64748b;font-size:.78rem}.parking-tool-panel__section{flex-direction:column;gap:.65rem;display:flex}.project-setup-panel{gap:var(--section-gap);flex-direction:column;display:flex}.project-setup-panel__section{gap:var(--control-gap);flex-direction:column;display:flex}.project-setup-panel__section-title{letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:.8125rem;font-weight:700}.project-setup-panel__tiles{gap:var(--control-gap);flex-direction:column;display:flex}.project-setup-panel__reset{align-self:flex-start}.tool-panel{width:clamp(var(--sidebar-width-min), 22%, var(--sidebar-width-max));max-width:var(--sidebar-width-max);min-width:var(--sidebar-width-min);border-left:1px solid var(--color-border);background:var(--color-bg-panel);flex-direction:column;flex:none;min-height:0;display:flex}.tool-panel__header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0}.tool-panel__title{align-items:center;gap:var(--space-sm);font-size:var(--font-size-lg);color:var(--color-text);margin:0;font-weight:600;display:flex}.tool-panel__title-icon{font-size:1.125rem;line-height:1}.tool-panel__body{min-height:0;padding:var(--space-lg);flex:auto;overflow-y:auto}.tool-panel__placeholder{padding:var(--space-xl);border:1px dashed var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-panel-section);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin:0}.context-panel{width:clamp(var(--sidebar-width-min), 22%, var(--sidebar-width-max));max-width:var(--sidebar-width-max);min-width:var(--sidebar-width-min);border-left:1px solid var(--color-border);background:var(--color-bg-panel);flex-direction:column;flex:none;min-height:0;display:flex}.context-panel__body{min-height:0;padding:var(--panel-padding);flex:auto;overflow-y:auto}.tool-panel-content{gap:var(--section-gap);flex-direction:column;display:flex}.planner-status-bar{justify-content:space-between;align-items:center;gap:var(--section-gap);min-height:2.75rem;padding:var(--space-sm) var(--panel-padding);border-top:1px solid var(--color-border);background:var(--color-bg-panel-section);color:var(--color-text-muted);font-size:var(--font-size-sm);flex-shrink:0;display:flex}.planner-status-bar__context{align-items:center;gap:var(--control-gap);flex:auto;min-width:0;display:flex;overflow:hidden}.planner-status-bar__primary{align-items:center;gap:var(--control-gap);white-space:nowrap;text-overflow:ellipsis;min-width:0;display:flex;overflow:hidden}.planner-status-bar__icon{flex-shrink:0;font-size:14px;line-height:1}.planner-status-bar__context-title{color:var(--color-text-primary);text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.planner-status-bar__context-title--muted{color:var(--color-text-secondary);font-weight:500}.planner-status-bar__context-hint{color:var(--color-text-secondary);text-overflow:ellipsis;font-size:12px;overflow:hidden}.planner-status-bar__hints{align-items:center;gap:var(--control-gap);flex-shrink:0;display:flex}.planner-status-bar__hint-chip{letter-spacing:.02em;color:var(--color-text-secondary);background:var(--color-bg-subtle);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500}.planner-status-bar__problems{flex:none;position:relative}.planner-status-bar__problems--has-issues{cursor:help}.planner-status-bar__problems-tooltip{z-index:5;pointer-events:none;opacity:0;visibility:hidden;background:#18181bf5;border:1px solid #f8717159;border-radius:8px;min-width:12rem;max-width:18rem;padding:.55rem .65rem;transition:opacity .15s,visibility .15s;position:absolute;bottom:calc(100% + .35rem);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000059}.planner-status-bar__problems--has-issues:hover .planner-status-bar__problems-tooltip,.planner-status-bar__problems--has-issues:focus-within .planner-status-bar__problems-tooltip{opacity:1;visibility:visible}.planner-status-bar__problems-tooltip-title{color:#fecaca;margin:0 0 .35rem;font-size:.75rem;font-weight:700}.planner-status-bar__problems-tooltip-list{margin:0;padding-left:1rem}.planner-status-bar__problems-tooltip-item{color:#fca5a5;font-size:.75rem;line-height:1.35}.planner-status-bar__paving-reset{min-height:2rem;padding:0 var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm,4px);background:var(--color-bg-elevated);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;flex:none;font-size:12px;font-weight:500}.planner-status-bar__paving-reset:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-text-primary)}.planner-status-bar__paving-reset:disabled{opacity:.45;cursor:not-allowed}.planner-status-bar__snap{align-items:center;gap:var(--control-gap);flex:none;display:flex}.planner-status-bar__snap-label{color:var(--color-text-secondary);white-space:nowrap;font-size:12px}.planner-status-bar__snap .shell-segment__btn{min-width:2.75rem;min-height:2rem}.planner-status-bar__item{white-space:nowrap}.planner-status-bar__item strong{color:var(--color-text);font-weight:600}.planner-status-bar__object{text-overflow:ellipsis;min-width:0;overflow:hidden}.planner-status-bar__badge{color:#e57373;background:#e5737333;border-radius:999px;justify-content:center;align-items:center;min-width:1.25rem;padding:0 .35rem;display:inline-flex}@media (width<=767px){.planner-status-bar{flex-wrap:wrap;gap:.5rem}.planner-status-bar__context{flex-wrap:wrap;width:100%}.planner-status-bar__snap-label{display:none}.planner-status-bar__snap .shell-segment__btn{min-width:2.75rem;min-height:2.75rem}}.config-field{gap:var(--space-sm);flex-direction:column;display:flex}.config-field+.config-field{margin-top:.875rem}.config-field__label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.config-field__hint{color:var(--color-text-muted);opacity:.85;margin:0;font-size:.75rem}.config-control{width:100%;min-height:var(--touch-target-min);border:1px solid var(--color-border);background:var(--color-bg-panel-section);color:var(--color-text);border-radius:8px;padding:.625rem .875rem;font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s}.config-control:hover:not(:disabled){border-color:var(--color-border-strong)}.config-control:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-muted);outline:none}.config-control:disabled{opacity:.5;cursor:not-allowed}.config-control--number{padding-right:.5rem}.config-number{align-items:center;gap:var(--space-sm);display:flex}.config-number .config-control{flex:1}.config-number__unit{font-size:var(--font-size-base);color:var(--color-text-muted);flex-shrink:0;font-weight:500}.config-dimensions{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}@media (width<=767px){.config-dimensions{gap:var(--space-sm);grid-template-columns:1fr}}.color-preview{padding:var(--space-sm) var(--space-md);background:var(--color-bg-app);font-size:var(--font-size-sm);color:var(--color-text-muted);border-radius:6px;align-items:center;gap:.625rem;margin-top:.625rem;display:flex}.color-preview__swatch{border:1px solid var(--color-border);border-radius:4px;flex-shrink:0;width:1.25rem;height:1.25rem}.border-profile-fields{flex-direction:column;gap:.75rem;display:flex}.border-profile-fields__toggle{cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.border-profile-fields__grid{flex-direction:column;gap:.65rem;display:flex}@media (width>=420px){.border-profile-fields__grid{grid-template-columns:1fr 1fr;gap:.65rem .75rem;display:grid}}.border-profile-fields__color{align-items:center;gap:.5rem;display:flex}.border-profile-fields__color input[type=color]{border:1px solid var(--config-border,#3d4450);cursor:pointer;border-radius:4px;width:2.5rem;height:2rem;padding:0}.border-profile-fields__color input[type=text]{flex:1;min-width:0}.borders-workspace{flex-direction:column;gap:0;display:flex}.borders-workspace-header{padding:0 0 .75rem}.borders-workspace-header--context-only{padding:0 0 .35rem}.borders-workspace-header--context-only .borders-workspace-header__surface-name{margin:0}.borders-workspace-header__title{margin:0 0 .35rem;font-size:.9375rem;font-weight:600}.borders-workspace-header__surface-name{color:var(--config-muted,#5c6470);margin:0 0 .35rem;font-size:.8125rem}.borders-workspace-header__surface-name strong{color:var(--color-text,inherit);font-weight:600}.borders-workspace-header__lead{color:var(--config-muted,#5c6470);margin:0 0 .5rem;font-size:.8125rem;line-height:1.45}.borders-workspace-empty{background:var(--color-bg-panel-section,#f8f9fa);border-radius:8px;margin:.25rem 0 .75rem;padding:.75rem .85rem}.borders-workspace-empty__title{margin:0 0 .4rem;font-size:.875rem;font-weight:600}.borders-workspace-empty__body{color:var(--config-muted,#5c6470);margin:0;font-size:.8125rem;line-height:1.5}.borders-workspace-non-paving-hint,.borders-workspace-details-teaser,.borders-workspace-disabled-teaser{background:var(--color-bg-panel-section,#f8f9fa);border-radius:6px;margin:0 0 .75rem;padding:.5rem .65rem;font-size:.8125rem;line-height:1.45}.borders-workspace-non-paving-hint{background:#fff8e6}.borders-workspace-enable{cursor:pointer;align-items:flex-start;gap:.5rem;margin:0 0 .5rem;padding:.35rem 0;font-size:.875rem;font-weight:600;display:flex}.borders-workspace-enable__input{margin-top:.15rem}.borders-workspace-type{flex-wrap:wrap;gap:.35rem;margin-bottom:.25rem;display:flex}.borders-workspace-type__option{border:1px solid var(--color-border,#e2e5ea);background:var(--color-bg-panel,#fff);cursor:pointer;text-align:center;border-radius:6px;flex:auto;min-width:5.5rem;padding:.45rem .65rem;font-size:.8125rem;font-weight:500}.borders-workspace-type__option--active{border-color:var(--color-text,#1a1a1a);background:var(--color-bg-panel-section,#f4f6f8);font-weight:600}.borders-workspace-type__option--disabled{opacity:.55;cursor:not-allowed}.borders-workspace-type__soon{color:var(--color-text-muted,#5c6470);margin-top:.15rem;font-size:.6875rem;font-weight:400;display:block}.borders-workspace-appearance-group{border-top:1px solid var(--color-border,#e2e5ea);margin-top:.25rem;padding-top:.75rem}.borders-workspace-appearance-group__title{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted,#5c6470);margin:0 0 .65rem;font-size:.6875rem;font-weight:600}.borders-workspace-appearance-group__steps{flex-direction:column;gap:.5rem;display:flex}.borders-workspace-advanced{border-top:1px solid var(--color-border,#e2e5ea);margin:.75rem 0 .5rem}.borders-workspace-advanced__summary{color:var(--color-text-muted,#5c6470);cursor:pointer;padding:.65rem 0;font-size:.8125rem;font-weight:600;list-style:none}.borders-workspace-advanced__summary::-webkit-details-marker{display:none}.borders-workspace-advanced__body{padding:0 0 .75rem}.borders-workspace-step{margin-bottom:.5rem}.borders-workspace-step__header{align-items:flex-start;gap:.65rem;margin-bottom:.35rem;display:flex}.borders-workspace-step__index{background:var(--color-bg-panel-section,#eef0f3);width:1.5rem;height:1.5rem;color:var(--color-text-muted,#5c6470);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;line-height:1;display:flex}.borders-workspace-step__titles{flex:1;min-width:0}.borders-workspace-step__title{margin:0 0 .2rem;font-size:.875rem;font-weight:600;line-height:1.3}.borders-workspace-step__mobile-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted,#5c6470);margin:0 0 .2rem;font-size:.6875rem;font-weight:600;display:block}.borders-workspace-step__lead{color:var(--config-muted,#5c6470);margin:0;font-size:.8125rem;line-height:1.45}.borders-workspace-step__hint{margin:.35rem 0 0;padding:0 0 0 2.15rem;font-size:.8125rem;line-height:1.45}.borders-workspace-step--emphasis{background:var(--color-bg-panel-section,#f4f6f8);border:1px solid var(--color-border,#e2e5ea);border-radius:8px;margin-bottom:.75rem;padding:.85rem .75rem}.borders-workspace-step--emphasis .borders-workspace-step__index{background:var(--color-bg-panel,#fff);width:1.75rem;height:1.75rem;color:var(--color-text,inherit);font-size:.8125rem}.borders-workspace-step--emphasis .borders-workspace-step__title{font-size:1rem}.borders-workspace-step--compact .borders-workspace-step__title{font-size:.8125rem}.borders-workspace-step--compact .borders-workspace-step__index{width:1.35rem;height:1.35rem;font-size:.6875rem}@media (width>=768px){.borders-workspace-step__slot .config-section{padding-top:0;padding-left:2.15rem;padding-right:var(--space-xl,1rem);border-bottom:none}.borders-workspace-step--emphasis .borders-workspace-step__slot .config-section{padding-left:0;padding-right:0}.borders-workspace-step__slot .config-section__title{display:none}}@media (width<=767px){.borders-workspace-step__hint{padding-left:0}.borders-workspace-step--emphasis{padding:.65rem .5rem}}.paving-paint-workspace{border-top:1px solid var(--shell-border,#e2e8f0);flex-direction:column;gap:12px;padding:12px 10px;display:flex}.paving-paint-workspace__title{letter-spacing:.04em;text-transform:uppercase;color:var(--shell-muted,#64748b);margin:0;font-size:.75rem;font-weight:600}.paving-paint-tool-palette__tools{flex-wrap:wrap;gap:6px;display:flex}.paving-paint-tool-palette__tool{border:1px solid var(--shell-border,#cbd5e1);cursor:pointer;background:#fff;border-radius:6px;min-width:2.5rem;padding:6px 8px;font-size:.75rem}.paving-paint-tool-palette__tool--active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.paving-paint-material-palette__grid{flex-direction:column;gap:8px;display:flex}.paving-paint-material-palette__colors{flex-wrap:wrap;gap:6px;display:flex}.paving-paint-material-palette__color{cursor:pointer;border:2px solid #fff;border-radius:4px;width:1.75rem;height:1.75rem;box-shadow:0 0 0 1px #cbd5e1}.paving-paint-material-palette__color--active{box-shadow:0 0 0 2px #2563eb}.paving-paint-material-palette__modes{flex-direction:column;gap:6px;display:flex}.paving-paint-material-palette__mode{text-align:center;justify-content:center;width:100%;padding:8px 6px;font-size:.68rem;line-height:1.25}.paving-paint-material-palette__mode--active{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.paving-tool-tiles{gap:var(--space-md);flex-direction:column;display:flex}.paving-tool-tiles__zone-bar{gap:var(--space-xs);flex-direction:column;display:flex}.paving-tool-tiles__zone-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:600}.paving-tool-tiles__grid{gap:var(--space-md);flex-direction:column;display:flex}.paving-tool-tiles__color-grid{gap:var(--space-sm);flex-direction:column;display:flex}.paving-tool-tiles__joints{gap:var(--space-xs);flex-wrap:wrap;display:flex}.paving-tool-tiles__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.paving-tool-tiles__products{gap:var(--space-sm);flex-direction:column;display:flex}.paving-tool-tiles__products .shell-preset-tile{min-height:3.25rem;font-size:var(--font-size-base);font-weight:600}.paving-tool-tiles__sub-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.paving-tool-tiles__decoration-params{gap:var(--space-sm);flex-direction:column;display:flex}.paving-tool-tiles__field{gap:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;display:flex}.paving-tool-tiles__field input{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border,#d1d5db);border-radius:var(--radius-sm,4px);font-size:var(--font-size-sm)}.paving-tool-tiles__decoration-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.paving-tool-tiles__decoration-item{text-align:left;width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border,#d1d5db);border-radius:var(--radius-sm,4px);cursor:pointer;font-size:var(--font-size-sm);background:0 0}.paving-tool-tiles__decoration-item--active{border-color:var(--color-primary,#2563eb);background:var(--color-primary-muted,#eff6ff)}.zones-tool-panel__section{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.zones-tool-panel__section:first-child{margin-top:0}.zones-tool-panel__section-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.zones-tool-panel__actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.zones-tool-panel__auto{gap:var(--space-sm);flex-direction:column;display:flex}.zones-tool-panel__auto .shell-action-chip{min-height:2.75rem;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-base);justify-content:flex-start;font-weight:600}.paving-scene-tool-palette{gap:var(--space-sm);flex-direction:column;display:flex}.paving-scene-tool-palette__section{margin:0}.paving-scene-tool-palette__label{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.paving-scene-tool-palette__hint{margin:var(--space-xs) 0 0;color:var(--color-text-muted);font-size:.7rem;line-height:1.3}.planner-left-workspace{gap:var(--section-gap);width:clamp(200px,16rem,280px);min-height:0;padding:var(--panel-padding);border-right:1px solid var(--color-border);background:var(--color-bg-panel);flex-direction:column;flex:none;display:flex;overflow-y:auto}.planner-left-workspace__tools,.planner-left-workspace__materials,.planner-left-workspace__borders{gap:var(--control-gap);flex-direction:column;flex-shrink:0;display:flex}.planner-left-workspace__section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:.75rem;font-weight:600}.planner-left-workspace__region-draw{flex-shrink:0}.planner-left-workspace__region-draw .paving-drawing-toolbox{max-width:none;box-shadow:none;background:0 0;border:none;padding:0;position:static;transform:none}.planner-left-workspace .paving-paint-workspace__title{margin:0 0 var(--space-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:600}.tool-rail{border-right:1px solid var(--color-border);background:var(--color-bg-panel);flex:0 0 52px;width:52px;min-height:0}.tool-rail__list{gap:var(--control-gap);padding:var(--space-sm) var(--space-xs);flex-direction:column;margin:0;list-style:none;display:flex}.tool-rail__item{justify-content:center;display:flex}.tool-rail__btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;transition:background .15s,border-color .15s;display:flex}.tool-rail__btn:hover{background:var(--color-bg-elevated)}.tool-rail__btn--active{border-color:var(--color-accent);background:var(--color-accent-subtle)}.tool-rail__icon{font-size:1.125rem;line-height:1}.scene-view-controls{z-index:10;justify-content:center;gap:var(--space-xs);max-width:calc(100% - 1.5rem);padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border,#c8c8c2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f3eceb;border-radius:8px;flex-wrap:wrap;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.scene-view-controls__btn{min-height:var(--touch-target-min);min-width:var(--touch-target-min);color:var(--color-text-muted,#6e6e6a);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:6px;padding:.5rem .75rem;font-size:.75rem;font-weight:500}.scene-view-controls__btn:hover{background:var(--color-bg-hover,#e8e4dc);color:var(--color-text,#3a3a38)}.scene-view-controls__btn--active{background:var(--color-accent-subtle,#6b6b661f);border-color:var(--color-accent-muted,#6b6b6640);color:var(--color-text,#3a3a38)}.scene-view-controls__btn--reset{border-left:1px solid var(--color-border,#c8c8c2);margin-left:.15rem;padding-left:.85rem}@media (width<=767px){.scene-view-controls{bottom:max(.5rem, env(safe-area-inset-bottom,0px));padding:var(--space-xs);gap:.2rem}.scene-view-controls__btn{min-width:2.5rem;min-height:2.5rem;padding:.45rem .55rem;font-size:.6875rem}.scene-view-controls__btn--reset{padding-left:.6rem;font-size:.625rem}}.planner-material-summary-bar{justify-content:space-between;align-items:flex-start;gap:var(--space-md) var(--section-gap);flex-wrap:wrap;flex:auto;min-width:0;display:flex}.planner-material-summary-bar__usage{flex:12rem;min-width:0}.planner-material-summary-bar__usage-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.planner-material-summary-bar__usage-row{font-size:var(--font-size-sm);align-items:baseline;gap:.35rem;display:flex}.planner-material-summary-bar__usage-label{color:var(--color-text-muted);flex-shrink:0}.planner-material-summary-bar__usage-dots{border-bottom:1px dotted var(--color-border);flex:auto;min-width:.5rem;margin-bottom:.2em}.planner-material-summary-bar__usage-value{color:var(--color-text);flex-shrink:0;font-weight:600}.planner-material-summary-bar__cost{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;flex-shrink:0;display:flex}.planner-material-summary-bar__total{color:var(--color-text);white-space:nowrap;margin:0;font-size:1.125rem;font-weight:700}.planner-material-summary-bar__metrics{gap:var(--space-sm);flex-wrap:wrap;display:flex}.planner-material-summary-bar__status{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}@media (width<=767px){.planner-material-summary-bar{flex-direction:column;align-items:stretch}}.planner-bottom-action-bar{justify-content:space-between;align-items:center;gap:var(--section-gap);padding:var(--panel-padding);border-top:1px solid var(--color-border);background:var(--color-bg-panel);flex-wrap:wrap;flex-shrink:0;display:flex}.planner-bottom-action-bar__modes{flex:auto;min-width:0}.planner-bottom-action-bar__mode{min-height:var(--touch-target-min);padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-elevated);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;font-weight:500}.planner-bottom-action-bar__mode--active{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-text);font-weight:600}.planner-bottom-action-bar__cancel{min-height:var(--touch-target-min);padding:0 var(--space-md);border:1px solid var(--color-danger);border-radius:var(--radius-card);color:var(--color-danger);font-size:var(--font-size-sm);cursor:pointer;background:#b54a4a14}.planner-bottom-action-bar__context{flex:auto;min-width:0}.planner-bottom-action-bar__view{flex-shrink:0}.planner-bottom-action-bar .scene-view-controls{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;max-width:none;padding:0;position:static;transform:none}.planner-bottom-action-bar .active-tool-banner{max-width:none;box-shadow:none;background:0 0;border:none;margin:0;padding:0;position:static;transform:none}@media (width<=767px){.planner-bottom-action-bar{flex-direction:column;align-items:stretch}.planner-bottom-action-bar__view .scene-view-controls{justify-content:center}}.space-graph-inspector{background:#60a5fa14;border-radius:.55rem;gap:.35rem;padding:.65rem;display:grid;box-shadow:inset 0 0 0 1px #60a5fa33}.space-graph-inspector__title{color:var(--plot-text-muted,#8b949e);margin:0;font-size:.75rem;font-weight:700}.space-graph-inspector__list{color:var(--color-text,#e8eaed);gap:.2rem;margin:0;padding-left:1.1rem;font-size:.8125rem;display:grid}.planner-viewport{touch-action:none;overscroll-behavior:none;border:1px solid var(--color-border);border-radius:var(--radius-card);background:linear-gradient(165deg,#e2e6ec 0%,#d0d6de 45%,#c8ced8 100%);width:100%;height:100%;position:relative;overflow:hidden}.planner-viewport canvas{touch-action:none;display:block;width:100%!important;height:100%!important}.planner-viewport--draw-active canvas{cursor:crosshair}.planner-viewport--draw-subtract canvas{cursor:not-allowed}.planner-viewport--draw-polygon canvas{cursor:cell}.planner-viewport--place-active canvas{cursor:copy}.planner-viewport--paint-brush canvas{cursor:crosshair}.planner-viewport--paint-eraser canvas{cursor:cell}.planner-compact-shell{background:var(--color-bg-app);flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.planner-compact-shell__workspace{gap:var(--shell-gap);min-height:0;padding:var(--shell-gap);flex:auto;display:flex;overflow:hidden}.planner-compact-shell__planner-window{min-width:0;min-height:0;padding:var(--planner-window-padding);background:var(--color-bg-app);border-radius:var(--radius-card);flex:auto;position:relative}@media (width<=767px){.planner-compact-shell__workspace{padding:var(--space-sm);flex-direction:column}.planner-compact-shell__planner-window{width:100%;height:clamp(var(--planner-mobile-height-min), var(--planner-mobile-height), var(--planner-mobile-height-max));max-height:var(--planner-mobile-height-max);padding:var(--space-sm);flex:none}}.shell-stack{gap:var(--section-gap,.875rem);flex-direction:column;display:flex}.shell-control-row{align-items:center;gap:var(--control-gap,.625rem);flex-wrap:wrap;display:flex}.shell-panel-section{padding:var(--panel-padding,1rem);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg-elevated)}.object-pick-debug{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px dashed var(--color-border)}.object-pick-debug__label{margin:0 0 var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}.object-pick-debug__actions{gap:var(--space-sm);flex-direction:column;display:flex}.object-pick-debug__btn{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-panel-section);color:var(--color-text);font-size:var(--font-size-sm);text-align:left;cursor:pointer}.object-pick-debug__btn:hover{background:var(--color-bg-app)}.object-pick-debug__btn--secondary{color:var(--color-text-muted)}.building-tool-panel__confirmed{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.building-tool-panel__ref-chips{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.building-tool-panel__section{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.building-tool-panel__field{gap:var(--space-xs);flex-direction:column;display:flex}.building-tool-panel__field-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.building-tool-panel__input-row{align-items:center;gap:var(--space-sm);display:flex}.building-tool-panel__input{min-width:0;min-height:2.5rem;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-base);flex:auto;font-weight:600}.building-tool-panel__input:focus{border-color:var(--color-accent);outline:none}.building-tool-panel__unit{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.building-tool-panel__rotation-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.building-tool-panel__actions{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.building-tool-panel__move-hint{margin:var(--space-xs) 0 0;color:var(--color-text-muted);font-size:.75rem}.entries-tool-panel__teren-bound{gap:var(--space-sm);flex-direction:column;display:flex}.entries-tool-panel__teren-bound-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0;line-height:1.45}.entries-tool-panel__teren-bound-note{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.entries-tool-panel__confirmed{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.entries-tool-panel__section{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.entries-tool-panel__section-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.entries-tool-panel__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.entries-tool-panel__field{gap:var(--space-xs);flex-direction:column;display:flex}.entries-tool-panel__field-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.entries-tool-panel__input-row{align-items:center;gap:var(--space-sm);display:flex}.entries-tool-panel__input{min-width:0;min-height:2.5rem;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-base);flex:auto;font-weight:600}.entries-tool-panel__input:focus{border-color:var(--color-accent);outline:none}.entries-tool-panel__input:disabled{opacity:.45}.entries-tool-panel__unit{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.entries-tool-panel__actions{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.entries-tool-panel__move-hint{margin:var(--space-xs) 0 0;color:var(--color-text-muted);font-size:.75rem}.entries-tool-panel__plot-preview-wrap{align-items:center;gap:var(--space-xs);margin-top:var(--space-sm);flex-direction:column;display:flex}.entries-tool-panel__plot-preview{border:2px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-elevated) 80%, transparent);border-radius:4px;width:5.5rem;height:4.5rem;position:relative}.entries-tool-panel__plot-preview-edge{background:var(--color-accent);opacity:.85;position:absolute}.entries-tool-panel__plot-preview-edge--north{height:3px;top:-2px;left:-2px;right:-2px}.entries-tool-panel__plot-preview-edge--south{height:3px;bottom:-2px;left:-2px;right:-2px}.entries-tool-panel__plot-preview-edge--west{width:3px;top:-2px;bottom:-2px;left:-2px}.entries-tool-panel__plot-preview-edge--east{width:3px;top:-2px;bottom:-2px;right:-2px}.entries-tool-panel__plot-preview-label{letter-spacing:.04em;color:var(--color-accent);text-transform:uppercase;font-size:.65rem;font-weight:600}.entries-tool-panel__flow-step{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.entries-tool-panel__flow-step-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.entries-tool-panel__flow-step-order{background:color-mix(in srgb, var(--color-accent) 15%, transparent);min-width:1.5rem;height:1.5rem;color:var(--color-accent);border-radius:999px;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.entries-tool-panel__flow-step-title{font-size:var(--font-size-base);flex:auto;margin:0;font-weight:600}.entries-tool-panel__flow-step-body{gap:var(--space-xs);flex-direction:column;display:flex}.entries-tool-panel__section--nested{margin-top:var(--space-sm)}.entries-tool-panel__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.entries-tool-panel__house-list{gap:var(--space-sm);margin:0 0 var(--space-md);flex-direction:column;padding:0;list-style:none;display:flex}.entries-tool-panel__house-list-item{gap:var(--space-sm);flex-direction:column;display:flex}.entries-tool-panel__field-row{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.terrain-tool-panel__section{gap:var(--space-sm);flex-direction:column;display:flex}.terrain-tool-panel__section+.terrain-tool-panel__section{margin-top:var(--space-md)}.terrain-tool-panel__field{gap:var(--space-xs);flex-direction:column;display:flex}.terrain-tool-panel__field-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.terrain-tool-panel__input-row{align-items:center;gap:var(--space-sm);display:flex}.terrain-tool-panel__input{min-width:0;min-height:2.5rem;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-base);flex:auto;font-weight:600}.terrain-tool-panel__input:focus{border-color:var(--color-accent);outline:none}.terrain-tool-panel__unit{font-size:var(--font-size-sm);color:var(--color-text-muted);flex-shrink:0}.terrain-tool-panel__area-chip{min-height:2rem;padding:0 var(--space-md);border:1px solid var(--color-border);background:var(--color-bg-panel-section);font-size:var(--font-size-base);color:var(--color-text);border-radius:999px;align-self:flex-start;align-items:center;font-weight:600;display:inline-flex}.terrain-tool-panel__confirmed{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.terrain-tool-panel__snap-row{align-items:center;display:flex}.terrain-tool-panel__reset{margin-top:var(--space-md,.75rem)}.terrain-tool-panel__tiles{gap:var(--space-md);flex-direction:column;display:flex}.terrain-tool-panel__select{width:100%;min-height:2.5rem;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card,8px);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-base)}.terrain-tool-panel__select:focus{border-color:var(--color-accent);outline:none}.terrain-tool-panel__edge-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.terrain-tool-panel__chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.analysis-tool-panel__message{margin:0 0 var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-muted)}.analysis-tool-panel__message--error{color:var(--color-danger,#dc2626)}.analysis-tool-panel__metrics{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.analysis-tool-panel__section{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.analysis-tool-panel__section-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.analysis-tool-panel__materials{gap:var(--space-xs);flex-direction:column;display:flex}.analysis-tool-panel__material-row{align-items:baseline;gap:var(--space-xs);min-height:1.75rem;font-size:var(--font-size-sm);display:flex}.analysis-tool-panel__material-label{color:var(--color-text);flex-shrink:0;font-weight:500}.analysis-tool-panel__material-dots{border-bottom:1px dotted color-mix(in srgb, var(--color-text-muted) 45%, transparent);flex:1;min-width:1rem;transform:translateY(-.15rem)}.analysis-tool-panel__material-value{color:var(--color-text);flex-shrink:0;font-weight:600}.analysis-tool-panel__flow,.analysis-tool-panel__export{gap:var(--space-sm);flex-wrap:wrap;display:flex}.borders-tool-panel{gap:var(--space-sm);flex-direction:column;display:flex}.smart-region-width-picker{border:none;min-width:0;margin:0;padding:0}.smart-region-width-picker__label{color:var(--plot-text-muted,#8b949e);margin:0 0 .5rem;padding:0;font-size:.8125rem;font-weight:600}.smart-region-width-picker__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}.smart-region-width-picker__chip{border:1px solid var(--plot-card-border,#2a3139);min-height:44px;color:var(--color-text,#e8eaed);font:inherit;cursor:pointer;background:#ffffff08;border-radius:10px;padding:.45rem .35rem;font-size:.8125rem;font-weight:600}.smart-region-width-picker__chip--selected{border-color:var(--color-accent,#1a5f4a);color:#6ee7b7;background:#1a5f4a2e}.smart-region-width-picker__chip:disabled{opacity:.55;cursor:not-allowed}@media (width>=768px){.smart-region-width-picker__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.decorative-pattern-customize{gap:1rem;display:grid}.decorative-pattern-customize__swatch-row{align-items:center;gap:.5rem;display:flex}.decorative-pattern-customize__swatch{border:1px solid #fff3;border-radius:6px;width:28px;height:28px}.decorative-pattern-customize__label,.decorative-pattern-customize__legend{color:var(--plot-text-muted,#8b949e);font-size:.8125rem;font-weight:600}.decorative-pattern-customize__fieldset{border:none;margin:0;padding:0}.decorative-pattern-customize__chips{flex-wrap:wrap;gap:.35rem;display:flex}.decorative-pattern-customize__chip{min-height:32px;color:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:999px;padding:.25rem .55rem;font-size:.8125rem}.decorative-pattern-customize__chip--active{background:#3b82f62e;border-color:#3b82f68c}.decorative-pattern-customize__text-input,.decorative-pattern-customize__number-input,.decorative-pattern-customize__color-input{gap:.35rem;font-size:.8125rem;display:grid}.decorative-pattern-customize__text-input input,.decorative-pattern-customize__number-input input{width:100%;min-height:36px;color:inherit;background:#0003;border:1px solid #ffffff1f;border-radius:8px;padding:.35rem .5rem}.decorative-pattern-customize__advanced summary{cursor:pointer;font-size:.875rem;font-weight:600}.decorative-pattern-customize__advanced-body{gap:1rem;margin-top:.75rem;display:grid}.decorative-pattern-customize__offset-row{flex-wrap:wrap;gap:.35rem;display:flex}.decorative-pattern-customize__offset-row button{min-height:32px;color:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;padding:.25rem .55rem}.decorative-pattern-customize__offset input[type=range]{width:100%}.decorative-pattern-customize__offset input[type=number]{width:5rem;min-height:32px}.decorative-pattern-catalog{gap:.75rem;max-height:min(420px,55vh);display:grid;overflow:auto}.decorative-pattern-catalog__tile{width:100%;color:inherit;text-align:left;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;grid-template-columns:72px 1fr;align-items:start;gap:.75rem;padding:.75rem;display:grid}.decorative-pattern-catalog__tile:hover{background:#3b82f614;border-color:#3b82f673}.decorative-pattern-catalog__thumb{background:linear-gradient(135deg,#3d4449 0%,#6b7280 100%);border:1px solid #ffffff1a;border-radius:8px;width:72px;height:72px}.decorative-pattern-catalog__thumb--frame{background:linear-gradient(135deg,#c8cdd2 0%,#94a3b8 100%)}.decorative-pattern-catalog__thumb--checkerboard{background-color:#c8cdd2;background-image:linear-gradient(45deg,#3d4449 25%,#0000 25%),linear-gradient(-45deg,#3d4449 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#3d4449 75%),linear-gradient(-45deg,#0000 75%,#3d4449 75%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:16px 16px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}.decorative-pattern-catalog__title-row{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.decorative-pattern-catalog__name{font-size:.9375rem;font-weight:700}.decorative-pattern-catalog__badge{text-transform:uppercase;letter-spacing:.02em;color:#93c5fd;background:#3b82f626;border:1px solid #3b82f673;border-radius:999px;align-items:center;min-height:20px;padding:0 .4rem;font-size:.6875rem;font-weight:700;display:inline-flex}.decorative-pattern-catalog__description{color:var(--plot-text-muted,#8b949e);margin:.35rem 0 0;font-size:.8125rem;line-height:1.4}.smart-region-dialog__backdrop{z-index:1100;background:#0f172a73;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.smart-region-dialog{width:100%;max-height:min(85vh,32rem);padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));background:var(--plot-card-bg,#1c2128);border:1px solid var(--plot-card-border,#2a3139);border-radius:16px 16px 0 0;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 -8px 32px #00000040}.smart-region-dialog__title{color:var(--color-text,#e8eaed);flex-shrink:0;margin:0 0 .75rem;font-size:1rem;font-weight:600}.smart-region-dialog__warning{color:#fbbf24;background:#f59e0b1a;border:1px solid #f59e0b59;border-radius:8px;flex-shrink:0;margin:0 0 .75rem;padding:.55rem .65rem;font-size:.8125rem;line-height:1.45}.smart-region-dialog__warning--error{color:#fca5a5;background:#ef44441a;border-color:#ef444459}.smart-region-dialog__body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.smart-region-dialog__actions{border-top:1px solid var(--plot-card-border,#2a3139);flex-shrink:0;justify-content:flex-end;gap:.5rem;margin-top:.85rem;padding-top:.75rem;display:flex}.smart-region-dialog__button{min-height:44px;font:inherit;cursor:pointer;border-radius:8px;padding:.5rem .85rem}.smart-region-dialog__button--cancel{border:1px solid var(--plot-card-border,#2a3139);color:var(--color-text,#e8eaed);background:0 0}.smart-region-dialog__button--apply{border:1px solid var(--color-accent,#1a5f4a);background:var(--color-accent,#1a5f4a);color:#fff;font-weight:600}.smart-region-dialog__button--apply:disabled{opacity:.5;cursor:not-allowed}@media (width>=768px){.smart-region-dialog__backdrop{align-items:center;padding:1rem}.smart-region-dialog{border-radius:12px;width:min(100%,24rem);max-height:min(70vh,28rem);padding:1.25rem}}.add-decorative-pattern-dialog{gap:1rem;display:grid}.add-decorative-pattern-dialog__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.add-decorative-pattern-dialog__selected-name{margin:0;font-size:.9375rem;font-weight:700}.add-decorative-pattern-dialog__change-template{color:#93c5fd;cursor:pointer;background:0 0;border:none;min-height:32px;padding:.25rem .55rem;font-size:.8125rem;text-decoration:underline}.decorations-tool-panel__label{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.decorations-tool-panel__list{margin:var(--space-sm) 0 0;gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.decorations-tool-panel__item{text-align:left;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-elevated);cursor:pointer;font-size:var(--font-size-sm);flex:1}.decorations-tool-panel__item--active{border-color:var(--color-accent)}.decorations-tool-panel__list li{gap:var(--space-xs);align-items:center;display:flex}.decorations-tool-panel__remove{padding:var(--space-xs);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:.7rem}:root{--color-bg-app:#f7f3ec;--color-bg-panel:#ede8df;--color-bg-panel-section:#e4ddd2;--color-bg-elevated:#faf7f2;--color-bg-hover:#e8e4dc;--color-bg-subtle:#3a3a380f;--color-border:#c8c8c2;--color-border-strong:#a8a8a2;--color-border-subtle:#3a3a381a;--color-text:#3a3a38;--color-text-muted:#6e6e6a;--color-text-primary:#3a3a38;--color-text-secondary:#6e6e6a;--color-accent:#6b6b66;--color-summary-accent:#82827c;--color-on-accent:#faf7f2;--color-accent-subtle:#6b6b661f;--color-accent-muted:#6b6b6640;--color-danger:#b54a4a;--section-padding-y:.75rem;--radius-card:8px;--panel-padding:1rem;--section-gap:.875rem;--control-gap:.625rem;--shell-gap:.75rem;--planner-window-padding:var(--shell-gap);--bp-tablet:768px;--bp-desktop:1024px;--bp-wide:1440px;--planner-main-ratio:78%;--planner-sidebar-ratio:22%;--sidebar-width-min:280px;--sidebar-width-max:360px;--planner-mobile-height:50vh;--planner-mobile-height-min:45vh;--planner-mobile-height-max:55vh;--touch-target-min:2.75rem;--space-xs:.35rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.25rem;--font-size-sm:.8125rem;--font-size-base:.875rem;--font-size-lg:1.125rem}@media (width>=768px) and (width<=1023px){:root{--sidebar-width-min:240px;--sidebar-width-max:280px;--planner-main-ratio:72%;--planner-sidebar-ratio:28%}}@media (width>=1440px){:root{--sidebar-width-max:400px}}@media (width<=767px){:root{--layout-current:mobile}}@media (width>=768px) and (width<=1023px){:root{--layout-current:tablet}}@media (width>=1024px) and (width<=1439px){:root{--layout-current:desktop}}@media (width>=1440px){:root{--layout-current:wide}}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100dvh;margin:0;padding:0;overflow:hidden}@media (width<=767px){html,body{overscroll-behavior:none}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-app);color:var(--color-text);font-family:Segoe UI,system-ui,-apple-system,sans-serif}#root{flex-direction:column;display:flex}
