@font-face { font-family:"Sarabun"; font-style:normal; font-weight:400; font-display:swap; src:url("/fonts/sarabun-400-thai.woff2") format("woff2"); unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:400; font-display:swap; src:url("/fonts/sarabun-400-latin.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:500; font-display:swap; src:url("/fonts/sarabun-500-thai.woff2") format("woff2"); unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:500; font-display:swap; src:url("/fonts/sarabun-500-latin.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:600; font-display:swap; src:url("/fonts/sarabun-600-thai.woff2") format("woff2"); unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:600; font-display:swap; src:url("/fonts/sarabun-600-latin.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:700; font-display:swap; src:url("/fonts/sarabun-700-thai.woff2") format("woff2"); unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC; }
@font-face { font-family:"Sarabun"; font-style:normal; font-weight:700; font-display:swap; src:url("/fonts/sarabun-700-latin.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

h1:focus {
    outline: none;
}

:root { --ink:#17211c; --muted:#536159; --line:#dde3df; --paper:#f2f3ed; --green:#155f3e; --acid:#d8ff65; --font-ui:"Sarabun","Leelawadee UI",Tahoma,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--paper); font-synthesis:none; }
body { margin:0; color:var(--ink); font-family:var(--font-ui); background:var(--paper); text-rendering:optimizeLegibility; }
button,a,input,select { font:inherit; }
h1,h2,p { margin-top:0; }
.marketing-page { min-height:100vh; overflow-x:clip; background:var(--paper); }
.marketing-nav { height:72px; max-width:1240px; margin:auto; padding:0 28px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #ced5cf; }
.marketing-nav a { color:var(--ink); text-decoration:none; font-size:12px; font-weight:800; }
.marketing-brand { display:flex; align-items:center; gap:10px; letter-spacing:.12em; }
.marketing-brand img { display:block; width:34px; height:34px; object-fit:contain; }
.hero { max-width:1240px; margin:auto; padding:80px 28px 76px; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:80px; }
.eyebrow { margin:0 0 7px; color:#536159; font:700 10px/1.2 Arial,sans-serif; letter-spacing:.15em; }
.hero h1 { max-width:760px; margin:0 0 24px; font:700 clamp(44px,4.6vw,64px)/1.14 var(--font-ui); letter-spacing:-.025em; }
.hero-lead { max-width:660px; margin-bottom:28px; color:#5f6b64; font-size:17px; line-height:1.75; }
.hero-cta { display:inline-block; padding:14px 19px; border-radius:8px; color:#17231d; background:var(--acid); box-shadow:0 8px 24px #65821628; text-decoration:none; font-size:13px; font-weight:900; }
.hero-actions,.sample-actions { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.secondary-cta { display:inline-block; padding:13px 0 11px; border-bottom:2px solid #8b9890; color:var(--ink); text-decoration:none; font-size:12px; font-weight:900; }
.hero-cta:active,.secondary-cta:active { transform:translateY(1px); }
.risk-card { padding:26px; border:1px solid #3b5146; border-radius:14px; color:#eef4ef; background:#17271f; box-shadow:22px 28px 0 var(--acid); }
.risk-top { display:flex; align-items:end; justify-content:space-between; margin-bottom:22px; color:#b3c0b8; font-size:11px; }
.risk-top strong { color:var(--acid); font:700 46px/1 Georgia,serif; }.risk-top small { font-size:13px; color:#92a098; }
.risk-line { display:grid; grid-template-columns:44px 1fr; gap:9px; padding:14px 0; border-top:1px solid #35483f; }
.risk-line b { grid-row:1/3; align-self:start; padding:4px; border-radius:20px; text-align:center; font-size:9px; }.risk-line span { font-size:11px; }.risk-line em { color:#92a098; font-size:9px; font-style:normal; }
.risk-line.danger b { color:#ffc6c1; background:#65312f; }.risk-line.warn b { color:#ffe4a5; background:#604c23; }.risk-line.ok b { color:#c4f1d6; background:#26533b; }
.risk-card>p { margin:16px 0 0; color:#91a198; font-size:9px; text-align:center; }
.proof-strip { display:grid; grid-template-columns:repeat(4,1fr); max-width:1240px; margin:auto; border-top:1px solid #cbd2cd; border-bottom:1px solid #cbd2cd; }
.proof-strip span { padding:20px; border-right:1px solid #cbd2cd; text-align:center; color:#5e6962; font-size:11px; font-weight:700; }.proof-strip span:last-child { border:0; }
.editorial { position:relative; max-width:1240px; margin:0 auto; padding:64px 28px 0; }
.editorial-image { display:block; width:100%; height:auto; border:1px solid var(--line); }
.editorial-panel { position:absolute; left:64px; bottom:0; width:min(400px,42%); padding:34px 32px; border:1px solid var(--line); border-bottom:0; background:var(--paper); }
.editorial-panel h2 { margin:0 0 12px; font:700 clamp(28px,3vw,40px)/1.14 Georgia,"Noto Serif Thai",serif; letter-spacing:-.03em; }
.editorial-panel p:last-child { margin:0; color:var(--muted); font-size:14px; line-height:1.8; }
.public-pricing { max-width:1240px; margin:0 auto; padding:100px 28px 20px; }
.pricing-heading { padding:28px 0 36px; display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; border-top:1px solid #aeb9b2; }
.pricing-heading h2,.public-faq h2 { margin:0; font:700 clamp(34px,4vw,52px)/1.04 Georgia,"Noto Serif Thai",serif; letter-spacing:-.035em; }
.pricing-heading>p { max-width:610px; margin:4px 0 0; color:#5f6d65; font-size:15px; line-height:1.8; }
.pricing-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid #9eaaa3; border-left:1px solid #9eaaa3; background:#f7f8f3; }
.pricing-grid article { min-height:390px; padding:30px 28px; display:flex; flex-direction:column; border-right:1px solid #9eaaa3; border-bottom:1px solid #9eaaa3; }
.pricing-grid article.preferred { color:#eff4f0; background:#17271f; box-shadow:inset 0 5px 0 var(--acid); }
.pricing-grid article>small { color:#56645c; font:700 9px/1.2 Arial,sans-serif; letter-spacing:.15em; }.pricing-grid article.preferred>small { color:var(--acid); }
.pricing-grid .plan-tag { min-height:24px; margin:14px 0 -38px; color:var(--green); font-size:10px; font-weight:800; line-height:1.35; }
.pricing-grid h3 { margin:54px 0 12px; font:700 24px/1.15 Georgia,"Noto Serif Thai",serif; }
.pricing-grid strong { font:700 40px/1 Georgia,serif; }.pricing-grid strong span { font:700 12px/1 "Noto Sans Thai",sans-serif; }
.pricing-grid p { margin:9px 0 25px; color:#59675f; font-size:10px; }.pricing-grid article.preferred p { color:#aebbb3; }
.pricing-grid ul { margin:0 0 30px; padding:0; list-style:none; color:#56645c; font-size:11px; line-height:1.75; }.pricing-grid article.preferred ul { color:#c0ccc4; }.pricing-grid li { padding:7px 0; border-top:1px solid #d9dfdb; }.pricing-grid article.preferred li { border-color:#34483e; }
.pricing-grid a { margin-top:auto; padding:12px 0 8px; border-bottom:2px solid currentColor; color:var(--green); text-decoration:none; font-size:11px; font-weight:900; }.pricing-grid article.preferred a { color:var(--acid); }
.pricing-note { margin:15px 0 0; color:#536159; font-size:9px; text-align:right; }
.snapshot { max-width:1060px; margin:90px auto; padding:0 28px; display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; }
.snapshot h2 { margin-bottom:14px; font:700 38px/1.16 Georgia,"Noto Serif Thai",serif; letter-spacing:-.02em; }.snapshot>div>p:last-child { color:#536159; line-height:1.75; }
.start-route > .hero,.start-route > .proof-strip,.start-route > .editorial,.start-route > .public-pricing { display:none; }
.start-route .snapshot { min-height:auto; margin:0 auto; padding-top:clamp(54px,7vh,82px); padding-bottom:clamp(54px,9vh,110px); align-items:start; }
.start-route .snapshot h1 { max-width:430px; margin:0 0 16px; font:700 clamp(42px,5vw,64px)/1.08 var(--font-ui); letter-spacing:-.03em; }
.start-route .snapshot > div > p:last-child { max-width:410px; font-size:15px; }
.start-assurance { max-width:1060px; margin:-54px auto 74px; padding:26px 28px; display:grid; grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr); gap:48px; align-items:start; border-top:1px solid #c6d0ca; border-bottom:1px solid #c6d0ca; }
.start-assurance>div:first-child { display:grid; gap:7px; }.start-assurance small { color:#68766e; font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.start-assurance strong { max-width:260px; font-size:18px; line-height:1.35; }
.start-assurance-facts { display:grid; grid-template-columns:1fr 1fr; gap:12px 28px; }.start-assurance-facts span { color:#536159; font-size:11px; line-height:1.65; }.start-assurance-facts a { grid-column:1/3; width:max-content; max-width:100%; padding:8px 0 6px; border-bottom:2px solid var(--green); color:var(--green); text-decoration:none; font-size:11px; font-weight:900; transition:transform .26s cubic-bezier(.16,1,.3,1),color .26s ease; }.start-assurance-facts a:hover { transform:translateX(3px); color:#0e4930; }.start-assurance-facts a:focus-visible { outline:3px solid color-mix(in srgb,var(--green) 35%,transparent); outline-offset:4px; }
.lead-form { padding:28px; display:grid; grid-template-columns:1fr 1fr; gap:16px; border:1px solid #cbd4ce; border-radius:12px; background:#fff; }
.lead-form label { display:grid; gap:6px; color:#5e6962; font-size:10px; font-weight:800; }
.lead-form input,.lead-form select { width:100%; padding:11px 12px; border:1px solid #d3d9d5; border-radius:7px; color:var(--ink); background:#fafbf9; font-size:12px; }
.lead-form .tor-file { grid-column:1/3; padding:14px; border:1px dashed #aebbb3; border-radius:8px; background:#f4f7f4; }
.lead-form .tor-file>span { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.lead-form .tor-file>span small,.lead-form .tor-file>small { color:#718077; font-weight:500; line-height:1.5; }
.lead-form .tor-file input[type=file] { padding:9px; border-style:solid; background:#fff; cursor:pointer; }
.lead-form .consent { grid-column:1/3; display:flex; align-items:flex-start; gap:8px; line-height:1.5; }.consent input { width:auto; margin-top:2px; }
.lead-submit { grid-column:1/3; padding:13px; border:0; border-radius:8px; color:#fff; background:#17271f; font-weight:900; cursor:pointer; }.lead-submit:active { transform:translateY(1px); }.lead-submit:disabled { opacity:.6; }
.honey { position:absolute; left:-9999px; }.form-error,.validation-summary-errors { grid-column:1/3; margin:0; color:#a8332e; font-size:11px; }
.lead-success { padding:34px; border:1px solid #8caf99; border-radius:12px; background:#eef8f1; }.lead-success strong { font-size:22px; }.lead-success p { margin:10px 0 0; color:#52645a; }
.lead-success input[type=file] { display:block; width:100%; margin:18px 0 8px; padding:10px; border:1px dashed #8caf99; border-radius:8px; background:#fff; }
.lead-success small { display:block; color:#607168; }.upload-button { width:100%; margin-top:14px; }
.queue-status { display:flex; align-items:center; gap:9px; margin-top:18px; padding:11px 13px; border-radius:8px; color:#54635a; background:#e2ece5; font-size:11px; font-weight:800; }.queue-status i { width:9px; height:9px; border-radius:50%; background:#9aac9f; animation:pulse 1.5s infinite; }.queue-status.processing i { background:#a56708; }.queue-status.complete i { background:#16804e; animation:none; }.queue-status.failed i { background:#a8332e; animation:none; }
.report-section { max-width:1060px; margin:0 auto 100px; padding:42px 28px; border-top:1px solid #cbd2cd; }.report-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; }.report-heading h2 { margin:0; font:700 38px/1.1 Georgia,"Noto Serif Thai",serif; }.report-heading>span { color:#6d7971; font-size:10px; }
.report-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(110px,1fr)); margin:30px 0; border:1px solid #ccd4cf; border-radius:10px; background:#fff; overflow:hidden; }.report-summary article { padding:18px; display:grid; gap:5px; border-right:1px solid #e0e5e2; }.report-summary strong { font:700 28px/1 Georgia,serif; }.report-summary span { color:#6d7971; font-size:10px; }
.report-list { display:grid; gap:10px; }.report-list article { padding:20px 22px; border:1px solid #d7ddd9; border-radius:10px; background:#fff; }.report-list article>div { display:flex; align-items:center; gap:10px; }.report-list b { color:#6e7972; font-size:10px; }.report-list h3 { margin:13px 0 9px; font-size:14px; }.report-list blockquote { margin:0 0 10px; padding-left:12px; border-left:2px solid #b8c5bd; color:#66736b; font-size:11px; line-height:1.65; }.report-list small { color:#879089; font-size:9px; }
.risk-type { padding:4px 7px; border-radius:99px; color:#32483c; background:#e6ece8; font-size:9px; font-weight:900; }.risk-type.mandatory { color:#922c28; background:#ffe2df; }.risk-type.deadline { color:#87550b; background:#fff0ce; }.risk-type.financial { color:#31568c; background:#e5efff; }.report-more { margin:18px 0 0; color:#69756e; font-size:10px; text-align:center; }
.checkout-card { margin-top:32px; padding:26px; display:grid; grid-template-columns:1fr auto; gap:18px 28px; align-items:center; border:1px solid #294d3a; border-radius:12px; background:#17271f; color:#f0f5f1; }.checkout-card h3 { margin:0 0 7px; font:700 24px/1.2 Georgia,"Noto Serif Thai",serif; }.checkout-card p { margin:0; color:#a9b8af; font-size:11px; }.checkout-card>strong { color:var(--acid); font:700 30px/1 Georgia,serif; }.checkout-card form,.checkout-card>.lead-submit,.checkout-card>.quote-button,.checkout-card>.quotation-ready,.checkout-card>small,.checkout-card>.form-error { grid-column:1/3; }.checkout-card form .lead-submit { width:100%; color:#17271f; background:var(--acid); }.checkout-card>small { color:#9caaa2; }
.quote-button { padding:12px; border:1px solid #70847a; border-radius:8px; color:#f0f5f1; background:transparent; font-weight:900; cursor:pointer; }.quote-button:active { transform:translateY(1px); }.quote-button:disabled { opacity:.55; cursor:not-allowed; }.quotation-ready { padding:11px 13px; border-radius:8px; color:#17271f; background:var(--acid); text-align:center; text-decoration:none; font-size:11px; font-weight:900; }
.billing-profile { grid-column:1/3; padding:18px; display:grid; grid-template-columns:1fr 1fr; gap:13px; border:1px solid #385347; border-radius:9px; background:#102018; }.billing-profile label { display:grid; gap:6px; color:#b9c6be; font-size:10px; }.billing-profile input:not([type=checkbox]),.billing-profile textarea { width:100%; padding:10px 11px; border:1px solid #52665b; border-radius:6px; color:#f0f5f1; background:#17271f; resize:vertical; }.billing-profile .billing-toggle { grid-column:1/3; display:flex; align-items:center; gap:8px; color:#f0f5f1; font-weight:800; }.billing-toggle input { width:auto; }.billing-profile .billing-address,.billing-profile .billing-hint { grid-column:1/3; }.billing-profile label small,.billing-profile .billing-hint { color:#91a198; font-size:9px; }.billing-profile .billing-hint { color:#ffd0a1; }
.payment-plans { grid-column:1/3; display:grid; border:1px solid #385347; border-radius:9px; overflow:hidden; }.payment-plans label { padding:14px 16px; display:grid; grid-template-columns:18px minmax(120px,1fr) auto; gap:4px 12px; align-items:center; border-bottom:1px solid #385347; background:#102018; cursor:pointer; }.payment-plans label:last-child { border-bottom:0; }.payment-plans label.selected { background:#1c3327; box-shadow:inset 3px 0 0 var(--acid); }.payment-plans input { grid-row:1/3; accent-color:#b3df39; }.payment-plans b { color:#f0f5f1; font:700 16px/1.2 "Noto Sans Thai","Leelawadee UI",sans-serif; }.payment-plans span { color:#d3ddd7; font-size:10px; text-align:right; }.payment-plans small { grid-column:2/4; color:var(--acid); font-size:10px; }
.credit-redemption { margin-top:26px; padding:22px; display:grid; grid-template-columns:1fr auto; gap:16px; align-items:center; border:1px solid #8fb99f; border-radius:12px; background:#eef7f1; }.credit-redemption h3 { margin:2px 0 6px; font:700 22px/1.2 Georgia,"Noto Serif Thai",serif; }.credit-redemption p { margin:0; }.credit-redemption .lead-submit { color:#17271f; background:var(--acid); }.credit-redemption .form-error { grid-column:1/3; }
.credit-balance { margin:18px 0 0; padding:14px 16px; display:flex; justify-content:space-between; gap:12px; border:1px solid #a9c5b4; border-radius:8px; background:#eef7f1; }.credit-balance span { color:#526159; font-size:11px; }
.payment-status-page { min-height:100vh; padding:36px; background:var(--paper); }.payment-status-page>.marketing-brand { color:var(--ink); text-decoration:none; }.payment-status-card { max-width:640px; margin:12vh auto 0; padding:42px; border:1px solid #cbd4ce; border-radius:14px; background:#fff; }.payment-status-card h1 { margin:0 0 16px; font:700 42px/1.05 Georgia,"Noto Serif Thai",serif; }.payment-status-card p { color:#627068; line-height:1.7; }.payment-status-card .lead-submit { width:100%; margin-top:12px; }
.download-report,.payment-return-home { display:block; text-align:center; text-decoration:none; }.payment-return-home { width:100%; margin-top:20px; color:#fff; }.payment-status-card small { display:block; margin-top:13px; color:#7a857e; line-height:1.6; }
.repeat-order { margin-top:24px; padding:20px; border:1px solid #cbd4ce; border-radius:10px; background:#f4f7f5; }.repeat-order strong { font:700 18px/1.2 Georgia,"Noto Serif Thai",serif; }.repeat-order p { margin:6px 0 10px; font-size:11px; }.repeat-order .lead-submit { color:#17271f; background:var(--acid); }
.ops-page { min-height:100vh; padding:28px; background:#101a15; color:#eff5f0; }.ops-page>header { max-width:1240px; margin:auto; display:flex; justify-content:space-between; align-items:center; }.ops-page .marketing-brand { color:#eff5f0; text-decoration:none; }.ops-page>header small { color:#819087; letter-spacing:.14em; }.ops-login { max-width:460px; margin:16vh auto; padding:36px; border:1px solid #33463c; border-radius:12px; background:#17271f; }.ops-login h1,.ops-heading h1 { margin:0 0 22px; font:700 46px/1 Georgia,serif; }.ops-login input { width:100%; margin-bottom:12px; padding:12px; border:1px solid #42564b; border-radius:7px; color:#fff; background:#101a15; }.ops-login .lead-submit { width:100%; }.ops-heading { max-width:1240px; margin:70px auto 24px; display:flex; align-items:end; justify-content:space-between; }.ops-heading span { color:#829188; font-size:10px; }.ops-kpis { max-width:1240px; margin:auto; display:grid; grid-template-columns:repeat(5,1fr); border:1px solid #33463c; border-radius:12px; overflow:hidden; }.ops-kpis article { min-height:135px; padding:22px; display:grid; align-content:space-between; border-right:1px solid #33463c; background:#17271f; }.ops-kpis article:last-child { border:0; }.ops-kpis small,.ops-kpis span { color:#84938a; font-size:9px; }.ops-kpis strong { color:var(--acid); font:700 32px/1 Georgia,serif; }.ops-grid { max-width:1240px; margin:20px auto; display:grid; grid-template-columns:1.15fr .85fr; gap:20px; }.ops-grid>article { padding:22px; border:1px solid #33463c; border-radius:12px; background:#17271f; overflow:auto; }.ops-grid h2 { font:700 20px/1.2 Georgia,serif; }.ops-grid table { width:100%; border-collapse:collapse; font-size:10px; }.ops-grid th,.ops-grid td { padding:10px 8px; border-top:1px solid #304239; text-align:left; white-space:nowrap; }.ops-grid th { color:#839188; }
.ops-funnel { max-width:1240px; margin:20px auto; padding:18px 22px; display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid #33463c; border-radius:12px; background:#17271f; }.ops-funnel div { display:grid; gap:5px; }.ops-funnel small,.ops-funnel span { color:#84938a; font-size:9px; }.ops-funnel strong { color:#eff5f0; font:700 24px/1 Georgia,serif; }.ops-funnel i { color:#607068; font-style:normal; }
.readiness { max-width:1240px; margin:0 auto 20px; padding:18px 22px; border:1px solid #6b3d36; border-radius:12px; background:#2a1b18; }.readiness.ready { border-color:#3e674f; background:#17271f; }.readiness header { display:flex; justify-content:space-between; margin-bottom:13px; font-size:11px; letter-spacing:.08em; }.readiness header span { color:#99a69f; }.readiness>div { display:flex; gap:8px; flex-wrap:wrap; }.readiness>div span { padding:6px 8px; border-radius:5px; font-size:9px; }.readiness .pass { color:#bfe8ca; background:#23402f; }.readiness .fail { color:#ffc3b8; background:#482921; }
@keyframes pulse { 50% { opacity:.35; transform:scale(.75); } }
.public-faq { max-width:1060px; margin:20px auto 100px; padding:46px 28px 0; display:grid; grid-template-columns:.72fr 1.28fr; gap:80px; border-top:1px solid #aeb9b2; }
.faq-list details { padding:20px 0; border-bottom:1px solid #c7d0ca; }.faq-list details:first-child { padding-top:0; }
.faq-list summary { cursor:pointer; font:700 18px/1.45 Georgia,"Noto Serif Thai",serif; }.faq-list summary::marker { color:var(--green); }
.faq-list p { max-width:620px; margin:13px 0 0; color:#5e6d64; font-size:12px; line-height:1.8; }
.marketing-footer { max-width:1240px; margin:auto; padding:28px; display:flex; gap:22px; justify-content:space-between; border-top:1px solid #cbd2cd; color:#536159; font-size:10px; }.marketing-footer nav { display:flex; gap:14px; flex-wrap:wrap; }.marketing-footer a,.checkout-card>small a,.consent a { color:inherit; text-underline-offset:3px; }
.analytics-consent { position:fixed; z-index:1000; right:22px; bottom:22px; width:min(560px,calc(100vw - 44px)); padding:20px; display:grid; grid-template-columns:1fr auto; gap:18px; align-items:end; color:#f4f1e9; background:rgba(18,29,23,.97); border:1px solid rgba(198,255,62,.38); box-shadow:0 24px 70px rgba(8,16,12,.3); backdrop-filter:blur(16px); }.analytics-consent[hidden] { display:none; }.analytics-consent strong { font-size:16px; }.analytics-consent p { margin:6px 0 0; color:#bdc8c0; font-size:12px; line-height:1.65; }.analytics-consent-actions { display:flex; gap:8px; }.analytics-consent button { min-height:42px; padding:0 14px; border:1px solid #718078; color:#edf3ef; background:transparent; font:600 12px/1 Sarabun,sans-serif; cursor:pointer; }.analytics-consent button:last-child { border-color:var(--acid); color:#17271f; background:var(--acid); }
.privacy-page { max-width:760px; margin:auto; padding:80px 24px; line-height:1.8; }.privacy-page a { color:var(--green); }.privacy-page h1 { margin:36px 0 24px; font:700 40px/1.1 Georgia,"Noto Serif Thai",serif; }.privacy-page h2 { margin:38px 0 8px; font:700 24px/1.25 Georgia,"Noto Serif Thai",serif; }.privacy-page p { color:#536159; }.privacy-page small { color:#77827b; }
.guide-page { min-height:100vh; background:var(--paper); }.guide-hero { max-width:1000px; margin:auto; padding:92px 28px 62px; }.guide-hero h1,.guide-article>h1 { max-width:900px; margin:0 0 24px; font:700 clamp(42px,6vw,72px)/1 Georgia,"Noto Serif Thai",serif; letter-spacing:-.04em; }.guide-hero>p:last-child,.guide-intro { max-width:760px; color:#607068; font-size:17px; line-height:1.8; }.guide-grid { max-width:1180px; margin:0 auto 100px; padding:0 28px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.guide-grid>a { min-height:260px; padding:26px; display:flex; flex-direction:column; border:1px solid #ccd4cf; border-radius:12px; color:var(--ink); background:#fff; text-decoration:none; }.guide-grid small { color:#728078; font-size:9px; font-weight:800; letter-spacing:.1em; }.guide-grid h2 { margin:42px 0 12px; font:700 25px/1.2 Georgia,"Noto Serif Thai",serif; }.guide-grid p { color:#68756e; font-size:11px; line-height:1.7; }.guide-grid span { margin-top:auto; color:var(--green); font-size:11px; font-weight:900; }.official-note { max-width:900px; margin:0 auto 100px; padding:36px; border:1px solid #b9c9bf; border-radius:12px; background:#e8f0ea; }.official-note h2 { font:700 28px/1.2 Georgia,"Noto Serif Thai",serif; }.official-note p { color:#56675e; line-height:1.75; }.official-note div { display:flex; gap:20px; flex-wrap:wrap; }.official-note a,.guide-source a { color:var(--green); font-size:11px; font-weight:800; }.guide-article { max-width:900px; margin:auto; padding:90px 28px; }.guide-warning { margin:38px 0; padding:20px 22px; display:grid; gap:6px; border-left:4px solid #c58a22; background:#fff5dd; }.guide-warning strong { font-size:12px; }.guide-warning span { color:#725c35; font-size:11px; line-height:1.7; }.checklist { margin:60px 0; padding:0; list-style:none; }.checklist li { padding:30px 0; display:grid; grid-template-columns:60px 1fr; gap:24px; border-top:1px solid #cbd3ce; }.checklist li>span { color:#aabbaf; font:700 42px/1 Georgia,serif; }.checklist h2 { margin:0 0 9px; font:700 25px/1.2 Georgia,"Noto Serif Thai",serif; }.checklist p { color:#59675f; line-height:1.75; }.checklist small { display:block; padding:10px 12px; color:#355b47; background:#e2ede6; font-size:10px; line-height:1.6; }.guide-cta { margin:70px 0 36px; padding:32px; display:flex; align-items:center; justify-content:space-between; gap:30px; border-radius:14px; color:#eef4ef; background:#17271f; }.guide-cta h2 { margin:0 0 8px; font:700 28px/1.2 Georgia,"Noto Serif Thai",serif; }.guide-cta p { margin:0; color:#aab8b0; font-size:11px; line-height:1.7; }.guide-cta .hero-cta { flex:none; }.guide-source { color:#6d7871; font-size:10px; line-height:1.7; }
.guide-breadcrumb { margin:0 0 24px; display:flex; align-items:center; gap:9px; color:#748078; font-size:10px; font-weight:700; letter-spacing:.03em; }.guide-breadcrumb a { color:#355b47; text-decoration:none; }.guide-breadcrumb a:hover { text-decoration:underline; }
.sample-hero { max-width:1240px; margin:auto; padding:76px 28px 64px; display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:88px; }
.sample-hero-copy h1 { max-width:700px; margin:0 0 22px; font:700 clamp(46px,6vw,78px)/.96 Georgia,"Noto Serif Thai",serif; letter-spacing:-.05em; }
.sample-hero-copy>p:not(.eyebrow) { max-width:610px; margin-bottom:26px; color:#5f6b64; font-size:16px; line-height:1.7; }
.sample-context { padding:27px; border:1px solid #3b5146; border-radius:14px; color:#eef4ef; background:#17271f; box-shadow:18px 22px 0 var(--acid); }
.sample-context>strong { color:var(--acid); font:700 22px/1.2 Georgia,"Noto Serif Thai",serif; }.sample-context>p { margin:10px 0 25px; color:#b2c0b7; font-size:11px; line-height:1.7; }
.sample-context dl { margin:0; }.sample-context dl>div { padding:13px 0; display:grid; grid-template-columns:92px 1fr; gap:12px; border-top:1px solid #35483f; }.sample-context dt { color:#8fa097; font-size:9px; }.sample-context dd { margin:0; font-size:11px; line-height:1.55; }
.sample-overview { max-width:1100px; margin:50px auto 0; padding:52px 28px 0; border-top:1px solid #cbd2cd; }.sample-heading h2 { max-width:650px; margin:0; font:700 38px/1.15 Georgia,"Noto Serif Thai",serif; }.sample-heading>p { max-width:610px; margin:18px 0 0; color:#66736b; font-size:11px; line-height:1.75; }
.sample-scoreboard { margin:34px 0 24px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #ccd4cf; border-radius:12px; background:#fff; overflow:hidden; }.sample-scoreboard article { min-height:102px; padding:19px; display:grid; align-content:space-between; border-right:1px solid #e0e5e2; }.sample-scoreboard article:last-child { border:0; }.sample-scoreboard strong { font:700 31px/1 Georgia,serif; }.sample-scoreboard span { color:#6d7971; font-size:10px; }
.sample-matrix { max-width:1100px; margin:0 auto 70px; padding:0 28px; }.sample-row { display:grid; grid-template-columns:155px 1fr 130px; gap:28px; padding:26px 0; border-top:1px solid #cbd3ce; }.sample-row-meta { display:flex; align-content:flex-start; align-items:flex-start; gap:7px; flex-wrap:wrap; }.sample-row-meta b,.sample-row-meta>span:not(.risk-type) { color:#6c7870; font-size:9px; }.sample-row-main small { color:#6b776f; font-size:9px; font-weight:800; }.sample-row-main h3 { margin:7px 0 10px; font-size:14px; line-height:1.55; }.sample-row-main blockquote { margin:0; padding-left:13px; border-left:2px solid #b3c0b7; color:#657169; font-size:11px; line-height:1.7; }.sample-confidence { display:grid; align-content:start; justify-items:end; gap:5px; text-align:right; }.sample-confidence>span { color:#748078; font-size:9px; }.sample-confidence strong { font:700 25px/1 Georgia,serif; }.sample-confidence small { max-width:115px; color:#818a84; font-size:8px; line-height:1.45; }.risk-type.ok { color:#24633f; background:#dff2e6; }
.sample-explainer { max-width:1044px; margin:0 auto 76px; padding:38px; display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; border-radius:14px; color:#eef4ef; background:#17271f; }.sample-explainer h2 { margin:0 0 12px; font:700 31px/1.15 Georgia,"Noto Serif Thai",serif; }.sample-explainer p { margin:0; color:#adbbb2; font-size:11px; line-height:1.75; }.sample-explainer dl { margin:0; }.sample-explainer dl>div { padding:13px 0; display:grid; grid-template-columns:120px 1fr; gap:16px; border-top:1px solid #35483f; }.sample-explainer dt { color:var(--acid); font-size:10px; font-weight:800; }.sample-explainer dd { margin:0; color:#c2cec6; font-size:10px; line-height:1.6; }
.quotation-page { min-height:100vh; padding:32px 20px 80px; color:#1d2822; background:#e7ebe7; }.quotation-toolbar { max-width:900px; margin:0 auto 18px; display:flex; align-items:center; justify-content:space-between; }.quotation-toolbar .marketing-brand { color:#1d2822; text-decoration:none; }.quotation-toolbar button { padding:10px 15px; border:1px solid #526159; border-radius:8px; color:#fff; background:#17271f; font-weight:800; white-space:nowrap; cursor:pointer; }.quotation-toolbar button:active { transform:translateY(1px); }
.quotation-sheet { max-width:900px; min-height:1120px; margin:auto; padding:58px 64px; border:1px solid #cbd3ce; border-radius:12px; background:#fff; box-shadow:0 18px 50px #27352d18; }.quotation-header { padding-bottom:28px; display:grid; grid-template-columns:1fr auto; gap:40px; border-bottom:3px solid #17271f; }.quotation-header p { margin:0 0 8px; color:#526159; font-size:10px; font-weight:900; letter-spacing:.13em; }.quotation-header h1 { margin:0; font:700 42px/1.1 Georgia,"Noto Serif Thai",serif; }.quotation-header>div>span { color:#77847d; font-size:11px; letter-spacing:.18em; }.quotation-header dl { min-width:245px; margin:0; }.quotation-header dl>div { padding:4px 0; display:grid; grid-template-columns:72px 1fr; gap:12px; }.quotation-header dt { color:#748078; font-size:10px; }.quotation-header dd { margin:0; font-size:11px; font-weight:800; text-align:right; }
.quotation-expired { margin:20px 0 0; padding:12px 14px; border-left:4px solid #a8332e; color:#7b302c; background:#fff0ee; font-size:11px; }.quotation-parties { padding:34px 0; display:grid; grid-template-columns:1fr 1fr; gap:48px; }.quotation-parties h2,.quotation-terms h2 { margin:0 0 9px; color:#68756e; font-size:10px; letter-spacing:.12em; }.quotation-parties strong { display:block; margin-bottom:8px; font-size:14px; }.quotation-parties p { margin:5px 0 0; color:#536159; font-size:10px; line-height:1.65; }
.quotation-items { border-top:1px solid #bfc9c2; border-bottom:1px solid #bfc9c2; }.quotation-item-head,.quotation-item { display:grid; grid-template-columns:1fr 100px 130px; gap:20px; align-items:start; }.quotation-item-head { padding:10px 12px; color:#eaf0eb; background:#17271f; font-size:9px; font-weight:800; }.quotation-item-head span:not(:first-child) { text-align:right; }.quotation-item { padding:24px 12px; }.quotation-item>div strong { font-size:14px; }.quotation-item p { max-width:500px; margin:7px 0 0; color:#647169; font-size:10px; line-height:1.65; }.quotation-item>span,.quotation-item>strong { font-size:11px; text-align:right; }
.quotation-totals { padding:24px 0 32px; display:grid; grid-template-columns:1fr 330px; }.quotation-totals dl { grid-column:2; margin:0; }.quotation-totals dl>div { padding:6px 0; display:flex; justify-content:space-between; gap:24px; color:#536159; font-size:11px; }.quotation-totals dd { margin:0; font-weight:800; }.quotation-totals .quotation-grand-total { margin-top:6px; padding-top:14px; border-top:2px solid #17271f; color:#17271f; font-size:15px; }.quotation-terms { padding:26px 0; border-top:1px solid #cbd3ce; }.quotation-terms ol { margin:0; padding-left:20px; color:#56645c; font-size:10px; line-height:1.9; }.quotation-footer { margin-top:62px; padding-top:20px; display:flex; justify-content:space-between; border-top:1px solid #cbd3ce; color:#68756e; font-size:10px; }.quotation-state { max-width:560px; margin:20vh auto; padding:34px; border:1px solid #cbd3ce; border-radius:12px; background:#fff; }.quotation-state strong { font-size:22px; }.quotation-state p { margin:10px 0 0; color:#68756e; }
/* Modern Thai typography and restrained cinematic motion. Sarabun's generous
   line box keeps Thai marks clear even when headings use tight visual rhythm. */
body,button,input,select,textarea { font-family:var(--font-ui); }
body :is(h1,h2,h3,strong,summary),.checklist li>span { font-family:var(--font-ui)!important; }
h1,h2,h3,summary { overflow:visible; line-height:1.18!important; letter-spacing:-.022em!important; text-wrap:balance; }
p,li,blockquote,label,small { text-wrap:pretty; }
.hero,.editorial,.pricing-grid { perspective:1200px; }
.hero-copy,.risk-card,.editorial-image,.editorial-panel,.pricing-grid article,.snapshot>div,.lead-form { backface-visibility:hidden; transform-style:preserve-3d; }
.hero-cta,.secondary-cta,.pricing-grid a,.lead-submit,.quote-button,.quotation-ready { transition:transform .26s cubic-bezier(.16,1,.3,1),box-shadow .26s ease,background-color .26s ease,color .26s ease; }
.hero-cta:hover,.pricing-grid a:hover,.lead-submit:hover:not(:disabled),.quotation-ready:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgb(31 68 49 / .16); }
.secondary-cta:hover,.quote-button:hover:not(:disabled) { transform:translateY(-2px); }
.risk-card { transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s ease; }
.risk-card:hover { transform:rotateX(1.5deg) rotateY(-2deg) translateY(-5px); box-shadow:24px 28px 0 color-mix(in srgb,var(--acid) 82%,transparent); }
.pricing-heading { grid-template-columns:1fr; gap:14px; }
.pricing-heading>p { max-width:65ch; }
.pricing-grid { grid-template-columns:.84fr 1.08fr .94fr 1.02fr; align-items:stretch; }

@media (prefers-reduced-motion:no-preference) {
    .hero-copy { animation:torready-copy-in .85s cubic-bezier(.16,1,.3,1) both; }
    .risk-card { animation:torready-card-in 1.05s .12s cubic-bezier(.16,1,.3,1) both; }
    .proof-strip span { animation:torready-proof-in .65s cubic-bezier(.16,1,.3,1) both; }
    .proof-strip span:nth-child(2) { animation-delay:.07s; }
    .proof-strip span:nth-child(3) { animation-delay:.14s; }
    .proof-strip span:nth-child(4) { animation-delay:.21s; }
}

@supports (animation-timeline:view()) {
    @media (prefers-reduced-motion:no-preference) {
        .editorial-image {
            animation:torready-depth-image 1ms linear both;
            animation-timeline:view();
            animation-range:entry 0% cover 48%;
            transform-origin:50% 20%;
        }
        .editorial-panel {
            animation:torready-depth-panel 1ms linear both;
            animation-timeline:view();
            animation-range:entry 5% cover 52%;
        }
        .pricing-grid article {
            animation:torready-scroll-card 1ms linear both;
            animation-timeline:view();
            animation-range:entry 0% cover 32%;
        }
        .pricing-grid article:nth-child(2) { animation-range:entry 8% cover 38%; }
        .pricing-grid article:nth-child(3) { animation-range:entry 16% cover 44%; }
        .pricing-grid article:nth-child(4) { animation-range:entry 24% cover 50%; }
        .snapshot>div,.lead-form {
            animation:torready-scroll-rise 1ms linear both;
            animation-timeline:view();
            animation-range:entry 0% cover 34%;
        }
    }
}

@keyframes torready-copy-in { from { opacity:0; transform:translate3d(0,28px,0); } to { opacity:1; transform:none; } }
@keyframes torready-card-in { from { opacity:0; transform:translate3d(34px,24px,-120px) rotateY(-7deg) rotateX(4deg); } to { opacity:1; transform:none; } }
@keyframes torready-proof-in { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@keyframes torready-depth-image { from { opacity:.62; transform:translate3d(0,70px,-150px) rotateX(8deg) scale(.94); } to { opacity:1; transform:none; } }
@keyframes torready-depth-panel { from { opacity:0; transform:translate3d(32px,64px,70px) rotateY(-6deg); } to { opacity:1; transform:none; } }
/* Scroll reveals animate depth only. Fading a container also fades its text and
   background, so off-screen pricing and form content audits at ~1.0 contrast. */
@keyframes torready-scroll-card { from { transform:translate3d(0,54px,-90px) rotateX(7deg); } to { transform:none; } }
@keyframes torready-scroll-rise { from { transform:translate3d(0,40px,-50px); } to { transform:none; } }

@media (max-width:1100px) and (min-width:801px) { .pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:800px) { .hero { grid-template-columns:1fr; gap:48px; padding-top:54px; }.risk-card { box-shadow:10px 12px 0 var(--acid); }.pricing-heading,.public-faq { grid-template-columns:1fr; gap:28px; }.pricing-grid { grid-template-columns:1fr; }.pricing-grid article { min-height:330px; }.snapshot { grid-template-columns:1fr; gap:35px; }.proof-strip { grid-template-columns:1fr 1fr; }.proof-strip span:nth-child(2) { border-right:0; }.proof-strip span:nth-child(-n+2) { border-bottom:1px solid #cbd2cd; } }
@media (max-width:800px) { .start-assurance { margin:-34px 28px 58px; padding:24px 0; grid-template-columns:1fr; gap:20px; }.start-assurance-facts { grid-template-columns:1fr; gap:10px; }.start-assurance-facts a { grid-column:1; margin-top:5px; } }
@media (max-width:900px) { .editorial { padding:48px 18px 0; }.editorial-panel { position:static; width:auto; margin-top:-1px; padding:26px 22px; border-bottom:1px solid var(--line); } }
@media (max-width:900px) { .ops-kpis { grid-template-columns:1fr 1fr; }.ops-kpis article { border-bottom:1px solid #33463c; }.ops-grid { grid-template-columns:1fr; } }
@media (max-width:900px) { .ops-funnel { overflow-x:auto; }.ops-funnel div { min-width:78px; } }
@media (max-width:800px) { .guide-grid { grid-template-columns:1fr 1fr; }.guide-cta { align-items:flex-start; flex-direction:column; } }
@media (max-width:800px) { .sample-hero { grid-template-columns:1fr; gap:48px; padding-top:54px; }.sample-context { box-shadow:10px 12px 0 var(--acid); }.sample-scoreboard { grid-template-columns:1fr 1fr; }.sample-scoreboard article:nth-child(2) { border-right:0; }.sample-scoreboard article:nth-child(-n+2) { border-bottom:1px solid #e0e5e2; }.sample-row { grid-template-columns:130px 1fr; }.sample-confidence { grid-column:2; justify-items:start; text-align:left; }.sample-explainer { grid-template-columns:1fr; gap:28px; margin-left:28px; margin-right:28px; } }
@media (max-width:520px) { .hero { padding-left:18px; padding-right:18px; }.hero h1 { font-size:45px; }.public-pricing,.public-faq { padding-left:18px; padding-right:18px; }.pricing-grid article { padding:26px 22px; }.pricing-note { text-align:left; line-height:1.6; }.lead-form { grid-template-columns:1fr; }.lead-form label,.lead-submit,.lead-form .consent,.lead-form .tor-file,.form-error,.validation-summary-errors { grid-column:1; }.lead-form .tor-file>span { align-items:flex-start; flex-direction:column; gap:3px; }.marketing-footer { flex-direction:column; }.proof-strip { margin:0 18px; }.report-heading { align-items:flex-start; flex-direction:column; }.report-heading h2 { font-size:30px; }.checkout-card { grid-template-columns:1fr; }.checkout-card form,.checkout-card>.lead-submit,.checkout-card>.quote-button,.checkout-card>.quotation-ready,.checkout-card>small,.checkout-card>.form-error,.billing-profile,.payment-plans { grid-column:1; }.payment-plans label { grid-template-columns:18px 1fr; }.payment-plans span,.payment-plans small { grid-column:2; text-align:left; }.billing-profile { grid-template-columns:1fr; }.billing-profile label,.billing-profile .billing-toggle,.billing-profile .billing-address,.billing-profile .billing-hint { grid-column:1; }.credit-redemption { grid-template-columns:1fr; }.credit-redemption .form-error { grid-column:1; }.credit-balance { align-items:flex-start; flex-direction:column; }.payment-status-page { padding:20px; }.payment-status-card { padding:28px; }.payment-status-card h1 { font-size:34px; } }
@media (max-width:520px) { .start-assurance { margin-left:18px; margin-right:18px; }.start-assurance strong { font-size:17px; } }
@media (max-width:700px) { .quotation-page { padding:18px 10px 40px; }.quotation-toolbar { padding:0 8px; }.quotation-toolbar button { padding:9px 11px; font-size:12px; }.quotation-sheet { min-height:0; padding:34px 24px; }.quotation-header { grid-template-columns:1fr; gap:22px; }.quotation-header dl { min-width:0; }.quotation-header dl>div { grid-template-columns:68px minmax(0,1fr); }.quotation-header dd { font-size:10px; white-space:nowrap; }.quotation-parties { grid-template-columns:1fr; gap:26px; }.quotation-item-head { display:none; }.quotation-item { grid-template-columns:1fr auto; gap:12px; }.quotation-item>div { grid-column:1 / 3; }.quotation-item>span { text-align:left; }.quotation-item>strong { text-align:right; }.quotation-totals { grid-template-columns:1fr; }.quotation-totals dl { grid-column:1; }.quotation-footer { align-items:flex-start; flex-direction:column; gap:6px; } }
@media (max-width:520px) { .guide-grid { grid-template-columns:1fr; }.guide-hero,.guide-article { padding-left:18px; padding-right:18px; }.guide-grid { padding:0 18px; }.guide-article>h1 { font-size:42px; }.checklist li { grid-template-columns:42px 1fr; gap:14px; }.checklist li>span { font-size:32px; } }
@media (max-width:520px) { .analytics-consent { right:12px; bottom:12px; width:calc(100vw - 24px); grid-template-columns:1fr; }.analytics-consent-actions { display:grid; grid-template-columns:1fr 1fr; }.analytics-consent button { padding:0 9px; } }
@media (max-width:520px) { .sample-hero,.sample-overview,.sample-matrix { padding-left:18px; padding-right:18px; }.sample-hero-copy h1 { font-size:44px; }.sample-scoreboard { grid-template-columns:1fr 1fr; }.sample-row { grid-template-columns:1fr; gap:12px; }.sample-row-meta,.sample-confidence { grid-column:1; justify-items:start; text-align:left; }.sample-explainer { margin-left:18px; margin-right:18px; padding:26px; }.sample-explainer dl>div { grid-template-columns:1fr; gap:5px; } }
@media print { @page { size:A4; margin:12mm; } body { background:#fff; }.quotation-page { padding:0; background:#fff; -webkit-print-color-adjust:exact; print-color-adjust:exact; }.quotation-toolbar { display:none; }.quotation-sheet { max-width:none; min-height:0; padding:0; border:0; border-radius:0; box-shadow:none; }.quotation-item,.quotation-totals,.quotation-terms { break-inside:avoid; }.quotation-expired { border:1px solid #a8332e; } }

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
