/*
Theme Name: Velora Booking
Author: Velora Studio
Description: A responsive service-business theme with built-in appointment scheduling, service settings, email notifications, and owner dashboard.
Version: 2.0.1
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: velora-booking
*/
:root{--ink:#20251f;--muted:#70766e;--paper:#f8f7f3;--white:#fff;--green:#50634c;--green-dark:#344432;--clay:#c68468;--line:#e7e6df;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Avenir Next',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(248,247,243,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(32,37,31,.08)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{font:700 23px var(--serif);letter-spacing:-.5px}.brand span{color:var(--green)}.nav-links{display:flex;align-items:center;gap:30px;font-size:14px}.nav-links a:hover{color:var(--green)}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 21px;background:var(--green);color:#fff;font-weight:650;font-size:14px;cursor:pointer;transition:.2s transform,.2s background}.nav-cta:hover,.button:hover{background:var(--green-dark);transform:translateY(-2px)}.menu-toggle{display:none;border:1px solid var(--line);border-radius:50%;width:44px;height:44px;background:transparent;font-size:20px}.hero{padding:78px 0 72px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr .92fr;align-items:center;gap:7%}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:var(--green)}h1,h2,h3{line-height:1.08;margin:0 0 18px}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-1.8px}h1{font-size:clamp(46px,6vw,78px);max-width:650px}h2{font-size:clamp(36px,4.4vw,56px)}h3{font:500 25px var(--serif)}.hero-copy p,.section-intro{color:var(--muted);max-width:530px;font-size:17px}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:30px}.text-link{font-size:14px;font-weight:650;border-bottom:1px solid var(--ink);padding-bottom:4px}.hero-art{min-height:480px;border-radius:48% 48% 8px 8px;background:linear-gradient(155deg,#d9d9c9,#89947b 55%,#5c6b55);position:relative;overflow:hidden}.hero-art:before{content:'';position:absolute;width:55%;height:72%;left:22%;bottom:-4%;border-radius:48% 48% 10px 10px;background:linear-gradient(130deg,#d8bda8,#9d705a);box-shadow:100px -40px 0 -36px rgba(255,255,255,.25)}.hero-art:after{content:'YOUR SPACE TO FEEL TAKEN CARE OF';position:absolute;left:25px;bottom:22px;color:#fff;font-size:10px;letter-spacing:2px}.trust-row{display:flex;gap:25px;align-items:center;margin-top:34px;color:var(--muted);font-size:12px}.trust-row strong{color:var(--ink)}.section{padding:88px 0}.section-white{background:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-head p{max-width:430px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;padding:28px;border:1px solid var(--line);border-radius:8px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 40px #20251f0c}.card-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#edf0e9;color:var(--green);font-size:21px;margin-bottom:24px}.card p{color:var(--muted);font-size:14px}.price{color:var(--green);font-weight:700}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.photo-block{min-height:420px;border-radius:8px;background:linear-gradient(145deg,#e6ded1,#a2a991 65%,#68735f);position:relative}.photo-block:after{content:'';position:absolute;inset:12% 19% 0;border-radius:50% 50% 0 0;background:linear-gradient(130deg,#eddac7,#aa8068)}.check-list{padding:0;list-style:none;color:var(--muted)}.check-list li{padding:9px 0}.check-list li:before{content:'✓';color:var(--green);font-weight:800;margin-right:12px}.quote{font:italic 30px/1.35 var(--serif);max-width:780px}.quote-by{color:var(--muted);margin-top:20px}.cta-band{background:var(--green-dark);color:white;padding:70px 0}.cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{max-width:620px;margin:0}.cta-band .button{background:white;color:var(--ink)}.site-footer{background:#20251f;color:#eee;padding:50px 0 22px}.footer-grid{display:flex;justify-content:space-between;gap:30px;padding-bottom:40px}.footer-grid p{color:#c1c5bd;max-width:360px}.footer-links{display:flex;gap:18px;color:#d9ddd5;font-size:13px}.copyright{border-top:1px solid #ffffff24;padding-top:18px;color:#aeb4aa;font-size:12px}.page-hero{padding:70px 0 45px;text-align:center}.page-hero p{color:var(--muted);max-width:600px;margin:0 auto}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:start;padding:20px 0 88px}.booking-aside,.form-card,.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:30px}.booking-aside{background:var(--green-dark);color:white}.booking-aside p{color:#d9ddd5}.booking-aside .check-list{color:#d9ddd5}.booking-aside .check-list li:before{color:#c9d8bf}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:17px}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:12px 13px;background:#fff;color:var(--ink)}.field textarea{min-height:105px;resize:vertical}.form-note{color:var(--muted);font-size:12px}.notice{padding:13px 16px;background:#edf4e9;border-radius:6px;margin:0 0 20px;color:#344432}.dashboard-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-weight:600}.status{display:inline-block;border-radius:20px;background:#f4eee3;padding:4px 9px;font-size:11px}.status-approved{background:#eaf2e8;color:#3d5c37}.status-cancelled{background:#f8e8e5;color:#8b4036}.empty-state{padding:25px;text-align:center;color:var(--muted);background:var(--paper);border-radius:8px}.login-box{max-width:420px;margin:35px auto 90px}.login-box form p{margin:12px 0}.login-box input[type=text],.login-box input[type=password]{width:100%;padding:12px;border:1px solid var(--line);border-radius:6px}.button-secondary{background:#e9ece5;color:var(--ink)}@media(max-width:760px){.wrap{width:min(100% - 30px,600px)}.nav{min-height:68px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:18px 22px 24px;flex-direction:column;align-items:stretch;gap:17px;border-bottom:1px solid var(--line)}.nav-links.is-open{display:flex}.nav-cta{display:block;text-align:center}.hero{padding:48px 0 55px}.hero-grid,.split,.booking-layout{grid-template-columns:1fr}.hero-grid{gap:38px}.hero-art{min-height:340px}.trust-row{gap:12px;flex-wrap:wrap}.section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:12px}.cards{grid-template-columns:1fr}.photo-block{min-height:310px}.cta-band .wrap,.footer-grid{display:block}.cta-band .button{margin-top:22px}.footer-links{margin:25px 0;flex-wrap:wrap}.field-grid{grid-template-columns:1fr}.booking-aside,.form-card,.dashboard-card{padding:23px}.dashboard-top{align-items:flex-start;flex-direction:column}.page-hero{padding:50px 0 30px}h1{font-size:48px}}
.dashboard-app{max-width:1160px;margin:0 auto}.dashboard-app .dashboard-top{padding:20px 0 24px}.dashboard-app .dashboard-top h2{margin:5px 0 0}.dashboard-actions{display:flex;gap:10px;flex-wrap:wrap}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 20px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px;display:flex;flex-direction:column;gap:8px}.stat-card span{font-size:12px;color:var(--muted)}.stat-card strong{font:500 34px var(--serif);color:var(--green-dark)}.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px}.dashboard-section-head{display:flex;justify-content:space-between;margin-bottom:18px}.dashboard-section-head h3{margin-bottom:6px}.dashboard-section-head p,.muted{color:var(--muted);font-size:13px}.row-actions{display:flex;gap:12px}.approve-link{color:var(--green);font-weight:700}.status-pending{background:#fbf0d9;color:#78521c}.status-approved{background:#eaf2e8;color:#3d5c37}.status-cancelled{background:#f8e8e5;color:#8b4036}details{font-size:12px;color:var(--muted);margin-top:7px}summary{cursor:pointer}.velora-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.velora-admin{max-width:1050px}.velora-admin h2{margin-top:32px}.velora-admin .form-table th{width:200px}.velora-admin .velora-service-row{display:flex;gap:8px;margin:9px 0;max-width:900px}.velora-admin .velora-service-row input{min-width:100px;padding:8px}.velora-admin .velora-service-row input:first-child{flex:1}.velora-admin .velora-hours{max-width:800px}.velora-admin .velora-hours input[type=time]{min-width:125px}@media(max-width:760px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-actions{width:100%}.dashboard-actions .button{flex:1;padding:11px 12px}.dashboard-card{padding:17px}.dashboard-top{gap:14px}.velora-admin .velora-service-row{flex-wrap:wrap}.velora-admin .velora-service-row input:first-child{flex-basis:100%}}
