/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.grid{display:grid}.table{display:table}.resize{resize:both}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-bottom,.leaflet-top{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers.ef6db872.png?dpl=dpl_6EbiR5Nnt6FvroPYGuH6zrW3qRRV);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers-2x.9859cd12.png?dpl=dpl_6EbiR5Nnt6FvroPYGuH6zrW3qRRV);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(/_next/static/media/marker-icon.d577052a.png?dpl=dpl_6EbiR5Nnt6FvroPYGuH6zrW3qRRV)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107,M12=.707107,M21=-.707107,M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--ink:#eef3ea;--muted:#94a79e;--line:#d2e2d71f;--panel:#101c19;--deep:#07100f;--gold:#e5b94f;--mint:#80b79c}*{box-sizing:border-box}body,html{background:var(--deep);min-height:100%;color:var(--ink);margin:0;font-family:Avenir Next,Hiragino Sans,Yu Gothic,sans-serif}button,input,select{font:inherit}.course-admin-page{background:var(--deep);min-height:100dvh;font-size:16px}.course-admin-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07100ff5;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;position:sticky;top:0}.course-admin-header h1,.course-admin-header p{margin:0}.course-admin-header p{color:var(--gold);letter-spacing:.12em;font-size:16px;font-weight:800}.course-admin-header h1{margin-top:5px;font:500 30px/1.15 Yu Mincho,Hiragino Mincho ProN,serif}.course-admin-header-actions{color:var(--muted);align-items:center;gap:16px;font-size:16px;display:flex}.course-admin-header-actions a,.course-admin-header-actions button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:7px;padding:11px 15px;font-size:16px;text-decoration:none}.course-admin-auth{place-items:center;min-height:100dvh;padding:24px;display:grid}.course-admin-login{width:min(100%,440px);position:relative;inset:auto;transform:none}.course-admin-login label{gap:8px;margin-top:16px;display:grid}.course-admin-login input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--ink);background:#ffffff0d;border-radius:7px;padding:10px 12px;font-size:16px}.course-admin-login>a,.course-admin-login>button{text-align:center;width:100%;margin-top:16px;display:block}.course-admin-login-error{color:#ff8d82}.course-editor-auth-redirect{place-items:center;min-height:100dvh;display:grid}.course-admin-filters{border-bottom:1px solid var(--line);background:#0a1512;grid-template-columns:minmax(220px,1fr) repeat(5,160px) 70px;gap:10px;padding:18px 28px;display:grid}.course-admin-filters input,.course-admin-filters select{border:1px solid var(--line);min-width:0;min-height:46px;color:var(--ink);background:#07100f;border-radius:7px;outline:none;padding:11px 13px;font-size:16px}.course-admin-filters strong{color:var(--gold);text-align:right;align-self:center}.course-admin-groups{gap:28px;padding:28px;display:grid}.course-admin-prefecture h2{align-items:baseline;gap:10px;margin:0 0 14px;font-size:25px;display:flex}.course-admin-prefecture h2 span{color:var(--muted);font-size:16px;font-weight:500}.course-admin-grid{grid-template-columns:1fr;gap:9px;display:grid}.course-admin-grid article{border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-columns:190px minmax(300px,1fr) 280px 390px;align-items:center;gap:22px;min-height:124px;padding:18px 20px;display:grid}.course-admin-grid h3,.course-admin-grid p{margin:0}.course-admin-grid h3{font-size:20px;line-height:1.35}.course-admin-grid p{color:var(--muted);font-size:15px;line-height:1.45}.course-admin-course-copy{gap:7px;min-width:0;display:grid}.course-admin-card-top{justify-items:start;gap:8px;display:grid}.course-admin-card-top span{color:var(--muted);background:#ffffff0d;border-radius:999px;padding:7px 10px;font-size:16px;font-weight:800}.course-admin-card-top span[data-tier="1"]{color:#171308;background:var(--gold)}.course-admin-card-top span[data-tier="6"]{color:#fff;background:#157347}.course-admin-card-top span[data-state=registered]{color:#f4d98f;background:#e5b94f1f}.course-admin-card-top span[data-state=verified]{color:#bff3d1;background:#4ec57b24}.course-admin-grid dl{grid-template-columns:repeat(3,1fr);gap:6px;margin:0;display:grid}.course-admin-grid dl div{background:#ffffff09;border-radius:6px;padding:8px}.course-admin-grid dt{color:var(--muted);font-size:16px}.course-admin-grid dd{margin:4px 0 0;font-size:18px;font-weight:800}.course-admin-card-actions{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.course-admin-card-actions a,.course-admin-card-actions span{border:1px solid var(--line);min-height:46px;color:var(--muted);text-align:center;border-radius:6px;place-items:center;padding:8px;font-size:16px;font-weight:700;text-decoration:none;display:grid}.course-admin-card-actions a.primary{color:var(--mint);background:#80b79c12;border-color:#80b79c59}.course-admin-operation{font-weight:700;min-height:0!important;color:var(--gold)!important}@media (max-width:1320px){.course-admin-grid article{grid-template-columns:170px minmax(280px,1fr) 260px}.course-admin-card-actions{grid-column:2/-1}}@media (max-width:900px){.course-admin-filters{grid-template-columns:1fr 1fr}.course-admin-header-actions span{display:none}.course-admin-grid article{grid-template-columns:1fr;align-items:stretch;gap:14px}.course-admin-card-top{justify-content:space-between;display:flex}.course-admin-card-actions{grid-column:auto}}button{cursor:pointer}.public-site{color:#edf4ed;background:#07100f;min-height:100dvh}.public-site a{color:inherit}.public-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07100fe8;justify-content:space-between;min-height:76px;padding:0 max(24px,50vw - 590px);position:sticky;top:0}.public-brand,.public-header{align-items:center;display:flex}.public-brand{gap:11px;text-decoration:none}.public-brand img{object-fit:cover;border-radius:10px;width:44px;height:44px;display:block}.public-brand strong{font:600 22px/1 Yu Mincho,Hiragino Mincho ProN,serif}.public-header nav{align-items:center;gap:24px;display:flex}.public-header nav a{color:#c9d6ce;font-size:15px;font-weight:700;text-decoration:none}.public-header nav a:last-child{color:var(--gold);border:1px solid #e5b94f73;border-radius:999px;padding:11px 16px}.public-hero{background:radial-gradient(circle at 78% 30%,#2f6a4e47,#0000 34%),linear-gradient(135deg,#07100f 5%,#0c1b16);grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);align-items:center;gap:72px;min-height:650px;padding:90px max(24px,50vw - 590px);display:grid}.public-app-band p,.public-eyebrow,.public-section-heading p{color:var(--gold);letter-spacing:.15em;margin:0 0 12px;font-size:13px;font-weight:900}.public-app-page h1,.public-hero h1,.public-list-page h1{letter-spacing:-.035em;max-width:800px;margin:0;font:500 clamp(44px,6.2vw,82px)/1.1 Yu Mincho,Hiragino Mincho ProN,serif}.public-lead{color:#afbeb5;max-width:720px;margin:26px 0 0;font-size:18px;line-height:1.9}.public-actions{gap:12px;margin-top:34px;display:flex}.public-actions a,.public-app-band>a{border:1px solid var(--line);border-radius:7px;justify-content:center;align-items:center;min-height:52px;padding:0 22px;font-weight:800;text-decoration:none;display:inline-flex}.public-primary{background:var(--gold);text-decoration:none;border-color:var(--gold)!important;color:#12150f!important}.public-hero-card{background:linear-gradient(#ffffff05,#00000052),url(/terrain/current/imagery.png) 50%/cover;border:1px solid #e5b94f38;border-radius:22px;align-content:end;min-height:390px;padding:34px;display:grid;overflow:hidden;box-shadow:0 32px 90px #00000052}.public-hero-card p,.public-hero-card span{text-shadow:0 2px 12px #000;margin:0}.public-hero-card strong{text-shadow:0 2px 20px #000;font:500 76px/1 Yu Mincho,Hiragino Mincho ProN,serif}.public-hero-card a{color:var(--gold);margin-top:18px;font-weight:800}.public-app-page,.public-course-page,.public-hole-page,.public-list-page,.public-section{width:min(1180px,100% - 48px);margin-inline:auto}.public-section{padding:82px 0}.public-section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.public-section-heading p{margin-bottom:7px}.public-app-band h2,.public-section-heading h2{margin:0;font:500 clamp(28px,4vw,44px)/1.2 Yu Mincho,Hiragino Mincho ProN,serif}.public-section-heading>a{color:var(--gold);font-weight:800}.public-course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.public-course-grid article{border:1px solid var(--line);background:#0d1916;border-radius:12px;min-height:210px;padding:24px;display:grid}.public-course-grid article p{color:var(--gold);margin:0 0 12px;font-size:14px;font-weight:800}.public-course-grid h2,.public-course-grid h3{margin:0;font-size:21px;line-height:1.5}.public-course-grid h2 a,.public-course-grid h3 a{text-decoration:none}.public-course-grid article span{color:var(--muted);align-self:end;margin-top:24px}.public-course-grid article>a{color:var(--mint);margin-top:12px;font-weight:800}.public-prefectures>div:last-child{flex-wrap:wrap;gap:9px;display:flex}.public-prefectures>div:last-child a{border:1px solid var(--line);color:#cbd8d0;border-radius:999px;padding:10px 14px;text-decoration:none}.public-app-band{background:linear-gradient(125deg,#13241e,#0c1714);border:1px solid #e5b94f40;border-radius:18px;justify-content:space-between;align-items:center;gap:30px;width:min(1180px,100% - 48px);margin:30px auto 90px;padding:48px;display:flex}.public-app-band span{color:#aebcb4;max-width:760px;margin-top:15px;line-height:1.7;display:block}.public-footer{border-top:1px solid var(--line);color:var(--muted);background:#050c0b;justify-content:space-between;align-items:flex-start;gap:44px;padding:46px max(24px,50vw - 590px);display:flex}.public-footer strong{color:var(--ink);font:500 22px Yu Mincho,Hiragino Mincho ProN,serif}.public-footer p{margin:0;font-size:13px}.public-footer>div{gap:8px;display:grid}.public-footer nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 22px;max-width:520px;display:flex}.public-footer nav a{color:#bdcbc2;font-size:13px}.public-app-page,.public-course-page,.public-hole-page,.public-list-page{padding-top:70px;padding-bottom:100px}.public-information-page{width:min(900px,100% - 48px);margin-inline:auto;padding:70px 0 110px}.public-information-page>header{border-bottom:1px solid var(--line);padding-bottom:52px}.public-information-page h1{letter-spacing:-.035em;margin:0;font:500 clamp(40px,6vw,68px)/1.14 Yu Mincho,Hiragino Mincho ProN,serif}.public-information-updated{color:var(--muted);margin:25px 0 0;font-size:13px}.public-information-body{gap:0;display:grid}.public-information-body section{border-bottom:1px solid var(--line);padding:46px 0}.public-information-body h2{margin:0 0 20px;font:500 clamp(25px,3vw,34px)/1.4 Yu Mincho,Hiragino Mincho ProN,serif}.public-information-body dd,.public-information-body li,.public-information-body p{color:#c7d4cc;font-size:16px;line-height:1.95}.public-information-body p{margin:0}.public-information-body p+p{margin-top:18px}.public-information-body a{color:var(--mint);font-weight:700}.public-information-body ul{gap:8px;margin:20px 0 0;padding-left:1.4em;display:grid}.public-information-body ol{counter-reset:methodology;gap:12px;margin:0;padding:0;list-style:none;display:grid}.public-information-body ol li{border-bottom:1px solid var(--line);counter-increment:methodology;grid-template-columns:38px minmax(150px,.4fr) minmax(0,1fr);align-items:start;gap:16px;padding:20px 0;display:grid}.public-information-body ol li:before{content:counter(methodology,decimal-leading-zero);color:var(--gold);font-weight:900}.public-information-body ol strong{color:#edf4ed}.public-information-body dl{margin:0}.public-information-body dl div{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:22px;padding:16px 0;display:grid}.public-information-body dt{color:var(--gold);font-weight:800}.public-information-body dd{margin:0}.public-information-body .public-faq-list{padding-top:18px}.public-faq-list article{border-bottom:1px solid var(--line);padding:32px 0}.public-faq-list article:last-child{border-bottom:0}.public-faq-list article h2{margin-bottom:12px;padding-left:38px;font-size:22px;position:relative}.public-faq-list article h2:before{content:"Q";color:var(--gold);font:900 18px/1.6 SFMono-Regular,Consolas,monospace;position:absolute;top:0;left:0}.public-faq-list article p{padding-left:38px}.public-guide-index>div{gap:10px;display:grid}.public-guide-index>div>a{border:1px solid var(--line);background:#0d1916;border-radius:10px;grid-template-columns:52px minmax(220px,.65fr) minmax(0,1fr);align-items:baseline;gap:18px;padding:24px;text-decoration:none;display:grid}.public-guide-index a>span{color:var(--gold);font-weight:900}.public-guide-index a>strong{font-size:19px}.public-guide-index a>p{color:var(--muted);margin:0;font-size:14px}.public-guide-related>div{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.public-guide-related>div>a{border:1px solid var(--line);background:#0d1916;border-radius:10px;gap:8px;padding:20px;text-decoration:none;display:grid}.public-guide-related strong{color:#edf4ed}.public-guide-related span{color:var(--muted);font-size:14px;line-height:1.65}.public-course-page>.public-guide-related,.public-hole-page>.public-guide-related{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:58px 0;padding:42px 0}.public-course-page>.public-guide-related h2,.public-hole-page>.public-guide-related h2{margin-top:0;font:500 clamp(24px,3vw,32px)/1.4 Yu Mincho,Hiragino Mincho ProN,serif}.public-course-page>.public-section{width:100%;margin-inline:0}.public-directory,.public-list-page>.public-course-grid{margin-top:48px}.public-directory-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;padding:18px 0;display:flex}.public-directory-toolbar label{color:var(--muted);gap:8px;font-size:14px;font-weight:800;display:grid}.public-directory-toolbar select{border:1px solid var(--line);min-width:230px;min-height:46px;color:var(--ink);background:#0d1916;border-radius:7px;padding:10px 38px 10px 12px}.public-directory-toolbar strong{color:var(--gold);font-size:17px}.public-directory-empty{border-bottom:1px solid var(--line);color:var(--muted);text-align:center;margin:0;padding:54px 24px}.public-course-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(320px,auto) 150px;align-items:center;gap:28px;min-height:116px;padding:22px 4px;display:grid}.public-course-list article>div>span{color:var(--gold);font-size:13px;font-weight:800}.public-course-list h2{margin:7px 0 0;font-size:22px}.public-course-list h2 a{text-decoration:none}.public-course-address{max-width:680px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 0;font-size:13px;line-height:1.5;overflow:hidden}.public-course-list dl{flex-wrap:wrap;gap:0;margin:0;display:flex}.public-course-list dl div{border-left:1px solid var(--line);align-items:baseline;gap:6px;padding:7px 10px;display:flex}.public-course-list dt{color:var(--muted);font-size:12px}.public-course-list dd{margin:0;font-size:15px;font-weight:400;line-height:1.2}.public-course-list-action{justify-self:end;font-weight:800;color:var(--mint)!important}.public-course-list--highlights,.public-prefecture-course-list{border-top:1px solid var(--line)}.public-prefecture-course-list{margin-top:48px}.public-breadcrumb{color:var(--muted);flex-wrap:wrap;gap:9px;margin-bottom:54px;font-size:13px;display:flex}.public-breadcrumb a{color:#bdcbc2}.public-course-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:30px;min-height:280px;padding-bottom:50px;display:flex}.public-course-hero h1,.public-hole-page header h1{margin:0;font:500 clamp(36px,5vw,64px)/1.15 Yu Mincho,Hiragino Mincho ProN,serif}.public-course-hero>div:last-child{text-align:right;display:grid}.public-course-hero>div:last-child strong{font:500 72px/1 Yu Mincho,Hiragino Mincho ProN,serif}.public-course-hero>div:last-child span{color:var(--muted);letter-spacing:.15em}.public-preview-badge{color:#f4d98f;background:#e5b94f1f;border-radius:999px;width:fit-content;margin-top:16px;padding:7px 10px;font-size:13px;font-weight:800;display:inline-flex}.public-hole-grid{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.public-hole-grid>a{border:1px solid var(--line);background:#0d1916;border-radius:9px;gap:5px;padding:20px;text-decoration:none;display:grid}.public-hole-grid strong{font:500 34px/1 Yu Mincho,Hiragino Mincho ProN,serif}.public-hole-grid span{color:var(--gold)}.public-hole-grid small{color:var(--mint);margin-top:12px}.public-data-note{border:1px solid var(--line);background:#ffffff06;border-radius:12px;padding:30px}.public-data-note h2{margin-top:0}.public-data-note p{color:var(--muted);margin-bottom:0;line-height:1.8}.public-course-profile{padding:64px 0 8px}.public-course-profile .public-section-heading{align-items:center}.public-course-profile-layout{border:1px solid var(--line);background:#0d1916;border-radius:14px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:56px;padding:32px;display:grid}.public-course-profile-copy>p{color:#dce7df;margin:0;font-size:17px;line-height:1.9}.public-course-profile-copy h3{color:var(--gold);margin:30px 0 10px;font-size:16px}.public-course-profile-facts{align-content:start;gap:0;margin:0;display:grid}.public-course-profile-facts div{border-bottom:1px solid var(--line);padding:14px 0}.public-course-profile-facts div:first-child{padding-top:0}.public-course-profile-facts dt{color:var(--muted);font-size:13px}.public-course-profile-facts dd{margin:7px 0 0;font-weight:700;line-height:1.6}.public-course-profile-facts a{color:var(--mint)}.public-course-profile-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.public-course-profile-actions a{color:var(--mint);background:#4ec57b14;border:1px solid #70dda059;border-radius:8px;padding:12px 18px;font-weight:800;text-decoration:none}.public-course-profile-sources{border:1px solid var(--line);background:#ffffff05;border-radius:10px;margin-top:26px;padding:22px 24px}.public-course-profile-sources h3{color:var(--muted);margin:0 0 12px;font-size:14px}.public-course-profile-sources ul{flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;display:flex}.public-course-profile-sources a{color:var(--mint);overflow-wrap:anywhere;font-size:14px}.public-course-analysis{padding:68px 0}.public-course-analysis-lead{max-width:760px;color:var(--muted);margin:-8px 0 26px;font-size:16px;line-height:1.8}.public-course-analysis-overview{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.public-course-analysis-overview>div{border:1px solid var(--line);background:#0d1916;border-radius:10px;gap:8px;min-height:138px;padding:22px;display:grid}.public-course-analysis-overview small,.public-course-analysis-overview span{color:var(--muted);font-size:12px}.public-course-analysis-overview strong{align-self:end;font:600 24px/1.25 Yu Mincho,Hiragino Mincho ProN,serif}.public-course-analysis-extremes{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px;display:grid}.public-course-analysis-extremes article{border:1px solid var(--line);background:#ffffff06;border-radius:10px;padding:20px 22px}.public-course-analysis-extremes p{color:var(--gold);margin:0 0 12px;font-size:12px;font-weight:800}.public-course-analysis-extremes a{gap:6px;font-size:17px;font-weight:900;text-decoration:none;display:grid}.public-course-analysis-extremes a span{color:var(--mint);font-size:14px}.public-course-analysis-note{color:var(--muted);margin:18px 0 0;font-size:13px;line-height:1.7}.public-hole-page>header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px;display:flex}.public-hole-page header h1 span{color:var(--gold)}.public-hole-page header div>p:last-child{font-size:20px;font-weight:800}.public-3d-card{border:1px solid var(--line);background:#0d1916;border-radius:18px;grid-template-columns:1.25fr .75fr;min-height:480px;display:grid;overflow:hidden}.public-3d-card img{object-fit:cover;width:100%;height:100%;min-height:480px}.public-3d-card>div{flex-direction:column;justify-content:center;padding:38px;display:flex}.public-3d-card>div p{color:var(--gold);letter-spacing:.13em;font-size:12px;font-weight:900}.public-3d-card h2{margin:6px 0 12px;font:500 36px/1.2 Yu Mincho,Hiragino Mincho ProN,serif}.public-3d-card span{color:var(--muted);line-height:1.8}.public-3d-card a{border-radius:7px;justify-content:center;margin-top:28px;padding:15px 18px;font-weight:900;display:inline-flex}.public-hole-facts{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0;display:grid}.public-hole-facts div{border:1px solid var(--line);background:#ffffff06;border-radius:10px;padding:20px;display:grid}.public-hole-facts span{color:var(--muted);letter-spacing:.12em;font-size:12px}.public-hole-facts strong{margin-top:8px;font:500 30px Yu Mincho,Hiragino Mincho ProN,serif}.public-hole-nav{grid-template-columns:1fr auto 1fr;gap:16px;margin:34px 0 70px;display:grid}.public-hole-nav a{color:var(--mint);font-weight:800}.public-hole-nav a:last-child{text-align:right}.public-directory-back{margin:22px 0 0}.public-compact-heading>a,.public-directory-back a{color:var(--mint);font-weight:800}.public-hole-number-section,.public-prefecture-neighbors,.public-related-courses{margin:42px 0}.public-compact-heading{justify-content:space-between;align-items:baseline;gap:22px;margin-bottom:18px;display:flex}.public-compact-heading h2{margin:0;font:500 clamp(22px,3vw,30px)/1.35 Yu Mincho,Hiragino Mincho ProN,serif}.public-hole-number-nav{grid-template-columns:repeat(9,1fr);gap:8px;display:grid}.public-hole-number-nav a,.public-hole-number-nav span{border:1px solid var(--line);background:#0d1916;border-radius:8px;place-items:center;min-height:46px;font-weight:900;text-decoration:none;display:grid}.public-hole-number-nav a{color:#d5e1d9}.public-hole-number-nav span[aria-current=page]{border-color:var(--gold);color:#13170f;background:var(--gold)}.public-related-courses{border-top:1px solid var(--line);padding-top:42px}.public-related-course-list{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.public-related-course-list>a{border:1px solid var(--line);background:#0d1916;border-radius:10px;gap:7px;min-width:0;padding:20px;text-decoration:none;display:grid}.public-related-course-list span{color:var(--gold);font-size:12px;font-weight:800}.public-related-course-list strong{line-height:1.5}.public-related-course-list small{color:var(--mint);margin-top:10px;line-height:1.5}.public-prefecture-neighbors{border-top:1px solid var(--line);padding-top:46px}.public-prefecture-neighbors>div:last-child{flex-wrap:wrap;gap:9px;display:flex}.public-prefecture-neighbors>div:last-child a{border:1px solid var(--line);color:#cbd8d0;border-radius:999px;padding:10px 14px;text-decoration:none}.public-app-page .public-feature-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:60px 0 36px;display:grid}.public-feature-grid article{border:1px solid var(--line);background:#0d1916;border-radius:12px;padding:28px}.public-feature-grid article>strong{color:var(--gold)}.public-feature-grid p{color:var(--muted);line-height:1.7}.public-coming-soon{color:#f4d98f;background:#e5b94f1f;border-radius:999px;width:fit-content;padding:10px 14px;font-weight:800}@media (max-width:820px){.public-header{padding-inline:18px}.public-header nav a:first-child{display:none}.public-hero{gap:40px;padding:60px 24px}.public-app-page .public-feature-grid,.public-course-grid,.public-hero{grid-template-columns:1fr}.public-course-list article{grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:92px;padding:18px 0}.public-course-list article>div{min-width:0}.public-course-list article>div:first-child{grid-column:1/-1}.public-course-list h2{overflow-wrap:anywhere;font-size:17px;line-height:1.45}.public-course-list dl{grid-area:2/1;max-width:none}.public-course-list dl div{padding-block:5px}.public-course-list-action{white-space:nowrap;grid-area:2/2;place-self:center end;font-size:14px}.public-app-band{flex-direction:column;align-items:flex-start;padding:30px}.public-hole-grid{grid-template-columns:repeat(3,1fr)}.public-3d-card{grid-template-columns:1fr}.public-3d-card img{min-height:280px}.public-course-hero{flex-direction:column;align-items:flex-start}.public-course-hero>div:last-child{text-align:left}.public-course-profile-layout{grid-template-columns:1fr;gap:34px;padding:24px}.public-course-analysis-extremes,.public-course-analysis-overview{grid-template-columns:repeat(2,1fr)}.public-footer{flex-direction:column}.public-footer nav{justify-content:flex-start}.public-information-body ol li{grid-template-columns:32px 1fr;gap:8px 12px}.public-information-body ol li span{grid-column:2}.public-information-body dl div{grid-template-columns:1fr;gap:5px}.public-guide-index>div>a{grid-template-columns:38px 1fr}.public-guide-index a>p{grid-column:2}.public-guide-related>div{grid-template-columns:1fr}.public-compact-heading{flex-direction:column;align-items:flex-start;gap:9px}.public-hole-number-nav{grid-template-columns:repeat(6,1fr)}.public-related-course-list{grid-template-columns:1fr}.public-hole-nav{grid-template-columns:1fr 1fr}.public-hole-nav a:nth-child(2){text-align:center;grid-area:2/1/auto/-1}}@media (max-width:430px){.public-app-page,.public-course-page,.public-hole-page,.public-list-page,.public-section{width:min(100% - 32px,1180px)}.public-course-list article{grid-template-columns:minmax(0,1fr) auto}.public-course-list article>div:first-child{grid-column:1/-1}.public-course-list dl{grid-area:2/1}.public-course-list dl div{padding:5px 8px}.public-course-list dl div:first-child{border-left:0;padding-left:0}.public-course-list dl dd{margin:0}.public-course-list-action{grid-area:2/2;place-self:center end}.public-course-analysis-extremes,.public-course-analysis-overview{grid-template-columns:1fr}}.workspace{background:var(--deep);grid-template-rows:76px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 350px;height:100dvh;display:grid;overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:10;background:#08110ff5;grid-column:1/-1;justify-content:space-between;padding:0 24px}.brand,.topbar{align-items:center;display:flex}.brand{color:inherit;gap:13px;text-decoration:none}.brand-mark{object-fit:cover;border:0;border-radius:9px;width:38px;height:38px;display:block}.brand h1,.brand p{margin:0}.brand p{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:10px}.brand h1{letter-spacing:.02em;margin-top:2px;font:500 18px/1.1 Yu Mincho,Hiragino Mincho ProN,serif}.status{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.status span{background:var(--mint);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #80b79cb3}.status[data-state=error] span{background:#df735f}.topbar-actions{align-items:center;gap:16px;display:flex}.admin-account-button{color:var(--gold);background:#e5b94f14;border:1px solid #e5b94f6b;border-radius:6px;padding:9px 12px;font-size:11px;font-weight:700}.admin-account-button:disabled{cursor:wait;opacity:.5}.admin-account-button[data-authenticated=true]{color:var(--mint);background:#80b79c14;border-color:#80b79c57;align-items:center;gap:8px;display:flex}.admin-account-button[data-authenticated=true] span{letter-spacing:.12em;font-size:9px}.course-editor-link{color:var(--mint);background:#80b79c14;border:1px solid #80b79c57;border-radius:6px;padding:9px 12px;font-size:11px;font-weight:700;text-decoration:none}.course-editor-workspace{background:var(--deep);grid-template-rows:68px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 390px;width:100%;height:100dvh;display:grid;overflow:hidden}.course-editor-topbar{border-bottom:1px solid var(--line);z-index:1000;background:#08110ffa;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 22px;display:flex}.course-editor-top-actions{align-items:center;gap:10px;display:flex}.course-editor-top-actions a,.course-editor-top-actions button{border:1px solid var(--line);color:var(--ink);background:#ffffff09;border-radius:6px;padding:9px 12px;font-size:11px;font-weight:700;text-decoration:none}.course-editor-map-shell{min-width:0;min-height:0;position:relative}.course-editor-map{background:#111a16;position:absolute;inset:0}.course-editor-map-instruction{color:#fff;background:#050d0bdb;border:1px solid #ffffff38;border-radius:999px;max-width:min(620px,100% - 48px);padding:10px 16px;font-size:12px;top:16px;box-shadow:0 8px 30px #00000047}.course-editor-map-instruction,.course-editor-map-modes{z-index:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;left:50%;transform:translate(-50%)}.course-editor-map-modes{background:#050d0be6;border:1px solid #ffffff29;border-radius:10px;gap:8px;padding:7px;display:flex;bottom:28px}.course-editor-map-modes button{min-width:118px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;padding:11px 14px;font-size:11px;font-weight:700}.course-editor-map-modes button[data-active=true]{color:#10140f;background:var(--gold);border-color:#e5b94f80}.course-editor-panel{border-left:1px solid var(--line);background:#0d1714;min-height:0;overflow-y:auto}.course-editor-panel section{border-bottom:1px solid var(--line);gap:11px;padding:20px;display:grid}.course-editor-panel h2,.course-editor-panel h3{margin:0}.course-editor-panel h2{font:500 22px/1.2 Yu Mincho,Hiragino Mincho ProN,serif}.course-editor-step{color:var(--gold);letter-spacing:.16em;font-size:9px;font-weight:800}.course-editor-panel label{color:var(--muted);gap:6px;font-size:10px;display:grid}.course-editor-panel input,.course-editor-panel select,.course-editor-panel textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#08110f;border-radius:6px;outline:none;padding:10px 11px;font-size:12px}.course-editor-panel input:focus,.course-editor-panel select:focus,.course-editor-panel textarea:focus{border-color:#e5b94f94}.course-editor-panel textarea{resize:vertical;line-height:1.55}.course-editor-seo-profile{scroll-margin-top:20px}.course-editor-seo-profile>p{color:var(--muted);margin:0;line-height:1.55}.course-editor-seo-actions{grid-template-columns:1fr 1.35fr;gap:9px;display:grid}.course-editor-seo-actions button{min-height:44px}[data-seo-state=verified]{color:#8de2ac}[data-seo-state=collected]{color:#e5b94f}[data-seo-state=uncollected]{color:var(--muted)}.course-editor-fields.two-columns{grid-template-columns:1fr 1fr;gap:9px;display:grid}.course-editor-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.course-editor-section-heading>div{gap:4px;display:grid}.course-editor-section-heading>span{color:var(--muted);background:#ffffff0f;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.course-editor-section-heading>span[data-ready=true]{color:#bff3d1;background:#4ec57b24}.course-editor-hole-grid{grid-template-columns:repeat(9,1fr);gap:5px;display:grid}.course-editor-hole-grid button{aspect-ratio:1;border:1px solid var(--line);color:var(--muted);background:#ffffff06;border-radius:4px;padding:0;font-size:10px}.course-editor-hole-grid button[data-active=true]{border-color:var(--gold);color:#10140f;background:var(--gold)}.course-editor-hole-grid button[data-saved=true]{color:#bff3d1;background:#4ec57b24;border-color:#70dda0b8;box-shadow:inset 0 -3px #70dda0d1}.course-editor-hole-grid button[data-active=true][data-saved=true]{border-color:var(--gold);color:#10140f;background:var(--gold);box-shadow:inset 0 -3px #42a86d}.course-editor-hole-grid button[data-verified=true]{color:#e5f8eb;background:#23814b6b;border-color:#48be77e6;box-shadow:inset 0 -4px #4ec57b}.course-editor-hole-grid button[data-active=true][data-verified=true]{border-color:var(--gold);color:#10140f;background:var(--gold);box-shadow:inset 0 -4px #23814b}.course-editor-progress{grid-template-columns:1fr 1fr;gap:8px;display:grid}.course-editor-progress>div:not(.course-editor-progress-track){background:#ffffff09;border-radius:6px;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.course-editor-progress span{color:var(--muted);font-size:14px}.course-editor-progress strong{font-size:16px}.course-editor-progress-track{background:#ffffff12;border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.course-editor-progress-track span{border-radius:inherit;background:#4ec57b;height:100%;transition:width .2s;display:block}.course-editor-small-button{color:var(--mint);background:#80b79c12;border:1px solid #80b79c59;border-radius:5px;padding:7px 9px;font-size:10px;font-weight:700}.course-editor-operation-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin:12px 0 16px;display:grid}.course-editor-operation-row .course-editor-small-button{min-height:44px;padding-inline:14px}.course-editor-green-list{gap:7px;display:grid}.course-editor-green-list>div{border:1px solid var(--line);border-radius:7px;grid-template-columns:38px 50px minmax(0,1fr) 50px 48px;align-items:center;gap:7px;padding:7px;display:grid}.course-editor-green-list>div[data-active=true]{border-color:#80b79c8a}.course-editor-green-select{color:#07100f;background:var(--mint);border:0;border-radius:50%;height:34px;font-size:10px;font-weight:800}.course-editor-green-color{color:var(--muted);justify-items:center;gap:2px;font-size:9px;display:grid}.course-editor-green-color input[type=color]{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:5px;width:38px;height:24px;padding:0}.course-editor-green-delete{color:#f0a0a0;background:#e8717114;border:1px solid #e871716b;border-radius:6px;min-height:34px;padding:4px 6px;font-weight:700}.course-editor-green-delete:disabled{cursor:not-allowed;opacity:.3}.course-editor-green-list input{padding:8px}.course-editor-green-list span{color:var(--muted);text-align:right;font-size:8px}.course-editor-summary dl{grid-template-columns:repeat(3,1fr);gap:7px;margin:0;display:grid}.course-editor-summary dl div{background:#ffffff09;border-radius:6px;padding:10px}.course-editor-summary dt{color:var(--muted);font-size:8px}.course-editor-summary dd{margin:4px 0 0;font-size:11px;font-weight:700}.course-editor-save-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.course-editor-save-row[data-last-hole=true]{grid-template-columns:1fr}.course-editor-save-row button{border-radius:7px;min-height:42px;font-size:11px;font-weight:800}.course-editor-reset{border:1px solid var(--line);color:var(--muted);background:0 0}.course-editor-save{color:var(--gold);background:#e5b94f1a;border:1px solid #e5b94f9e}.course-editor-save-next{color:#10140f;background:var(--gold);border:0}.course-editor-save-next:disabled,.course-editor-save:disabled{cursor:not-allowed;opacity:.35}.course-editor-top-actions a[aria-disabled=true]{cursor:not-allowed;opacity:.42}.course-editor-verify{color:#bff3d1;background:#4ec57b1f;border:1px solid #70dda080;border-radius:7px;min-height:42px;font-size:11px;font-weight:800}.course-editor-verify:disabled{cursor:not-allowed;opacity:.4}.course-editor-green-list span,.course-editor-hole-grid button,.course-editor-map-instruction,.course-editor-map-modes button,.course-editor-panel input,.course-editor-panel label,.course-editor-panel select,.course-editor-save-legend,.course-editor-save-row button,.course-editor-section-heading>span,.course-editor-small-button,.course-editor-step,.course-editor-summary dd,.course-editor-summary dt,.course-editor-summary p,.course-editor-top-actions a,.course-editor-top-actions button,.course-editor-verify,.course-editor-workspace,.official-course-map-link{font-size:16px}.course-editor-map-modes button{min-width:135px}.course-editor-green-list{gap:10px}.course-editor-green-list>div{grid-template-columns:44px 52px minmax(0,1fr) 72px 58px}.course-editor-summary dl div{padding:12px}.course-editor-summary dd{line-height:1.3}.workspace{grid-template-rows:88px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 460px}.topbar{padding:0 28px}.attribution,.error-card p,.interaction-hint,.scale{font-size:16px}@media (max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 410px}}.course-editor-summary p{color:var(--muted);margin:0;font-size:9px}.course-editor-save-legend{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.course-editor-save-legend span{border-radius:50%;width:9px;height:9px;margin-left:4px}.course-editor-save-legend span[data-kind=saved]{background:#70dda0}.course-editor-save-legend span[data-kind=verified]{background:#23814b}.course-editor-save-legend span[data-kind=current]{background:var(--gold)}.course-editor-corner,.course-editor-marker{color:#07100f;border:2px solid #07100f;border-radius:50%;place-items:center;font-size:10px;font-weight:900;box-shadow:0 3px 12px #0000006b;display:grid!important}.course-editor-corner{color:#15160e;background:var(--gold);border-color:#fff}.course-editor-tee{background:#f39b3f}.course-editor-green{background:0 0}.course-editor-green>span{color:#07100f;border:2px solid #ffffffe6;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.course-editor-tooltip{color:#fff!important;box-shadow:none!important;background:#050d0be6!important;border:1px solid #ffffff29!important;font-size:10px!important}.terrain-green-color{justify-content:space-between;align-items:center;gap:12px;display:flex}.course-green-selector{background:#80b79c12;border:1px solid #80b79c59;border-radius:8px;grid-template-columns:1fr;gap:7px;margin-top:14px;padding:12px;display:grid}.course-green-selector>span{color:var(--mint);font-weight:800}.terrain-green-color input[type=color]{border:1px solid var(--line);background:0 0;border-radius:6px;width:54px;height:34px;padding:2px}@media (max-width:900px){.course-editor-workspace{grid-template-rows:62px minmax(55dvh,1fr) auto;grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.course-editor-map-shell{min-height:55dvh}.course-editor-panel{border-top:1px solid var(--line);border-left:0;overflow:visible}.course-editor-map-modes{width:calc(100% - 24px)}.course-editor-map-modes button{flex:1;min-width:0;padding-inline:6px}}.login-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#020807c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.login-modal{background:#101c19;border:1px solid #e5b94f4d;border-radius:12px;width:min(420px,100%);padding:28px;position:relative;box-shadow:0 24px 80px #00000085}.login-modal h2{margin:4px 0 8px;font:500 24px/1.2 Yu Mincho,Hiragino Mincho ProN,serif}.login-modal .muted{margin:0;font-size:12px;line-height:1.7}.login-modal-close{width:34px;height:34px;color:var(--muted);background:#ffffff0d;border:0;border-radius:50%;font-size:22px;line-height:1;position:absolute;top:12px;right:12px}.viewport{min-width:0;min-height:0;position:relative;overflow:hidden}.viewport canvas{touch-action:none;width:100%;height:100%;display:block}.scale{color:#d5ded7;text-align:center;pointer-events:none;font:500 11px/1 SFMono-Regular,Consolas,monospace;position:absolute;bottom:25px;right:24px}.scale span{border-bottom:1px solid #d5ded7;border-left:1px solid #d5ded7;border-right:1px solid #d5ded7;width:100%;height:7px;margin-bottom:6px;display:block}.interaction-hint{border:1px solid var(--line);color:var(--muted);pointer-events:none;background:#07100fad;border-radius:4px;padding:9px 12px;bottom:24px;left:24px}.attribution,.interaction-hint{font-size:11px;position:absolute}.attribution{z-index:3;color:#eff4eae0;background:#071310b8;border:1px solid #dae5d22e;border-radius:4px;padding:5px 8px;text-decoration:none;bottom:16px;right:16px}.error-card{background:#181411f0;border:1px solid #df735f73;border-radius:8px;width:min(420px,100% - 40px);padding:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.error-card strong{color:#f1c0b6}.error-card p{color:var(--muted);margin:8px 0 0;font-size:13px}.error-card button{border:1px solid var(--gold);color:#17150e;background:var(--gold);border-radius:7px;min-height:42px;margin-top:16px;padding:9px 18px;font-weight:800}.panel{background:linear-gradient(180deg,#1a2b2440,transparent 220px),var(--panel);border-left:1px solid var(--line);min-height:0;overflow-y:auto}.mobile-hole-navigation,.mobile-panel-handle,.mobile-quick-controls{display:none}.panel-section{border-bottom:1px solid var(--line);padding:22px 24px}.eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 11px;font:600 9px/1 SFMono-Regular,Consolas,monospace}.intro h2{margin:0;font:400 24px/1.3 Yu Mincho,Hiragino Mincho ProN,serif}.muted{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.7}.field-label,.panel h3{color:#cbd7ce;letter-spacing:.06em;margin:0;font-size:11px;font-weight:600}.url-row{grid-template-columns:1fr auto;gap:7px;margin-top:10px;display:grid}.url-row input{border:1px solid var(--line);color:#dbe4dd;background:#03090866;border-radius:4px;outline:none;min-width:0;padding:9px 10px;font:11px/1 SFMono-Regular,Consolas,monospace}.url-row input:focus{border-color:#80b79c99}.secondary-button,.url-row button{color:#d9e7de;background:#80b79c1a;border:1px solid #80b79c59;border-radius:4px}.course-catalog{gap:10px;display:grid}.course-catalog .section-heading{margin-bottom:2px}.course-catalog>label{color:var(--muted);margin-bottom:-5px;font-size:9px}.course-catalog select{border:1px solid var(--line);color:#dbe4dd;background:#0c1713;border-radius:4px;outline:none;width:100%;padding:9px 10px;font-size:11px}.course-catalog select:focus{border-color:#e5b94f8c}.official-course-map-link{color:var(--accent);font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.official-course-map-link:hover{text-decoration:underline}.hole-grid{gap:7px;margin-top:3px;display:grid}.hole-grid button{border:1px solid var(--line);color:var(--ink);text-align:center;background:#0309084d;border-radius:6px;gap:3px;padding:10px 5px;display:grid}.hole-grid button:hover,.hole-grid button[data-active=true]{background:#e5b94f1a;border-color:#e5b94f8f}.hole-grid button strong{color:var(--gold);font:600 17px/1 SFMono-Regular,Consolas,monospace}.hole-grid button small,.hole-grid button span{color:var(--muted);font-size:8px}.hole-grid button small{color:var(--mint)}.marker-edit-buttons{margin-bottom:10px}.admin-login{border:1px solid var(--line);background:#03090857;border-radius:8px;gap:10px;margin:12px 0;padding:12px;display:grid}.admin-login--modal{background:0 0;border:0;margin:20px 0 0;padding:0}.admin-login--modal input{padding:12px;font-size:14px}.admin-login--modal>button[type=submit]{min-height:44px;margin-top:4px}.admin-locked{border:1px solid var(--line);background:#03090857;border-radius:8px;gap:10px;margin:12px 0;padding:12px;display:grid}.admin-locked p{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.admin-locked button{color:#17130a;background:var(--gold);border:1px solid #e5b94f73;border-radius:5px;padding:9px 11px;font-size:11px;font-weight:700}.admin-login p{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.admin-login label{color:var(--muted);gap:5px;font-size:9px;display:grid}.admin-login input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#0a1411;border-radius:4px;outline:none;padding:9px 10px}.admin-login button,.admin-session button,.primary-button{color:#17130a;background:var(--gold);border:1px solid #e5b94f73;border-radius:5px;padding:9px 11px;font-size:11px;font-weight:700}.admin-login button:disabled,.primary-button:disabled{cursor:not-allowed;opacity:.45}.admin-session{color:var(--mint);justify-content:space-between;align-items:center;gap:10px;margin:12px 0;font-size:10px;display:flex}.admin-session button{color:var(--ink);background:#80b79c1f;border-color:#80b79c57;padding:6px 8px;font-weight:500}.publish-pin{width:100%;margin-top:8px}.admin-message{margin:9px 0 0;font-size:10px;line-height:1.5}.admin-message[data-state=ok]{color:var(--mint)}.admin-message[data-state=error]{color:#ef907d}.export-config{width:100%}.export-config:disabled{cursor:not-allowed;opacity:.45}.club-select-label{color:var(--muted);margin:14px 0 6px;font-size:10px;display:block}.club-select{border:1px solid var(--line);color:#dbe4dd;background:#0c1713;border-radius:4px;outline:none;width:100%;padding:9px 10px;font-size:11px}.club-distance-list{margin-top:12px}.club-distance-list>label{color:#aebdb3;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:11px;display:flex}.club-distance-input{color:var(--muted);align-items:center;gap:5px;font:10px/1 SFMono-Regular,Consolas,monospace;display:flex}.club-distance-input input{border:1px solid var(--line);color:#e1e8e3;text-align:right;background:#03090859;border-radius:4px;outline:none;width:62px;padding:6px 7px;font:11px/1 SFMono-Regular,Consolas,monospace}.club-distance-input input:focus,.club-select:focus{border-color:#e5b94f8c}.club-summary{color:var(--gold);margin:10px 0 0;font-size:10px}.landing-panel .view-buttons button:disabled,.panel-section .view-buttons button:disabled{cursor:not-allowed;opacity:.4}.landing-metrics{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0;display:grid}.landing-metrics div{border:1px solid var(--line);background:#0309083d;border-radius:4px;padding:9px}.landing-metrics dt{color:#71877c;margin-bottom:5px;font-size:9px}.landing-metrics dd{color:#dce5df;margin:0;font:500 12px/1 SFMono-Regular,Consolas,monospace}.recommendation-route{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;margin-top:13px;font-size:10px;display:flex}.recommendation-route strong{color:var(--gold);font:600 13px/1 SFMono-Regular,Consolas,monospace}.recommendation-metrics{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0;display:grid}.recommendation-metrics div{border:1px solid var(--line);border-radius:4px;padding:9px}.recommendation-metrics dt{color:#71877c;margin-bottom:5px;font-size:16px}.recommendation-metrics dd{color:#dce5df;margin:0;font:600 18px/1.25 SFMono-Regular,Consolas,monospace}.club-recommendation{width:100%;color:var(--muted);text-align:left;background:#e5b94f12;border:1px solid #e5b94f6b;border-radius:4px;grid-template-columns:1fr auto;padding:11px;display:grid}.club-recommendation strong{color:var(--gold);font-size:13px}.club-recommendation small{color:#82988c;grid-column:1/-1;margin-top:6px;font-size:9px}.recommendation-note{color:#667c71;margin:9px 0 0;font-size:9px;line-height:1.6}.saved-plans>p,.shot-plan-help{color:#71877c;font-size:9px;line-height:1.6}.shot-plan-panel button:disabled{cursor:not-allowed;opacity:.4}.shot-list{counter-reset:shots;gap:7px;margin:12px 0;padding:0;list-style:none;display:grid}.shot-list li{border-left:2px solid var(--gold);background:#e5b94f0f;grid-template-columns:1fr auto;gap:4px 8px;padding:9px;display:grid}.shot-list span,.shot-list strong{font-size:10px}.shot-list span{color:#bac7bf}.shot-list small{color:#71877c;grid-column:1/-1;font-size:9px}.shot-plan-actions{grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 13px;display:grid}.plan-save-row button,.saved-plan>button,.shot-plan-actions button{border:1px solid var(--line);color:var(--muted);background:#03090847;border-radius:4px;padding:8px;font-size:10px}.plan-name-label{color:var(--muted);margin-bottom:6px;font-size:9px;display:block}.plan-save-row{grid-template-columns:1fr auto;gap:7px;display:grid}.plan-save-row input{border:1px solid var(--line);color:#dbe4dd;background:#0c1713;border-radius:4px;outline:none;min-width:0;padding:8px;font-size:10px}.saved-plans{margin-top:14px}.saved-plans h4{color:#8ba095;letter-spacing:.12em;margin:0 0 8px;font-size:9px;font-weight:500}.saved-plan{grid-template-columns:1fr auto;gap:6px;margin-top:6px;display:grid}.saved-plan>button:first-child{text-align:left;justify-content:space-between;align-items:center;display:flex}.saved-plan strong{color:#dbe4dd;font-size:10px}.saved-plan small{color:#71877c;font-size:9px}.location-status{color:#9fb1a7;margin:10px 0;font-size:10px}.location-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.location-actions button{border:1px solid var(--line);color:var(--muted);background:#03090847;border-radius:4px;padding:9px 7px;font-size:10px}.location-actions button:last-child{color:#8dcfca;border-color:#55d6d04d;grid-column:1/-1}.location-metrics{grid-template-columns:1fr 1fr;gap:7px;margin:11px 0;display:grid}.location-metrics div{border:1px solid var(--line);border-radius:4px;padding:8px}.location-metrics dt{color:#71877c;margin-bottom:5px;font-size:9px}.location-metrics dd{color:#dce5df;margin:0;font:500 10px/1 SFMono-Regular,Consolas,monospace}.location-note,.location-warning{margin:8px 0 0;font-size:9px;line-height:1.55}.location-warning{color:#e49a80}.location-note{color:#667c71}.round-mode-copy{color:#82968b;margin:10px 0 12px;font-size:10px;line-height:1.6}.round-mode-button{width:100%;min-height:46px;color:var(--gold);background:#e5b94f17;border:1px solid #e5b94f80;border-radius:6px;font-size:11px;font-weight:600}.round-mode-button[data-active=true]{color:#79d9d3;background:#55d6d017;border-color:#55d6d080}.round-status-grid{grid-template-columns:repeat(3,1fr);gap:7px;margin:11px 0 0;display:grid}.round-status-grid div{border:1px solid var(--line);border-radius:4px;padding:8px}.round-status-grid dt{color:#71877c;margin-bottom:5px;font-size:8px}.round-status-grid dd{color:#dce5df;margin:0;font-size:9px}.round-offline-note{color:#e2a080;margin:10px 0 0;font-size:9px;line-height:1.5}.mobile-round-status{display:none}.view-buttons{grid-template-columns:1fr 1fr;gap:7px;margin-top:14px;display:grid}.view-buttons button{border:1px solid var(--line);color:var(--muted);background:#03090847;border-radius:4px;padding:10px 8px;font-size:11px}.view-buttons button[data-active=true]{color:var(--gold);background:#e5b94f14;border-color:#e5b94f7a}.route-metrics h3{margin-bottom:14px;font-size:18px}.route-summary{grid-template-columns:1fr 1fr;gap:8px;display:grid}.route-summary div{border:1px solid var(--line);background:#0309083d;border-radius:4px;padding:11px}.route-summary span{color:#71877c;margin-bottom:6px;font-size:16px;display:block}.route-summary strong{color:#e2e9e3;font:600 20px/1.2 SFMono-Regular,Consolas,monospace}.profile-chart{border-bottom:1px solid var(--line);width:100%;height:112px;margin-top:12px;display:block}.url-row button{padding:0 13px;font-size:11px}.secondary-button:hover,.url-row button:hover{background:#80b79c2e}.section-heading{justify-content:space-between;align-items:center;display:flex}.section-heading output{color:var(--gold);font:500 16px/1 SFMono-Regular,Consolas,monospace}.section-heading>span{color:#61766b;letter-spacing:.12em;font:600 9px/1 SFMono-Regular,Consolas,monospace}.range{width:100%;accent-color:var(--gold);margin:18px 0 5px}.range-labels{color:#61766b;justify-content:space-between;font-size:9px;display:flex}.secondary-button{width:100%;margin-top:17px;padding:9px;font-size:11px}.metrics h3{margin-bottom:13px;font-size:18px}.cursor-readout dl,.metrics dl{margin:0}.cursor-readout dl div,.metrics dl div{justify-content:space-between;align-items:baseline;gap:16px;padding:7px 0;display:flex}.cursor-readout dt,.metrics dt{color:#71877c;font-size:16px}.cursor-readout dd,.metrics dd{color:#d7e1d9;text-align:right;margin:0;font:600 16px/1.4 SFMono-Regular,Consolas,monospace}.cursor-readout{border-bottom:0}.cursor-readout dl{margin-top:8px}@media (max-width:760px){body,html{overscroll-behavior-y:auto;min-height:100%}.workspace{grid-template-rows:68px auto auto auto;grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.topbar{padding:env(safe-area-inset-top,0) max(14px,env(safe-area-inset-right,0)) 0 max(14px,env(safe-area-inset-left,0));position:sticky;top:0}.brand p{display:none}.brand-mark{width:34px;height:34px}.brand h1{font-size:16px}.status{text-align:right;max-width:30vw;font-size:10px}.topbar-actions{gap:8px}.admin-account-button{white-space:nowrap;padding:8px 9px;font-size:9px}.admin-account-button[data-authenticated=true] span{display:none}.login-modal{padding:24px 20px}.viewport{aspect-ratio:1;width:100%;min-height:auto}.panel{z-index:auto;width:100%;max-height:none;padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid var(--line);box-shadow:none;border-left:0;border-radius:0;position:static;overflow:visible}.panel,.panel[data-mobile-open=true]{transform:none}.mobile-panel-handle{display:none}.mobile-panel-handle span{background:#52665b;border-radius:99px;width:42px;height:4px;margin-bottom:5px}.mobile-hole-navigation{z-index:9;min-height:54px;padding:7px max(12px,env(safe-area-inset-right,0)) 7px max(12px,env(safe-area-inset-left,0));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#08110ff5;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid;position:sticky;top:68px}.mobile-hole-navigation button{color:#dce7df;background:#80b79c14;border:1px solid #80b79c4d;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:7px 10px;font-size:16px;font-weight:700;display:flex}.mobile-hole-navigation button:last-child{color:#17150e;border-color:var(--gold);background:var(--gold)}.mobile-hole-navigation button:disabled{cursor:default;opacity:.35}.mobile-hole-navigation strong{color:var(--gold);white-space:nowrap;font-size:16px}.mobile-quick-controls{right:max(12px,env(safe-area-inset-right,0));bottom:max(14px,env(safe-area-inset-bottom,0));left:max(12px,env(safe-area-inset-left,0));z-index:8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07100fe0;border:1px solid #dae5d229;border-radius:12px;grid-template-columns:52px 64px minmax(100px,1fr) 58px;gap:7px;padding:7px;display:grid;position:absolute;box-shadow:0 8px 28px #00000061}.mobile-round-status{z-index:8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07100fc2;border:1px solid #dae5d21f;border-radius:7px;gap:5px;padding:5px;display:flex;position:absolute;top:12px;right:12px}.mobile-round-status span{color:#708279;font:600 8px/1 SFMono-Regular,Consolas,monospace}.mobile-round-status span[data-state=ok]{color:#7ad2ae}.mobile-round-status span[data-state=warning]{color:#e6a07e}.mobile-round-status[data-active=true]{border-color:#55d6d047}.mobile-quick-controls button{border:1px solid var(--line);color:#cbd7ce;background:#80b79c14;border-radius:8px;min-height:48px;padding:6px;font-size:11px}.mobile-quick-controls button:disabled{opacity:.4}.mobile-quick-controls .mobile-club-button{color:var(--gold);text-align:left;border-color:#e5b94f66;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.mobile-club-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-club-button strong{font:600 12px/1 SFMono-Regular,Consolas,monospace}.panel-section{padding:20px}.panel button,.panel input,.panel select{min-height:44px}.scale{bottom:8px;right:14px}.attribution{font-size:9px;bottom:8px;left:14px;right:auto}.interaction-hint{display:none}}@media (max-width:380px){.mobile-quick-controls{grid-template-columns:48px 56px minmax(90px,1fr) 52px;gap:5px;padding:5px}.mobile-quick-controls button{font-size:10px}}@media (min-width:761px){.workspace{grid-template-rows:88px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 460px}.topbar{padding:0 28px}}.topbar .admin-account-button,.topbar .admin-account-button span,.topbar .brand p,.topbar .course-editor-link,.topbar .status{font-size:16px}.topbar .brand h1{font-size:23px}.topbar .brand-mark{width:46px;height:46px;font-size:16px}.panel :where(p,span,label,button,input,select,small,dt,dd,a){font-size:16px}.panel-section{padding:26px 28px}.intro{padding-top:34px}.intro .eyebrow{letter-spacing:.12em;margin-bottom:15px;font-size:16px;line-height:1.35}.intro h2{font-size:30px;line-height:1.4}.intro .muted{margin-top:16px;font-size:17px;line-height:1.8}.field-label,.panel h3{font-size:18px}.course-catalog{gap:14px}.course-catalog>label{margin-bottom:-7px;font-size:16px}.club-distance-input input,.club-select,.course-catalog select,.url-row input{min-height:46px;padding:11px 12px;font-size:16px}.hole-grid{grid-template-columns:repeat(3,1fr);gap:9px}.hole-grid button{min-height:94px;padding:12px 7px}.hole-grid button strong{font-size:22px}.hole-grid button small,.hole-grid button span{font-size:16px}.panel .primary-button,.panel .secondary-button,.panel button{min-height:44px;font-size:16px}.attribution,.course-editor-green-list span,.course-editor-hole-grid button,.course-editor-map-instruction,.course-editor-map-modes button,.course-editor-panel input,.course-editor-panel label,.course-editor-panel select,.course-editor-save-legend,.course-editor-save-row button,.course-editor-section-heading>span,.course-editor-small-button,.course-editor-step,.course-editor-summary dd,.course-editor-summary dt,.course-editor-summary p,.course-editor-top-actions a,.course-editor-top-actions button,.course-editor-verify,.error-card p,.interaction-hint,.official-course-map-link,.scale{font-size:16px}.course-editor-panel h2{font-size:26px}.course-editor-panel h3{font-size:20px}.course-editor-panel input,.course-editor-panel select{min-height:44px}.course-editor-hole-grid{grid-template-columns:repeat(6,1fr)}.course-editor-hole-grid button{aspect-ratio:auto;min-height:40px}@media (max-width:760px){.workspace{grid-template-rows:68px auto auto auto;grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.topbar .brand p{display:none}.topbar .brand h1{font-size:18px}.topbar .brand-mark{width:38px;height:38px}.topbar .status{font-size:16px}.panel-section{padding:22px 20px}}.public-3d-card button.public-primary{border:1px solid var(--gold);font:inherit;cursor:pointer;border-radius:7px;justify-content:center;margin-top:28px;padding:15px 18px;font-weight:900;display:inline-flex}.public-terrain-embed{border:1px solid var(--line);background:#07100f;border-radius:18px;overflow:hidden}.public-terrain-frame{aspect-ratio:16/10;background:#07100f;border:0;width:100%;display:block}.public-terrain-embed-caption{color:var(--muted);border-top:1px solid var(--line);text-align:center;padding:12px 18px;font-size:14px}.public-hole-terrain-section{border:1px solid var(--line);background:#0d1916;border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:54px;margin:22px 0 18px;padding:34px;display:grid}.public-hole-terrain-section h2{margin:7px 0 14px;font-size:30px}.public-hole-terrain-section>div>p:last-child{color:#dce7df;margin:0;font-size:17px;line-height:1.9}.public-hole-terrain-facts{grid-template-columns:1fr 1fr;align-content:start;gap:0 22px;margin:0;display:grid}.public-hole-terrain-facts div{border-bottom:1px solid var(--line);min-width:0;padding:12px 0}.public-hole-terrain-facts dt{color:var(--muted);font-size:13px}.public-hole-terrain-facts dd{overflow-wrap:anywhere;margin:6px 0 0;font:700 15px/1.5 SFMono-Regular,Consolas,monospace}.public-green-switcher{border:1px solid var(--line);background:#ffffff06;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin:0 0 14px;padding:14px 16px;display:flex}.public-green-switcher>span{color:var(--muted);font-size:13px;font-weight:800}.public-green-switcher>div{flex-wrap:wrap;gap:8px;display:flex}.public-green-switcher button{border:1px solid var(--line);color:#dce7df;cursor:pointer;background:#0d1916;border-radius:999px;padding:9px 14px;font-weight:800}.public-green-switcher button[data-active=true]{border-color:var(--gold);color:#15170f;background:var(--gold)}.public-elevation-profile,.public-green-comparison,.public-terrain-method-note{border:1px solid var(--line);background:#ffffff06;border-radius:14px;margin:18px 0;padding:30px 34px}.public-elevation-profile>p,.public-terrain-method-note>p{color:var(--muted);line-height:1.8}.public-elevation-segments{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;display:grid}.public-elevation-segments article{border:1px solid var(--line);border-top:3px solid var(--gold);background:#0d1916;border-radius:10px;gap:8px;padding:20px;display:grid}.public-elevation-segments article[data-direction=up]{border-top-color:#df735f}.public-elevation-segments article[data-direction=down]{border-top-color:var(--mint)}.public-elevation-segments small,.public-elevation-segments span{color:var(--muted)}.public-elevation-segments strong{font:700 22px/1.2 SFMono-Regular,Consolas,monospace}.public-route-deviation{margin:20px 0 0}.public-green-comparison>div:last-child{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.public-green-comparison article{border:1px solid var(--line);background:#0d1916;border-radius:10px;gap:7px;padding:18px;display:grid}.public-green-comparison article[data-active=true]{border-color:var(--gold)}.public-green-comparison article span{color:var(--gold);font-weight:800}.public-green-comparison article small{color:var(--muted)}.public-terrain-method-note h2{margin-top:0}.public-terrain-method-note dl{flex-wrap:wrap;gap:10px 30px;margin:18px 0 0;display:flex}.public-terrain-method-note dl div{gap:8px;display:flex}.public-terrain-method-note dt{color:var(--muted)}.public-terrain-method-note dd{margin:0;font-weight:700}.workspace--embedded{width:100%;height:100dvh;min-height:0;display:block;overflow:hidden}.workspace--embedded .viewport{aspect-ratio:auto;width:100%;height:100%;min-height:0}@media (max-width:820px){.public-terrain-frame{aspect-ratio:1}.public-hole-terrain-section{grid-template-columns:1fr;gap:24px;padding:24px}.public-hole-terrain-facts{grid-template-columns:1fr}.public-green-switcher{flex-direction:column;align-items:flex-start}.public-elevation-profile,.public-green-comparison,.public-terrain-method-note{padding:24px}.public-elevation-segments{grid-template-columns:1fr}}@media (max-width:760px){.workspace--embedded{height:100dvh;min-height:0;display:block;overflow:hidden}.workspace--embedded .viewport{aspect-ratio:auto;height:100%;min-height:0}}.terrain-credits{display:contents}.imagery-warning-card{z-index:5;color:#f4f7f2;text-align:center;background:#07100feb;border:1px solid #f4d98f73;border-radius:10px;width:min(360px,100% - 32px);padding:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 36px #00000059}.imagery-warning-card p{color:var(--muted);margin:9px 0 14px;line-height:1.6}.imagery-warning-card button{border:1px solid var(--gold);color:#12150f;background:var(--gold);cursor:pointer;border-radius:7px;padding:10px 14px;font-weight:800}.terrain-loading{z-index:4;color:#e8eee9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07100fd1;border:1px solid #dae5d22e;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.terrain-loading span{border:2px solid #e8eee947;border-top:2px solid var(--gold);border-radius:50%;width:14px;height:14px;animation:terrain-loading-spin .8s linear infinite}.terrain-loading p{white-space:nowrap;margin:0;font-size:13px}@keyframes terrain-loading-spin{to{transform:rotate(1turn)}}.terrain-admin-login{gap:10px;display:grid}.terrain-admin-login p{color:var(--muted);margin:0 0 4px;line-height:1.6}.terrain-admin-login input{border:1px solid var(--line);color:#eef3ef;background:#ffffff0b;border-radius:7px;width:100%;min-height:44px;padding:10px 12px}.terrain-admin-login button{border:1px solid var(--gold);color:#12150f;background:var(--gold);cursor:pointer;border-radius:7px;min-height:44px;font-weight:800}@media (min-width:761px){.terrain-credits .scale{text-align:center;bottom:25px;right:24px}.terrain-credits .attribution{top:16px;bottom:auto;right:16px}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}