:root{--navy:#152847;--blue:#4c85ff;--ink:#263958;--muted:#869ab2;--paper:#fff;--pale:#f5f8fc;--rose:#f579a6;--mint:#7cdeb7;--gold:#ffcf6b}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:ui-rounded,'Trebuchet MS',system-ui,-apple-system,sans-serif;color:var(--ink);background:#ecf4fc}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.44}button:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #6ea2ff;outline-offset:2px}.hidden{display:none!important}
.app{height:100dvh;display:flex;flex-direction:column;min-height:440px}.topbar{height:79px;flex:none;background:white;display:flex;align-items:center;gap:26px;padding:0 27px;border-bottom:1px solid #e3ecf5;z-index:10}.brand{display:flex;align-items:center;gap:10px;min-width:226px}.brand-symbol{width:42px;height:42px;border-radius:13px;background:#22385a;color:#fff;display:grid;place-items:center;font-size:29px;font-weight:1000;position:relative;box-shadow:0 4px 0 #e2eafd}.brand-symbol span{font-size:13px;color:#ffdc72;position:absolute;top:-4px;right:-6px}.brand-name{font-size:23px;font-weight:1000;letter-spacing:-1.6px;line-height:1.06}.brand-name span{color:#fc72a0}.brand-name sup{font-size:8px;color:#acb7cc;vertical-align:top;letter-spacing:0}.brand-sub{font-size:8px;font-weight:1000;letter-spacing:1.85px;color:#93a4bf;margin-top:3px}.view-tabs{background:#edf2f9;padding:5px;border-radius:16px;display:flex;gap:3px}.view-tabs button{border:none;background:none;color:#8194b2;font-size:13px;font-weight:1000;border-radius:12px;padding:11px 21px;white-space:nowrap}.view-tabs button.active{background:#fff;color:#2d548e;box-shadow:0 3px 9px #324a7321}.symbol{font-size:19px;vertical-align:-2px;margin-right:6px}.header-right{margin-left:auto;display:flex;gap:12px;align-items:center}.server-tag{border:1px solid #e5ebf1;border-radius:24px;padding:10px 13px;font-size:10px;letter-spacing:1px;color:#879bb1;font-weight:1000;white-space:nowrap}.signal{display:inline-block;width:7px;height:7px;border-radius:50%;background:#6bd9a2;margin-right:6px;box-shadow:0 0 0 3px #ddf8e9}.coins{border-radius:14px;background:#fff4d5;padding:10px 15px;color:#a36b24;white-space:nowrap;box-shadow:inset 0 0 0 1px #ffedbd}.coins>span{color:#dfab35}.coins b{font-size:15px}.coins small{font-size:10px}.profile{width:40px;height:40px;border:0;border-radius:14px;background:linear-gradient(145deg,#bca5ff,#7f88ec);color:#fff;font-size:20px;font-weight:1000;box-shadow:0 4px 0 #eae9ff}
.layout{display:grid;grid-template-columns:252px minmax(0,1fr) 315px;flex:1;min-height:0}.leftpanel,.rightpanel{min-height:0;background:#fff;overflow:auto;scrollbar-width:thin;scrollbar-color:#d6dfeb transparent}.leftpanel{padding:23px 16px;border-right:1px solid #e4ebf3}.rightpanel{padding:24px 20px;border-left:1px solid #e4ebf3}.eyebrow{display:block;color:#a6b4c7;font-size:10px;letter-spacing:2.1px;font-weight:1000;margin:0 8px 13px}.island-panel{background:#4b7bcd;border-radius:18px;overflow:hidden;box-shadow:0 13px 30px #3766b03a}.island-art{height:99px;position:relative;background:linear-gradient(#69cafa 2%,#75dce1 49%,#42afda 50%,#268abf);overflow:hidden}.sun{position:absolute;right:34px;top:13px;width:42px;height:42px;border-radius:50%;background:#fff3b8;box-shadow:0 0 0 10px #fffcdd26}.little-island{position:absolute;left:25px;top:43px;width:160px;height:67px;border-radius:48%;transform:rotate(-10deg);background:linear-gradient(#ffe9a0 20%,#a7df9b 21%);box-shadow:0 7px 0 #f0ca7f,0 15px 0 #367e96}.palm{position:absolute;font-size:37px;top:-31px;left:24px;transform:rotate(14deg)}.mini-home{position:absolute;left:91px;top:-20px;width:37px;height:35px;background:#f49aac;border:4px solid #fff2d3;border-radius:6px;box-shadow:0 -12px #b56b91;display:grid;place-items:center;color:#fff;font-size:26px}.waterlines{position:absolute;bottom:12px;right:8px;color:#d8fff5;font-size:20px}.island-panel-content{padding:17px 17px 19px;background:linear-gradient(135deg,#526fd0,#8073cd)}.label-light{color:#d5d9ff;font-size:10px;font-weight:1000;letter-spacing:1.7px}.island-panel h2{color:white;margin:7px 0 5px;font-size:27px;letter-spacing:-1px}.island-panel p{color:#e7e9ff;line-height:1.5;font-size:11px;margin:0 0 15px}.progress-bar{height:8px;border-radius:50px;background:#ffffff42;overflow:hidden}.progress-bar>span{height:100%;background:#ffdf7f;border-radius:50px;display:block;width:0;transition:width .3s}.progress-bottom{display:flex;justify-content:space-between;color:#e5eafa;font-size:10px;margin-top:9px}.nav-caption{font-weight:1000;letter-spacing:2px;font-size:10px;color:#a6b4c6;margin:26px 9px 10px}.side-nav{border:0;background:transparent;display:flex;align-items:center;gap:10px;width:100%;color:#758aa4;font-size:12px;text-align:left;border-radius:12px;font-weight:900;padding:11px 12px;margin:3px 0}.side-nav.active{background:#eaf2ff;color:#4381e2}.side-nav:hover{background:#f2f6fb}.nav-ico{font-size:22px;width:26px;line-height:1;text-align:center}.nav-arrow{margin-left:auto;font-size:18px;color:#a9b7c9}.island-details{background:#f7f9fe;border-radius:15px;padding:10px 13px}.island-details>div{display:flex;justify-content:space-between;align-items:center;padding:9px 3px;border-bottom:1px solid #e7edf6;font-size:11px;color:#92a2b7;font-weight:700}.island-details>div:last-child{border-bottom:0}.island-details strong{color:#3c5577;font-size:13px}.side-bottom{display:flex;gap:10px;background:#fff7e7;border:1px solid #fff0d4;border-radius:16px;padding:12px 11px;margin-top:23px}.mayor-avatar{font-size:26px;width:33px}.side-bottom strong{color:#a46f2f;font-size:11px}.side-bottom p{margin:5px 0 0;color:#ae946e;font-size:11px;line-height:1.5}.reset-link{border:0;background:none;color:#9db0c4;font-size:11px;margin:14px 0;padding:8px;text-align:left;font-weight:700}
.stage{min-height:0;position:relative;overflow:hidden;background:#76cfe5}.stage canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;display:block}.stage #mapCanvas{z-index:2}.stage #glCanvas{z-index:2}.sky-decor{position:absolute;inset:0;background:linear-gradient(#92d9fa,#c7edff 39%,#e4faff 61%,#85d6e6);z-index:0;overflow:hidden}.sun-orb{width:85px;height:85px;background:#fff2ba;border-radius:50%;position:absolute;right:16%;top:13%;box-shadow:0 0 0 16px #fff7d83d,0 0 70px #fff4b8}.cloud{position:absolute;width:140px;height:33px;border-radius:80px;background:#fffefaeb;top:12%;animation:floatcloud 26s linear infinite;filter:drop-shadow(0 4px 0 #d4e7ed)}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:#fffefa}.cloud:before{width:66px;height:65px;left:25px;top:-24px}.cloud:after{width:49px;height:46px;left:79px;top:-14px}.cloud-a{left:8%}.cloud-b{left:66%;top:24%;transform:scale(.66);animation-duration:33s}.cloud-c{left:26%;top:31%;transform:scale(.45);animation-duration:40s}@keyframes floatcloud{0%{translate:-60px 0}50%{translate:40px 0}100%{translate:-60px 0}}
.stage-top{position:absolute;left:22px;top:20px;right:22px;z-index:4;display:flex;justify-content:space-between;gap:10px;pointer-events:none}.location-badge,.weather-badge{font-size:11px;font-weight:1000;letter-spacing:.5px;border-radius:13px;padding:11px 13px;background:#fffffff2;color:#496782;box-shadow:0 5px 20px #33618a1a;backdrop-filter:blur(12px)}.location-badge strong{color:#334764}.location-badge .sep{margin:0 7px;color:#c6d0df}.location-dot{display:inline-block;width:8px;height:8px;background:#68d6a0;border-radius:50%;margin-right:7px;box-shadow:0 0 0 3px #e0f9ec}.weather-badge{white-space:nowrap}.selection-badge{z-index:4;position:absolute;top:75px;left:22px;background:#18345dc9;color:#fff;padding:9px 13px;border-radius:10px;font-size:11px;font-weight:800;max-width:90%;pointer-events:none}.map-legend{z-index:4;position:absolute;bottom:92px;left:50%;transform:translateX(-50%);display:flex;gap:13px;white-space:nowrap;background:#fffefdeb;border-radius:13px;padding:10px 13px;font-size:10px;font-weight:900;color:#6e8198;box-shadow:0 5px 20px #29465c24}.map-legend>span{display:flex;gap:5px;align-items:center}.sq{width:11px;height:11px;display:inline-block;border-radius:3px}.available{background:#9ddb96}.chosen{background:#ffce72}.mine{background:#7aacf5}.busy{background:#efabbd}.stage-toolbar{z-index:5;position:absolute;bottom:23px;left:50%;transform:translateX(-50%);background:#fffffff2;display:flex;align-items:center;padding:6px;gap:4px;border-radius:17px;box-shadow:0 12px 28px #22496d3d;border:1px solid #fff;white-space:nowrap}.stage-toolbar button{border:0;background:transparent;color:#6582a1;border-radius:11px;min-width:38px;height:39px;font-size:22px;font-weight:1000}.stage-toolbar button:hover{background:#f1f6fb}.stage-toolbar button.textbtn{font-size:12px;padding:0 11px}.stage-toolbar .switch-view{background:#567fec;color:white;font-size:12px;padding:0 16px;margin-left:4px;box-shadow:0 3px 0 #3b5fb0}.stage-toolbar .switch-view:hover{background:#3f6dde}.tool-divider{width:1px;height:25px;background:#e4eaf3;margin:0 4px}.view3d-hud{position:absolute;right:23px;top:82px;z-index:4;text-align:right;color:#fff;text-shadow:0 2px 8px #1741678f;pointer-events:none}.hud-title{font-size:11px;font-weight:1000;letter-spacing:2px}.hud-sub{font-size:11px;margin-top:5px;color:#fff}.hud-compass{font-size:15px;margin:9px 4px}.hud-compass span{font-size:27px;color:#ffd775}.movepad{position:absolute;bottom:105px;left:20px;z-index:6;text-align:center;pointer-events:auto}.movepad button{background:#ffffffba;border:1px solid #fff;color:#34587c;border-radius:12px;width:45px;height:45px;font-weight:1000;font-size:22px;touch-action:none}.movepad div{display:flex;gap:3px;margin-top:3px}.toast{position:absolute;z-index:20;top:120px;left:50%;transform:translateX(-50%) translateY(-10px);color:white;font-size:12px;font-weight:900;background:#243b60;padding:12px 19px;border-radius:13px;opacity:0;pointer-events:none;transition:.25s;max-width:90%;text-align:center;box-shadow:0 12px 27px #14294455}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.runtime-error{z-index:10;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:20px;box-shadow:0 12px 45px #1b385b55;padding:25px;min-width:260px;display:grid;gap:11px;text-align:center}.runtime-error>strong{font-size:18px}.runtime-error>span{font-size:12px;color:#7889a2}.runtime-error>button{background:#486edb;color:white;border:0;border-radius:10px;padding:10px}.footer{height:30px;flex:none;background:#fff;border-top:1px solid #e5edf4;display:flex;align-items:center;justify-content:space-between;padding:0 22px;color:#a1afc1;font-size:9px;letter-spacing:.7px;font-weight:1000}
.panel-heading h2{font-size:27px;line-height:1.1;margin:4px 7px 9px;letter-spacing:-1px}.panel-heading h2 em{font-style:normal;color:#f178a1}.panel-heading p{font-size:11px;color:#91a2b5;line-height:1.65;margin:0 7px 20px}.panel-section{border-top:1px solid #edf0f5;padding:18px 0 19px}.section-title{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.15px;color:#607895;font-weight:1000;margin-bottom:14px}.section-title>span{background:#eaf1ff;color:#618ce4;padding:5px 7px;border-radius:6px;font-size:10px}.chosen-summary{display:flex;align-items:center;gap:12px;background:#f5f8fe;border:1px solid #ebf0f7;border-radius:13px;padding:11px;margin-bottom:12px}.plot-icon{width:43px;height:43px;border-radius:12px;background:#d5e6ff;color:#4e82de;display:grid;place-items:center;font-size:27px}.chosen-summary strong{font-size:12px;display:block;color:#415a7d}.chosen-summary span{font-size:10px;display:block;color:#9baac0;margin-top:4px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.price-line{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#95a4b8;margin:12px 3px}.price-line b{font-size:16px;color:#365477}.main-button{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;padding:13px 14px;border-radius:11px;background:linear-gradient(110deg,#f878a5,#f6a66a);font-size:12px;font-weight:1000;color:#fff;box-shadow:0 5px 14px #f69f9a52}.main-button.dark{background:linear-gradient(110deg,#507ee7,#686ee0);box-shadow:0 5px 14px #6c7fdf39;margin-top:12px}.main-button>span{font-size:17px}.main-button:hover:not(:disabled){filter:brightness(1.04)}.outline-button{width:100%;border:1px solid #e3eaf4;background:#fff;color:#8094aa;border-radius:10px;padding:11px;font-size:11px;font-weight:900;margin-top:8px}.outline-button:hover{background:#f5f8fe}.footnote{font-size:10px;color:#adb7c7;text-align:center;margin:8px 0 0}.building-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.building-card{border:2px solid #e8eef7;background:#fff;border-radius:14px;padding:9px 7px 11px;min-width:0;text-align:center;transition:background .15s,border-color .15s}.building-card.active{border-color:#f8b868;background:#fff8ec}.building-card:hover{border-color:#a7c4ed}.building-thumb{height:52px;width:100%;border-radius:10px;position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:7px;background:#edf6f4;overflow:hidden}.building-thumb svg{width:76px;height:57px;overflow:visible}.building-card strong{font-size:11px;color:#415878;display:block}.building-card small{font-size:9px;color:#a0b0c3;display:block;margin-top:2px}.building-description{font-size:11px;color:#8b9db4;background:#f8fafd;border-radius:9px;padding:11px;margin-top:11px;line-height:1.45}.message-panel textarea{width:100%;border:1px solid #e4eaf4;background:#f9fbff;border-radius:11px;resize:vertical;padding:10px;font-size:11px;color:#425a78;margin-top:11px}.lot-status{font-size:11px;color:#8498b2;line-height:1.6}.panel-bottom{color:#adb7c3;font-size:9px;font-weight:1000;letter-spacing:.3px;text-align:center;margin:15px 0}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6ad5a5;margin-right:5px}.panel-bottom strong{color:#728ead}
.modal{position:fixed;inset:0;background:#0c1b34a9;display:grid;place-items:center;z-index:40;padding:20px;backdrop-filter:blur(5px)}.modal-card{width:min(410px,100%);border-radius:25px;padding:29px;background:#fff;text-align:center;box-shadow:0 25px 85px #00132e73}.modal-spark{width:58px;height:58px;background:#fff0c9;color:#dfa83b;border-radius:18px;margin:0 auto 15px;font-size:40px;display:grid;place-items:center}.modal-card h2{margin:0;font-size:23px}.modal-card p{font-size:12px;color:#8e9cb2;line-height:1.65}.modal-card input{border-radius:12px;border:1px solid #dae5f2;padding:15px;width:100%;font-weight:700;margin:11px 0}.modal-cancel{border:0;background:transparent;color:#99a9b9;font-size:11px;margin-top:17px}
@media(max-width:1250px){.layout{grid-template-columns:215px minmax(0,1fr) 272px}.topbar{padding:0 16px;gap:12px}.brand{min-width:192px}.brand-name{font-size:21px}.view-tabs button{padding:10px 12px}.leftpanel{padding:16px 12px}.rightpanel{padding:17px 13px}.panel-heading h2{font-size:23px}.server-tag{display:none}}
@media(max-width:950px){.layout{grid-template-columns:minmax(0,1fr) 265px}.leftpanel{display:none}.brand{min-width:0}.topbar{height:68px}.brand-symbol{width:35px;height:35px;font-size:25px}.brand-name{font-size:19px}.brand-sub{font-size:7px}.header-right .profile{display:none}}
@media(max-width:680px){.layout{grid-template-columns:1fr}.rightpanel{position:fixed;z-index:13;top:auto;bottom:70px;right:10px;width:283px;max-height:62dvh;overflow:auto;border:1px solid #e6edf6;border-radius:18px;box-shadow:0 10px 45px #17395d50;display:none}.rightpanel.mobile-open{display:block}.topbar{gap:6px;padding:0 8px}.brand{gap:5px}.brand-symbol{width:29px;height:29px;font-size:21px;border-radius:9px}.brand-name{font-size:16px}.brand-sub{display:none}.view-tabs{padding:3px;border-radius:10px}.view-tabs button{padding:8px;font-size:10px;border-radius:8px}.view-tabs .symbol{font-size:12px;margin-right:2px}.coins{padding:7px 9px;font-size:11px}.coins b{font-size:11px}.header-right{gap:3px}.weather-badge{display:none}.stage-top{left:10px;top:10px}.location-badge{padding:8px;font-size:10px}.selection-badge{left:10px;top:55px;font-size:10px}.map-legend{bottom:83px;gap:6px;padding:8px 6px;font-size:8px}.sq{width:8px;height:8px}.stage-toolbar{bottom:12px;gap:1px}.stage-toolbar button{min-width:30px;height:34px}.stage-toolbar button.textbtn{padding:0 4px}.stage-toolbar button.textbtn span{display:none}.stage-toolbar .switch-view{font-size:10px;padding:0 9px}.footer{font-size:7px;padding:0 7px}.footer span:nth-child(2){display:none}.view3d-hud{top:60px;right:9px}.movepad:not(.hidden){display:block}.stage{min-height:0}.building-list{gap:6px}}

/* Empty-world first island purchase flow */
.island-setup{display:none}
body.no-island .layout{grid-template-columns:minmax(0,1fr)}
body.no-island .leftpanel,body.no-island .rightpanel{display:none}
body.no-island .view-tabs button:not(#worldBtn){display:none}
body.no-island .stage{grid-column:1;min-height:0;background:#79cfe2}
body.no-island #mapCanvas,body.no-island #glCanvas,body.no-island .stage-top,body.no-island .selection-badge,body.no-island .map-legend,body.no-island .view3d-hud,body.no-island .movepad,body.no-island .stage-toolbar{display:none!important}
body.no-island .sky-decor{background:linear-gradient(180deg,#a9e4f4 0%,#d4f4f6 35%,#81d5e3 36%,#3aa8cf 100%)}
body.no-island .sun-orb,body.no-island .cloud{display:none}
body.no-island #islandSetup{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}
.island-setup-card{width:min(560px,100%);max-height:100%;overflow:auto;padding:28px 32px 24px;background:#fffffffa;border:1px solid #ffffff;border-radius:26px;box-shadow:0 24px 70px #174c6a42;backdrop-filter:blur(12px)}
.setup-eyebrow{display:inline-block;color:#6e89b1;font-size:10px;font-weight:1000;letter-spacing:2px;background:#eef3ff;border-radius:30px;padding:8px 12px}
.island-setup-card h1{font-size:30px;line-height:1.1;letter-spacing:-1.1px;color:#253d60;margin:16px 0 8px}
.setup-intro{font-size:13px;line-height:1.55;color:#7e91a9;margin:0 0 18px}
.setup-field{display:block;color:#60758f;font-size:11px;font-weight:900;margin:12px 0 0}
.setup-field input,.setup-field select{display:block;width:100%;margin-top:7px;border:1px solid #dce6f0;border-radius:11px;background:#f9fbfe;color:#314965;padding:11px 12px;font-weight:700;font-size:13px}
.setup-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.island-preview-area{margin-top:13px;border:1px solid #e8eef6;border-radius:14px;padding:8px 10px;background:#f8fbff}
.island-preview-heading{display:flex;justify-content:space-between;gap:8px;color:#5d7492;font-size:10px;margin:0 2px 6px}
.island-preview-heading span{color:#9aa9bc}
.island-preview-water{height:92px;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:radial-gradient(ellipse at 25% 35%,#a4e8ee 0 3%,transparent 4%),radial-gradient(ellipse at 77% 65%,#b7f0ef 0 3%,transparent 4%),linear-gradient(145deg,#73d2e3,#369fc9)}
.island-preview-land{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;width:168px;height:62px;border:8px solid #ffe7ac;border-radius:48%;background:linear-gradient(180deg,#a7df9b,#80ca8b);box-shadow:0 6px 0 #b98858,0 10px 0 #276c89;transition:width .28s,height .28s,border-radius .28s,background .28s,filter .28s}
.island-preview-land.shape-rotonda{width:108px;height:76px;border-radius:50%}
.island-preview-land.shape-ovale{width:170px;height:62px;border-radius:50%}
.island-preview-land.shape-allungata{width:220px;height:48px;border-radius:38%}
.island-preview-land.shape-quadrata{width:132px;height:112px;border-radius:12px}
.island-preview-land.terrain-tropicale{background:linear-gradient(180deg,#b6e58e 0 30%,#72c989 31% 100%)}
.island-preview-land.terrain-costiero{background:linear-gradient(180deg,#f4dc9f 0 33%,#75cdb0 34% 100%)}
.island-preview-land.terrain-vulcanico{background:linear-gradient(180deg,#c5b997 0 28%,#777f78 29% 100%);filter:saturate(.72)}
.preview-tree,.preview-home,.preview-rock{position:relative;z-index:1;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#fff9e4b8;font-size:18px;box-shadow:0 2px 5px #29435c26}
.preview-home{width:27px;height:27px;border-radius:7px;color:#bd638a;font-size:23px;font-weight:1000}
.preview-rock{width:16px;height:16px;background:#ffffff8a;color:#8a8c80;font-size:10px}
.island-preview-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:7px 2px 0;color:#526985;font-size:10px}
.island-preview-caption strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.island-preview-caption span{color:#8b9bb0;text-align:right;white-space:nowrap}
.setup-economy{margin-top:16px;background:#f4f7ff;border:1px solid #e9eefb;border-radius:14px;padding:4px 13px}
.setup-economy>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #e5ebf5;font-size:11px;color:#8292a9}
.setup-economy>div:last-child{border-bottom:0}
.setup-economy strong{color:#3c5a83;text-align:right}
.setup-note{font-size:10px;line-height:1.5;color:#9aa7b7;margin:12px 2px 4px}
.setup-buy{margin-top:11px}
.setup-bonus{display:block;border:0;background:none;color:#879bb4;font-weight:800;font-size:11px;padding:10px;margin:2px auto 0}
body.no-island .footer{z-index:9}
@media(max-width:680px){body.no-island .layout{grid-template-columns:1fr}body.no-island .stage{min-height:0}.island-setup-card{padding:22px 20px 16px;border-radius:21px}.island-setup-card h1{font-size:26px}.setup-intro{font-size:12px}body.no-island #islandSetup{padding:12px}.setup-row{gap:8px}}

.clear-selection{display:block;margin:0 2px 8px auto;border:0;background:transparent;color:#809bc1;font-size:10px;font-weight:900;padding:3px 0}.clear-selection:hover{color:#e781a2}

.weather-badge{border:0;cursor:pointer}.weather-badge:hover{color:#3174bd}.stage.night .sky-decor{background:radial-gradient(circle at 80% 16%,#385f9e,#15345f 60%,#102444)}.stage.night .sun-orb{background:#edf4fc;box-shadow:0 0 0 14px #fff8df18,0 0 44px #e2eafa9c}.stage.night .cloud{opacity:.2}.stage.night #mapCanvas,.stage.night #glCanvas{filter:brightness(.62) saturate(.93)}.stage.night .location-badge,.stage.night .weather-badge{background:#e9f1ffed}
.stage-top .weather-badge{pointer-events:auto}

/* Multi-island local atlas and per-building settings */
.view-tabs button#worldBtn{background:#e8f4ff;color:#4f78bd;padding:10px 14px}
.building-settings{display:grid;gap:8px;margin-top:9px}.building-skills{font-size:9px;line-height:1.45;color:#728eab;background:#eff5fb;border-radius:8px;padding:8px}.building-setting{display:grid;gap:5px;font-size:10px;font-weight:800;color:#657d98}.building-setting input{width:100%;min-width:0;border:1px solid #e2eaf3;border-radius:8px;padding:8px 9px;background:#fbfdff;color:#344d6c;font-size:11px}
.world-screen{display:none;position:absolute;inset:0;z-index:9;overflow:auto;padding:clamp(20px,4vw,54px);background:linear-gradient(155deg,#edf9ff,#e7f0ff 55%,#fcf3e2);flex-direction:column;gap:24px}.world-screen:not(.hidden){display:flex}.world-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;max-width:1200px;width:100%;margin:0 auto}.world-header h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1.8px;margin:12px 0 7px;color:#293f65}.world-header p{color:#8194ad;font-size:13px;margin:0}.world-actions{width:220px;flex:none}.world-actions .outline-button{margin-top:6px}.world-island-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:16px;max-width:1200px;width:100%;margin:0 auto}.world-island-card{position:relative;overflow:hidden;background:#ffffffed;border:1px solid #e4ecf6;border-radius:19px;box-shadow:0 10px 30px #506d9812}.world-island-art{height:120px;display:grid;place-items:center;font-size:46px;background:linear-gradient(160deg,#a6dfed 0 45%,#5ab7cf 46%);border-bottom:5px solid #f7dfaa}.world-island-art.shape-rotonda{clip-path:ellipse(47% 48% at 50% 45%)}.world-island-art.shape-allungata{clip-path:ellipse(49% 40% at 50% 44%)}.world-island-art.shape-quadrata{background:linear-gradient(160deg,#a7df9b 0 65%,#82c686 66%)}.world-island-art.terrain-vulcanico{background:linear-gradient(150deg,#84877b,#b0a184 54%,#565c55)}.world-island-art.terrain-costiero{background:linear-gradient(160deg,#92e0eb 0 40%,#f2dda5 41% 59%,#78c99f 60%)}.world-island-body{padding:15px}.world-island-body>small{display:block;color:#91a1b4;font-size:10px}.world-island-body h2{margin:7px 0 5px;color:#344c70;font-size:19px}.world-island-body code{font-size:10px;color:#8195af}.world-island-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}.world-island-actions .main-button,.world-island-actions .outline-button{margin:0;padding:10px;font-size:10px}.world-active-badge{position:absolute;right:9px;top:9px;z-index:1;background:#fff3cf;color:#9b702d;border-radius:20px;padding:6px 9px;font-size:9px;font-weight:1000;letter-spacing:.6px}.world-empty{max-width:1200px;width:100%;margin:8px auto;color:#8395ad;background:#ffffffa8;border:1px dashed #c8d7e9;border-radius:17px;padding:28px;text-align:center}.world-footnote{max-width:1200px;width:100%;margin:auto auto 0;color:#92a1b4;font-size:10px;line-height:1.6;text-align:center}
body.browsing-world .layout,body.creating-island .layout{grid-template-columns:minmax(0,1fr)}body.browsing-world .leftpanel,body.browsing-world .rightpanel,body.creating-island .leftpanel,body.creating-island .rightpanel{display:none!important}body.browsing-world .stage> :not(#worldScreen),body.creating-island .stage> :not(#islandSetup){display:none!important}body.browsing-world #worldScreen{display:flex!important}body.browsing-world .view-tabs button:not(#worldBtn){display:none}body.browsing-world .stage,body.creating-island .stage{grid-column:1;min-height:0;background:#e9f4fd}body.creating-island .view-tabs{display:none}body.creating-island #islandSetup{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}body.creating-island .footer,body.browsing-world .footer{z-index:9}
@media(max-width:680px){.view-tabs button#worldBtn{padding:7px 8px;font-size:9px}.world-screen{padding:16px 12px;gap:15px}.world-header{display:grid;gap:12px}.world-header h1{font-size:29px}.world-header p{font-size:11px}.world-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%}.world-actions .outline-button{margin:0;padding:11px 7px;font-size:10px}.world-island-list{gap:10px}.world-island-art{height:92px}.world-footnote{font-size:9px}body.creating-island #islandSetup{padding:12px}}
.building-live-details:not(:empty){display:grid;gap:5px;padding:9px;margin-top:8px;border-radius:9px;background:#f7f9fe;color:#7187a1;font-size:10px;line-height:1.4}.building-live-details strong{color:#425e82;font-size:11px}.building-live-details a{color:#4c7bd2;overflow-wrap:anywhere}
.server-auth-fields{display:grid;gap:8px;margin:6px 0 12px}.server-auth-fields input{margin:4px 0}.server-auth-fields .outline-button{margin:0}.account-status{min-height:18px;margin:0 0 6px!important;color:#6480a2!important}
