.planner-tabs{display:flex;align-items:center;gap:4px;padding:7px 24px;border-bottom:1px solid var(--line);background:#f8f2e3;min-height:47px;overflow-x:auto;flex-shrink:0}.planner-tabs button{white-space:nowrap;font-size:11px;padding:8px 11px;border-color:transparent}.planner-tabs button.active{background:#e0e5cb;border-color:#bac69b}.planner-tabs>span{margin-left:auto;white-space:nowrap;font-size:10px;color:#7b846b;padding-left:20px}#planner-pane{height:calc(100vh - 123px);overflow:auto;padding:32px 4vw 70px;background:radial-gradient(ellipse at top right,#e9e1c755,transparent 60%),#f7f3e7}#planner-pane h1{margin:7px 0 10px;font-size:34px}#planner-pane h2,.p-dialog h2{font:25px Georgia,serif}#planner-pane h3{font:19px Georgia,serif}.p-header{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:27px}.p-header p{font-size:12px;color:#80785f;max-width:780px;line-height:1.7}.p-split{display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px}.p-list{border-right:1px solid var(--line);padding-right:20px}.list-item{display:block;width:100%;text-align:left;border:0;margin-bottom:7px}.list-item.selected{background:#e2e7d0}.list-item strong{display:block;font-size:12px;font-weight:500}.list-item small{display:block;font-size:10px;color:#958a70;margin-top:5px}.p-content{min-width:0;max-width:1150px}.p-field{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#766e56;margin-bottom:16px}.p-field input,.p-field textarea,.p-field select,.condition-row input,.condition-row select{background:#fffdf6;border:1px solid #d7d0ba;border-radius:6px;padding:10px;color:#403e2b;min-width:0;width:100%;font:12px 'Segoe UI',sans-serif}.p-field textarea{min-height:87px;resize:vertical;line-height:1.6}.p-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.p-grid.thirds{grid-template-columns:repeat(3,1fr)}.p-card{border:1px solid #dfd7c1;border-radius:9px;background:#fffcf4a6;padding:20px;margin-bottom:16px}.p-card h3{margin:5px 0 15px}.p-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.p-title button{font-size:11px}.p-help{font-size:11px;color:#8d8166;line-height:1.8}.axis-row>label{font-size:11px;color:#7d745c}.quiet{font-size:10px;border:0;margin-left:12px;color:#958267}.condition-row{display:grid;grid-template-columns:1fr 120px 1fr auto;gap:9px;margin-bottom:12px}.condition-row button{font-size:10px}.p-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.p-actions button{font-size:11px}.p-metrics{display:flex;gap:25px;background:#e6ead6;border-radius:8px;padding:16px;margin:20px 0}.p-metrics b{font-weight:500;font-size:12px}.p-warning{border-left:3px solid #ba9950;background:#f0e5c9;padding:12px;font-size:12px}.sample-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.sample-grid .p-card{padding:15px}.sample-grid dl{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:8px}.sample-grid dt{color:#8b8064}.sample-grid dd{margin:0;overflow-wrap:anywhere}.sample-grid button{font-size:10px}.output-item{display:flex;justify-content:space-between;width:100%;margin:7px 0;text-align:left;font-size:12px}.output-item small{color:#928467}.p-empty{padding:65px 30px;text-align:center;border:1px dashed #d7cbb0;border-radius:12px;color:#7d735a}.p-empty p{line-height:1.8;font-size:12px}.p-subtabs{display:flex;gap:10px;margin-bottom:23px}.p-subtabs button{font-size:12px}.p-subtabs button.active{background:#e2e8cb}.p-dialog{width:min(900px,calc(100vw - 40px));max-height:85vh;overflow:auto;padding:28px;background:#faf4e5;border:1px solid #d3c6a4;border-radius:12px;color:#433e2b}.p-dialog::backdrop{background:#262d2260;backdrop-filter:blur(4px)}.p-dialog pre{white-space:pre-wrap;word-break:break-word;font:12px/1.7 Consolas,monospace;max-height:50vh;overflow:auto}.p-dialog img{max-width:220px;max-height:220px;margin:12px}.p-dialog button{font-size:11px}.skill-tree .p-card{border-left:3px solid #8ba16c}.skill-tree .p-card button{font-size:10px;display:block;margin-top:12px}.audit-row{border-bottom:1px solid #e2dccb;padding:9px 0;font-size:11px;line-height:1.7}.reference-images{display:flex;gap:15px;flex-wrap:wrap;margin:20px 0}.reference-images figure{margin:0;width:160px}.reference-images img{width:160px;height:140px;object-fit:cover;border-radius:7px;border:1px solid #cabc9c}.reference-images button{font-size:10px;padding:7px}.job-row{padding:13px 0;border-bottom:1px solid #dfd5bb;font-size:12px}.job-row button{margin-left:15px;font-size:10px}#planner-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:80vw;background:#384c36;color:#fffbe9;padding:15px 25px;border-radius:9px;z-index:10000;font-size:12px;box-shadow:0 5px 25px #283c292a}#planner-toast.error{background:#804f36}.p-card>p{font-size:12px;line-height:1.8}.p-card small{color:#8c8065}.p-card button{font-size:11px}.p-card>h2{margin-top:0}@media(min-width:761px){main{height:calc(100vh - 123px)}}@media(max-width:900px){.sample-grid{grid-template-columns:1fr 1fr}.p-grid.thirds{grid-template-columns:1fr}.p-split{grid-template-columns:180px minmax(0,1fr)}}@media(max-width:760px){#planner-pane{height:auto;min-height:calc(100vh - 160px);padding:25px 15px}.p-grid,.p-split{grid-template-columns:1fr}.p-list{border-right:0;display:flex;overflow:auto;gap:8px}.p-list .p-field{min-width:170px}.list-item{min-width:130px}.p-header{align-items:flex-start}.p-header h1{font-size:28px!important}.condition-row{grid-template-columns:1fr 1fr}.planner-tabs{padding:8px}.planner-tabs>span{display:none}.p-subtabs{overflow:auto}.sample-grid{grid-template-columns:1fr}.p-metrics{gap:12px;flex-wrap:wrap}body.planner-open{overflow:auto}}
.map-extra-tools{border-top:1px solid var(--line);padding-top:15px;margin-top:17px}.map-extra-tools button{display:block;width:100%;font-size:11px;padding:8px;text-align:left;border:0}.map-extra-tools button.selected{background:#dce4c4}

/* Account entry and shared project workspace. */
body.lobby-open{overflow:hidden}
body.lobby-open>header,body.lobby-open>main,body.lobby-open>.planner-tabs,body.lobby-open>#planner-pane{display:none!important}
#project-lobby{position:fixed;inset:0;z-index:9000;overflow:auto;background:radial-gradient(ellipse at 85% 5%,#dce4ce77,transparent 55%),#f6f0e2;color:#343e2d;font:14px/1.6 'Segoe UI',sans-serif}
#project-lobby[hidden]{display:none}
#project-lobby *{box-sizing:border-box}
#project-lobby h1,#project-lobby h2,#project-lobby h3{font-family:Georgia,serif;font-weight:400}
#project-lobby button{border:1px solid #cec9b6;background:#fffbf0;border-radius:7px;padding:11px 17px;cursor:pointer;color:#34412c;font:12px 'Segoe UI',sans-serif}
#project-lobby button.primary{background:#38523d;color:#fff9e8;border-color:#38523d}
#project-lobby button:disabled{opacity:.55;cursor:wait}
#project-lobby :focus-visible{outline:3px solid #b08a47;outline-offset:3px}
#project-lobby label{display:block;font-size:12px;margin:17px 0}
#project-lobby input{width:100%;padding:13px;margin-top:7px;border:1px solid #d5cbb5;background:#fffcf6;border-radius:7px;font:14px 'Segoe UI',sans-serif;color:#303c2b}
.lobby-brand{font:15px Georgia,serif;letter-spacing:3px;white-space:nowrap}
.lobby-kicker{display:block;font-size:10px;letter-spacing:2px;color:#7e8069}
.lobby-login{display:grid;grid-template-columns:1.05fr 1fr;min-height:100dvh}
.lobby-story{position:relative;display:flex;flex-direction:column;padding:7vh 6vw;color:#f9f0d8;background:linear-gradient(90deg,rgba(12,31,27,.82),rgba(12,31,27,.18)),url('assets/start-landscape-v1.png') center/cover}
.lobby-story .lobby-brand{margin-bottom:15vh}
.lobby-story .lobby-kicker{color:#c7cdab}
.lobby-story h1{font-size:clamp(45px,5.5vw,85px);line-height:1.1;letter-spacing:-2px;margin:22px 0}
.lobby-story p{max-width:330px;color:#d3d9c3;line-height:1.9}
.lobby-story-foot{margin-top:auto;padding-top:80px;font-size:9px;letter-spacing:2px;color:#c7ccad}
.lobby-login-form{align-self:center;width:min(440px,100%);margin:auto;padding:55px 35px}
.lobby-login-form h2{font-size:42px;margin:12px 0}
.lobby-login-form>p{color:#7b7d6a;font-size:13px}
.lobby-login-form form button{width:100%;margin-top:10px}
#project-lobby .lobby-text-button{padding-left:0;background:none;border:0;text-decoration:underline;text-underline-offset:4px}
.lobby-login-form>small{display:block;font-size:10px;color:#88816a}
#project-lobby [data-lobby-message]{font-size:12px;color:#526446;min-height:18px;overflow-wrap:anywhere}
#project-lobby [data-lobby-message].error{color:#914d30}
.lobby-header{position:static!important;height:auto!important;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 5vw;border-bottom:1px solid #d9d4c2;background:#fcf8ed}
.lobby-header>div{display:flex;align-items:center;gap:18px;font-size:12px}
.lobby-shell{max-width:1500px;margin:auto;padding:25px 5vw 60px}
.lobby-nav{display:flex;gap:9px;align-items:center;border-bottom:1px solid #d9d3c0;padding-bottom:17px}
#project-lobby .lobby-nav button{background:none;border-color:transparent}
#project-lobby .lobby-nav button.active{background:#e1e7d2;border-color:#c7d0b4}
.lobby-nav button span{font-size:10px;margin-left:7px;color:#768263}
.lobby-nav button:last-child{margin-left:auto}
.lobby-heading{margin:25px 0 30px}
.lobby-heading h1{font-size:clamp(28px,3.2vw,44px);margin:9px 0}
.lobby-heading p{color:#797e68;font-size:13px}
.lobby-project-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:30px;align-items:start}
.lobby-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.lobby-project{overflow:hidden;border:1px solid #d4d0bc;border-radius:12px;background:#fffcf3;box-shadow:0 7px 22px #3d452808}
.lobby-project-art{height:120px;display:flex;align-items:flex-end;padding:18px;background:repeating-radial-gradient(ellipse at 20% 150%,transparent 0 15px,#53654822 16px 17px,transparent 18px 25px),linear-gradient(var(--card-offset,43deg),#c1cbb0,#e3dabe);border-bottom:1px solid #d2d0ba}
.lobby-project-art span{font-size:9px;letter-spacing:2px;color:#596747}
.lobby-project-body{padding:22px}
.lobby-project-body h3{margin:0;font-size:25px;overflow-wrap:anywhere}
.lobby-project-body>button{margin-top:18px;width:100%}
.lobby-collaborators>div{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:9px;flex-wrap:wrap}
.lobby-collaborators small{margin-left:auto;font-size:10px;color:#747e69}
.presence-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b8b6a5;flex-shrink:0}
.presence-dot.online{background:#66824a;box-shadow:0 0 0 3px #66824a15}
.lobby-new-project{padding:25px;border:1px solid #d9d2ba;background:#eee8d6;border-radius:10px}
.lobby-new-project h2{font-size:27px;margin-top:10px}
.lobby-new-project h3{font-size:22px}
.lobby-new-project p{overflow-wrap:anywhere;font-size:12px}
.lobby-new-project form button{width:100%}
.lobby-note{color:#7b7c68;font-size:11px;line-height:1.8}
.lobby-empty{padding:35px;border:1px dashed #c4c6ae;border-radius:10px;color:#7c806a;grid-column:1/-1}
.lobby-empty h3{font-size:25px;margin:0}
.lobby-friends-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;margin-top:30px}
.lobby-friend{display:flex;gap:15px;align-items:center;padding:22px 0;border-bottom:1px solid #d5d0bd}
.lobby-friend>div{flex:1;min-width:0;overflow-wrap:anywhere}
.lobby-friend small{display:block;font-size:11px;color:#85816c;margin-top:4px}
.lobby-loading{padding:12vh 8vw;max-width:800px;margin:auto}
.lobby-loading h2{font-size:34px;margin:35px 0 15px}
.lobby-loading button{margin:15px 10px 0 0}
.planner-tabs .lobby-back{border-color:#c4cbb0;background:#e8ecd9}
@media(max-width:1050px){.lobby-project-grid{grid-template-columns:1fr}}
@media(max-width:700px){.lobby-login{grid-template-columns:1fr}.lobby-story{padding:30px;min-height:240px}.lobby-story .lobby-brand{margin-bottom:35px}.lobby-story h1{font-size:42px}.lobby-story p,.lobby-story-foot{display:none}.lobby-login-form{padding:32px 25px}.lobby-header{align-items:flex-start;padding:20px!important}.lobby-header>div{flex-direction:column;align-items:flex-end;gap:7px;max-width:55%;overflow-wrap:anywhere}.lobby-shell{padding:20px}.lobby-project-layout,.lobby-friends-layout{grid-template-columns:1fr}.lobby-new-project{order:-1}.lobby-friend{flex-wrap:wrap}.lobby-heading h1{font-size:30px}.lobby-nav{gap:2px}.lobby-nav button{padding:10px!important}}

/* Friends stay beside projects instead of occupying a separate tab. */
.lobby-workspace{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100dvh - 90px)}
.lobby-workspace>.lobby-shell{width:100%;min-width:0;margin:0;padding:25px 3vw 60px}
.lobby-friends-sidebar{padding:32px 22px;border-right:1px solid #d1d4c0;background:linear-gradient(175deg,#e7ecd9,#f0ecdE);min-width:0}
.lobby-friends-sidebar h2{font-size:26px;margin:9px 0 2px}
.lobby-sidebar-friends{margin:23px 0}
.lobby-sidebar-friend{padding:15px 0;border-bottom:1px solid #d0d5bd}
.lobby-friend-identity{display:flex;align-items:center;gap:9px}
.lobby-friend-identity strong{font-size:12px;font-weight:500;overflow-wrap:anywhere;min-width:0}
.lobby-sidebar-friend>small{display:block;font-size:10px;line-height:1.6;color:#788169;margin:7px 0 8px 16px;overflow-wrap:anywhere}
.lobby-friend-actions{display:flex;gap:6px;flex-wrap:wrap;margin-left:16px}
#project-lobby .lobby-friend-actions button{font-size:10px;padding:5px 7px;background:transparent;border-color:#c7ceb6}
.lobby-add-friend{border-top:1px solid #ced4bb;padding-top:18px}
.lobby-add-friend summary{font-size:12px;cursor:pointer;color:#435d3f}
.lobby-add-friend form button{width:100%}
.lobby-project-label{font:19px Georgia,serif}
.lobby-project-label span{font:11px 'Segoe UI',sans-serif;color:#7a836d;margin-left:8px}
@media(max-width:1150px){.lobby-workspace{grid-template-columns:220px minmax(0,1fr)}.lobby-workspace .lobby-project-layout{grid-template-columns:1fr}.lobby-workspace .lobby-new-project{order:-1}}
@media(max-width:700px){.lobby-workspace{grid-template-columns:1fr}.lobby-friends-sidebar{padding:20px;border-right:0;border-bottom:1px solid #d1d4c0}.lobby-sidebar-friends{display:flex;gap:20px;overflow-x:auto;margin:10px 0}.lobby-sidebar-friend{min-width:185px;max-width:240px;border:0;padding:10px 0}.lobby-workspace>.lobby-shell{padding:20px}.lobby-add-friend{padding-top:12px}}

/* Collapsible, culture-independent map planning tools. */
.sidebar .atlas-original-tools{display:none!important}
.atlas-tool-menus{margin-top:20px}.atlas-tool-menus[hidden]{display:none}
.atlas-tool-menus details{border:1px solid #cec1a2;border-radius:8px;background:#f5edda;margin:0 0 10px;overflow:hidden}
.atlas-tool-menus summary{cursor:pointer;padding:13px 12px;font:15px Georgia,serif;color:#4d5137;list-style-position:inside}
.atlas-tool-menus details[open]>summary{background:#e7dfc8;border-bottom:1px solid #d2c7aa}
.atlas-menu-body{padding:12px}.atlas-menu-body>button{display:block;width:100%;margin:7px 0;text-align:left;font-size:11px}.atlas-menu-body .field{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:11px}.atlas-menu-body select{width:100%;min-width:0;padding:9px;background:#fffbef;border:1px solid #cfc3a6;border-radius:5px;color:#4b4838}.atlas-menu-body>label{font-size:11px}.atlas-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.atlas-tool-grid button{padding:11px 6px;font-size:11px}.atlas-tool-grid button[aria-pressed=true]{background:#d2ddb8;border-color:#879a63;color:#314725}.atlas-menu-body section{border:0;margin:0;padding:0}.atlas-region-entry{overflow-wrap:anywhere}.atlas-region-entry strong,.atlas-region-entry small{display:block}.atlas-region-entry small{font-size:10px;margin-top:5px;color:#776d58}.p-subtabs{flex-wrap:wrap}

.nation-folder-tabs{margin-bottom:0}.nation-folder-tabs button{white-space:normal;overflow-wrap:anywhere;max-width:240px;text-align:left}.nation-folder-panel .p-actions{margin-bottom:0}

.atlas-tool-grid{align-items:start}.atlas-tool-option{min-width:0}.atlas-tool-option>button{width:100%;height:100%;text-align:left}.atlas-tool-variants{padding:9px 6px;background:#e5e9d4;border:1px solid #b8c497;border-top:0;border-radius:0 0 6px 6px}.atlas-tool-variants[hidden]{display:none}.atlas-tool-variants label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#596340}.atlas-tool-variants select{padding:7px 3px;margin:0;font-size:10px;width:100%;min-width:0}.atlas-tool-option:has(.atlas-tool-variants:not([hidden]))>button{border-radius:6px 6px 0 0}.atlas-tool-variants:focus-within{outline:1px solid #8a9c69}

/* Larger single-row tools, with brush settings beside the map. */
main:has(.atlas-brush-panel){display:grid;grid-template-columns:280px minmax(0,1fr) 250px;min-width:0}
main:has(.atlas-brush-panel)>.workspace{min-width:0}
.atlas-tool-menus .atlas-tool-grid,.atlas-brush-panel .atlas-tool-grid{grid-template-columns:1fr;gap:10px}
.atlas-tool-menus summary,.atlas-brush-panel summary{font-size:18px;padding:16px 14px;cursor:pointer}
.atlas-tool-menus .atlas-menu-body button,.atlas-brush-panel button{font-size:14px;min-height:46px;padding:12px;text-align:left}
.atlas-tool-option>button{font-size:15px!important;min-height:50px!important}
.atlas-tool-variants{padding:12px}.atlas-tool-variants label{font-size:13px;gap:8px}.atlas-tool-variants select{font-size:14px;padding:11px 8px;min-height:44px}
.atlas-menu-body .field,.atlas-menu-body>label{font-size:13px}.atlas-menu-body select{font-size:14px;min-height:44px}
.atlas-brush-panel{min-width:0;overflow-y:auto;padding:18px 14px;background:linear-gradient(155deg,#f5eedc,#ebe1c8);border-left:1px solid #cfc2a2}
.atlas-brush-heading{font:12px Georgia,serif;letter-spacing:1.6px;color:#75694e;margin:4px 0 18px}
.atlas-brush-panel details{border:1px solid #cec1a2;border-radius:8px;background:#f5edda;overflow:hidden}
.atlas-brush-panel details[open]>summary{background:#e7dfc8;border-bottom:1px solid #d2c7aa}
.atlas-brush-panel .atlas-tool-grid button[aria-pressed=true]{background:#d2ddb8;border-color:#879a63;color:#314725}
.atlas-brush-panel input[type=range]{width:100%;min-height:32px;cursor:pointer}
@media(min-width:761px) and (max-width:1150px){main:has(.atlas-brush-panel){grid-template-columns:240px minmax(0,1fr) 210px}.atlas-brush-panel{padding:14px 10px}}
@media(max-width:760px){main:has(.atlas-brush-panel){grid-template-columns:minmax(0,1fr);height:auto}.atlas-brush-panel{border-left:0;border-top:1px solid #cfc2a2;overflow:visible}.atlas-brush-panel details{max-width:100%}}

/* Personal CAD workspace: presentation only, separate from project data. */
body[data-cad]{--cad-bg:#eee7d5;--cad-surface:#f6efdd;--cad-raised:#e5ddc8;--cad-line:#c8bca1;--cad-text:#454733;--cad-muted:#77775f;--cad-accent:#597343;--cad-selected:#dbe5c4;--cad-button-height:46px;--cad-font:14px;--cad-gap:10px}
body[data-cad-theme=light]{--cad-bg:#e6e9e8;--cad-surface:#f6f7f5;--cad-raised:#e4e8e4;--cad-line:#c5ccc6;--cad-text:#303d36;--cad-muted:#6e7a72;--cad-accent:#47674e;--cad-selected:#d6e6d7}
body[data-cad-theme=dark]{--cad-bg:#20282a;--cad-surface:#2b3436;--cad-raised:#354043;--cad-line:#4c5a5b;--cad-text:#e1e9e2;--cad-muted:#aabbb1;--cad-accent:#b3cb88;--cad-selected:#46573e}
body[data-cad-density=compact]{--cad-button-height:34px;--cad-font:12px;--cad-gap:6px}
body[data-cad-density=large]{--cad-button-height:56px;--cad-font:17px;--cad-gap:14px}
body[data-cad] main:has(.atlas-brush-panel){position:relative;grid-template-columns:var(--cad-left,280px) minmax(0,1fr) var(--cad-right,250px);grid-template-areas:'tools map properties';height:calc(100dvh - 131px);min-height:420px;overflow:hidden;background:var(--cad-bg);color:var(--cad-text)}
body[data-cad] main[data-cad-dock=tools-right]{grid-template-areas:'properties map tools'}
body[data-cad] main[hidden],body[data-cad] main [hidden]{display:none!important}
body[data-cad] main>.sidebar{grid-area:tools;display:block;min-width:0;overflow:auto;padding:12px;background:var(--cad-surface);border:0;color:var(--cad-text)}
body[data-cad] main>.atlas-brush-panel{grid-area:properties;padding:12px;min-width:0;overflow:auto;background:var(--cad-surface);border:0;color:var(--cad-text)}
body[data-cad] main[data-tools-hidden=true]>.sidebar,body[data-cad] main[data-brush-hidden=true]>.atlas-brush-panel{display:none!important}
body[data-cad] main>.workspace{grid-area:map;min-width:0;min-height:0;padding:0 12px;background:var(--cad-bg);overflow:hidden}
body[data-cad] .sidebar>h1,body[data-cad] .sidebar>.intro,body[data-cad] .sidebar>.section-heading,body[data-cad] .sidebar>.sidebar-foot{display:none}
body[data-cad] .atlas-tool-menus{margin:0}
body[data-cad] main .atlas-tool-menus details,body[data-cad] main .atlas-brush-panel details{background:var(--cad-surface);border:1px solid var(--cad-line);border-radius:3px;margin-bottom:var(--cad-gap)}
body[data-cad] main summary{font:600 var(--cad-font) Bahnschrift,'Trebuchet MS',sans-serif;color:var(--cad-text);padding:12px;letter-spacing:.3px}
body[data-cad] main details[open]>summary{background:var(--cad-raised);border-color:var(--cad-line)}
body[data-cad] main .atlas-menu-body{padding:var(--cad-gap)}
body[data-cad] main .atlas-tool-grid{gap:var(--cad-gap)}
body[data-cad] main button{color:var(--cad-text);border-color:var(--cad-line);border-radius:3px}
body[data-cad] main button:hover{background:var(--cad-raised)}
body[data-cad] main .atlas-menu-body button,body[data-cad] main .atlas-tool-option>button,body[data-cad] main .atlas-brush-panel button{font-size:var(--cad-font)!important;min-height:var(--cad-button-height)!important;padding:8px 10px}
body[data-cad] main button[aria-pressed=true]{background:var(--cad-selected)!important;border-color:var(--cad-accent)!important;color:var(--cad-text)!important}
body[data-cad] main .atlas-tool-variants{background:var(--cad-raised);border-color:var(--cad-line)}
body[data-cad] main .atlas-tool-variants label,body[data-cad] main .field,body[data-cad] main .label,body[data-cad] main .atlas-brush-heading{color:var(--cad-muted)}
body[data-cad] main select,body[data-cad] main input:not([type=range]):not([type=checkbox]){background:var(--cad-surface);color:var(--cad-text);border-color:var(--cad-line);font-size:var(--cad-font)}
body[data-cad] main .hint,body[data-cad] main .p-help,body[data-cad] main .range-labels,body[data-cad] main .atlas-region-entry small{color:var(--cad-muted)}
body[data-cad] main input[type=range]{accent-color:var(--cad-accent)}
body[data-cad] .cad-command-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid var(--cad-line);margin-bottom:10px;flex-shrink:0}
.cad-workspace-name{display:flex;flex-direction:column;gap:4px}.cad-workspace-name strong{font:600 12px Bahnschrift,'Trebuchet MS',sans-serif;letter-spacing:1.5px}.cad-workspace-name small{font-size:10px;color:var(--cad-muted)}
.cad-command-actions{display:flex;gap:5px;flex-wrap:wrap}.cad-command-actions button{font-size:12px;padding:8px 10px;min-height:34px}
body[data-cad] main .map-top{margin:0 0 8px;gap:10px;flex-wrap:wrap;flex-shrink:0}
body[data-cad] main .map-top h2{font:19px Bahnschrift,'Trebuchet MS',sans-serif;color:var(--cad-text)}
body[data-cad] main .map-top .eyebrow{color:var(--cad-muted)}
body[data-cad] main .atlas-nav{margin-bottom:8px;flex-shrink:0;flex-wrap:wrap}
body[data-cad] main .canvas-wrap{height:auto;min-height:160px;flex:1;border-radius:2px;border:1px solid var(--cad-line);box-shadow:0 0 0 1px #00000008}
body[data-cad] main .bottom-bar{padding:7px 0;flex-shrink:0}
body[data-cad] main .history span{color:var(--cad-muted)}
body[data-cad] main .stats{padding:7px 0;gap:12px;border-color:var(--cad-line);flex-shrink:0;flex-wrap:wrap}
body[data-cad] main .stats>div>span{color:var(--cad-muted)}
body[data-cad] main .zoom button{color:#454733}body[data-cad] main .zoom button:hover{background:#e4dec9}
.cad-resize-handle{position:absolute;z-index:12;top:0;bottom:0;width:8px;margin-left:-4px;cursor:col-resize;touch-action:none;background:transparent}
.cad-resize-handle:hover,.cad-resize-handle:focus-visible{background:#8ca26b99;outline:none}.cad-resize-handle::after{content:'';position:absolute;top:0;bottom:0;left:3px;width:1px;background:var(--cad-line)}
body.cad-resizing,body.cad-resizing *{cursor:col-resize!important;user-select:none!important}
.cad-group-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #d6ceba}.cad-group-row label{flex:1;min-width:160px;font-size:13px}.cad-group-row button{font-size:11px}.cad-settings h3{font:19px Georgia,serif}
@media(max-width:800px){body[data-cad] main:has(.atlas-brush-panel){grid-template-columns:minmax(0,1fr);grid-template-areas:'map' 'tools' 'properties';height:auto;min-height:0;overflow:visible}body[data-cad] main>.workspace{min-height:620px;overflow:visible;padding:0 10px}body[data-cad] main .canvas-wrap{height:55vh;min-height:300px;flex:auto}body[data-cad] main>.sidebar,body[data-cad] main>.atlas-brush-panel{padding:12px;overflow:visible}body[data-cad] main .cad-resize-handle{display:none}.cad-command-actions button{min-height:42px}.cad-command-actions{width:100%}.cad-command-bar{align-items:flex-start}.cad-group-row label{flex-basis:100%}}

.cad-command-actions .cad-theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:40px;padding:8px}.cad-command-actions .cad-settings-button{display:inline-flex;align-items:center;gap:8px}.cad-theme-toggle svg,.cad-settings-button svg{flex-shrink:0;pointer-events:none}

/* Global appearance and settings, including login and project overview. */
.global-app-controls{position:fixed;right:16px;top:14px;z-index:9500;display:flex;align-items:center;gap:7px;padding:5px;border:1px solid var(--cad-line);border-radius:8px;background:var(--cad-surface);color:var(--cad-text);box-shadow:0 3px 15px #00000012}
.global-app-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 10px;color:var(--cad-text);border-color:var(--cad-line)}
.global-app-controls button:hover{background:var(--cad-raised)}
body[data-cad]>header{padding-right:210px}
body[data-cad] #project-lobby .lobby-header{padding-right:210px}
body[data-cad] #project-lobby .lobby-login-form{padding-top:80px}
.cad-settings>section{border:0;padding:12px 0}.cad-settings [hidden]{display:none!important}
.global-settings-tabs{margin:18px 0 4px}.global-settings-backend>.p-header{display:none}.global-settings-backend>.p-grid{grid-template-columns:1fr}
.global-settings-backend[data-settings-view=ai] [data-setting-area=account],.global-settings-backend[data-settings-view=account] [data-setting-area=ai]{display:none!important}
body[data-cad-theme=dark]{color-scheme:dark;--ink:#e1e9e2;--muted:#aabbb1;--paper:#20282a;--line:#4c5a5b;--green:#557347;background:#20282a;color:#e1e9e2}
body[data-cad-theme=dark]>header,body[data-cad-theme=dark] .planner-tabs,body[data-cad-theme=dark] .p-dialog,body[data-cad-theme=dark] .planner-dialog,body[data-cad-theme=dark] dialog{background:#2b3436;color:#e1e9e2;border-color:#4c5a5b}
body[data-cad-theme=dark] #planner-pane,body[data-cad-theme=dark] #project-lobby{background:#20282a;color:#e1e9e2}
body[data-cad-theme=dark] .p-card,body[data-cad-theme=dark] .p-empty,body[data-cad-theme=dark] .p-list,body[data-cad-theme=dark] .p-content,body[data-cad-theme=dark] #project-lobby .lobby-project,body[data-cad-theme=dark] #project-lobby .lobby-friends-sidebar,body[data-cad-theme=dark] #project-lobby .lobby-new-project,body[data-cad-theme=dark] #project-lobby .lobby-sidebar-friend,body[data-cad-theme=dark] #project-lobby .lobby-header,body[data-cad-theme=dark] #project-lobby .lobby-project-body{background:#2b3436;color:#e1e9e2;border-color:#4c5a5b}
body[data-cad-theme=dark] #project-lobby .lobby-login-form{background:#2b3436;color:#e1e9e2}
body[data-cad-theme=dark] button,body[data-cad-theme=dark] #project-lobby button{color:#e1e9e2;border-color:#4c5a5b;background:transparent}
body[data-cad-theme=dark] button:hover,body[data-cad-theme=dark] #project-lobby button:hover{background:#354043}
body[data-cad-theme=dark] button.primary,body[data-cad-theme=dark] #project-lobby button.primary{background:#557347;color:#fff;border-color:#718d61}
body[data-cad-theme=dark] .planner-tabs button.active,body[data-cad-theme=dark] .p-subtabs button.active,body[data-cad-theme=dark] .list-item.selected,body[data-cad-theme=dark] .p-metrics{background:#46573e;color:#e1e9e2}
body[data-cad-theme=dark] input:not([type=range]):not([type=checkbox]),body[data-cad-theme=dark] textarea,body[data-cad-theme=dark] select,body[data-cad-theme=dark] #project-lobby input,body[data-cad-theme=dark] #project-lobby select{background:#20282a;color:#e1e9e2;border-color:#4c5a5b}
body[data-cad-theme=dark] input::placeholder,body[data-cad-theme=dark] textarea::placeholder{color:#9aa99f}
body[data-cad-theme=dark] .p-help,body[data-cad-theme=dark] .p-field,body[data-cad-theme=dark] .p-header p,body[data-cad-theme=dark] .p-card small,body[data-cad-theme=dark] .eyebrow,body[data-cad-theme=dark] .list-item small,body[data-cad-theme=dark] #project-lobby .lobby-note,body[data-cad-theme=dark] #project-lobby .lobby-kicker,body[data-cad-theme=dark] #project-lobby .lobby-project-label{color:#aabbb1}
body[data-cad-theme=dark] .p-warning{background:#4b4030;color:#f2dec1;border-color:#b49766}
body[data-cad-theme=dark] .cad-group-row,body[data-cad-theme=dark] .audit-row{border-color:#4c5a5b}
body[data-cad-theme=dark] dialog::backdrop{background:#07101199}
body[data-cad-theme=dark] .brand-mark{color:#b3cb88;border-color:#8ba86b}
@media(max-width:800px){.global-app-controls{top:8px;right:8px}.global-app-controls .cad-settings-button span{display:none}body[data-cad]>header{padding-right:110px}body[data-cad] #project-lobby .lobby-header{padding-right:110px}.global-settings-tabs button{min-height:42px}}

.atlas-tool-variants>button{display:block;width:100%;text-align:left;margin:6px 0;min-height:42px;border:1px solid #c4cbb0;background:#f4f5e9}.atlas-tool-variants>button:first-of-type{margin-top:0}.atlas-tool-variants>button:last-of-type{margin-bottom:0}body[data-cad] main .atlas-tool-variants>button{background:var(--cad-surface);border-color:var(--cad-line);padding-left:16px}.cad-shortcut-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--line)}.cad-shortcut-row input{width:64px;text-align:center;padding:10px;font:16px Consolas,monospace;border:1px solid var(--line);border-radius:5px}.global-settings-shortcuts h3{margin-top:0}

#sync-state{max-width:440px;white-space:normal;font-size:10px;line-height:1.4}@media(max-width:760px){.planner-tabs>#sync-state{display:block;min-width:170px;padding-left:8px}}

/* Keep global controls in document flow beside save, never above it. */
body[data-cad]>.global-app-controls,body[data-cad] .global-app-controls{position:static;inset:auto;z-index:auto;flex-shrink:0;box-shadow:none;margin:0}
body[data-cad]>header{height:auto;min-height:84px;padding:12px 20px;gap:14px;flex-wrap:wrap}
body[data-cad]>header .document{min-width:130px;flex:1 1 150px}
body[data-cad]>header .file-actions{flex-shrink:0;flex-wrap:wrap}
body[data-cad]>header>.global-app-controls{margin-left:auto}
body[data-cad] #project-lobby .lobby-header{padding-right:24px;flex-wrap:wrap;gap:14px}
body[data-cad] #project-lobby .lobby-header>.global-app-controls{margin-left:auto}
body[data-cad] #project-lobby>.global-app-controls{width:max-content;max-width:calc(100% - 24px);margin:12px 12px 0 auto}
body[data-cad] #project-lobby .lobby-login-form{padding-top:32px}
@media(max-width:800px){body[data-cad]>header{padding:12px;gap:10px}body[data-cad]>header .file-actions{margin-left:auto}body[data-cad] #project-lobby .lobby-header{padding-right:12px}.global-app-controls .cad-settings-button span{display:inline}}

/* Projects are opened from the project selection screen, not the editor toolbar. */
body>header .file-actions #load{display:none!important}

.forest-density-control{margin-top:14px;padding-top:12px;border-top:1px solid var(--cad-line,#c4cbb0)}.forest-density-control>span{display:block;margin-bottom:8px;font-size:13px;color:var(--cad-muted,#596340)}.forest-density-control>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}body[data-cad] main .forest-density-control button{font-size:12px!important;padding:8px 3px;min-height:38px!important}
