:root{--ink:#172033;--muted:#6b7280;--line:#e5e7eb;--red:#e94244;--red-dark:#cf3034;--blue:#2563eb;--paper:#fff;--soft:#f7f8fa}*{box-sizing:border-box}html,body{background:var(--soft);min-height:100%;color:var(--ink);margin:0}body{font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,input,select{font:inherit}button{color:inherit}.app-shell{flex-direction:column;height:100dvh;display:flex}.topbar{height:64px;color:var(--ink);border-bottom:1px solid var(--line);z-index:800;background:#fff;flex:0 0 64px;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.brand-lockup,.topbar-actions{align-items:center;display:flex}.brand-lockup img{border-radius:10px;margin-right:10px}.brand-name{letter-spacing:-.5px;font-size:21px;font-weight:760}.brand-divider{background:#e1e4e9;width:1px;height:23px;margin:0 14px}.product-name{color:#b62c31;font-size:14px;font-weight:650}.topbar-actions{gap:8px}.autosave{color:#6b7280;align-items:center;gap:7px;margin-right:9px;font-size:11px;display:flex}.autosave i{background:#37b67a;border-radius:50%;width:7px;height:7px}.icon-button,.avatar{color:#b62c31;cursor:pointer;background:#fff;border:1px solid #d8dde5;border-radius:8px;place-items:center;min-width:34px;height:34px;display:grid}.icon-button:disabled{opacity:.35;cursor:default}.avatar{color:#262b34;background:#f1f3f7;border-radius:50%;margin-left:5px;font-size:11px;font-weight:700}.workspace{flex:1;grid-template-columns:360px minmax(0,1fr);min-height:0;transition:grid-template-columns .2s;display:grid;overflow:hidden}.workspace.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar{z-index:10;border-right:1px solid var(--line);background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:7px 0 22px #1923320f}.sidebar-scroll{min-width:360px;padding:24px 24px 18px;overflow:hidden auto}.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:1.15px;font-size:10px;font-weight:800}h1{letter-spacing:-.55px;margin:7px 0 6px;font-size:24px}.lede{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.form-section{border-bottom:1px solid #edf0f3;padding:20px 0;position:relative}.field-label{margin-bottom:9px;font-size:12px;font-weight:750;display:block}.region-select{color:#b62c31;cursor:pointer;background:#fff;border:1px solid #d6dae1;border-radius:8px;width:100%;padding:10px 11px;font-size:11px;font-weight:650}.assembly-label{margin-top:15px}.assembly-picker{position:relative}.area-select{cursor:pointer;color:#6d7480;text-align:left;background:#fff;border:1px solid #d6dae1;border-radius:8px;align-items:center;gap:8px;width:100%;padding:10px 11px;display:flex}.area-select span{flex:1;font-size:12px}.area-menu{z-index:30;background:#fff;border:1px solid #dce0e6;border-radius:10px;max-height:230px;padding:5px;position:absolute;inset:calc(100% + 6px) 0 auto;overflow:auto;box-shadow:0 14px 34px #18223229}.area-menu button{cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;width:100%;padding:9px 10px;font-size:12px;display:flex}.area-menu button:hover,.area-menu button.selected{background:#f4f6f8}.area-menu button.selected span{color:var(--red);font-weight:800}.boundary-status{color:#6b7280;margin:9px 0 0;font-size:10px}.boundary-status.error{color:#b91c1c}.chips{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.chips>span{color:#b62c31;background:#fff1f1;border-radius:99px;align-items:center;gap:5px;padding:6px 7px 6px 9px;font-size:11px;font-weight:650;display:flex}.chips button{cursor:pointer;color:inherit;background:0 0;border:0;place-items:center;padding:0;display:grid}.segmented{background:#f1f3f6;border-radius:9px;gap:3px;padding:3px;display:grid}.segmented.three{grid-template-columns:repeat(3,1fr)}.segmented button{color:#737985;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:8px 4px;font-size:11px;display:flex}.segmented button.active{color:#222936;background:#fff;font-weight:700;box-shadow:0 1px 4px #141e2d1a}.field-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;display:grid}.field-row label>span{color:#777e88;margin-bottom:5px;font-size:10px;display:block}.number-input{border:1px solid #d8dce3;border-radius:8px;align-items:center;display:flex;overflow:hidden}.number-input input{border:0;outline:0;width:100%;min-width:0;padding:8px 9px;font-size:12px}.number-input b{color:#7a808b;background:#f4f5f7;border-left:1px solid #e0e3e8;padding:9px;font-size:10px}.helper{color:#888f99;margin:8px 0 12px;font-size:10px}.primary-button{color:#fff;background:var(--red);cursor:pointer;border:0;border-radius:8px;width:100%;padding:10px;font-size:12px;font-weight:750;box-shadow:0 3px 8px #e9424438}.primary-button:hover{background:var(--red-dark)}.primary-button:disabled{opacity:.45}.smart-generation{color:#0b6e4f;cursor:pointer;background:#f3f8f6;border-radius:8px;align-items:flex-start;gap:8px;margin:0 0 11px;padding:8px;display:flex}.smart-generation input{accent-color:#0b6e4f;margin-top:2px}.smart-generation span{flex-direction:column;display:flex}.smart-generation strong{font-size:10px}.smart-generation small{color:#65736d;margin-top:2px;font-size:8px;line-height:1.35}.generation-status{color:#65736d;margin:8px 0 0;font-size:9px;line-height:1.35}.tool-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.tool-grid button{cursor:pointer;background:#fff;border:1px solid #dfe2e7;border-radius:8px;align-items:center;gap:7px;padding:9px;font-size:11px;display:flex}.tool-grid button.active{color:#bd2f33;background:#fff5f5;border-color:#f1a3a5;font-weight:700}.shape-actions{background:#f7f8fb;border-radius:8px;margin-top:10px;padding:10px}.shape-actions>span{color:#707783;margin-bottom:8px;font-size:10px;display:block}.shape-actions>div{grid-template-columns:1fr 1fr;gap:6px;display:grid}.shape-actions button{cursor:pointer;background:#fff;border:1px solid #dce0e7;border-radius:6px;padding:7px;font-size:10px}.shape-actions button.danger{color:#c7353a}.shape-actions button:disabled{opacity:.4}.shape-actions .text-button{color:#6c7480;background:0 0;border:0;width:100%;padding:7px 0 0}.export-panel{border-top:1px solid var(--line);background:#fbfbfc;margin-top:auto;padding:14px 20px}.stats{grid-template-columns:repeat(3,1fr);margin-bottom:11px;display:grid}.stats div{border-right:1px solid #e3e5e9;flex-direction:column;padding-left:10px;display:flex}.stats div:first-child{padding-left:0}.stats div:last-child{border:0}.stats strong{font-size:15px}.stats span{color:#858b95;margin-top:2px;font-size:9px}.export-buttons{grid-template-columns:1fr 1fr;gap:7px;display:grid}.export-buttons button{cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:10px;font-weight:700;display:flex}.export-buttons button:disabled{opacity:.4}.map-stage{min-width:0;position:relative;overflow:hidden}.sidebar-toggle{z-index:700;cursor:pointer;background:#fffffff5;border:1px solid #d8dde5;border-radius:8px;place-items:center;width:30px;height:42px;display:grid;position:absolute;top:50%;left:10px;transform:translateY(-50%);box-shadow:0 3px 12px #141e2d24}.sidebar-toggle:hover{color:var(--red)}.planner-map{position:absolute;inset:0}.planner-map.mode-add .maplibregl-canvas,.planner-map.mode-draw .maplibregl-canvas{cursor:crosshair}.map-title{pointer-events:none;background:#fffffff0;border-radius:9px;flex-direction:column;padding:10px 13px;display:flex;position:absolute;top:17px;left:18px;box-shadow:0 4px 14px #141e2d1f}.map-title span{font-size:13px;font-weight:750}.map-title strong{color:#7c838e;margin-top:2px;font-size:9px}.legend{color:#626a75;background:#fffffff0;border-radius:8px;gap:11px;padding:8px 10px;font-size:9px;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 4px 14px #141e2d1a}.legend span{align-items:center;gap:4px;display:flex}.legend i{display:block}.legend .pin{border-radius:50%;width:7px;height:7px}.legend .proposed{background:#0b6e4f}.legend .locked{background:#172033}.legend .coverage{background:#0b6e4f1a;border:1px solid #0b6e4f61;border-radius:50%;width:10px;height:10px}.map-notice{color:#fff;background:#141822db;border-radius:6px;padding:7px 10px;font-size:9px;position:absolute;bottom:12px;left:12px}.maplibregl-ctrl-bottom-right{bottom:5px;right:5px}.map-fallback{text-align:center;background:radial-gradient(circle,#fff 0,#f3f4f6 72%);place-items:center;padding:32px;display:grid}.map-fallback>div{background:#fffffff0;border:1px solid #e1e4e9;border-radius:12px;max-width:420px;padding:24px;box-shadow:0 8px 28px #141e2d14}.map-fallback strong{font-size:16px}.map-fallback p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.5}@media (max-width:800px){body{overflow:auto}.app-shell{height:auto;min-height:100dvh}.topbar{flex-basis:108px;height:108px;padding:0 12px 44px;position:relative}.product-name,.brand-divider,.autosave{display:none}.topbar-actions{gap:5px}.topbar-nav{scrollbar-width:none;max-width:none;margin:0;position:absolute;bottom:6px;left:8px;right:8px;overflow-x:auto}.topbar-nav::-webkit-scrollbar{display:none}.topbar-nav button{flex:1 0 58px;justify-content:center;padding:7px 5px}.topbar-drawer{border-radius:0 0 12px 12px;width:calc(100vw - 16px);max-height:calc(100dvh - 116px);top:108px;right:8px}.workspace{flex-direction:column;display:flex}.workspace.sidebar-collapsed .sidebar{display:none}.workspace.sidebar-collapsed .map-stage{height:calc(100dvh - 108px)}.sidebar{order:2;width:100%;overflow:visible}.map-stage{order:1;height:50dvh;min-height:360px}.sidebar-scroll{width:100%;min-width:0;padding:20px}.export-panel{z-index:40;position:sticky;bottom:0}.map-title{max-width:calc(100% - 76px);top:10px;left:10px}.map-performance-notice{width:calc(100% - 24px)}.drawer-search-open .leaflet-top.leaflet-right,.drawer-places-open .leaflet-top.leaflet-right,.drawer-applicants-open .leaflet-top.leaflet-right,.drawer-projects-open .leaflet-top.leaflet-right,.drawer-account-open .leaflet-top.leaflet-right{top:auto;bottom:14px}.legend{display:none}}@media (max-width:480px){.brand-lockup img{width:34px;height:34px;margin-right:8px}.brand-name{font-size:19px}.icon-button{min-width:32px;height:32px}.topbar-nav button{gap:3px;font-size:9px}.topbar-drawer{padding:14px}.category-grid{grid-template-columns:1fr}.field-row{gap:7px}}.basemap-switcher{z-index:500;background:#fffffff5;border-radius:8px;gap:2px;padding:3px;display:flex;position:absolute;top:70px;right:14px;box-shadow:0 4px 14px #141e2d1f}.basemap-switcher button{color:#5f6671;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:9px}.basemap-switcher button.active{color:#fff;background:#e94244;font-weight:700}.leaflet-container{font-family:var(--font-geist), sans-serif}.leaflet-control-layers{border:0!important;border-radius:8px!important;box-shadow:0 4px 14px #141e2d1f!important}.drawer-search-open .leaflet-top.leaflet-right,.drawer-places-open .leaflet-top.leaflet-right,.drawer-applicants-open .leaflet-top.leaflet-right,.drawer-projects-open .leaflet-top.leaflet-right,.drawer-account-open .leaflet-top.leaflet-right{transition:top .2s;top:min(455px,100dvh - 160px)}.shape-picker{margin-bottom:8px;grid-template-columns:1fr 1fr!important}.shape-picker button.active{color:#fff;background:#2563eb;border-color:#2563eb;font-weight:700}.shape-hint{margin-top:2px}.leaflet-container{overflow:hidden}.map-engine-switch{z-index:650;color:#5f6671;cursor:pointer;background:#fffffff5;border:1px solid #d8dde5;border-radius:8px;padding:7px 10px;font-size:9px;position:absolute;top:70px;right:14px;box-shadow:0 4px 14px #141e2d1f}.map-engine-switch:hover{color:#b62c31;border-color:#f1a3a5}.planner-node-icon{background:0 0;border:0}.planner-node-icon span{background:#0b6e4f;border:2px solid #fff;border-radius:50%;width:14px;height:14px;margin:2px;display:block;box-shadow:0 1px 4px #0f172a73}.planner-node-icon span.locked{background:#111827}.mode-select .planner-node-icon{cursor:grab}.mode-select .planner-node-icon:active{cursor:grabbing}.project-manager{background:#fafbfc;border:1px solid #e2e5ea;border-radius:10px;margin-top:16px;padding:12px}.project-manager>input,.project-manager>select,.project-name-field input{background:#fff;border:1px solid #d6dae1;border-radius:7px;width:100%;padding:8px 9px;font-size:11px}.project-manager>select{margin-top:7px}.project-name-field{color:#6b7280;font-size:9px;display:block}.project-name-field input{color:var(--ink);margin-top:4px;display:block}.project-list{gap:5px;max-height:190px;margin-top:8px;display:grid;overflow:auto}.project-list>p{color:#858b95;margin:3px 0;font-size:9px}.project-list>button{color:#69717c;text-align:left;cursor:pointer;background:#fff;border:1px solid #e1e4e9;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.project-list>button:hover,.project-list>button.active{color:#b62c31;background:#fff6f6;border-color:#f0a8aa}.project-list>button>span:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.project-list strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.project-list small{color:#89909a;margin:0;font-size:8px}.project-actions{grid-template-columns:.65fr .65fr 1.2fr;gap:5px;margin-top:7px;display:grid}.project-actions button,.project-file-actions button,.project-file-actions label{text-align:center;cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:6px;padding:7px 5px;font-size:9px}.project-actions button.primary{color:#fff;background:#e94244;border-color:#e94244;font-weight:700}.project-file-actions{grid-template-columns:1fr 1fr;gap:5px;margin-top:7px;display:grid}.project-file-actions input{display:none}.project-manager small{color:#858b95;margin-top:7px;font-size:8px;line-height:1.35;display:block}.delete-project{color:#b62c31;cursor:pointer;background:#fff5f5;border:1px solid #f0b7b9;border-radius:6px;width:100%;margin-top:7px;padding:7px;font-size:9px}.retry-sync{color:#8a5b00;cursor:pointer;background:#fff9e9;border:1px solid #e7b14c;border-radius:6px;width:100%;margin-top:7px;padding:7px;font-size:9px;font-weight:700}.area-menu-actions{z-index:2;background:#fff;border-bottom:1px solid #edf0f3;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid;position:sticky;top:0}.area-menu .area-menu-actions button{color:#b62c31;background:#fff5f5;justify-content:center;font-weight:700}.map-performance-notice{z-index:650;color:#59616d;text-align:center;background:#fffffff2;border-radius:7px;max-width:430px;padding:7px 10px;font-size:9px;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #141e2d24}.topbar-nav{gap:4px;margin-right:6px;display:flex}.topbar-nav button{color:#59616d;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:8px 9px;font-size:10px;display:flex}.topbar-nav button:hover,.topbar-nav button.active{color:#b62c31;background:#fff1f1}.topbar-drawer{z-index:780;background:#fff;border:1px solid #dfe3e8;border-radius:0 0 12px 12px;width:min(390px,100vw - 32px);max-height:calc(100dvh - 82px);padding:16px;position:absolute;top:64px;right:16px;overflow:auto;box-shadow:0 16px 36px #141e2d2e}.drawer-heading{justify-content:space-between;align-items:flex-start;margin-bottom:13px;display:flex}.drawer-heading>div{flex-direction:column;display:flex}.drawer-heading span{color:#7b828d;margin-top:3px;font-size:10px}.drawer-heading>button{color:#7b828d;cursor:pointer;background:0 0;border:0}.place-search{grid-template-columns:1fr auto;gap:7px;display:grid}.place-search input{border:1px solid #d6dae1;border-radius:8px;min-width:0;padding:10px;font-size:11px}.place-search button{color:#fff;cursor:pointer;background:#e94244;border:0;border-radius:8px;padding:0 13px;font-size:10px;font-weight:700}.search-results{gap:5px;margin-top:10px;display:grid}.search-results button{text-align:left;cursor:pointer;background:#fff;border:1px solid #e3e6ea;border-radius:8px;flex-direction:column;align-items:flex-start;padding:9px;display:flex}.search-results button:hover{background:#fff8f8;border-color:#f1a3a5}.search-results strong{font-size:11px}.search-results span{color:#767d87;margin-top:2px;font-size:9px;line-height:1.35}.clear-search{color:#b62c31;cursor:pointer;background:#fff5f5;border:1px solid #efb2b4;border-radius:8px;justify-content:center;align-items:center;gap:5px;width:100%;margin-top:10px;padding:8px;font-size:10px;font-weight:700;display:flex}.drawer-status{margin:9px 0 0;font-size:10px}.drawer-status.error{color:#b91c1c}.topbar-drawer .project-manager{margin-top:0}.account-state{color:#b62c31;background:#f7f8fa;border-radius:9px;gap:11px;padding:12px;display:flex}.account-state div{color:var(--ink)}.account-state strong{font-size:12px}.account-state p{color:#737b86;margin:5px 0 0;font-size:10px;line-height:1.5}.account-state button{cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:6px;margin-top:8px;padding:6px 9px;font-size:9px}.account-form{gap:9px;display:grid}.account-form label{color:#6b7280;font-size:9px}.account-form input{width:100%;color:var(--ink);border:1px solid #d6dae1;border-radius:8px;margin-top:4px;padding:9px;display:block}.account-form>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.account-form button{cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:7px;padding:8px;font-size:10px}.account-form button.primary{border-color:var(--red);background:var(--red);color:#fff;font-weight:700}.account-form .reset-link{color:#b62c31;text-align:left;background:0 0;border:0;padding:2px;font-size:9px}.assembly-summary{color:#b62c31;cursor:pointer;background:#fff5f5;border:1px solid #f2c6c7;border-radius:8px;justify-content:space-between;width:100%;margin-top:9px;padding:8px 10px;font-size:10px;font-weight:700;display:flex}.assembly-summary span{font-weight:500}.category-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.category-grid label{color:#59616d;cursor:pointer;border:1px solid #e2e5ea;border-radius:7px;align-items:center;gap:6px;padding:8px;font-size:9px;display:flex}.category-grid input{accent-color:var(--red)}.drawer-primary{background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;margin-top:10px;padding:9px;font-size:10px;font-weight:700}.drawer-primary:disabled{opacity:.45;cursor:default}.layer-actions{border-top:1px solid #e7e9ed;grid-template-columns:1fr auto auto;align-items:center;gap:6px;margin-top:10px;padding-top:10px;display:grid}.layer-actions label{color:#4f5661;align-items:center;gap:5px;font-size:9px;display:flex}.layer-actions input{accent-color:var(--red)}.layer-actions button{cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:6px;align-items:center;gap:4px;padding:6px 7px;font-size:9px;display:flex}.data-note{color:#858b95;margin-top:10px;font-size:8px;line-height:1.4;display:block}.upload-drop{color:#b62c31;text-align:center;cursor:pointer;background:#fafbfc;border:1px dashed #cfd4dc;border-radius:10px;place-items:center;gap:5px;padding:18px 12px;display:grid}.upload-drop strong{color:var(--ink);font-size:11px}.upload-drop span{color:#757d88;max-width:280px;font-size:9px;line-height:1.4}.upload-drop input{display:none}.template-button{color:#59616d;cursor:pointer;background:#fff;border:1px solid #d7dbe2;border-radius:7px;justify-content:center;align-items:center;gap:5px;width:100%;margin-top:7px;padding:7px;font-size:9px;display:flex}.applicant-summary{border:1px solid #e4e7eb;border-radius:8px;grid-template-columns:repeat(3,1fr);margin-top:10px;display:grid;overflow:hidden}.applicant-summary div{border-right:1px solid #e4e7eb;flex-direction:column;padding:9px;display:flex}.applicant-summary div:last-child{border:0}.applicant-summary strong{font-size:13px}.applicant-summary span{color:#858b95;margin-top:2px;font-size:8px}.legend .poi{background:#f59e0b}.legend .applicant{background:#7c3aed}.legend .recommended{background:#0b6e4f}.legend .gap{background:#fb923c14;border:2px dashed #c2410c;border-radius:50%;width:10px;height:10px}.legend .recommended-coverage{background:#38bdf82e;border:1px solid #0369a1;border-radius:50%;width:10px;height:10px}.recommended-business-icon{background:0 0;border:0}.recommended-business-icon span{color:#fff;background:#0b6e4f;border:2px solid #fff;border-radius:50%;place-items:center;width:25px;height:25px;font-size:9px;font-weight:800;display:grid;box-shadow:0 2px 6px #0f172a66}.recommend-block{border-top:1px solid #e7e9ed;margin-top:13px;padding-top:13px}.recommend-block>div:first-child{color:#0b6e4f;gap:8px;display:flex}.recommend-block>div:first-child>span{flex-direction:column;display:flex}.recommend-block>div:first-child strong{color:var(--ink);font-size:11px}.recommend-block>div:first-child small{color:#737b86;margin-top:3px;font-size:8px;line-height:1.4}.recommend-summary{border:1px solid #dce8e3;border-radius:8px;grid-template-columns:repeat(3,1fr);margin-top:10px;display:grid;overflow:hidden}.recommend-summary div{border-right:1px solid #dce8e3;flex-direction:column;padding:8px;display:flex}.recommend-summary div:last-child{border:0}.recommend-summary strong{color:#0b6e4f;font-size:13px}.recommend-summary span{color:#7b838d;margin-top:2px;font-size:7px}.recommend-list{gap:5px;max-height:220px;margin:9px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.recommend-list li{background:#fbfdfc;border:1px solid #e2e8e5;border-radius:7px;gap:7px;padding:7px;display:flex}.recommend-list li>b{color:#fff;background:#0b6e4f;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:8px;display:grid}.recommend-list li>span{flex-direction:column;min-width:0;display:flex}.recommend-list strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.recommend-list small{color:#778079;margin-top:2px;font-size:7px;line-height:1.35}@media (max-width:1050px){.topbar-nav{max-width:360px;overflow-x:auto}.topbar-nav button{flex:none}}.planner-login{background:radial-gradient(circle at 20% 10%, #e9424412, transparent 28%), var(--soft);place-items:center;min-height:100dvh;padding:24px;display:grid;overflow:auto}.planner-login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(100%,420px);padding:30px;box-shadow:0 24px 70px #1720331a}.planner-login-brand{border-bottom:1px solid #edf0f3;align-items:center;gap:12px;padding-bottom:24px;display:flex}.planner-login-brand img{border-radius:11px}.planner-login-brand div{flex-direction:column;display:flex}.planner-login-brand strong{letter-spacing:-.5px;font-size:20px}.planner-login-brand span{color:var(--muted);margin-top:2px;font-size:11px;font-weight:650}.planner-login-copy{padding:26px 0 8px}.planner-login-copy h1{letter-spacing:-1px;margin:7px 0 8px;font-size:30px}.planner-login-copy>p:last-child{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.planner-login-form label{margin:18px 0 7px;font-size:12px;font-weight:750;display:block}.planner-login-form input{background:#fff;border:1px solid #d6dae1;border-radius:10px;outline:none;width:100%;padding:12px 13px}.planner-login-form input:focus{border-color:#e98587;box-shadow:0 0 0 3px #e942441a}.planner-login-form button{color:#fff;background:var(--red);cursor:pointer;border:0;border-radius:10px;width:100%;margin-top:14px;padding:12px 14px;font-weight:750}.planner-login-form button:hover{background:var(--red-dark)}.planner-login-form button:disabled{opacity:.5;cursor:default}.planner-login-error{color:#a72e32;background:#fff1f1;border-radius:8px;margin:10px 0 0;padding:9px 10px;font-size:11px;line-height:1.4}.planner-login-note{color:#9096a0;text-align:center;margin:18px 0 0;font-size:10px}.workspace{transition:grid-template-columns .45s cubic-bezier(.2,.8,.2,1)}.topbar-drawer{border-radius:20px;animation:.5s cubic-bezier(.2,.8,.2,1) both panelArrive}@keyframes panelArrive{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.workspace-card,.upload-drop{isolation:isolate;text-align:left;background:linear-gradient(125deg,#fff 42%,#fbf4ef);border:1px solid #e4e1dc;border-radius:18px;padding:22px;position:relative;overflow:hidden}.workspace-art{width:64px;height:52px;color:var(--red);flex-shrink:0;animation:.9s cubic-bezier(.2,.8,.2,1) both cardArtArrive;display:block}.workspace-art svg{width:100%;height:100%;display:block}@keyframes cardArtArrive{0%{opacity:0;transform:translateY(10px)scale(.94)}60%{opacity:1;transform:translateY(-4px)scale(1.02)}to{opacity:1;transform:none}}.workspace-card>strong{letter-spacing:-.4px;white-space:normal;margin-top:12px;font-size:17px;display:block}.workspace-card>p{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.5}.project-list:has(.workspace-card){max-height:none}.project-list .workspace-card strong{font-size:17px}.upload-drop{cursor:pointer;place-items:start;gap:8px}.upload-drop strong{font-size:15px}.upload-drop>span:not(.workspace-art){max-width:none;font-size:12px;line-height:1.5}.upload-drop input{max-width:100%;color:var(--muted);margin-top:8px;font-size:12px;display:block}.upload-drop:hover,.upload-drop:focus-within{border-color:#c8bdb2}.account-state.workspace-card{align-items:flex-start}.account-state .workspace-art{width:48px;height:40px}.account-state strong{overflow-wrap:anywhere}.planner-login-card{background:linear-gradient(125deg,#fff 60%,#fbf4ef);border-radius:24px}.planner-login-copy{padding-top:28px;position:relative}.planner-login-copy .workspace-art{width:76px;height:62px;margin:0 0 20px}.planner-login-form label,.planner-login-copy>p:last-child{font-size:14px}.planner-login-note{font-size:12px}.topbar-nav button,.segmented button,.tool-grid button{transition:background .4s,border-color .4s,color .4s}.topbar-nav button{min-height:40px}.drawer-heading strong{font-size:16px}.drawer-heading span{font-size:12px;line-height:1.4}.drawer-heading button{min-width:36px;min-height:36px}.project-name-field{font-size:12px}.project-actions button,.project-file-actions button,.project-file-actions label{min-height:38px;font-size:12px}.project-list button{border-radius:12px;min-height:54px;padding:12px}.project-list button strong{font-size:13px}.project-list button small{font-size:11px}.project-manager>small{font-size:12px;line-height:1.5}.account-form label{font-size:12px}.account-form button{min-height:38px;font-size:12px}.account-form .reset-link{font-size:12px}.drawer-status,.data-note{font-size:12px;line-height:1.5}.category-grid label,.template-button{min-height:36px;font-size:12px}.drawer-primary{min-height:40px;font-size:13px}:is(button:focus-visible,label:has(input[type=file]):focus-within){outline:3px solid var(--red);outline-offset:3px}@media (max-width:800px){.topbar-drawer{border-radius:18px;width:calc(100% - 16px);max-height:calc(100dvh - 116px);padding:16px;top:108px;right:8px}.topbar-nav{max-width:none}.topbar-nav button{min-height:40px;font-size:11px}.planner-login{padding:18px}.planner-login-card{padding:24px}}@media (prefers-reduced-motion:reduce){.topbar-drawer,.workspace-art{animation:none}.workspace,.topbar-nav button,.segmented button,.tool-grid button{transition:none}}@media (hover:hover){.workspace-card:hover .workspace-art,.upload-drop:hover .workspace-art{animation:1s cubic-bezier(.2,.8,.2,1) workspaceArtNod}}@keyframes workspaceArtNod{0%,to{transform:none}35%{transform:translateY(-5px)rotate(4deg)}65%{transform:translateY(1px)rotate(-2deg)}}@media (prefers-reduced-motion:reduce){.workspace-card:hover .workspace-art,.upload-drop:hover .workspace-art{animation:none}}@media (max-width:800px){.topbar-nav{gap:2px}.topbar-nav button{white-space:nowrap;flex-direction:column;flex:1 1 0;gap:3px;min-width:0;min-height:44px;padding:5px 2px;font-size:11px}.topbar-nav button svg{flex-shrink:0}}
