/* RAHBA v6 — premium RTL, accessible, responsive marketplace workspace */
.account-page{background:#f2f7f3;min-height:100vh;color:#183e32}
.account-page .header{box-shadow:0 10px 28px rgba(4,40,27,.09)}
.account-page .account-main{padding-top:34px;padding-bottom:70px}
.account-back{color:#d5eadd;font-size:13px;font-weight:800;text-decoration:none}
.nav-account-actions{display:flex;align-items:center;gap:20px}
.page-head{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:30px;background:radial-gradient(circle at 10% 10%,rgba(45,209,156,.28),transparent 45%),linear-gradient(125deg,#07372e,#0c6651 74%,#085644);border-radius:28px;overflow:hidden;padding:32px 43px;color:#fff;min-height:226px}
.page-head:before{content:"";position:absolute;inset:auto -90px -190px auto;width:450px;height:420px;border:1px solid rgba(185,255,216,.17);border-radius:50%;box-shadow:0 0 0 45px rgba(185,255,216,.04),0 0 0 90px rgba(185,255,216,.03);z-index:-1}
.page-head-content{max-width:790px}.eyebrow-light{color:#adf4d4;font-size:12px;letter-spacing:.035em;font-weight:900}.eyebrow-light span{color:#8bd4bc;opacity:.9}
.page-head h1{color:white;font-size:clamp(32px,4.3vw,55px);font-weight:900;margin:7px 0 9px;line-height:1.45}.page-head h1 em{font-style:normal;color:#8cf0be}.page-head p{font-size:13px;max-width:700px;color:#def3e7;line-height:2;margin:0 0 16px}.page-head-chips{display:flex;gap:9px;flex-wrap:wrap}.page-head-chips span{font-size:10px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);padding:7px 12px;border-radius:30px;color:#e7fff4;font-weight:800}
.page-head-art{flex:0 0 170px;text-align:center;display:grid;justify-items:center;gap:1px}.page-head-art img{width:145px;max-height:135px;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(0,0,0,.22))}.page-head-art span{font-size:10px;color:#9bdebd;letter-spacing:.12em}
.demo-banner{background:#fffbf1;border:1px solid #eeddb2;color:#735a25;border-radius:15px;display:flex;align-items:center;gap:14px;padding:14px 17px;margin:16px 0}.demo-banner .demo-dot{background:#d39b28;border-radius:50%;box-shadow:0 0 0 5px rgba(205,155,41,.12);width:10px;height:10px;flex:none}.demo-banner>div{flex:1}.demo-banner strong{font-size:12px}.demo-banner p{font-size:10px;margin:2px 0 0;line-height:1.8}.demo-banner-label{white-space:nowrap;font-size:10px;font-weight:900;background:#fff2cd;border-radius:9px;padding:6px 9px}
.conn{padding:6px 0 11px;text-align:center;font-size:11px;color:#3b7b64}.conn.warn{color:#ab5742}.conn.ok{color:#137d50}
.auth-layout{display:grid;grid-template-columns:1.12fr .88fr;gap:20px;max-width:1090px;margin:18px auto 6px;align-items:stretch}.auth-layout[hidden],.dashboard[hidden],.account-form[hidden],.payment-panel[hidden],.profile-panel[hidden],.ticket-overlay[hidden],#booking-step-select[hidden]{display:none!important}
.auth-card,.dash-card,.profile-panel{background:#fff;border-radius:20px;border:1px solid #dbe8df;box-shadow:0 16px 45px rgba(9,65,42,.045);padding:26px}.auth-card{padding:32px 35px}.auth-headline h2{margin:8px 0 3px;font-weight:900;font-size:25px;color:#113e2e}.auth-headline p{color:#72897a;font-size:12px;margin:0 0 16px}.small-pill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:99px;background:#e5f7eb;color:#147950;font-weight:800;font-size:10px;border:1px solid #c4ead2;white-space:nowrap}
.tab-row{display:flex;background:#f0f7f2;border-radius:12px;padding:5px;gap:5px;margin:15px 0 22px}.tab{flex:1;background:transparent;border:0;border-radius:9px;font:inherit;font-size:13px;font-weight:800;padding:11px 8px;cursor:pointer;color:#4c7963}.tab.active{background:#0d6c4d;box-shadow:0 3px 9px rgba(3,77,49,.14);color:#fff}.form-block-title{font-size:12px;font-weight:900;letter-spacing:.02em;color:#0c6c4e;margin:8px 0 2px}.account-form{display:grid;gap:13px}.account-form label{display:block;font-size:12px;font-weight:800;color:#244a37}.account-form input,.account-form select,.account-form textarea{display:block;width:100%;min-height:44px;box-sizing:border-box;border:1px solid #d4e6d9;border-radius:11px;background:#fbfefb;color:#183c29;padding:10px 12px;margin-top:6px;font-family:inherit;font-size:12px;outline:none;transition:border-color .2s,box-shadow .2s}.account-form input:focus,.account-form select:focus,.account-form textarea:focus{border-color:#21a173;box-shadow:0 0 0 3px rgba(21,164,110,.12)}.account-form input[type=checkbox]{min-height:17px;width:17px;height:17px;min-width:17px;accent-color:#0b815a;margin:4px 0 0}.account-form .check,.payment-panel .check{display:flex;align-items:flex-start;gap:9px;color:#536e60;font-size:11px;font-weight:600;line-height:1.9}.check a{color:#00805a;text-decoration:underline}.account-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-button{appearance:none;border:0;border-radius:11px;background:linear-gradient(105deg,#04805a,#0a6148);color:#fff;min-height:46px;padding:11px 17px;font:inherit;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 9px 20px rgba(6,115,77,.12);transition:filter .2s,transform .2s}.account-button:hover{filter:brightness(1.07);transform:translateY(-1px)}.account-button:disabled{opacity:.48;cursor:default;transform:none}.account-button span{float:left;font-size:17px}.account-feedback{font-size:11px;min-height:18px;color:#477767;line-height:1.8}.account-feedback.error{color:#c2473d}.account-feedback.success{color:#087c50}.turnstile-box{min-height:60px;max-width:100%;margin:9px 0 0;overflow:visible}
.account-aside{border-radius:20px;background:radial-gradient(circle at 20% 10%,#167a64,#093d31 46%,#062b26);color:white;padding:36px;position:relative;overflow:hidden}.account-aside:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.07);border-radius:50%;bottom:-200px;left:-170px;box-shadow:0 0 0 42px rgba(255,255,255,.03),0 0 0 86px rgba(255,255,255,.025)}.aside-top{display:flex;align-items:center;justify-content:space-between;color:#b7ebd7;font-size:11px;font-weight:800}.aside-cross{font-size:32px;color:#84efb5}.account-aside h2{font-size:31px;line-height:1.6;margin:23px 0 10px;color:#fff}.account-aside>p{font-size:12px;color:#d1e9dc;line-height:2;margin-bottom:25px}.aside-feature{display:flex;gap:12px;border-top:1px solid rgba(255,255,255,.12);padding:13px 0;align-items:center}.aside-feature i{font-size:13px;font-weight:900;color:#91ebbe;border:1px solid #326b5a;border-radius:10px;padding:8px;font-style:normal}.aside-feature b{display:block;font-size:12px;color:#fff}.aside-feature small{display:block;font-size:10px;color:#c4dbcf;line-height:2}.aside-footer{margin-top:30px;position:relative;color:#94cdb7;font-size:10px;letter-spacing:.09em}
.dashboard{margin-top:22px}.dashboard-top{display:flex;align-items:center;gap:16px;background:linear-gradient(105deg,#073d30,#12694d);padding:23px 25px;border-radius:19px;color:white}.user-bubble{display:grid;place-items:center;flex:0 0 56px;width:56px;height:56px;border-radius:16px;background:linear-gradient(145deg,#9de9b9,#42be9a);font-weight:900;font-size:28px;color:#054832}.user-intro{flex:1}.user-intro h2{color:white;font-size:21px;margin:4px 0}.user-intro h2 span{color:#b3f2d4}.user-intro p{font-size:11px;color:#cde7d6;margin:0}.sep{padding:0 7px}.top-actions{display:flex;align-items:center;gap:7px}.secondary-btn,.logout-btn,.light-btn{border-radius:9px;padding:9px 12px;font-family:inherit;font-weight:800;font-size:11px;cursor:pointer}.secondary-btn{color:#0c5037;background:#effbf2;border:1px solid #c8f2d3}.logout-btn{border:1px solid rgba(255,255,255,.27);background:transparent;color:#e6f7ef}.light-btn{background:#f1f8f3;color:#0d7650;border:1px solid #d8e8de}
.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:14px 0 16px}.dashboard-metrics>div{background:white;border:1px solid #e0eae2;border-radius:15px;padding:17px;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center}.dashboard-metrics span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;background:#eaf9f0;border-radius:12px;color:#09815a;font-size:20px;font-weight:900}.dashboard-metrics b{font-size:22px;color:#0f523b;line-height:1.15}.dashboard-metrics small{color:#779082;font-size:10px}.section-tabs{display:flex;align-items:center;gap:0;margin:24px 0 13px;color:#688675;font-weight:800;font-size:11px;flex-wrap:wrap}.section-tabs span{display:inline-block;padding:8px 17px;border-left:1px solid #d5e6db}.section-tabs span:last-child{border-left:0}.section-tabs .section-tabs-active{background:#0e7050;border-radius:40px;color:white}
.account-columns{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr);gap:17px;align-items:start}.booking-workspace{padding:26px}.account-sidebar{display:grid;gap:16px;min-width:0}.dash-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px}.dash-head h3{font-size:20px;margin:4px 0 0;color:#104c38;font-weight:900}.dash-sub{color:#789182;font-size:11px;line-height:2}.profile-panel{margin:16px 0}.animal-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:18px}.animal-heading small{font-weight:500;color:#8a9b90;font-size:10px}.animal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:2px 0 9px}.animal-card{position:relative;min-width:0;display:grid!important;place-items:center;gap:4px;border:1.5px solid #d9e7dc;border-radius:14px;padding:14px 5px 12px;text-align:center;cursor:pointer;background:linear-gradient(#fff,#fcfefd);transition:.15s}.animal-card:has(input:checked){border-color:#0a946a;background:#e9fcf3;box-shadow:0 0 0 2px rgba(5,144,92,.08)}.animal-card input{position:absolute;top:7px;right:7px;width:16px!important;min-height:16px!important;height:16px;margin:0;accent-color:#12855d}.animal-emoji{font-size:30px;line-height:1.25}.animal-card b{font-size:13px;color:#155c40}.animal-card small{font-size:10px;color:#668f74;font-weight:700}
.slot-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px}.slot-header b{display:block;font-size:13px;color:#184e39}.slot-header small{display:block;font-size:10px;color:#789287;font-weight:600;line-height:2}.slot-header>span{font-weight:900;font-size:12px;color:#0a7851;background:#eaf8ef;padding:7px 11px;border-radius:9px;direction:ltr}.slot-legend{display:flex;flex-wrap:wrap;gap:12px;margin:13px 0 8px}.slot-legend span{display:flex;align-items:center;gap:6px;font-size:10px;color:#6b8576}.slot-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.slot-legend .free{background:#eaf7ee;border:1px solid #8bc8a0}.slot-legend .chosen{background:#0b815b}.slot-legend .taken{background:#e8ebe8;border:1px solid #cdd5ce}.zone-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;background:#f7fbf8;border:1px dashed #cde6d4;border-radius:14px;padding:15px;min-height:80px}.zone-grid button{font:inherit;border:1px solid #b8d7c2;border-radius:9px;background:#fff;color:#246c4b;cursor:pointer;min-height:43px;font-weight:900;font-size:12px}.zone-grid button.selected{background:#0b7d56;border-color:#0b7d56;color:white;box-shadow:0 5px 12px rgba(5,115,69,.16)}.zone-grid button:disabled{background:#ecefeb;color:#a0ada2;text-decoration:line-through;border-color:#d8dfd8;cursor:not-allowed}.zone-grid .booking-empty{grid-column:1/-1;text-align:center;margin:auto;padding:8px}.zone-feedback{font-size:10px;color:#719181;min-height:15px;margin:2px 0 4px}
.price-strip{background:linear-gradient(95deg,#eff9f3,#e7f5ee);border:1px solid #cfe8d8;border-radius:13px;padding:13px 17px;display:flex;gap:12px;align-items:center;justify-content:space-between}.price-strip>div{display:grid;gap:5px}.price-strip span{font-size:10px;color:#537760}.price-strip b{font-size:20px;color:#0b6e4a}.price-arrow{font-size:21px;color:#5ba880}
.payment-panel{background:linear-gradient(#fff,#fdfefc);padding:18px 5px}.payment-icon{width:57px;height:57px;background:#dcf9e6;color:#0e8153;display:grid;place-items:center;border-radius:50%;font-weight:900;font-size:29px;margin-bottom:12px}.payment-panel h3{color:#0b5036;font-size:23px}.payment-panel p{font-size:12px;color:#6b8272;line-height:2}.summary-items{background:#f7faf7;border:1px solid #e2ece3;border-radius:12px;padding:7px 16px;margin:15px 0}.summary-items>div,.demo-payment-row,.demo-payment-total{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e2ece5;font-size:11px}.summary-items>div:last-child{border-bottom:0}.summary-items span,.demo-payment-row span{color:#6a8173}.summary-items b{color:#174c36}.demo-payment-row strong{color:#617c67}.demo-payment-total{border:1px solid #aee0c3;padding:14px;margin:12px 0;background:#e7f8ee;border-radius:12px}.demo-payment-total strong{font-size:23px;color:#0a8755}.payment-panel .check{display:flex;align-items:start;gap:9px}.payment-panel .check input{width:17px;height:17px;accent-color:#0b7d55}.payment-actions{display:flex;align-items:center;gap:10px;margin-top:12px}.payment-actions .account-button{flex:1}
.facility-panel,.tickets-panel{padding:21px}.facility-panel .dash-head h3,.tickets-panel .dash-head h3{font-size:17px}.facility-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.facility-list>div{display:flex;align-items:center;gap:9px;border:1px solid #e0ede3;border-radius:10px;padding:10px 8px;background:#fbfefb}.facility-list span{flex:none;display:grid;place-items:center;background:#e7f7ec;width:31px;height:31px;border-radius:9px;font-size:16px}.facility-list b{color:#285741;font-size:10px;line-height:1.8;font-weight:800}.facility-disclaimer{margin:13px 0 0;color:#8a947e;font-size:10px;line-height:1.8}.booking-list{display:grid;gap:9px}.booking-item{border:1px solid #dae9e0;background:#fcfefc;border-radius:12px;padding:12px}.booking-item .item-head{display:flex;justify-content:space-between;align-items:center;gap:7px}.booking-item h4{font-size:13px;color:#18513b;margin:0}.booking-item p{color:#5d7d6b;font-size:10px;margin:6px 0;line-height:1.8}.booking-item .ref{font-size:9px;color:#84a08e}.booking-item .pending{background:#e9f6e9;color:#26805a;padding:5px 7px;border-radius:7px;font-size:10px}.booking-item .cancelled{background:#eee;color:#858585;padding:5px 7px;border-radius:7px;font-size:10px}.booking-empty{font-size:12px;color:#7a907f}.item-actions{display:flex;gap:8px;align-items:center;margin-top:8px}.item-actions button{border:1px solid #d9e8dd;background:#f0f8f2;border-radius:8px;padding:6px 9px;font-family:inherit;font-size:10px;font-weight:800;color:#0c7951;cursor:pointer}.item-actions .cancel{color:#a44841;background:#fff7f6;border-color:#f1dbd7}.legacy-panel{margin-top:18px;background:#fff;border-radius:13px;border:1px solid #e4ebe5;padding:15px 20px}.legacy-panel summary{cursor:pointer;font-weight:800;color:#587563;font-size:12px}
.ticket-overlay{position:fixed;inset:0;z-index:999;overflow:auto;background:rgba(1,28,18,.74);backdrop-filter:blur(7px);padding:28px 12px}.ticket-shell{max-width:740px;margin:0 auto}.ticket-actions{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:12px}.print-ticket{background:#fff;border-radius:22px;box-shadow:0 16px 60px rgba(0,0,0,.24);overflow:hidden;border:1px solid #bfe0cb}.ticket-brand{padding:19px 24px;background:linear-gradient(110deg,#074936,#0e7656);display:flex;gap:14px;align-items:center;color:white}.ticket-brand img{width:65px;height:65px;object-fit:contain}.ticket-brand>div{flex:1}.ticket-brand strong{font-size:21px;display:block}.ticket-brand small{font-size:10px;color:#d3f4e5}.ticket-demo-stamp{border:2px solid #fff4bd;color:#fff4bd;border-radius:7px;padding:7px 12px;font-weight:900;letter-spacing:.12em;transform:rotate(-7deg)}.ticket-welcome{text-align:center;padding:23px 18px 12px}.success-round{width:40px;height:40px;border-radius:50%;background:#e1f8e9;color:#118156;display:grid;place-items:center;font-weight:900;margin:0 auto}.ticket-welcome h2{font-size:20px;color:#0a694a;margin:10px 0 4px}.ticket-welcome p{font-size:10px;color:#66816d;line-height:1.9}.ticket-core{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:10px 30px 25px;align-items:center}.ticket-qr{width:206px;height:206px;border:1px solid #dceadf;border-radius:15px;padding:8px;box-sizing:border-box}.ticket-qr svg{width:100%;height:100%}.ticket-details{display:grid;grid-template-columns:1fr 1fr;gap:6px 15px}.ticket-details>div{padding:5px 0;border-bottom:1px dashed #dfe9e1}.ticket-details span{display:block;font-size:9px;color:#6e8d7a}.ticket-details strong{display:block;color:#124d35;font-size:11px;word-break:break-word}.ticket-warning{background:#fff7e4;color:#8b6427;border-block:1px solid #f1e0b3;padding:12px 23px;font-size:10px;font-weight:800;text-align:center;line-height:1.9}.ticket-bottom{display:flex;justify-content:space-between;padding:15px 25px;color:#527665;font-size:10px}.ticket-bottom strong{color:#06734f;font-size:12px}
.verify-main{max-width:680px;margin:45px auto 90px}.verify-head{text-align:center}.verify-head h1{font-size:30px;margin:9px 0;color:#0b5c42}.verify-head p{color:#718b7a;font-size:12px}.verify-result{margin-top:28px;border:1px solid #d9e7de;border-radius:18px;background:#fff;padding:28px}.verify-result h2{color:#0b714f}.verify-result p{font-size:12px;color:#648071}.verify-meta>div{display:flex;justify-content:space-between;border-bottom:1px solid #e7ece8;padding:10px 0;gap:10px;font-size:12px}.verify-meta span{color:#759182}.verify-meta b{color:#0b5c40}
@media(max-width:980px){.account-columns{grid-template-columns:1fr}.account-sidebar{grid-template-columns:1fr 1fr}.page-head-art{flex-basis:125px}.page-head-art img{max-width:110px}.facility-list{grid-template-columns:1fr}}
@media(max-width:760px){.account-page .account-main{padding-top:15px}.auth-layout{grid-template-columns:1fr}.account-aside{min-height:300px}.page-head{padding:26px 20px;min-height:200px}.page-head-art{display:none}.account-sidebar{grid-template-columns:1fr}.facility-list{grid-template-columns:1fr 1fr}.dashboard-top{flex-wrap:wrap}.top-actions{width:100%;justify-content:flex-start}.dashboard-metrics{grid-template-columns:1fr 1fr}.section-tabs{justify-content:center}.ticket-core{grid-template-columns:1fr;justify-items:center}.ticket-details{width:100%}.nav-account-actions .account-back{display:none}}
@media(max-width:480px){.auth-card{padding:23px 17px}.account-two{grid-template-columns:1fr}.page-head h1{font-size:33px}.page-head p{font-size:11px}.page-head-chips span{font-size:9px}.dashboard-top{padding:17px}.user-bubble{flex-basis:45px;width:45px;height:45px}.user-intro h2{font-size:16px}.user-intro p{font-size:10px}.dashboard-metrics>div{padding:10px}.dashboard-metrics b{font-size:18px}.dashboard-metrics small{font-size:9px}.booking-workspace,.facility-panel,.tickets-panel{padding:17px 13px}.animal-grid{grid-template-columns:repeat(3,1fr);gap:6px}.animal-card{padding:13px 3px 10px}.animal-emoji{font-size:23px}.animal-card small{font-size:8px}.zone-grid{grid-template-columns:repeat(4,1fr)}.facility-list{grid-template-columns:1fr 1fr}.facility-list b{font-size:9px}.ticket-brand{padding:12px}.ticket-brand img{width:45px;height:45px}.ticket-brand strong{font-size:16px}.ticket-welcome h2{font-size:16px}.ticket-details{grid-template-columns:1fr 1fr}.demo-banner-label{display:none}.section-tabs{font-size:10px}.section-tabs span{padding:7px}}
@media print{ @page{size:A4;margin:12mm}body{background:white!important}body>:not(#ticket-dialog){display:none!important}#ticket-dialog{display:block!important;position:static!important;inset:auto!important;background:white!important;backdrop-filter:none!important;padding:0!important;overflow:visible!important}#ticket-dialog .ticket-shell{max-width:none;margin:0!important}#ticket-dialog .ticket-actions{display:none!important}.print-ticket{border:2px solid #184e38!important;border-radius:10px!important;box-shadow:none!important;break-inside:avoid;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.ticket-brand{background:#12664b!important;color:#fff!important}.ticket-core{grid-template-columns:210px 1fr!important}.ticket-qr{height:200px;width:200px}.ticket-welcome{padding:12px}.ticket-warning{border:1px solid #ded0aa}}

.ticket-qr-wrap{display:grid;justify-items:center;gap:8px}.ticket-qr-caption{font-size:10px;font-weight:900;color:#07784d;text-align:center;line-height:1.6;max-width:210px}
