:root{
  --forest:#173B2C;
  --forest-deep:#0E2A1E;
  --terra:#CD5E2C;
  --terra-hover:#B94F22;
  --cream:#F4F1E8;
  --card:#FFFFFF;
  --card-soft:#FBFAF6;
  --ink:#173B2C;
  --muted:#77857A;
  --muted2:#8A968C;
  --placeholder:#9AA69C;
  --line:rgba(23,59,44,0.08);
  --line2:rgba(23,59,44,0.12);
  --green-t:#2F6B3C;
  --green-bg:#E3EFDF;
  --amber-t:#96590F;
  --amber-bg:#FBEBD3;
  --red-t:#8D2D1A;
  --red-bg:#FBE5DC;
  --radius-card:18px;
  --radius-ctrl:11px;
  --shadow:0 18px 55px rgba(23,59,44,.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--cream);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  line-height:1.5;
}
a{color:inherit}
button,input,select,textarea{font:inherit}
svg{display:block}

/* Shared feedback */
.support-flashes{display:grid;gap:10px;margin:0 0 18px}
.support-flash{border-radius:14px;padding:13px 15px;font-size:14px;font-weight:700;border:1px solid var(--line2);background:#fff}
.support-flash--success{background:#edf8ef;border-color:#cfe6d2;color:#204b35}
.support-flash--warning{background:#fff7df;border-color:#efdca7;color:#6b4e00}
.support-flash--error{background:#fff0ec;border-color:#efc0b2;color:#842c18}
.support-flash--info{background:#eef5ff;border-color:#c8d8f5;color:#223f66}
.eyebrow,.seyebrow{font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#C05A2B}

/* Locked login — same spirit as admin login, not a landingpage */
body.support-locked{background:linear-gradient(90deg,var(--forest) 0%,var(--forest-deep) 47%,var(--cream) 47%,var(--cream) 100%)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,47%) minmax(0,53%)}
.login-brand-panel{position:relative;overflow:hidden;color:var(--cream);padding:58px 60px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(155deg,#234A35 0%,var(--forest-deep) 78%)}
.login-brand-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 4%,rgba(244,241,232,.07),transparent 30%);pointer-events:none}
.login-brand,.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:inherit;position:relative;z-index:1}
.brand-mark{width:44px;height:44px;display:inline-grid;place-items:center;flex:0 0 auto}
.brand-mark svg{width:44px;height:44px}
.login-brand strong,.brand strong{display:block;font-size:22px;line-height:1;font-weight:800;letter-spacing:-.025em;color:#fff}
.login-brand small,.brand small{display:block;margin-top:4px;color:#E8926A;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:800}
.login-copy{position:relative;z-index:1;max-width:520px}
.login-copy h1{margin-top:14px;font-weight:800;font-size:clamp(40px,5vw,62px);line-height:.98;letter-spacing:-.05em;color:#fff}
.login-copy p{margin-top:20px;color:rgba(244,241,232,.74);font-size:18px;line-height:1.58;max-width:500px}
.login-points{display:grid;gap:14px;margin-top:34px;list-style:none}
.login-points li{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:700;color:#fff}
.login-points li:before{content:"✓";width:25px;height:25px;border-radius:8px;background:rgba(184,240,96,.16);color:#B8F060;display:grid;place-items:center;font-size:13px;font-weight:800;flex:none}
.login-version{position:relative;z-index:1;display:inline-flex;width:max-content;align-items:center;gap:8px;border:1px solid rgba(244,241,232,.18);border-radius:999px;padding:8px 14px;color:rgba(244,241,232,.78);font-weight:700;font-size:13px}
.login-version span{width:9px;height:9px;border-radius:999px;background:#B8F060;box-shadow:0 0 0 4px rgba(184,240,96,.13)}
.login-form-panel{display:grid;place-items:center;padding:46px 60px;background:var(--cream)}
.login-form-wrap{width:min(100%,500px)}
.login-form-wrap h2{margin-top:12px;font-size:clamp(44px,4.6vw,58px);line-height:1;font-weight:800;letter-spacing:-.045em;color:var(--forest)}
.login-intro{margin:16px 0 30px;color:#54635A;font-size:17px;line-height:1.55;max-width:420px}
.form-stack{display:grid;gap:18px}
.form-stack label{display:grid;gap:8px;color:var(--forest);font-weight:700;font-size:13px}
.form-stack input{width:100%;min-height:58px;border:1px solid rgba(23,59,44,.18);background:var(--card-soft);border-radius:15px;padding:14px 16px;color:var(--ink);outline:none;box-shadow:0 8px 22px rgba(23,59,44,.045)}
.form-stack input:focus{border-color:rgba(205,94,44,.55);box-shadow:0 0 0 4px rgba(205,94,44,.12)}
.submit{border:0;background:var(--terra);color:var(--cream);border-radius:14px;min-height:58px;padding:0 18px;font-weight:800;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;box-shadow:0 16px 34px rgba(205,94,44,.22)}
.submit:hover{background:var(--terra-hover)}
.login-help{margin-top:22px;padding-top:20px;border-top:1px solid rgba(23,59,44,.10);color:#657267;font-size:13.5px;line-height:1.6}
.login-help a{color:var(--terra);font-weight:800;text-decoration:none}.login-help a:hover{text-decoration:underline}

/* Authenticated topbar */
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.topbar{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.topbar .inner{max-width:1120px;margin:0 auto;padding:0 24px;height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.topbar .brand svg{flex:none}.topbar .brand strong{color:var(--forest)}.topbar .brand small{color:var(--terra)}
.nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nav a,.logout-form button{font-weight:700;font-size:14px;color:#3E4E44;text-decoration:none}
.nav a:not(.btn-ghost){padding:9px 4px}.nav a:hover{color:var(--terra)}
.btn-ghost{border:1px solid rgba(23,59,44,.16);border-radius:9px;padding:9px 15px!important;color:var(--ink)!important;background:none;display:inline-flex;align-items:center;gap:7px}
.btn-ghost:hover{background:var(--card-soft);text-decoration:none!important}
.logout-form{margin:0}.userchip{display:flex;align-items:center;gap:9px;padding:6px 12px 6px 6px;border:1px solid rgba(23,59,44,.10);border-radius:99px;background:transparent;cursor:pointer}.userchip:hover{background:var(--card-soft)}
.avatar{width:30px;height:30px;border-radius:50%;background:var(--forest);color:var(--cream);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}.userchip .u{font-weight:700;font-size:14px;color:var(--forest)}

/* Authenticated hero */
.hero{margin-top:36px;border-radius:24px;padding:44px 46px;color:var(--cream);position:relative;overflow:hidden;background:radial-gradient(120% 130% at 92% 8%,rgba(205,94,44,.28),rgba(205,94,44,.04) 34%,transparent 60%),radial-gradient(90% 120% at 50% 120%,rgba(0,0,0,.22),transparent 55%),var(--forest);box-shadow:var(--shadow)}
.hero h1{font-weight:800;font-size:46px;letter-spacing:-.03em;margin-top:14px;line-height:1.02}
.hero .lead{font-size:17px;line-height:1.55;color:rgba(244,241,232,.72);max-width:680px;margin-top:16px}
.hero .cta{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}
.hero .primary{background:var(--terra);color:var(--cream);border:none;border-radius:11px;padding:13px 22px;font-weight:800;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;gap:9px;text-decoration:none}.hero .primary:hover{background:var(--terra-hover)}
.hero .secondary{border:1px solid rgba(244,241,232,.32);color:var(--cream);background:none;border-radius:11px;padding:13px 22px;font-weight:700;font-size:15px;text-decoration:none;display:inline-flex;align-items:center}.hero .secondary:hover{background:rgba(244,241,232,.10)}

/* Context strip */
.ctx{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ctx .c{background:var(--card-soft);border:1px solid var(--line);border-radius:14px;padding:18px 20px}.ctx .k{font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#C05A2B}.ctx .v{font-weight:800;font-size:17px;margin-top:7px;word-break:break-word}.ctx .s{font-size:13px;color:var(--muted);margin-top:3px;word-break:break-word}

/* Main workspace */
.main{margin-top:28px;display:grid;grid-template-columns:1.72fr 1fr;gap:24px;align-items:start}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);padding:32px 34px;box-shadow:var(--shadow)}.card h2{font-weight:800;font-size:27px;letter-spacing:-.02em;margin-top:10px}.card .desc{font-size:15px;color:var(--muted);margin-top:8px}.fgroup{margin-top:20px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lab{font-weight:700;font-size:13px;color:#37473D;display:grid;gap:8px}.lab .opt{color:var(--placeholder);font-weight:600}input,select,textarea{width:100%;font-family:inherit;font-size:15px;color:var(--ink);background:var(--card-soft);border:1px solid var(--line2);border-radius:var(--radius-ctrl);padding:13px 15px;outline:none;transition:border-color .12s,box-shadow .12s}::placeholder{color:var(--placeholder)}input:focus,select:focus,textarea:focus{border-color:rgba(205,94,44,.55);box-shadow:0 0 0 3px rgba(205,94,44,.12)}select{appearance:none;-webkit-appearance:none;padding-right:40px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%237A897E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}textarea{min-height:122px;resize:vertical}.submit svg{flex:none}

/* Sidebar */
.side{background:var(--card-soft);border:1px solid var(--line);border-radius:var(--radius-card);padding:28px;box-shadow:var(--shadow);position:sticky;top:96px}.side h3{font-weight:800;font-size:20px;letter-spacing:-.01em;margin-top:8px;line-height:1.25}.side .items{margin-top:14px}.side .item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(23,59,44,.07)}.side .item:last-child{border-bottom:none}.side .item .t{font-weight:700;font-size:15px}.check{width:22px;height:22px;border-radius:999px;background:var(--green-bg);position:relative;flex:none}.check:after{content:"";position:absolute;left:7px;top:5px;width:6px;height:10px;border:solid var(--green-t);border-width:0 2px 2px 0;transform:rotate(45deg)}.tip{margin-top:16px;background:var(--green-bg);border:1px solid rgba(47,107,60,.16);border-radius:12px;padding:15px 16px;font-size:14px;line-height:1.5;color:#2F5A38}

/* Sections */
.section{margin-top:28px}.sh2{font-weight:800;font-size:26px;letter-spacing:-.02em;margin-top:9px}.ssub{font-size:15px;color:var(--muted);margin-top:7px}.empty-box{background:var(--card-soft);border:1px dashed var(--line2);border-radius:14px;padding:22px;text-align:center;color:var(--muted);font-weight:700;margin-top:14px}.ticket-list{display:grid;gap:14px;margin-top:14px}.trow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;gap:16px;padding:18px 22px;background:var(--card-soft);border:1px solid var(--line);border-radius:14px}.pill{font-weight:800;font-size:12px;padding:5px 11px;border-radius:99px;flex:none;background:var(--amber-bg);color:var(--amber-t)}.pill-resolved,.pill-closed,.pill-done{background:var(--green-bg);color:var(--green-t)}.pill-new{background:#fff0e8;color:var(--terra)}.pill-open,.pill-in_progress,.pill-pending{background:var(--amber-bg);color:var(--amber-t)}.ticket-main{min-width:0}.trow .tt{font-weight:800;font-size:16px}.trow .ts{font-size:14px;color:var(--muted);margin-top:2px}.ticket-property{margin-top:8px!important}.trow .date{font-size:13px;color:var(--muted2);white-space:nowrap}.thread{margin-top:14px;display:grid;gap:10px}.thread>strong{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#C05A2B}.reply{border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:#fff}.reply-admin{background:#f6fbf4}.reply-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800;font-size:13px}.reply-meta small{font-weight:600;color:var(--muted2)}.reply p{font-size:14px;color:#56635B;margin-top:6px}

/* FAQ */
.faq-section{background:rgba(23,59,44,.045);border:1px solid var(--line2);border-radius:24px;padding:28px}.faqgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;align-items:start}.q{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 20px}.q[open]{border-color:rgba(205,94,44,.30)}.q summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;font-weight:800;font-size:15px}.q summary::-webkit-details-marker{display:none}.q summary .ic{flex:none;transition:transform .15s;color:var(--terra);font-weight:800}.q[open] summary .ic{transform:rotate(45deg)}.q .ans{font-size:14px;color:#5D6B61;line-height:1.55;padding:13px 0 17px;margin-top:-2px;border-top:1px solid var(--line)}

/* Footer */
.foot{margin-top:34px;border-top:1px solid rgba(23,59,44,.10);padding:26px 0 44px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.foot .l1{font-weight:800;font-size:15px}.foot .l2{font-size:13px;color:var(--muted);margin-top:2px}.foot .mail{font-weight:800;font-size:15px;color:var(--terra);text-decoration:none}.foot .mail:hover{text-decoration:underline}

@media(max-width:900px){
  body.support-locked{background:var(--cream)}.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:34px 26px}.login-copy{margin:48px 0}.login-copy h1{font-size:40px}.login-form-panel{padding:38px 26px;place-items:start}.login-form-wrap{margin:0 auto}.nav a:not(.btn-ghost){display:none}.hero{padding:34px 26px}.hero h1{font-size:36px}.ctx{grid-template-columns:1fr}.main{grid-template-columns:1fr}.side{position:static}.faqgrid{grid-template-columns:1fr}.card{padding:26px 22px}.foot{flex-direction:column;align-items:flex-start}
}
@media(max-width:620px){
  .wrap,.topbar .inner{padding-left:16px;padding-right:16px}.topbar .inner{height:auto;min-height:68px;align-items:flex-start;padding-top:14px;padding-bottom:14px}.nav{justify-content:flex-end}.brand strong{font-size:19px}.row2{grid-template-columns:1fr}.trow{grid-template-columns:1fr}.trow .date{white-space:normal}.hero h1{font-size:34px}.hero .lead{font-size:15px}.ctx .c,.card,.side,.faq-section{border-radius:16px}.login-copy h1{font-size:34px}.login-form-wrap h2{font-size:42px}
}
