:root{color:#234035;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--heading:#183329;--muted:#5f7266;--accent:#2d8058;--accent-strong:#1f5c43;--accent-ring:#2d805838;--surface-soft:#f6faf4f0;--card-border:#1833291f;--input-border:#24403533;background:radial-gradient(circle at top,#a5cfb08c,#0000 36%),linear-gradient(#f7f4ea 0%,#eef4ea 100%);font-family:Avenir Next,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{background:radial-gradient(circle at top,#a5cfb08c,#0000 36%),linear-gradient(#f7f4ea 0%,#eef4ea 100%)}body{min-width:320px;min-height:100svh;margin:0}body,button,input,textarea{font:inherit;color:inherit}button{font-family:inherit}img{max-width:100%;display:block}a{color:inherit}p,h1,h2,h3{margin-top:0}#root{min-height:100svh}.app-shell{min-height:100svh;padding:18px 14px 32px}.app-shell__inner{width:min(1120px,100%);margin:0 auto}.auth-shell{align-items:center;display:flex}.auth-card,.section-card,.dashboard-header{border:1px solid var(--card-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border-radius:24px;box-shadow:0 18px 48px #13261f1f}.auth-card{max-width:520px;margin:0 auto;padding:28px 20px}.dashboard-shell{flex-direction:column;gap:20px;display:flex}.dashboard-header{padding:24px 20px}.dashboard-header__top{flex-direction:column;gap:18px;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-strong);margin:0 0 10px;font-size:.8rem;font-weight:700}.app-title{color:var(--heading);letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.3rem);line-height:.98}.app-subtitle{max-width:58ch;color:var(--muted);margin:14px 0 0;font-size:1rem}.dashboard-nav{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.dashboard-nav__link{border:1px solid var(--card-border);min-height:46px;color:var(--heading);background:#fff;border-radius:14px;justify-content:center;align-items:center;padding:12px 16px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex}.dashboard-nav__link:hover{transform:translateY(-1px)}.dashboard-nav__link.is-active{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;border-color:#0000;box-shadow:0 12px 24px #26664838}.user-bar{flex-direction:column;gap:12px;display:flex}.user-chip{border:1px solid var(--card-border);background:var(--surface-soft);color:var(--heading);border-radius:18px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.user-chip__label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.82rem;font-weight:700}.user-chip__detail{color:var(--muted);word-break:break-word;font-size:.95rem}.section-grid{gap:20px;display:grid}.section-card{padding:22px 18px}.section-card--summary,.dashboard-list-section{min-width:0}.section-card__header{margin-bottom:18px}.section-card__header h2{color:var(--heading);margin:0;font-size:1.45rem}.section-card__copy{color:var(--muted);margin:8px 0 0}.form-stack{flex-direction:column;gap:16px;display:flex}.field-grid{gap:16px;display:grid}.form-field{flex-direction:column;gap:8px;min-width:0;display:flex}.form-field label{color:var(--heading);font-size:.95rem;font-weight:700}.form-hint{color:var(--muted);margin:-2px 0 0;font-size:.92rem}.form-actions{flex-direction:column;gap:12px;display:flex}.auth-toggle{background:var(--surface-soft);border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:26px 0 18px;padding:6px;display:grid}.auth-toggle__button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px;padding:12px 14px;font-weight:700}.auth-toggle__button.is-active{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;box-shadow:0 10px 24px #26664838}.auth-panel-heading{margin-bottom:16px}.status-message{border:1px solid #0000;border-radius:16px;margin:0;padding:12px 14px;font-weight:600}.status-message--error{color:#a4402f;background:#fff1ee;border-color:#f5c0b5}.status-message--success{color:#1f6f44;background:#edf8f0;border-color:#b8e0c2}.loading-panel,.loading-state,.empty-state{text-align:center}.loading-panel{padding:48px 24px}.loading-state,.empty-state{border:1px dashed var(--card-border);background:var(--surface-soft);color:var(--muted);border-radius:18px;padding:24px 18px}.tee-time-list{gap:14px;display:grid}.capacity-overview{flex-direction:column;gap:16px;display:flex}.members-list{gap:14px;display:grid}.member-card{border:1px solid var(--card-border);background:var(--surface-soft);border-radius:20px;flex-direction:column;gap:14px;padding:18px;display:flex}.member-card__identity{min-width:0}.member-card__name{color:var(--heading);word-break:break-word;margin:0;font-size:1.08rem}.member-card__status{color:#1f6f44;letter-spacing:.04em;text-transform:uppercase;background:#edf8f0;border-radius:999px;align-self:flex-start;align-items:center;min-height:38px;padding:8px 12px;font-size:.92rem;font-weight:800;display:inline-flex}.capacity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.capacity-card{border:1px solid #0000;border-radius:18px;flex-direction:column;gap:6px;min-width:0;padding:16px 14px;display:flex}.capacity-card--green{background:#edf8f0;border-color:#bedfca}.capacity-card--amber{background:#fff5e5;border-color:#f0d19d}.capacity-card--red{background:#fff0ed;border-color:#f2bdb4}.capacity-card__header{flex-direction:column;gap:2px;display:flex}.capacity-card__weekday{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.capacity-card__date{color:var(--heading);margin:0;font-size:1rem}.capacity-card__count{color:var(--heading);font-size:2rem;font-weight:800;line-height:1}.capacity-card__booked,.capacity-card__message{margin:0;font-size:.92rem}.capacity-card__booked{color:var(--heading);font-weight:700}.capacity-card__message{color:var(--muted)}.tee-time-card{border:1px solid var(--card-border);background:var(--surface-soft);border-radius:20px;flex-direction:column;gap:16px;padding:18px;display:flex}.tee-time-card__content{flex-direction:column;gap:14px;display:flex}.tee-time-card__date{color:var(--heading);margin:0;font-size:1.15rem}.tee-time-card__time{color:var(--accent-strong);margin:0;font-weight:700}.tee-time-meta{gap:12px;display:grid}.tee-time-meta__item{background:#fff;border:1px solid #1c2e2514;border-radius:16px;padding:12px 14px}.tee-time-meta__label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:.78rem;font-weight:700;display:block}.tee-time-meta__value{color:var(--heading);font-weight:700}.tee-time-notes{color:var(--muted);white-space:pre-wrap;margin:0}.tee-time-card__actions{justify-content:flex-start;display:flex}input,textarea{border:1px solid var(--input-border);width:100%;min-width:0;max-width:100%;color:var(--heading);background:#fff;border-radius:14px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .2s}textarea{resize:vertical;min-height:120px}input::placeholder,textarea::placeholder{color:#819081}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:1px solid #0000;border-radius:14px;padding:14px 18px;font-weight:700;line-height:1.1;transition:transform .2s,box-shadow .2s,opacity .2s}.primary-button:hover,.secondary-button:hover,.danger-button:hover{transform:translateY(-1px)}.primary-button{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;box-shadow:0 12px 24px #2666483d}.secondary-button{color:var(--heading);border-color:var(--card-border);background:#fff}.danger-button{color:#9d3b2c;background:#fff1ee;border-color:#f4c0b4}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;transform:none}.primary-button:focus-visible,.secondary-button:focus-visible,.danger-button:focus-visible,.auth-toggle__button:focus-visible,.text-link-button:focus-visible,.dashboard-nav__link:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px}.text-link-button{color:var(--accent-strong);text-underline-offset:.18em;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-weight:700;text-decoration:underline}.text-link-button:hover{color:var(--accent)}@media (width>=768px){.app-shell{padding:32px 22px 48px}.auth-card{padding:34px 32px}.dashboard-header,.section-card{padding:26px 24px}.dashboard-header__top{flex-direction:row;justify-content:space-between;align-items:flex-start}.user-bar{align-items:stretch;min-width:280px}.members-list,.field-grid--two,.tee-time-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-actions{flex-direction:row;align-items:center}.form-actions .primary-button{min-width:200px}.section-grid{grid-template-columns:minmax(320px,390px) minmax(0,1fr);align-items:start}.section-card--summary{min-height:100%}.tee-time-card{flex-direction:row;justify-content:space-between;align-items:flex-start}.member-card{flex-direction:row;justify-content:space-between;align-items:center}.tee-time-card__actions{padding-left:16px}}@media (width>=1080px){.capacity-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
