:root{--bg:#071311;--panel:#10231f;--panel2:#17352f;--text:#eefaf5;--muted:#a8beb7;--line:#245348;--brand:#71f0aa;--brand2:#f8c15c;--danger:#ff7c7c;}
*{box-sizing:border-box;}
body{margin:0;background:radial-gradient(circle at top left,#183c34,#071311 42%);color:var(--text);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;line-height:1.5;}
a{color:inherit;text-decoration:none;}
main{width:min(1180px,92vw);margin:0 auto;padding:36px 0 70px;}
.topbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:16px 4vw;background:rgba(7,19,17,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);}
.brand{font-weight:900;font-size:1.35rem;color:var(--brand);letter-spacing:.02em;}
nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
nav a{color:var(--muted);font-weight:700;font-size:.94rem;}
nav a:hover{color:var(--text);}
.hero{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;align-items:center;min-height:68vh;}
.hero h1{font-size:clamp(2.4rem,6vw,5.5rem);line-height:.95;margin:10px 0 18px;max-width:850px;}
.hero p{font-size:1.15rem;color:var(--muted);max-width:680px;}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--brand);font-weight:900;font-size:.78rem;}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:linear-gradient(135deg,var(--brand),#3ccf82);color:#052015;font-weight:900;padding:12px 20px;cursor:pointer;box-shadow:0 12px 30px rgba(113,240,170,.18);}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line);box-shadow:none;}
.btn.small{padding:8px 14px;font-size:.9rem;}
.hero-card,.panel,.price-card,.card-form,.grid3 article,.stats div{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:24px;box-shadow:0 20px 70px rgba(0,0,0,.24);}
.hero-card{transform:rotate(2deg);}
.hero-card h3{font-size:2rem;margin:0 0 18px;}
.hero-card p{background:#0a1d19;border:1px solid var(--line);border-radius:16px;padding:12px;margin:10px 0;color:var(--text);}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0;}
.page-head{padding:34px 0 24px;}
.page-head h1{font-size:clamp(2rem,4vw,4rem);margin:0 0 8px;}
.page-head p{color:var(--muted);}
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.price-card.featured{border-color:var(--brand);transform:translateY(-8px);}
.price{font-size:2.2rem;font-weight:900;color:var(--brand2);}
ul{padding-left:20px;color:var(--muted);}
.form-wrap{max-width:560px;margin:40px auto;}
.card-form{display:grid;gap:14px;}
label{display:grid;gap:6px;color:var(--muted);font-weight:800;}
input,select,textarea{width:100%;border:1px solid var(--line);background:#071916;color:var(--text);border-radius:14px;padding:12px;font:inherit;}
textarea{min-height:95px;resize:vertical;}
.flash{width:min(1180px,92vw);margin:18px auto 0;border-radius:16px;padding:12px 16px;font-weight:800;}
.flash.success{background:rgba(113,240,170,.14);border:1px solid rgba(113,240,170,.35);}
.flash.error{background:rgba(255,124,124,.14);border:1px solid rgba(255,124,124,.35);}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px;}
.stats strong{display:block;font-size:2.7rem;color:var(--brand);}
.stats span{color:var(--muted);font-weight:800;}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;}
table{width:100%;border-collapse:collapse;overflow:hidden;}
th,td{text-align:left;border-bottom:1px solid rgba(255,255,255,.09);padding:12px 8px;vertical-align:top;}
th{color:var(--brand);font-size:.86rem;text-transform:uppercase;letter-spacing:.08em;}
td{color:var(--muted);}
.split{display:grid;grid-template-columns:360px 1fr;gap:18px;align-items:start;}
.footer{text-align:center;color:var(--muted);padding:40px 20px;border-top:1px solid rgba(255,255,255,.08);}
@media(max-width:850px){.hero,.grid3,.pricing,.split,.stats{grid-template-columns:1fr;}.price-card.featured{transform:none;}.topbar{align-items:flex-start;gap:12px;flex-direction:column;}nav{gap:10px;}}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 4vw;background:rgba(7,19,17,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);}
.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.main-nav a{min-height:42px;display:inline-flex;align-items:center;border-radius:999px;padding:9px 12px;color:var(--muted);font-weight:800;font-size:.93rem;}
.main-nav a:hover{background:rgba(255,255,255,.06);color:var(--text);}
.site-footer{text-align:center;color:var(--muted);padding:40px 20px;border-top:1px solid rgba(255,255,255,.08);}
.alert{border-radius:14px;padding:12px 14px;margin:12px 0;font-weight:800;}
.alert.success{background:rgba(113,240,170,.14);border:1px solid rgba(113,240,170,.35);color:#cffff0;}
.alert.error,.alert.danger{background:rgba(255,124,124,.14);border:1px solid rgba(255,124,124,.35);color:#ffd1d1;}
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.admin-panel{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:24px;box-shadow:0 20px 70px rgba(0,0,0,.24);margin-bottom:20px;}
.admin-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px;}
.admin-hero.compact h1{margin:.15rem 0;font-size:clamp(2rem,5vw,4rem);}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(113,240,170,.12);border:1px solid rgba(113,240,170,.3);color:#dfffee;font-weight:900;padding:9px 12px;cursor:pointer;}
.icon-btn.danger{background:rgba(255,124,124,.12);border-color:rgba(255,124,124,.32);color:#ffd1d1;}
@media(max-width:760px){main,.page{width:min(100% - 24px,1180px);padding:22px 0 52px;}.site-header{position:relative;align-items:stretch;flex-direction:column;padding:14px 12px;}.brand{font-size:1.25rem;}.main-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.main-nav a{justify-content:center;background:rgba(255,255,255,.045);padding:10px 8px;font-size:.9rem;}.main-nav .btn.small{grid-column:1/-1;}.hero{min-height:auto;padding:18px 0;}.hero h1{font-size:clamp(2.1rem,12vw,3.3rem);}.hero-card{transform:none;}.grid3,.pricing,.split,.stats{gap:14px;}.panel,.card-form,.price-card,.grid3 article,.stats div,.admin-panel{border-radius:20px;padding:18px;}table.admin-table,table.admin-table thead,table.admin-table tbody,table.admin-table th,table.admin-table td,table.admin-table tr{display:block;width:100%;}table.admin-table thead{display:none;}table.admin-table tr{border:1px solid rgba(255,255,255,.1);border-radius:16px;margin-bottom:12px;padding:10px;background:rgba(0,0,0,.12);}table.admin-table td{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.06);padding:10px 4px;}table.admin-table td:last-child{border-bottom:0;}table.admin-table td::before{content:attr(data-label);font-weight:900;color:var(--brand);min-width:92px;}.admin-hero{align-items:flex-start;flex-direction:column;}.btn,.icon-btn{min-height:44px;}.actions{width:100%;}.actions .btn{flex:1 1 100%;}}
.demo-banner{margin:14px auto 0;background:rgba(248,193,92,.14);border:1px solid rgba(248,193,92,.35);color:#ffe6ad;border-radius:18px;padding:12px 16px;font-weight:900;}
.dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.dashboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;}
.mobile-list{display:grid;gap:12px;}
.mobile-list article{display:grid;gap:4px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(0,0,0,.14);padding:13px;}
.mobile-list b{color:var(--text);}
.mobile-list span,.mobile-list small{color:var(--muted);}
.notification-card.unread{border-color:rgba(113,240,170,.42);background:rgba(113,240,170,.08);}
.estimate-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px;}
.estimate-actions form{display:grid;gap:12px;border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:14px;background:rgba(0,0,0,.12);}
.job-photo-form{display:grid;grid-template-columns:110px minmax(160px,1fr);gap:8px;width:min(100%,420px);margin-top:8px;}
.job-photo-form input[name="photo_note"],.job-photo-form button{grid-column:1/-1;}
.job-photo-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.job-photo-strip a{position:relative;display:block;width:78px;height:64px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.12);}
.job-photo-strip img{width:100%;height:100%;object-fit:cover;display:block;}
.job-photo-strip span{position:absolute;left:4px;bottom:4px;background:rgba(0,0,0,.65);color:#fff;border-radius:999px;padding:1px 6px;font-size:.68rem;text-transform:uppercase;font-weight:900;}
.checkline{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:10px;}
.checkline input{width:auto;}
.pay-now{background:linear-gradient(135deg,#f8c15c,#ffda79);color:#2b1900;}
@media(max-width:900px){.dashboard-stats,.dashboard-grid,.estimate-actions{grid-template-columns:1fr;}.dashboard-head{align-items:flex-start;}.job-photo-form{grid-template-columns:1fr;}.jobs-table .job-photo-form select,.jobs-table .job-photo-form input,.jobs-table .job-photo-form button{width:100%;}.job-photo-strip a{width:70px;height:58px;}}

.jobs-card-panel{overflow:visible;}
.jobs-table .job-photo-form{display:none;}
@media(max-width:900px){.jobs-table td:nth-child(4),.jobs-table td:nth-child(5){display:none;}}
.promo-box{display:grid;gap:14px;margin:22px 0;padding:18px;border:1px solid rgba(113,240,170,.26);border-radius:20px;background:rgba(113,240,170,.07);}
.promo-box label{color:var(--text);font-size:1rem;}
.promo-box p{margin:4px 0 0;color:var(--muted);font-size:.95rem;}
.promo-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.promo-row .btn{white-space:nowrap;}
@media(max-width:760px){.promo-row{grid-template-columns:1fr;}.promo-row .btn{width:100%;}}
