:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172c49;background:#f4f7fc;font-synthesis:none;--blue:#125bde;--muted:#64748b;--line:#e0e7f1;--yellow:#ffe26b}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #e7ad00;outline-offset:4px}button{transition:background .15s,transform .15s}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:2rem;line-height:1.2;letter-spacing:-1px}h2{font-size:1.08rem;letter-spacing:-.25px}h3{font-size:1rem}.brand{display:flex;align-items:center;gap:11px;font-size:1.55rem;letter-spacing:-.75px;font-weight:750}.brand-mark{height:40px;width:40px;background:var(--blue);color:white;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:2.2rem;font-weight:800;line-height:1;padding-bottom:7px;letter-spacing:-3px;flex-shrink:0}.brand-mark span{color:var(--yellow);font-size:2rem;margin:8px 0 0 1px}.beach-name{overflow-wrap:anywhere}.brand-caption{font-size:.7rem;letter-spacing:1.7px;font-weight:650;color:var(--muted);border-left:1px solid var(--line);padding-left:19px;margin-left:9px}.quiet-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:#4c5f79;padding:9px 10px;border-radius:8px;font-size:.875rem;font-weight:600;min-height:40px}.quiet-button:hover{background:#e9eff9;color:var(--blue)}.primary-button,.secondary-button,.danger-button{border-radius:10px;padding:14px 18px;font-weight:650;min-height:48px}.primary-button{border:0;background:var(--blue);color:white;display:flex;align-items:center;justify-content:space-between;width:100%}.primary-button:hover,.card-button:hover{background:#074cbf}.secondary-button{border:1px solid var(--line);background:white;color:#33455f}.danger-button{border:0;background:#b72d38;color:white}.form-error{font-size:.875rem;color:#b72d38;line-height:1.5}.form-error:not(:empty){margin:12px 0}.login-page{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;background:radial-gradient(ellipse at 85% 10%,#e1edff 0,transparent 55%),#f4f7fc}.login-card{background:white;width:100%;max-width:420px;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:0 16px 55px #253b6810}.login-brand{margin-bottom:32px}.login-art{display:flex;align-items:center;gap:9px;font-size:.75rem;font-weight:750;letter-spacing:1.5px;color:var(--blue);margin-bottom:15px}.login-art .icon{width:26px;height:26px}.login-card h1{font-size:2.4rem}.login-intro{color:var(--muted);margin:12px 0 28px;font-size:1rem}.login-card label{display:block;font-size:.875rem;font-weight:600;margin-bottom:9px}.login-card input{width:100%;padding:14px 16px;border:1px solid #c9d5e8;border-radius:10px;font-size:1.7rem;letter-spacing:7px;min-height:62px;color:#172c49}.login-card input::placeholder{color:#adb9cb}.login-card .primary-button{margin-top:16px}.login-bottom{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.8125rem;color:var(--muted);margin-top:26px}.login-bottom .icon{width:15px;height:15px}.login-foot{font-size:.875rem;color:var(--muted);margin:24px 0}.site-header{height:80px;background:white;border-bottom:1px solid var(--line)}.header-inner{max-width:1224px;margin:auto;height:100%;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:15px}.dashboard{max-width:1224px;margin:auto;padding:36px 32px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.eyebrow{font-size:.6875rem;font-weight:750;letter-spacing:1.8px;color:var(--muted);margin-bottom:10px}.blue-text{color:var(--blue)}.day-pill{display:flex;align-items:center;gap:9px;font-size:.875rem;font-weight:600;white-space:nowrap;background:white;border:1px solid var(--line);border-radius:30px;padding:11px 16px}.day-pill .icon{color:var(--blue);width:19px;height:19px}.workspace{display:grid;grid-template-columns:350px minmax(0,1fr);gap:28px;align-items:start}.entry-panel{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 4px 10px #1b345603}.panel-heading{display:flex;gap:12px;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:25px}.step-badge{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#edf3ff;color:var(--blue);font-size:1.6rem;flex-shrink:0}.panel-heading p{color:var(--muted);font-size:.8125rem;line-height:1.5;margin-top:5px}.quantity-field{margin-bottom:22px}.quantity-field label{display:block;font-weight:600;font-size:.875rem;margin-bottom:10px}.stepper{display:flex;border:1px solid #ced9e8;border-radius:11px;padding:5px;background:#fbfcfe;gap:4px;height:62px}.stepper button{border:0;border-radius:7px;background:#edf2fa;font-size:1.6rem;color:#34527e;width:48px;flex-shrink:0}.stepper button:hover{background:#dce8fe}.stepper input{border:0;width:100%;min-width:0;text-align:center;background:transparent;color:#172c49;font-size:1.7rem;font-weight:650;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field-note{color:var(--muted);font-size:.8125rem;margin-top:9px;line-height:1.5}.payment-label{font-size:.875rem;font-weight:600;margin-top:27px;margin-bottom:12px}.payment-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-button{border:0;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:19px 15px 16px;gap:11px;min-height:139px;font-weight:650;font-size:1.05rem}.payment-button .icon{width:27px;height:27px}.card-button{background:var(--blue);color:white}.cash-button{background:var(--yellow);color:#383111}.cash-button:hover{background:#ffd843}.button-subtitle{font-size:.7rem;font-weight:500;line-height:1.4;margin-top:-7px}.entry-note{font-size:.75rem;line-height:1.5;color:var(--muted);display:flex;gap:6px;align-items:center;justify-content:center;margin-top:19px}.entry-note .icon{width:15px;height:15px}.pending-notice{margin-top:15px;border-radius:8px;background:#fff6cc;color:#634d00;padding:12px;font-size:.875rem;line-height:1.5}.overview-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:39px;margin-bottom:16px}.date-control{display:flex;gap:5px;align-items:center}.date-control input{min-width:0;max-width:155px;border:1px solid var(--line);background:white;border-radius:8px;color:#334b70;padding:9px 10px;font-size:.875rem;font-weight:600}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.stat{padding:21px 22px;background:white;border:1px solid var(--line);border-radius:14px;min-width:0}.stat-label{display:flex;justify-content:space-between;gap:7px;align-items:center;font-size:.875rem;color:#53657f;font-weight:550}.stat-label .icon{width:19px;height:19px;color:#7586a1}.stat strong{display:block;font-size:3.2rem;letter-spacing:-2px;line-height:1.2;margin-top:12px;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat-foot{font-size:.75rem;color:var(--muted);margin-top:6px;line-height:1.5}.primary-stat{background:var(--blue);border-color:var(--blue);color:white}.primary-stat .stat-label,.primary-stat .stat-label .icon,.primary-stat .stat-foot{color:#e2ecff}.method-stat{padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:10px}.method-stat .stat-label{justify-content:start}.method-stat>div:last-child{display:flex;align-items:baseline;gap:6px}.method-stat strong{font-size:1.65rem;margin:0;letter-spacing:-.7px}.method-stat span{font-size:.75rem;color:var(--muted)}.history-panel{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.history-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:22px;border-bottom:1px solid var(--line)}.history-heading h2{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:1rem}.count-badge{border-radius:6px;background:#edf2fa;font-size:.75rem;color:#566a88;padding:3px 7px}.history-heading p{font-size:.75rem;color:var(--muted);margin-top:5px}.history-heading .quiet-button{padding-right:0}.empty-state{text-align:center;padding:45px 20px 48px}.empty-icon{width:48px;height:48px;background:#edf3ff;color:var(--blue);display:inline-flex;align-items:center;justify-content:center;border-radius:14px;margin-bottom:15px}.empty-state h3{font-size:.9375rem;font-weight:600}.empty-state p{color:var(--muted);font-size:.875rem;margin-top:7px}.payment-list{max-height:456px;overflow-y:auto}.payment-row{display:grid;grid-template-columns:37px 1fr auto;gap:12px;align-items:center;padding:17px 22px;border-bottom:1px solid #edf1f7}.payment-row:last-child{border:0}.row-icon{background:#edf3ff;color:var(--blue);border-radius:10px;height:36px;display:flex;align-items:center;justify-content:center}.row-icon.cash{background:#fff4c6;color:#70580b}.row-icon .icon{width:19px;height:19px}.row-title{font-size:.875rem;font-weight:600}.row-meta{font-size:.75rem;color:var(--muted);margin-top:5px;line-height:1.5}.row-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.row-right time{font-size:.8125rem;font-weight:550;font-variant-numeric:tabular-nums}.void-button{border:0;background:transparent;color:#64748b;font-size:.75rem;padding:7px 0 7px 10px;text-decoration:underline;text-underline-offset:3px;min-height:30px}.void-button:hover{color:#b72d38}.payment-row.voided{background:#fafbfd;color:#778498}.payment-row.voided .row-title{text-decoration:line-through}.void-label{font-size:.75rem;color:#8a5960}.error-banner{display:flex;gap:15px;align-items:center;justify-content:space-between;background:#fff1ef;color:#9b3440;padding:12px 17px;border:1px solid #f0c5c8;border-radius:10px;font-size:.875rem;line-height:1.5;margin-bottom:20px}.dashboard-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:36px;font-size:.75rem;color:var(--muted);line-height:1.5}.toast{position:fixed;z-index:10;bottom:26px;left:50%;transform:translateX(-50%);background:#163d35;color:white;border:1px solid #315d52;padding:15px 20px;box-shadow:0 5px 25px #0b2d2426;border-radius:12px;display:flex;align-items:center;gap:10px;font-size:.875rem;width:max-content;max-width:calc(100% - 32px)}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;width:calc(100% - 32px);max-width:440px;color:#172c49;box-shadow:0 20px 60px #142e6530}dialog::backdrop{background:#0c214b70;backdrop-filter:blur(3px)}dialog h2{font-size:1.25rem;margin:15px 0}dialog p{font-size:.875rem;line-height:1.6;color:var(--muted);margin:10px 0}.dialog-icon{display:inline-flex;padding:10px;background:#fff0ec;color:#b72d38;border-radius:12px}.dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;font-size:.875rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1400px){.dashboard{padding-top:48px}.page-heading{margin-bottom:38px}.workspace{grid-template-columns:370px minmax(0,1fr);gap:32px}.entry-panel{padding:28px}}
@media(max-width:960px){.brand-caption{display:none}.workspace{grid-template-columns:320px minmax(0,1fr);gap:20px}.dashboard{padding:28px 22px 20px}.header-inner{padding:0 22px}.page-heading h1{font-size:1.7rem}.day-pill{font-size:.8125rem;padding:10px 12px}.stat{padding:17px}.stat-label{font-size:.8125rem}.stat strong{font-size:2.8rem}.method-stat{padding:14px;flex-wrap:wrap}.method-stat strong{font-size:1.5rem}.overview-heading{flex-wrap:wrap}.history-heading{padding:18px}.history-heading .quiet-button span{display:none}.payment-row{padding:15px 16px;gap:9px}.dashboard-footer{font-size:.7rem}.entry-panel{padding:22px}}
@media(max-width:740px){.site-header{height:68px}.header-inner{padding:0 20px}.brand{font-size:1.35rem}.brand-mark{width:35px;height:35px;border-radius:10px}.dashboard{padding:26px 18px 20px}.page-heading{display:block;margin-bottom:24px}.page-heading h1{font-size:1.65rem}.eyebrow{font-size:.625rem;letter-spacing:1.5px}.day-pill{display:inline-flex;margin-top:15px;background:transparent;border:0;padding:0;color:#5c6d86}.workspace{display:flex;flex-direction:column;gap:27px}.entry-panel,.day-overview{width:100%}.entry-panel{padding:22px;border-radius:15px}.panel-heading{padding-bottom:19px;margin-bottom:21px}.quantity-field{display:grid;grid-template-columns:1fr 146px;column-gap:14px;align-items:center;margin-bottom:15px}.quantity-field label{margin:0;font-size:.9375rem}.stepper{height:53px;padding:4px;gap:0}.stepper button{width:38px}.stepper input{font-size:1.35rem}.field-note{grid-column:1 / -1;margin-top:8px;font-size:.75rem}.payment-label{margin-top:21px}.payment-button{min-height:121px;padding:16px 18px;display:grid;grid-template-columns:28px 1fr;align-content:center;gap:10px;align-items:center}.payment-button>span:first-of-type{font-size:1.12rem}.button-subtitle{grid-column:1 / -1;margin-top:1px;font-size:.75rem}.entry-note{margin-top:16px}.overview-heading{flex-wrap:nowrap;gap:6px}.overview-heading h2{font-size:.9375rem}.date-control input{max-width:140px;font-size:.8125rem;padding:8px}.date-control .quiet-button{font-size:.75rem;padding:6px}.stats-grid{gap:10px;margin-bottom:18px}.stat{padding:17px}.stat-label{font-size:.8125rem;line-height:1.4;gap:5px}.stat-label .icon{width:17px;height:17px}.stat strong{font-size:2.9rem;margin-top:9px}.stat-foot{font-size:.6875rem}.method-stat{padding:15px 17px;flex-wrap:nowrap}.method-stat strong{font-size:1.4rem;margin:0}.method-stat>div:last-child{gap:4px}.method-stat span{font-size:.6875rem}.history-heading{padding:19px 17px}.history-heading .quiet-button span{display:inline}.dashboard-footer{flex-direction:column;gap:7px;margin-top:27px;padding-bottom:30px;font-size:.75rem}.toast{bottom:18px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}
@media(max-width:370px){.dashboard{padding-right:12px;padding-left:12px}.entry-panel{padding:18px}.quantity-field{grid-template-columns:1fr 133px}.stat{padding:14px}.stat-label .icon{display:none}.stat-label{font-size:.75rem}.method-stat{padding:13px}.method-stat .stat-label{font-size:.75rem}.date-control input{max-width:130px}.login-card{padding:26px}.payment-button{padding:15px 12px}.overview-heading{flex-wrap:wrap}.history-heading .quiet-button span{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
