/* Protect the Plants v2 UX enhancements — zero dependency */
.ptp-nav-tools{display:inline-flex;align-items:center;gap:.55rem;margin-left:.25rem}.ptp-tool-button{white-space:nowrap}.ptp-network{display:inline-flex;align-items:center;gap:.35rem;padding:.38rem .62rem;border:1px solid rgba(145,221,163,.24);border-radius:999px;background:rgba(10,30,18,.72);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#bce8c7}.ptp-network::before{content:"";width:.48rem;height:.48rem;border-radius:50%;background:#5be77c;box-shadow:0 0 0 .18rem rgba(91,231,124,.12)}.ptp-network[data-state="error"]{color:#f6d58d;border-color:rgba(246,213,141,.3)}.ptp-network[data-state="error"]::before{background:#e9b74c;animation:ptpPulse 1s infinite}.ptp-network[data-state="offline"]{color:#ffb0a4;border-color:rgba(255,120,100,.32)}.ptp-network[data-state="offline"]::before{background:#ff6e5b;box-shadow:none}.ptp-offline .battle-top{box-shadow:inset 0 -2px 0 rgba(255,110,91,.35)}
@keyframes ptpPulse{50%{opacity:.35;transform:scale(.78)}}
.ptp-placement-shortcuts{margin-top:.7rem;font-size:.76rem;letter-spacing:.03em}.ptp-coordinate-readout{margin-left:auto;min-width:3.1rem;padding:.28rem .48rem;border:1px solid rgba(132,217,154,.2);border-radius:.5rem;background:rgba(7,18,12,.7);color:#9fe7b0;font-weight:900;font-variant-numeric:tabular-nums;text-align:center}.board .cell.ptp-preview-valid{position:relative;z-index:3;background:linear-gradient(145deg,rgba(73,207,109,.45),rgba(37,109,57,.28));box-shadow:inset 0 0 0 2px rgba(126,246,157,.9),0 0 12px rgba(80,225,120,.25)}.board .cell.ptp-preview-invalid{position:relative;z-index:3;background:rgba(180,49,49,.36);box-shadow:inset 0 0 0 2px rgba(255,117,104,.92)}.board .cell.ptp-aimed{position:relative;z-index:4;outline:2px solid rgba(220,255,226,.8);outline-offset:-3px}.board .cell.ptp-aimed::after{content:"";position:absolute;inset:23%;border:1px solid rgba(239,255,242,.76);border-radius:50%;pointer-events:none}.board .cell.ptp-shot-armed{z-index:5!important;animation:ptpTargetPulse .7s infinite alternate;box-shadow:inset 0 0 0 3px #f1ca5d,0 0 16px rgba(241,202,93,.55)!important}.board .cell.ptp-shot-armed::before,.board .cell.ptp-shot-armed::after{content:"";position:absolute;pointer-events:none;background:#f8e5a0}.board .cell.ptp-shot-armed::before{left:50%;top:10%;bottom:10%;width:1px}.board .cell.ptp-shot-armed::after{top:50%;left:10%;right:10%;height:1px;border:0;border-radius:0}.board .cell:focus-visible{z-index:6;outline:3px solid #d9f8df;outline-offset:-2px;box-shadow:0 0 0 2px rgba(9,24,14,.9),0 0 16px rgba(147,237,169,.5)}
@keyframes ptpTargetPulse{from{filter:brightness(1)}to{filter:brightness(1.35)}}
.ptp-fullscreen{white-space:nowrap}.ptp-rematch-note{font-size:.78rem}.result-banner .ptp-rematch-note{align-self:center}.ptp-dialog{width:min(760px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));padding:0;border:1px solid rgba(134,221,156,.32);border-radius:22px;background:#07110c;color:#eaf7ed;box-shadow:0 30px 90px rgba(0,0,0,.65);overflow:hidden}.ptp-dialog::backdrop{background:rgba(1,7,4,.76);backdrop-filter:blur(8px)}.ptp-dialog-card{padding:0;margin:0}.ptp-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem 1.4rem 1.1rem;border-bottom:1px solid rgba(148,219,165,.14);background:linear-gradient(180deg,rgba(24,67,35,.52),rgba(7,17,12,0))}.ptp-dialog-head small{display:block;margin-bottom:.3rem;font-size:.7rem;font-weight:900;letter-spacing:.16em;color:#91dca4}.ptp-dialog-head h2{margin:0;font-size:clamp(1.3rem,3vw,2rem)}.ptp-icon-btn{width:2.35rem;height:2.35rem;border:1px solid rgba(156,224,172,.2);border-radius:50%;background:rgba(6,20,12,.75);color:#eef9f0;font-size:1.5rem;cursor:pointer}.ptp-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.25rem 1.4rem}.ptp-dialog-grid section{padding:1rem;border:1px solid rgba(139,210,155,.14);border-radius:14px;background:rgba(11,29,18,.62)}.ptp-dialog-grid h3{margin:.05rem 0 .65rem;color:#b9ebc5}.ptp-dialog-grid ol,.ptp-dialog-grid ul{margin:.45rem 0 0;padding-left:1.2rem;line-height:1.55;color:#cadccf}.ptp-dialog-grid li+li{margin-top:.4rem}.ptp-dialog kbd{display:inline-block;min-width:1.6rem;padding:.1rem .34rem;border:1px solid rgba(205,244,214,.26);border-bottom-width:2px;border-radius:.36rem;background:#10261a;color:#f4fff6;text-align:center;font:800 .75rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.ptp-setting-list{display:grid;gap:.55rem;padding:0 1.4rem 1.25rem}.ptp-setting-list label{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.82rem .9rem;border:1px solid rgba(134,211,152,.13);border-radius:12px;background:rgba(9,26,16,.58);cursor:pointer}.ptp-setting-list span{display:grid;gap:.16rem}.ptp-setting-list strong{font-size:.92rem}.ptp-setting-list small{color:#9db3a4;line-height:1.35}.ptp-setting-list input{width:1.15rem;height:1.15rem;accent-color:#61d981}.ptp-dialog-actions{display:flex;justify-content:flex-end;padding:1rem 1.4rem 1.3rem;border-top:1px solid rgba(148,219,165,.12)}
@media (max-width:900px){.ptp-nav-tools{width:100%;justify-content:flex-end;margin:.4rem 0 0}.ptp-network{margin-right:auto}.ptp-fullscreen{display:none}.ptp-dialog-grid{grid-template-columns:1fr}.ptp-dialog{max-height:calc(100dvh - 12px);overflow:auto}}
@media (max-width:620px){.ptp-tool-button{font-size:.72rem}.ptp-network{font-size:.65rem}.ptp-dialog-grid,.ptp-setting-list{padding-left:.9rem;padding-right:.9rem}.ptp-dialog-head{padding-left:.95rem;padding-right:.95rem}.ptp-setting-list label{align-items:flex-start}.ptp-coordinate-readout{min-width:2.7rem}.placement-panel .form-row{gap:.4rem}.placement-panel .form-row .btn{flex:1 1 auto}}
@media (prefers-reduced-motion:reduce){.ptp-network[data-state="error"]::before,.board .cell.ptp-shot-armed{animation:none!important}}
