/* The Android app's default Aurora palette and compact Material controls. */
:root{color-scheme:light;--bg:#eff6ff;--panel:#f8fbff;--panel2:#dcebff;--line:#b7c7da;--text:#172033;--muted:#607086;--gold:#2563eb;--mint:#0f8c80;--red:#c52d36;font-family:Roboto,Arial,system-ui,sans-serif}
body{background:linear-gradient(145deg,#eff6ff,#f8fbff 55%,#e5f6f2);min-height:100vh}button,input,select,textarea{font-family:inherit}button:disabled{opacity:.5}.topbar{background:#f8fbfff0;padding-top:12px;padding-bottom:12px;min-height:78px;gap:30px;border-bottom:1px solid #b7c7da}.brand{font-family:inherit;font-size:25px;letter-spacing:-.5px;color:#172033}.brand small{font-family:inherit;font-size:12px;letter-spacing:1px;color:#607086}.brand-td{color:#2563eb}.brand img{width:48px;height:48px}.nav{font-size:14px;padding:12px 18px;border-radius:12px}.nav.active{background:#dcebff;border:0;color:#1b52be}.account>span{font-size:14px}main{padding-top:24px}.eyebrow{font-size:12px;letter-spacing:1.3px;color:#2860b8}.workspace-heading{margin-bottom:20px}.workspace-heading p{font-size:14px;margin-bottom:0}h1{font:700 clamp(25px,3vw,34px) Roboto,Arial,sans-serif;letter-spacing:-.7px;margin:7px 0}h2{font:700 22px Roboto,Arial,sans-serif}h3{font-size:16px}.stage-picker label{font-size:14px}input,select,textarea{background:#fff;border-color:#b7c7da;border-radius:12px}.button{border-radius:12px;padding:10px 16px;min-height:40px;background:#fff;border-color:#aabdd5;gap:10px}.button:hover{filter:none;background:#e5efff}.button.primary{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 3px 8px #2563eb22}.button.primary:hover{background:#1c51ca}.button.light{background:#2563eb;border-color:#2563eb;color:#fff}.battle-panel{box-shadow:0 6px 24px #214d8c0b;background:#f8fbff}.battle-hud{background:#dcebff;padding:14px 20px;gap:clamp(16px,3vw,48px)}.battle-hud small{font-size:12px;letter-spacing:.5px;margin-bottom:5px}.battle-hud strong{font:700 23px Roboto,Arial,sans-serif}.battle-hud>span:nth-child(2) strong{color:#138064}.battle-hud>span:nth-child(3) strong{color:#975900}.icon-button{background:#f8fbff;border-color:#a8bfdd;color:#214e94;font-weight:700;min-height:36px}.map-viewport{background:#253b39;justify-content:flex-start;align-items:flex-start;height:56vh;min-height:330px;max-height:700px;overscroll-behavior:contain}.map-viewport canvas{max-width:none;max-height:none;flex:none;object-fit:initial;margin:0 auto}.map-caption{display:none}.battle-toolbar{flex-wrap:wrap;padding:14px 16px 6px}.switch{font-size:14px}.notice{font-size:14px;padding:9px 16px 14px;line-height:1.5}.map-options{display:flex;align-items:center;gap:8px;background:#edf4fc;padding:8px 14px;border-top:1px solid #c8d6e8;font-size:13px}.map-options .icon-button{margin:0;padding:4px 12px}.map-options .switch{margin-left:auto}.pill{font-size:12px;background:#dcebff;color:#2856a0}.compact,.trainer-card p,.tower-details p{font-size:14px}.team-list{gap:8px}.pokemon-card{background:#f8fbff;border-color:#b7c7da;min-height:68px;padding:8px 12px;border-radius:12px}.pokemon-card:hover{background:#edf4ff}.pokemon-card.selected{background:#dcebff;border-color:#2563eb;box-shadow:inset 3px 0 #2563eb}.pokemon-card small{font-size:12px;color:#52677e}.pokemon-card strong{font-size:14px}.pokemon-card .cost{font:700 17px Roboto,Arial,sans-serif;color:#936000}.trainer-card,.tower-details{padding:16px;border-color:#b7c7da;background:#f8fbff}.trainer-card{border-top:3px solid #14b8a6}.text-button{color:#1e57c6;font-size:14px}.error{color:#c52d36}dialog{background:#f8fbff;border-color:#b7c7da;box-shadow:0 20px 80px #17203340}dialog::backdrop{background:#17203388;backdrop-filter:blur(4px)}dialog h2{font-size:27px}.editor-panel{background:#f8fbff}.editor-tools .tool{background:#fff;color:#172033;font-size:14px;border-color:#b7c7da;border-radius:10px}.editor-tools .tool.active{background:#dcebff;color:#1b52be;border-color:#2563eb}.editor-help,.validation,.editor-panel label{font-size:14px}.validation{color:#087856;padding:12px 0}.validation.invalid{color:#bd2635}.editor-map{height:65vh;background:#253b39;overscroll-behavior:contain}.editor-map canvas{display:block;max-width:none}.editor-panel textarea{font-size:13px;background:#fff;line-height:1.55;min-height:280px}.editor-panel input{font-size:14px}.space-top{margin-top:24px}footer{font-size:12px;color:#607086}
@media(max-width:1020px){.topbar{gap:12px}.battle-hud{gap:18px}.editor-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:740px){.topbar{gap:8px;min-height:70px}.brand{font-size:21px}.brand small{font-size:10px}.brand img{width:36px;height:36px}.account .button{font-size:14px;min-height:38px}.nav{font-size:14px;padding:10px}.workspace-heading{margin-bottom:16px}.battle-hud{padding:12px;gap:16px;flex-wrap:wrap}.battle-hud small{font-size:11px}.battle-hud strong{font-size:20px}.team-list{grid-template-columns:repeat(3,minmax(0,1fr))}.pokemon-card{flex-direction:column;gap:5px;text-align:center;padding:9px 4px}.pokemon-card img{width:50px;height:46px}.pokemon-card strong{font-size:14px}.pokemon-card small{font-size:12px}.pokemon-card .cost{margin:0;font-size:14px}.team-panel{gap:12px}.map-viewport{height:48vh;min-height:300px}.map-viewport canvas{max-width:none;max-height:none}.map-options{flex-wrap:wrap}.map-options .switch{margin-left:5px}.editor-layout{grid-template-columns:1fr}.editor-map{height:55vh}.editor-tools{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.wave-row{display:grid;grid-template-columns:1fr 1fr;gap:0 10px;padding:12px 0;border-top:1px solid var(--line)}.wave-row>strong{align-self:center;font-size:14px}.wave-row>.text-button{padding:0;margin:0;text-align:right}.wave-row label{margin:7px 0;font-size:13px}.wave-row label:nth-of-type(1){grid-column:1/-1}.wave-row input{padding:8px;font-size:14px}

.signed-out .topbar nav{visibility:hidden}.signed-out .topbar{border:0;background:transparent}.signed-out .account{visibility:hidden}.signed-out #accountDialog::backdrop{background:linear-gradient(140deg,#e7f1ffd9,#e8faf3d9);backdrop-filter:blur(3px)}.signed-out #accountDialog{border-radius:22px;border:1px solid #b7c7da;padding:34px;background:#f8fbff}.signed-out .dialog-close{display:none}
