*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f4f7fb;color:#0f172a}a{text-decoration:none;color:inherit}
.admin-shell{display:grid;grid-template-columns:290px minmax(0,1fr);min-height:100vh}
.sidebar{background:linear-gradient(180deg,#0b1220,#111d32);color:#fff;padding:24px;display:flex;flex-direction:column;gap:18px;min-width:0}
.sidebar-brand{display:flex;gap:12px;align-items:center}
.sidebar-brand span{display:block;color:rgba(255,255,255,.68);font-size:.92rem}
.sidebar-badge{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#f59e0b,#fde68a);color:#111827;font-size:1.35rem;flex:0 0 auto}
.sidebar-nav{display:grid;gap:8px}
.sidebar-nav a{padding:12px 14px;border-radius:14px;color:rgba(255,255,255,.84);font-weight:700;word-break:break-word}
.sidebar-nav a:hover{background:rgba(255,255,255,.1)}
.sidebar-logout{margin-top:auto}
.admin-main{padding:30px;min-width:0}
.flash{padding:14px 16px;border-radius:16px;margin-bottom:18px;font-weight:700}
.flash-success{background:#eaf8ee;color:#0f7a39;border:1px solid #c7ead2}
.flash-error{background:#fdecec;color:#a12727;border:1px solid #f3c4c4}
.btn-admin{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:14px;border:0;background:#f59e0b;color:#111827;font-weight:800;cursor:pointer;text-align:center}
.btn-admin-light{background:#edf3fb;color:#102033}
.btn-danger{background:#dc2626;color:#fff}
.btn-success{background:#16a34a;color:#fff}
.admin-card,.login-card,.stat-card{background:#fff;border:1px solid #dde6f1;border-radius:22px;box-shadow:0 16px 36px rgba(15,23,42,.08);padding:24px}
.admin-stack{display:grid;gap:18px}
.form-stack{display:grid;gap:14px}
.form-stack input,.form-stack textarea,.form-stack select{width:100%;padding:13px 14px;border-radius:14px;border:1px solid #ccd9e8;font:inherit;background:#fff;min-width:0}
.page-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:22px;flex-wrap:wrap}
.muted{color:#66768a}
.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:22px}
.stat-card strong{display:block;font-size:2rem}
.row-actions,.inline-form,.quote-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.split-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quote-grid{display:grid;gap:10px}
.quote-row input{flex:1;min-width:130px}
.quote-builder-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.item-remove{white-space:nowrap}
.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}
.admin-table{width:100%;border-collapse:collapse;min-width:640px}
.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #edf2f7;text-align:left;vertical-align:top}
.gallery-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gallery-thumb{width:100%;height:220px;object-fit:cover;border-radius:16px;border:1px solid #dde6f1}
.login-shell{min-height:100vh;padding:0;background:linear-gradient(135deg,#eef4fb,#fdfcf7)}
.login-card{width:min(100%,520px)}
.login-badge{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#f59e0b,#fde68a);font-size:1.7rem;margin-bottom:16px}
.inquiry-card{display:grid;gap:14px}
.inquiry-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.message-box{background:#f8fbff;border:1px solid #dde6f1;border-radius:16px;padding:14px}
.status-chip{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.82rem;font-weight:800;text-transform:capitalize}
.status-new{background:#eef2ff;color:#4338ca}
.status-reviewed,.status-sent{background:#ecfeff;color:#0f766e}
.status-quoted,.status-approved{background:#fff7ed;color:#b45309}
.status-paid{background:#ecfdf5;color:#15803d}
.status-draft{background:#f8fafc;color:#475569}
.quote-total{font-size:1.2rem;font-weight:800}
.row-actions a,.row-actions form{display:inline-flex}

@media (max-width:1100px){
  .admin-shell{grid-template-columns:1fr}
  .sidebar{padding:18px}
  .sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:720px){
  .admin-main{padding:18px}
  .stats-grid,.gallery-admin-grid,.split-two{grid-template-columns:1fr}
  .sidebar-nav{grid-template-columns:1fr}
  .admin-card,.login-card,.stat-card{padding:18px}
  .btn-admin{width:100%}
  .inline-form,.row-actions{align-items:stretch}
  .inline-form > *, .row-actions > *{width:100%}
  .quote-row{flex-direction:column;align-items:stretch}
  .quote-row input,.quote-row button{width:100%}
  .admin-table{min-width:560px}
}


.row-actions .btn-admin{white-space:normal}
@media (max-width:720px){
  .row-actions .btn-admin{width:100%}
}

.login-wrap{display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh;width:min(1180px,100%);margin:0 auto;gap:22px;align-items:stretch}
.login-showcase{display:flex;align-items:center;justify-content:center;padding:28px}
.login-showcase-card{background:linear-gradient(180deg,#fff8ea,#ffffff);border:1px solid #e7ecf5;border-radius:28px;box-shadow:0 18px 42px rgba(15,23,42,.08);padding:34px;width:100%}
.login-showcase-card h1{font-size:clamp(2rem,3vw,3.4rem);line-height:1.05;margin:14px 0}
.login-showcase-card p{color:#5f6f82;max-width:700px}
.login-points{display:grid;gap:12px;margin-top:22px}
.login-point{padding:16px 18px;border-radius:18px;background:#fff;border:1px solid #e8eef7}
.login-point strong{display:block;margin-bottom:4px}
.login-point span{color:#66768a}
.login-panel{display:flex;align-items:center;justify-content:center;padding:28px}
.login-card h2{margin:8px 0 8px}
@media (max-width:980px){
  .login-wrap{grid-template-columns:1fr;max-width:760px}
  .login-showcase{padding:18px 18px 0}
  .login-panel{padding:18px}
}


.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px}
.login-page__inner{width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);gap:28px;align-items:stretch}
.login-showcase{display:flex}
.login-showcase-card{width:100%;background:linear-gradient(180deg,#fff8ea,#ffffff);border:1px solid #e7ecf5;border-radius:30px;box-shadow:0 20px 44px rgba(15,23,42,.08);padding:40px 34px;display:flex;flex-direction:column;justify-content:center}
.login-showcase-card h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.02;letter-spacing:-.03em;margin:14px 0 18px;max-width:720px}
.login-showcase-card p{font-size:1.06rem;color:#5f6f82;max-width:700px;margin:0}
.login-points{display:grid;gap:14px;margin-top:28px;max-width:560px}
.login-point{padding:18px 18px;border-radius:20px;background:#fff;border:1px solid #e8eef7;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.login-point strong{display:block;font-size:1.02rem;margin-bottom:4px}
.login-point span{color:#66768a}
.login-panel{display:flex;align-items:center;justify-content:center}
.login-card--wide{width:min(100%,460px);padding:34px 30px;border-radius:28px}
.login-card--wide h2{margin:8px 0 8px;font-size:2rem}
.login-card--wide .muted{margin-bottom:12px}
.login-card--wide .btn-admin{width:100%;margin-top:6px}
.login-card--wide input{padding:14px 15px;border-radius:16px}
@media (max-width:1100px){
  .login-page__inner{grid-template-columns:1fr;max-width:760px}
  .login-showcase-card h1{font-size:clamp(2rem,5vw,3.2rem)}
}
@media (max-width:640px){
  .login-page{padding:18px}
  .login-page__inner{gap:18px}
  .login-showcase-card,.login-card--wide{padding:24px 20px}
  .login-showcase-card h1{font-size:2.2rem}
}


/* V8.4.4 admin login hard fix */
body.admin-shell:has(.login-force-page){display:block;min-height:100vh}
.login-shell{min-height:100vh !important;display:block !important;padding:0 !important;background:linear-gradient(135deg,#eef4fb,#fdfcf7) !important}
.login-force-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px}
.login-force-shell{width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);gap:32px;align-items:center}
.login-force-left,.login-force-right{min-width:0}
.login-force-showcase{background:linear-gradient(180deg,#fff8ea,#ffffff);border:1px solid #e7ecf5;border-radius:32px;box-shadow:0 20px 44px rgba(15,23,42,.08);padding:44px 38px}
.login-force-showcase h1{font-size:clamp(2.6rem,4.4vw,5rem);line-height:1.02;letter-spacing:-.03em;margin:14px 0 18px;color:#0f172a;max-width:740px}
.login-force-showcase p{font-size:1.06rem;color:#5f6f82;max-width:720px;margin:0}
.login-force-points{display:grid;gap:14px;margin-top:28px;max-width:560px}
.login-force-point{padding:18px;border-radius:20px;background:#fff;border:1px solid #e8eef7;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.login-force-point strong{display:block;margin-bottom:4px;font-size:1.02rem}
.login-force-point span{display:block;color:#66768a}
.login-force-right{display:flex;align-items:center;justify-content:center}
.login-force-card{width:min(100%,460px);background:#fff;border:1px solid #dde6f1;border-radius:28px;box-shadow:0 18px 36px rgba(15,23,42,.08);padding:34px 30px}
.login-force-card h2{margin:8px 0 8px;font-size:2rem;color:#0f172a}
.login-force-card .muted{margin:0 0 12px}
.login-force-card .form-stack{display:grid;gap:14px}
.login-force-card label{display:grid;gap:8px;font-weight:700;color:#23324a}
.login-force-card input{width:100%;padding:14px 15px;border-radius:16px;border:1px solid #ccd9e8;font:inherit;background:#fff;color:#0f172a}
.login-force-card .btn-admin{width:100%;margin-top:6px}
@media (max-width:1100px){
  .login-force-shell{grid-template-columns:1fr;max-width:760px}
}
@media (max-width:640px){
  .login-force-page{padding:18px}
  .login-force-shell{gap:18px}
  .login-force-showcase,.login-force-card{padding:24px 20px}
  .login-force-showcase h1{font-size:2.2rem}
}
