/* Dedicated GRIDLINE GP PWA — polished midnight-teal appearance */
:root{--bg:#040b14;--panel:#101b29;--panel2:#172b39;--stroke:#294859;--accent:#1fe0d0;--green:#66e8ad;--blue:#6dbde1;--gold:#f1c783}
html,body{background:#040b14}
#app{background:radial-gradient(ellipse at 82% -12%,#173c42 0,transparent 34%),var(--bg)}
.topbar{background:#071421f7;border-bottom-color:#234350}
.brandmark{border-color:#31d6c266;background:linear-gradient(140deg,#144a4e,#0d1928);color:#eefbff}
.brandmark span,.bootmark span{color:#51e8d6}
.btn.primary{background:linear-gradient(115deg,#7dfff0,#19c3bc);border-color:#86fff0;color:#042630;box-shadow:0 5px 18px #20d0c226}
.btn.secondary{border-color:#327b79;background:#12343c;color:#adfff1}
.nav{background:#081522f8;border-top-color:#22424c}
.nav button.active{color:#a5fff1;background:#15393e}
.card{background:linear-gradient(155deg,#142536,#0f1b29);border-color:#294457}
.card.tint{background:linear-gradient(140deg,#183a43,#122532 80%);border-color:#32636a}
.card.red{background:linear-gradient(140deg,#2b2839,#172536);border-color:#67465e}
.card.green{background:linear-gradient(140deg,#124339,#132a35);border-color:#327d74}
.btn:not(.primary):focus-visible,.gl-goal:focus-visible{outline:2px solid #6bfbe5;outline-offset:2px}
button.choice.selected,.endurance-plan.selected,.gl-goal.selected{border-color:#45d7c9!important;background:#123b43!important;color:#b5fff1!important}
.sessionbar div.active{background:#114e48;border-color:#3ac3b7;color:#d4fff9}
.progress span{background:linear-gradient(90deg,#0ab6bf,#8affdd)}
.team.selected{background:#15363c;border-color:#5bddd0}
.timing-heading{border-bottom-color:#39cdbf}
.timing-row.mine{background:#173b3e;box-shadow:inset 3px 0 0 #5af0da}
.timing-row.mine:nth-child(even){background:#15353d}
.timing-row.mine.chosen{background:#22525a}
.timing-pit{background:#f8d288}
a{color:#7cdeee}
.gl-goals{display:grid;grid-template-columns:1fr;gap:8px;margin:11px 0}
.gl-goal{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;background:#122537;border:1px solid #355266;border-radius:12px;padding:12px;min-height:80px;color:#eaf6fd;font:inherit;cursor:pointer}
.gl-goal.selected{background:#153942}
.gl-goal b{font-size:12px;font-weight:900;letter-spacing:.03em}
.gl-goal span{font-size:11px;color:#b6c9d8;line-height:1.35}
.gl-goal small{font-size:10px;color:#78b9c4;line-height:1.45}
.gl-goal:disabled{opacity:.69;cursor:default}
.gl-history{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid #2b4354}
.gl-history:last-child{border-bottom:0}
.gl-history b{font-size:11px;color:#e7f8fc}
.gl-history span{font-size:10px;color:#97bdc7}
@media(min-width:520px){.gl-goals{grid-template-columns:repeat(3,minmax(0,1fr))}.gl-goal{min-height:138px}}
