:root{font-family:Inter,system-ui,sans-serif;color:#17241b;background:#eef3ee}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{height:64px;padding:0 20px;background:#173d25;color:#fff;display:flex;align-items:center;gap:24px}h1{font-size:20px;margin:0}#status{font-size:13px;opacity:.85}#account{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px}#account button{width:auto;padding:6px 10px;margin:0}.auth-gate{height:calc(100vh - 64px);display:grid;place-items:center;padding:20px}.auth-card{width:min(420px,100%);padding:28px;background:#fff;border-radius:18px;box-shadow:0 12px 40px #0002;text-align:center}.auth-card h2{font-size:24px;margin:0 0 12px}.auth-card p{line-height:1.5;color:#526057}main{height:calc(100vh - 64px);display:grid;grid-template-columns:300px 1fr}aside{padding:16px;background:#fff;overflow:auto;box-shadow:3px 0 14px #0002;z-index:500}label{display:grid;gap:5px;margin:14px 0;font-size:13px;font-weight:650}select,button{font:inherit;padding:10px 12px;border:1px solid #aebbb1;border-radius:10px;background:#fff}button{cursor:pointer;margin:4px 0;width:100%}button:hover:not(:disabled){background:#e6f1e8}button:disabled{opacity:.45}.primary{background:#176b3a;color:white;border-color:#176b3a}.buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}h2{font-size:15px;margin:20px 0 8px}.feature{display:flex;align-items:center;gap:8px;padding:7px;border-bottom:1px solid #e7ece8}.swatch{width:14px;height:14px;border-radius:4px}.hint{font-size:12px;color:#59675d;line-height:1.45}#map{height:100%;background:#173d25}.leaflet-container{font:inherit}
.draw{background:#e9d49a;border-color:#9b792d;color:#31250b;font-weight:750}.draw:hover:not(:disabled){background:#f1dda1}.draw-help{margin:5px 2px 12px;font-size:12px;line-height:1.4;color:#59675d}
.feature span{flex:1}.feature .edit-feature{width:auto;margin:0;padding:5px 9px;font-size:12px}
.feature .delete-feature{width:auto;margin:0;padding:5px 9px;font-size:12px;color:#9b2020;border-color:#d9aaaa}.feature .delete-feature:hover:not(:disabled){background:#fbe9e9}
.feature{border-left:4px solid transparent}.feature.selected{background:#fff7bf;border-left-color:#d3a900;font-weight:700}
.feature.hidden-feature{opacity:.58}.feature .visibility-feature{width:auto;margin:0;padding:5px 9px;font-size:12px;color:#34533e}
.auth-gate{position:fixed;inset:64px 0 0;height:auto;z-index:3000;background:#eef3eef5}
.cloud-panel{margin:12px 0;padding:10px;border:1px solid #d9e2da;border-radius:12px;background:#f7faf7}.cloud-panel h2{margin:0 0 4px}.cloud-panel label{margin:8px 0}
.imagery-panel{margin:12px 0;padding:10px;border:1px solid #c8d7ca;border-radius:12px;background:#f2f7f2}.imagery-panel h2{margin:0 0 6px}.imagery-panel button{margin:4px 0}.imagery-panel .active-layer{background:#176b3a;color:#fff;border-color:#176b3a}
.elevation-panel{margin:12px 0;padding:10px;border:1px solid #ccd9df;border-radius:12px;background:#f3f8fa}.elevation-panel h2{margin:0 0 6px}.elevation-result{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.elevation-value{padding:8px;border-radius:8px;background:#fff;border:1px solid #d6e1e5;text-align:center;font-size:12px}.elevation-value strong{display:block;font-size:17px;color:#174d62}.elevation-value.difference{grid-column:1/-1;background:#174d62;color:#fff;border-color:#174d62}.elevation-value.difference strong{color:#fff}
.render-panel{margin:12px 0;padding:10px;border:1px solid #d6cfbd;border-radius:12px;background:#faf8f1}.render-panel h2{margin:0 0 6px}.render-panel label{grid-template-columns:1fr auto;align-items:center}.render-panel input{grid-column:1/-1;padding:0}.render-panel img{display:block;width:100%;margin:8px 0;border-radius:12px;box-shadow:0 5px 16px #0003;background:#173d25}.download-render{display:block;padding:9px;text-align:center;border:1px solid #176b3a;border-radius:9px;color:#176b3a;text-decoration:none;font-size:13px}
.ai-panel{margin:12px 0;padding:10px;border:1px solid #d5cbea;border-radius:12px;background:#f8f5fc}.ai-panel h2{margin:0 0 6px}.ai-proposal{display:flex;flex-wrap:wrap;gap:5px;align-items:center;padding:7px 0;border-top:1px solid #e4ddef;font-size:12px}.ai-proposal:first-child{margin-top:8px}.ai-proposal span{flex:1 0 100%}.ai-proposal button{width:auto;margin:0;padding:5px 7px;font-size:11px}.ai-proposal .edit-ai,.ai-proposal .move-ai{color:#654497;border-color:#b7a5d2}.ai-proposal .accept-ai{color:#176b3a;border-color:#8eb99e}.ai-proposal .reject-ai{color:#962a2a;border-color:#dab0b0}
.ai-move-capture{position:absolute;inset:0;z-index:2000;background:transparent;cursor:move;touch-action:none}
.api-availability{margin:6px 0;padding:6px 8px;border:1px solid #d8cfae;border-radius:8px;background:#fff8df;color:#695713;font-size:11px;line-height:1.35}.api-availability.available{border-color:#a8c9b2;background:#eef8f1;color:#176b3a}
input{font:inherit;padding:10px 12px;border:1px solid #aebbb1;border-radius:10px;background:#fff;width:100%}.access-entry{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center;padding:8px 0;border-top:1px solid #dfe7e0;font-size:12px}.access-entry button{width:auto;padding:5px 8px;color:#9b2020}
.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0 4px;color:#718078;font-size:12px}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:#d9e2da;flex:1}.auth-card label{text-align:left}

/* Kompakt verktygsmeny */
header{height:58px;padding:0 16px;gap:18px;box-shadow:0 1px 0 #ffffff18}header h1{font-size:18px;letter-spacing:-.2px}#status{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-gate{inset:58px 0 0}main{height:calc(100vh - 58px);grid-template-columns:292px 1fr}
.editor-sidebar{padding:10px;background:#f5f7f5;box-shadow:2px 0 18px #1028191a;scrollbar-width:thin;scrollbar-color:#b9c4bc transparent}.sidebar-title{display:flex;align-items:baseline;justify-content:space-between;padding:2px 5px 9px;color:#173d25;font-size:15px;font-weight:800}.sidebar-title small{color:#718078;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.tool-section{margin:0 0 8px;border:1px solid #ccd9cf;border-radius:11px;background:#fff;overflow:hidden;box-shadow:0 1px 3px #17241b0d}.tool-section>summary{display:flex;align-items:center;gap:9px;padding:11px 11px 10px;cursor:pointer;list-style:none;user-select:none;background:#eaf2ec;box-shadow:inset 4px 0 #43835a;color:#102d1b}.tool-section>summary::-webkit-details-marker{display:none}.tool-section>summary::after{content:'›';margin-left:auto;color:#587261;font-size:20px;font-weight:500;line-height:1;transform:rotate(90deg);transition:transform .16s ease}.tool-section[open]>summary::after{transform:rotate(-90deg)}.tool-section[open]>summary{background:#dfede2}.tool-section>summary:hover{background:#d8eadc}.tool-section>summary>span:not(.section-icon){display:grid;gap:2px;font-size:13.5px;font-weight:800;letter-spacing:.01em}.tool-section>summary small{color:#536a59;font-size:10px;font-weight:550;letter-spacing:0}.section-icon{display:grid;place-items:center;width:26px;height:26px;border:1px solid #bed4c4;border-radius:8px;background:#f7fbf8;color:#176b3a;font-size:14px}.section-body{padding:11px 10px 12px;border-top:1px solid #cbd8cd;background:#fff}.section-body label{margin:7px 0;font-size:11px}.section-body h3{margin:14px -2px 7px;padding:8px 7px 0;border-top:1px solid #dce6de;color:#20492e;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.section-body h3:first-child{margin-top:0;padding-top:0;border:0}
.course-context{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.75fr);gap:7px;margin:0 0 7px;padding:9px 10px;border:1px solid #b9cfbf;border-radius:11px;background:#eaf3ec}.course-context label{min-width:0;margin:0;color:#2c4b35;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.course-context select{min-width:0;margin-top:2px;background:#fff;color:#17241b;font-size:12px;font-weight:650;text-transform:none;letter-spacing:0}
select,button,input{min-height:36px;padding:7px 9px;border-color:#c5d0c8;border-radius:8px}button{margin:3px 0;font-size:12px;font-weight:650}.buttons{gap:6px}.draw-help,.hint{margin:6px 1px;font-size:10.5px}.api-availability{margin:5px 0;padding:5px 7px;font-size:10px}.object-heading{margin:12px 0 4px;color:#59675d;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.feature{display:grid;grid-template-columns:auto minmax(55px,1fr) auto auto auto;gap:4px;padding:6px 2px;font-size:11px}.feature .visibility-feature,.feature .edit-feature,.feature .delete-feature{padding:4px 5px;font-size:10px}.swatch{width:11px;height:11px}
.save-panel{position:sticky;bottom:-10px;z-index:5;margin:9px -10px -10px;padding:10px;background:linear-gradient(#f5f7f500,#f5f7f5 18%);display:grid;grid-template-columns:1fr 1fr;gap:6px}.save-panel #save{grid-column:1/-1}.save-panel button{margin:0}.text-button{background:transparent;color:#506057}.sidebar-footnote{margin:16px 5px 8px;color:#768179;font-size:9.5px;line-height:1.4}
.elevation-progress{display:grid;gap:5px;margin:8px 0}.elevation-progress progress{width:100%;height:10px;accent-color:#176b3a}.elevation-progress span{font-size:10px;color:#526057}
#render-preview{display:block;width:100%;max-width:100%;height:auto;margin:10px auto 8px;object-fit:contain;object-position:center;border-radius:10px;background:#f6f4eb;box-shadow:0 3px 12px #17241b20;cursor:zoom-in}
#account-nav{margin-left:auto;display:flex;gap:6px}#account-nav button{width:auto;min-height:30px;margin:0;padding:5px 10px;background:#ffffff18;border-color:#ffffff55;color:#fff}#account{margin-left:0}.history-shell{height:calc(100vh - 58px);display:grid;grid-template-columns:minmax(280px,360px) 1fr;background:#eef3ee}.history-sidebar{overflow:auto;padding:20px;border-right:1px solid #cad6cc;background:#f8faf8}.history-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.history-heading h2{margin:0;font-size:24px}.history-heading p{margin:5px 0 16px;color:#607066;font-size:12px}.history-heading button{width:auto}.round-list{display:grid;gap:9px}.round-card{display:grid;gap:5px;text-align:left;padding:13px;background:#fff}.round-card strong{font-size:14px}.round-card span{font-size:11px;color:#5b685f}.round-card.selected{border-color:#176b3a;box-shadow:0 0 0 2px #176b3a22;background:#edf7f0}.round-detail{overflow:auto;padding:clamp(18px,4vw,48px)}.empty-history{height:100%;display:grid;place-content:center;text-align:center;color:#647269}.empty-history strong{font-size:22px}.empty-history span{margin-top:6px}.scorecard-head{display:flex;justify-content:space-between;align-items:start;gap:20px}.scorecard-head h2{margin:0;font-size:26px}.scorecard-head p{color:#66736a}.scorecard-head button{width:auto}.scorecard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.scorecard-stats span{display:grid;gap:4px;padding:14px;border-radius:12px;background:#fff;border:1px solid #d7e0d8}.scorecard-stats small{color:#66736a}.scorecard-stats strong{font-size:22px}.score-table-wrap{overflow:auto}.score-table{width:100%;border-collapse:collapse;background:#fff}.score-table th,.score-table td{min-width:48px;padding:10px;text-align:center;border:1px solid #d7ded8}.score-table th{background:#e7efe9}.shot-history{margin-top:24px}.shot-title{display:flex;align-items:end;gap:10px}.shot-title>div{flex:1}.shot-title h3{margin:0}.shot-title p{margin:4px 0;color:#66736a;font-size:12px}.shot-title select,.shot-title button{width:auto}#history-map{height:min(58vh,560px);margin-top:10px;border-radius:16px;overflow:hidden;box-shadow:0 5px 24px #17241b22}#shot-caption{min-height:20px;color:#526057}.no-shots{padding:16px;border-radius:12px;background:#fff;color:#66736a}.score-editor{width:min(720px,calc(100% - 24px));border:0;border-radius:18px;padding:22px;box-shadow:0 20px 60px #0005}.score-editor::backdrop{background:#102019aa}.score-editor h2{margin-top:0;font-size:22px}.score-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}.score-inputs label{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.dialog-actions button{width:auto}
@media(max-width:760px){header{height:54px}header #status{display:none}main{height:calc(100vh - 54px);grid-template-columns:min(280px,78vw) 1fr}.auth-gate{inset:54px 0 0}}
@media(max-width:760px){#account-name{display:none}.history-shell{height:calc(100vh - 54px);display:block;overflow:auto}.history-sidebar{overflow:visible;border:0}.round-detail{overflow:visible;padding:18px}.scorecard-stats{grid-template-columns:1fr 1fr}.shot-title{align-items:stretch;flex-wrap:wrap}#history-map{height:55vh}}
.demo-shot-notice{margin:10px 0 -2px;padding:9px 11px;border:1px solid #d5b75d;border-radius:10px;background:#fff6d8;color:#664f0b;font-size:12px;font-weight:700}
.round-overview-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}.scorecard-column{min-width:0}.round-overview-grid .scorecard-stats{margin-bottom:12px}.round-overview-grid .classic-card{margin-top:0}.round-overview-grid .shot-history{min-width:0;margin-top:0;padding:18px;border:1px solid #d5ded6;border-radius:16px;background:#f9fbf9;box-shadow:0 5px 18px #17241b12}.course-history{margin-top:28px;padding-top:22px;border-top:1px solid #cbd6cd}.course-history-head h3{margin:0;font-size:20px}.course-history-head p{margin:4px 0 14px;color:#66736a}.trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.trend-card{min-width:0;padding:16px;border:1px solid #d5ded6;border-radius:16px;background:#fff;box-shadow:0 4px 16px #17241b0d}.trend-card h4{margin:0 0 8px;font-size:15px}.trend-card svg{display:block;width:100%;height:auto;overflow:visible}.chart-grid line{stroke:#dce4dd;stroke-width:1}.chart-grid text,.chart-date{fill:#6c786f;font-size:11px}.chart-line{fill:none;stroke:var(--chart-color);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chart-points circle{fill:var(--chart-color);stroke:#fff;stroke-width:2}.chart-value{fill:#26332a;font-size:11px;font-weight:700}@media(min-width:1280px){.round-overview-grid{grid-template-columns:minmax(620px,1.15fr) minmax(390px,.85fr)}.round-overview-grid .shot-history{position:sticky;top:12px}#history-map{height:min(62vh,650px)}.course-history{grid-column:1/-1}.scorecard-stats{margin-top:20px}}
@media(max-width:900px){.trend-grid{grid-template-columns:1fr}.chart-date{font-size:10px}}
.club-holes{display:grid;gap:8px;margin:8px 0 16px}.club-hole{overflow:hidden;border:1px solid #d5ded6;border-radius:11px;background:#f7faf7}.club-hole summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;cursor:pointer;list-style:none}.club-hole summary::-webkit-details-marker{display:none}.club-hole summary span{color:#66736a;font-size:11px}.club-hole[open] summary{border-bottom:1px solid #dce4dd;background:#edf5ef}.club-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin:0;padding:12px}.club-inputs label{margin:0}.club-inputs select{margin-top:4px}
.club-statistics{margin-top:28px;padding-top:22px;border-top:1px solid #cbd6cd}.club-stat-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.club-stat-head h3{margin:0;font-size:20px}.club-stat-head p{margin:4px 0 0;color:#66736a}.club-stat-head label{width:min(240px,100%);margin:0}.club-stat-layout{display:grid;grid-template-columns:minmax(320px,.7fr) minmax(460px,1.3fr);gap:16px;align-items:start}.club-table-wrap{overflow:auto;border:1px solid #d5ded6;border-radius:14px}.club-stat-table{width:100%;border-collapse:collapse;background:#fff}.club-stat-table th,.club-stat-table td{padding:11px 13px;text-align:right;border-bottom:1px solid #e1e7e2;white-space:nowrap}.club-stat-table th:first-child{text-align:left}.club-stat-table thead th{background:#e7efe9;color:#173d25}.club-stat-table tbody tr:last-child>*{border-bottom:0}#club-distance-chart .trend-card{height:100%}@media(max-width:1000px){.club-stat-layout{grid-template-columns:1fr}.club-stat-head{align-items:stretch;flex-direction:column}.club-stat-head label{width:100%}}
.classic-card{margin:18px 0 22px;padding:18px;border:1px solid #c9c4b8;border-radius:14px;background:#fbfaf5;box-shadow:0 5px 18px #17241b12}.score-legend{display:flex;align-items:center;gap:15px;overflow-x:auto;padding:0 2px 14px;white-space:nowrap;font-size:12px}.score-legend>span{display:flex;align-items:center;gap:5px}.score-legend .score-symbol{width:25px;height:25px;font-size:12px}.classic-score-wrap{overflow-x:auto;margin-top:10px}.classic-score{width:100%;min-width:620px;border-collapse:collapse;table-layout:fixed;color:#282a28;font-variant-numeric:tabular-nums}.classic-score th,.classic-score td{height:42px;padding:4px;text-align:center;border:1px solid #888b88}.classic-score th{width:60px;background:#e8ece6;font-size:12px;font-weight:800}.classic-score thead th{background:#dce7dc;color:#173d25}.classic-score td{min-width:52px;background:#fffef9}.classic-score .hcp-row td,.classic-score .hcp-row th{height:30px;background:#f3f1e9;color:#70736f;font-size:10px}.classic-score .score-row td{height:48px}.classic-score .total-cell{background:#e9eee8;font-weight:800}.score-symbol{position:relative;display:inline-grid;place-items:center;width:31px;height:31px;line-height:1;font-weight:650}.score-symbol.circle,.score-symbol.double-circle{border:1.7px solid #252725;border-radius:50%}.score-symbol.square,.score-symbol.double-square{border:1.7px solid #252725}.score-symbol.double-circle{box-shadow:inset 0 0 0 3px #fffef9,inset 0 0 0 4.3px #252725}.score-symbol.double-square{box-shadow:inset 0 0 0 3px #fffef9,inset 0 0 0 4.3px #252725}.score-empty{color:#898d89}.classic-card+.shot-history{margin-top:28px}
