.account-page{background:#f4f6f2;color:#194343}.account-header{position:relative;display:flex;align-items:center;gap:28px;padding:16px max(5vw,20px);background:#fff;border-bottom:1px solid #d9e1db}.account-header .brand{margin-right:auto}.account-header a{font-size:15px;font-weight:650}.account-header button{border:1px solid #194343;background:white;border-radius:24px;padding:10px 16px;color:#194343}.account-shell{max-width:1180px;margin:0 auto;padding:40px 24px 70px;min-height:75vh}.account-page h1{font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;line-height:1.1;margin:10px 0 20px}.account-page h2{font-size:26px;letter-spacing:-.03em;line-height:1.2}.account-page h3{font-size:20px;line-height:1.3}.account-page p{line-height:1.6}.account-page button,.account-page input,.account-page select{font:inherit}.account-page button,.account-page .button{cursor:pointer;min-height:44px}.account-page button:disabled{cursor:not-allowed;opacity:.5}.account-page input{width:100%;border:1px solid #aabdb3;border-radius:10px;padding:12px;background:#fff;margin-top:7px;color:#153c3c}.account-page label{display:block;font-size:15px;font-weight:600;margin-bottom:18px}.account-page input[type=checkbox]{width:auto;margin:0 8px 0 0}.password-field{position:relative;margin-top:7px}.password-field input{margin-top:0;padding-right:52px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;min-height:40px!important;padding:0;border:0!important;border-radius:50%;background:transparent!important;color:#194343;font-size:20px;line-height:1}.password-toggle:hover{background:#edf3ee!important}.password-toggle:focus-visible{outline:3px solid #b29528;outline-offset:2px}.account-page .button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:26px;padding:12px 22px;background:#194343;color:#fff;font-weight:700;text-decoration:none}.account-page .button.secondary{background:white;color:#194343;border:1px solid #194343}.account-page .button.small{font-size:14px;padding:8px 15px}.account-page .button.danger{background:#a43937}.account-page .muted{color:#526b63;font-size:15px}.account-page .panel{background:#fff;border:1px solid #dbe3de;padding:28px;border-radius:24px}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start}.auth-note{background:#194343;color:white;padding:38px;border-radius:28px}.auth-note h2{color:#d9f76a}.auth-note ul{padding-left:20px;line-height:2.1}.auth-switch{display:flex;gap:18px;margin-bottom:28px;flex-wrap:wrap}.auth-switch button{background:none;border:0;border-bottom:2px solid transparent;padding:10px 0;color:#194343;font-weight:700}.auth-switch button.active{border-color:#194343}.account-page .notice{padding:16px 20px;background:#fff0cd;border-radius:12px;margin-bottom:24px;line-height:1.6}.account-page .notice a{text-decoration:underline}.account-page .success{background:#dcf5de}.account-page .error{background:#fce2e1;color:#8b2525}.account-page .tabs{display:flex;gap:12px;margin:28px 0;flex-wrap:wrap}.tabs button{border:1px solid #bccdc4;border-radius:25px;padding:10px 20px;background:white;color:#194343}.tabs button.active{background:#194343;color:#fff}.account-top{display:flex;align-items:center;justify-content:space-between;gap:24px}.credit-count{min-width:150px;text-align:center;background:#d9f76a;border-radius:22px;padding:18px}.credit-count strong{display:block;font-size:40px}.calendar-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:24px}.week-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.week-header button{background:#edf3ee;border:0;border-radius:50%;width:44px;color:#194343}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.days button{border:1px solid #d6dfd9;border-radius:14px;min-height:82px;background:#fff;color:#194343;padding:8px 2px}.days button.selected{background:#194343;color:white}.days strong{display:block;font-size:24px}.days span{font-size:13px}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.slots button{background:#f0f6f1;color:#194343;border:1px solid #b4c9bc;border-radius:10px;padding:14px}.slots button.selected{background:#d9f76a;border-color:#194343}.booking-summary{background:#194343;color:white;border-radius:24px;padding:28px}.booking-summary h2{color:#d9f76a}.booking-summary .button{background:#d9f76a;color:#194343;width:100%;margin-top:20px}.booking-summary p{font-size:16px}.booking-list{display:grid;gap:16px}.booking-row{display:flex;align-items:center;justify-content:space-between;gap:22px}.booking-row h3{margin:0 0 8px}.booking-actions{display:flex;gap:10px;flex-wrap:wrap}.pack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pack-grid article{display:flex;flex-direction:column;gap:15px;padding:24px}.pack-grid h3,.pack-grid p{margin:0}.pack-grid strong{font-size:32px}.pack-grid button{margin-top:auto}.account-footer{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;padding:30px;background:#194343;color:white;font-size:14px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-row{padding:16px 0;border-bottom:1px solid #d6dfd9}.admin-row:last-child{border:0}.status-tag{display:inline-block;background:#edf3ee;padding:5px 10px;border-radius:20px;font-size:13px;margin-bottom:10px}.check-label{display:flex!important;align-items:flex-start;gap:6px;font-weight:400!important;line-height:1.5}.plain-link{display:inline-block;margin-top:16px;text-decoration:underline;background:none;border:0;color:#194343}.account-page :focus-visible{outline:3px solid #b29528;outline-offset:4px}@media(max-width:900px){.pack-grid{grid-template-columns:repeat(2,1fr)}.calendar-layout,.admin-grid{grid-template-columns:1fr}.auth-layout{gap:24px}}@media(max-width:650px){.auth-layout{grid-template-columns:1fr}.auth-note{padding:26px}.account-shell{padding:24px 16px 40px}.account-header{gap:12px;flex-wrap:wrap;padding:12px 16px}.account-header .brand img{width:95px;height:auto}.account-header a{font-size:14px}.account-header .brand{width:100%;margin:0}.account-top{align-items:flex-start}.credit-count{min-width:95px;padding:12px;font-size:13px}.credit-count strong{font-size:30px}.account-page .panel{padding:20px}.days{gap:4px}.days button{min-height:72px}.days span{font-size:12px}.days strong{font-size:20px}.booking-row{display:block}.booking-actions{margin-top:15px}.pack-grid{grid-template-columns:1fr}.field-pair{grid-template-columns:1fr}.account-page h1{font-size:32px}}
