/* Polar Beacon Tools — v14 human-first visual system */
:root{
  --bg:#0d1320;--bg2:#121a2a;--panel:#171f2f;--panel2:#1d2739;
  --line:#303b50;--text:#f4f1e9;--muted:#b8c0cf;--accent:#f1c84b;
  --accent2:#74b7d8;--accent3:#d98ea5;--good:#67c596;--bad:#e88691;
  --shadow:0 14px 34px rgba(0,0,0,.25);--radius:18px;--radius-sm:12px
}
body{background:linear-gradient(180deg,var(--bg),var(--bg2));background-attachment:fixed;color:var(--text)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 62%)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter:none;box-shadow:var(--shadow)}
.panel{padding:18px}.btn{border-radius:11px;padding:10px 14px}.btn-primary{background:var(--accent);color:#25200e}.btn-secondary{background:var(--panel2);border-color:var(--line)}
.btn-quiet{background:transparent;border:1px solid transparent}.btn:hover,.suite-pill:hover,button:hover{transform:none;filter:brightness(1.07)}
.field{background:#101827;border-color:var(--line);border-radius:11px}.tab,.chip,.tag,.due-label,.pack-state{border-radius:999px}
.eyebrow{font-size:.72rem;letter-spacing:.095em}.hero h1,.calc-hero h1,.track-hero h1,.draw-hero h1,.challenge-hero h1{font-size:clamp(2.5rem,6vw,4.65rem)!important;line-height:.96!important;letter-spacing:-.055em!important}
.hero p,.calc-hero p,.track-hero p,.draw-hero p,.challenge-hero p{max-width:680px!important;line-height:1.5!important}
.section-title{margin:24px 0 12px}.section-title h2{font-size:clamp(1.45rem,3vw,2.1rem)!important;letter-spacing:-.035em!important}.section-title p{max-width:650px}
.suite-brand-mark{background:#202a3c;border-color:#46536b;border-radius:9px;box-shadow:none}.suite-pill{border-radius:10px;background:#182235;border-color:#344158;backdrop-filter:none}.suite-menu-panel{background:#151e2d;border-color:#39465c;border-radius:14px;backdrop-filter:none}.suite-menu-item{border-radius:9px}.suite-menu-item.current{background:#273347;color:#f6d66a}.suite-plus-pill[data-plan="free"]{background:#2a2618;color:#f5d76f;border-color:#655628}
.side-nav{border-radius:15px!important}.side-nav button,.side-nav a{border-radius:9px!important}.side-nav button.active,.side-nav a.active{background:#29364a!important;color:#f4d56a!important}
.modal,[data-suite-modal],.pb-tutorial-overlay{position:fixed!important;inset:0!important;z-index:500!important;background:rgba(4,8,15,.78)!important;display:none!important;place-items:center!important;padding:18px!important;overflow:auto!important;transform:none!important}
.modal.show,[data-suite-modal].show,.pb-tutorial-overlay.show{display:grid!important}
.modal-card,.pb-tutorial-card{background:#172030!important;border:1px solid #3a465b!important;border-radius:17px!important;box-shadow:0 24px 70px rgba(0,0,0,.5)!important}
body.suite-modal-open{overflow:hidden!important}.suite-modal-x{border-radius:9px;background:#202a3c;box-shadow:none}
#pbTutorialModal{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;margin:0!important;left:0!important;top:0!important;right:0!important;bottom:0!important;z-index:20000!important}
.pb-tutorial-card{width:min(620px,calc(100vw - 28px))!important;max-height:calc(100dvh - 28px)!important;margin:auto!important;overflow:auto!important;display:block!important;position:relative!important}
.pb-tutorial-visual{min-height:112px!important;background:#202b3e!important;border-bottom:1px solid #3a465b!important}.pb-tutorial-icon{font-size:3rem!important;filter:none!important}.pb-tutorial-body h2{font-size:clamp(1.55rem,4vw,2.2rem)!important;letter-spacing:-.035em!important}.pb-tutorial-list div{background:#202a3b!important;border:1px solid #303c51;border-radius:10px!important}
.pb-help{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:7px;border:1px solid #526079;background:#202a3c;color:#d8dee9;font-size:.76rem;font-weight:900;vertical-align:middle;margin-left:5px;padding:0}
.pb-help:hover{background:#2b374b}.pb-help-popover{position:fixed;z-index:21000;width:min(310px,calc(100vw - 24px));padding:13px 38px 13px 13px;background:#172030;border:1px solid #46536a;border-radius:12px;box-shadow:0 18px 55px rgba(0,0,0,.48);color:var(--muted);line-height:1.45;font-size:.86rem}.pb-help-popover b{display:block;color:var(--text);margin-bottom:4px}.pb-help-popover button{position:absolute;right:7px;top:7px;width:27px;height:27px;border-radius:7px;background:#253147;color:#fff}
.pb-toast-host{position:fixed;z-index:22000;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(520px,calc(100vw - 24px));display:grid;gap:8px;pointer-events:none}
.pb-toast{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;background:#172030;border:1px solid #455169;border-radius:12px;box-shadow:0 16px 45px rgba(0,0,0,.42);opacity:0;transform:translateY(16px);transition:.2s;pointer-events:auto}.pb-toast.show{opacity:1;transform:none}.pb-toast.success{border-left:4px solid var(--good)}.pb-toast.info{border-left:4px solid var(--accent2)}.pb-toast.error{border-left:4px solid var(--bad)}.pb-toast.plus{background:#252217;border-color:#665a2d;border-left:4px solid var(--accent)}.pb-toast b{display:block;color:var(--text);font-size:.9rem}.pb-toast span{display:block;color:var(--muted);font-size:.8rem;margin-top:2px;line-height:1.35}.pb-toast-action{color:#f8da71;background:#332d18;border:1px solid #70602e;border-radius:8px;padding:8px 10px;text-decoration:none;font-size:.78rem;font-weight:900;white-space:nowrap}
.toast{display:none!important}
.suite-back-row{width:min(1180px,94vw);margin:0 auto 10px;display:flex}.suite-back-link,.mission-back{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;background:#182235;border:1px solid #344158;color:#f4f1e9;text-decoration:none;font-weight:850;font-size:.84rem}.mission-back{position:sticky;top:10px;z-index:20;margin-bottom:12px}.mission-back:hover,.suite-back-link:hover{background:#222f44}
.note-card-actions{background:transparent!important;border:0!important;padding:0!important;margin-top:10px!important;display:flex!important;gap:7px!important;flex-wrap:wrap!important}.note-card-actions button{background:#202a3b!important;border:1px solid #364257!important;color:#dfe4ed!important;border-radius:9px!important;padding:8px 10px!important}.note-card-actions button:hover{background:#2a3649!important}
.plus-inline{color:#f5d76f}.beta-badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#202b3e;border:1px solid #45526a;color:#cbd4e2;font-size:.65rem;font-weight:900;letter-spacing:.04em}.pack-release{display:block;color:#9da8b9;font-size:.68rem;margin-top:5px}
.mini-calculator{margin-top:14px;border:1px solid #344158;border-radius:13px;background:#111927;overflow:hidden}.mini-calculator summary{cursor:pointer;padding:11px 13px;font-weight:900;color:#e7ebf1}.mini-calc-body{padding:0 12px 12px}.mini-calc-display{min-height:48px;padding:10px;background:#0c1320;border:1px solid #303b50;border-radius:9px;text-align:right;font-size:1.25rem;overflow-wrap:anywhere}.mini-calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.mini-calc-keys button{min-height:40px;border-radius:8px;background:#202b3e;color:#fff;border:1px solid #344158}.mini-calc-keys button.operator{color:#f4d56a}.mini-calc-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.pack-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pack-library-card{padding:15px;text-align:left;color:#fff;background:#192334;border:1px solid #344158;border-radius:14px}.pack-library-card h3{margin:7px 0 4px}.pack-library-card p{color:var(--muted);font-size:.82rem;line-height:1.4;margin:0}.pack-library-card .pack-meta-line{color:#f0d16a;font-size:.7rem;margin-top:10px}.pack-library-card.locked{opacity:.72}
@media(max-width:850px){.pack-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.pack-library-grid{grid-template-columns:1fr}.pb-toast{grid-template-columns:1fr}.pb-toast-action{justify-self:start}.suite-back-row{width:min(96vw,1180px)}.mission-back{width:100%;justify-content:center}.pb-tutorial-card{max-height:calc(100dvh - 14px)!important}}
/* v14 content libraries */
.pack-library-card .mini-grid{width:88px;margin:0 0 10px;border-radius:6px;overflow:hidden}
.pack-library-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
#trackerPackBody .settings-row{cursor:pointer}
#trackerPackBody input[type="checkbox"]{margin-top:3px;accent-color:var(--accent)}
.track-reduced-motion *{animation-duration:.001ms!important;transition-duration:.001ms!important}
