:root{--teal:#15796f;--ink:#202e35;--muted:#829095;--border:#e8edee;--bg:#f5f7f8;--sidebar:248px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-family:'Sarabun','Tahoma',sans-serif;font-size:13px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}svg{height:20px;width:20px;flex-shrink:0}h1,h2,p{margin:0}h1{font-size:29px;letter-spacing:-.8px;line-height:1.4}h2{font-size:16px;letter-spacing:-.25px}small{font-size:11px}.muted{color:var(--muted)}.sidebar{width:var(--sidebar);position:fixed;inset:0 auto 0 0;background:white;border-right:1px solid var(--border);padding:28px 17px 20px;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;align-items:center;font-size:26px;font-weight:750;letter-spacing:-1.2px;padding:0 14px}.brand-icon{width:35px;height:37px;background:var(--teal);color:white;border-radius:10px;display:grid;place-items:center;margin-right:10px}.brand-icon svg{width:24px;height:24px}.brand-dot{color:var(--teal)}.workspace{margin:30px 0 23px;padding:12px 8px;display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:8px;font-size:10px}.workspace strong{font-size:10px}.workspace small{font-size:9px;color:#8e999c;display:block}.workspace>span:last-child{margin-left:auto;color:#99a3a6}.workspace-icon{width:29px;height:29px;background:#eaf3f0;border:1px solid #d9e7e2;display:grid;place-items:center;border-radius:6px;color:var(--teal);font-size:13px;font-weight:bold}.nav-label{font-size:9px;font-weight:700;color:#9ba5ab;letter-spacing:1.2px;margin:21px 12px 11px}.sidebar>.nav-label{margin-top:0}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 13px;font-size:11px;color:#748087;border-radius:6px;margin:3px 0;white-space:nowrap;transition:.15s}.nav-item svg{width:17px;height:17px}.nav-item:hover{background:#f5f8f7;color:var(--teal)}.nav-item.active{background:#e9f3ef;color:#18766b;font-weight:bold}.nav-item b{margin-left:auto;font-size:9px;background:#fbefd8;color:#a37d28;border-radius:4px;padding:0 5px}.sidebar-bottom{margin-top:auto;padding:30px 12px 0;font-size:10px;color:#77898c}.sidebar-bottom small{display:block;font-size:9px;padding-left:13px;color:#a1abad}.online-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#41a890;margin-right:7px;vertical-align:middle}.main{margin-left:var(--sidebar)}.topbar{height:78px;display:flex;align-items:center;gap:13px;padding:0 34px;background:white;border-bottom:1px solid var(--border)}.breadcrumbs{font-size:11px;color:#929da3;white-space:nowrap}.breadcrumbs span{margin:0 13px;color:#c2cacc}.breadcrumbs strong{font-weight:500;color:#5d6c73}.global-search{margin-left:auto;display:flex;align-items:center;gap:9px;width:290px;color:#9ba6aa}.global-search svg{width:17px}.global-search input{border:0!important;background:transparent!important;width:100%;padding:8px 0!important;font-size:10px}.top-divider{height:29px;border-left:1px solid var(--border);margin:0 6px}.avatar{border:3px solid #edf4f0;width:34px;height:34px;background:#dbe9e2;display:grid;place-items:center;border-radius:50%;color:#426757;font-weight:bold;font-size:12px}.user-info strong{font-size:11px}.user-info small{display:block;color:#91a09c;font-size:9px}.icon-button{border:0;background:transparent;color:#9aa6aa;padding:5px;display:flex}.icon-button svg{height:17px;width:17px}.content{padding:30px 34px 0;max-width:1760px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:15px}.eyebrow{font-size:9px;letter-spacing:1.4px;font-weight:700;color:#9aa6ac;margin-bottom:8px}.page-heading p{font-size:11px;margin-top:5px}.heading-actions{display:flex;gap:12px;align-items:center;flex-shrink:0}.date-label{font-size:11px;display:flex;align-items:center;gap:7px;color:#738186;margin-right:6px}.date-label svg{width:15px;height:15px}.button{min-height:37px;padding:9px 15px;border:1px solid #dce4e4;border-radius:6px;background:white;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:600;white-space:nowrap}.button svg{height:15px;width:15px}.button.primary{background:var(--teal);color:white;border-color:var(--teal);box-shadow:0 2px 3px #15796f12}.button:hover{filter:brightness(.96)}.button:disabled{opacity:.4;cursor:not-allowed}.welcome-banner{background:#eaf2ef;border:1px solid #dae9e1;border-radius:10px;padding:29px 30px;display:flex;align-items:center;justify-content:space-between;min-height:192px;overflow:hidden;margin-bottom:24px;position:relative}.banner-label{font-size:8px;letter-spacing:1.4px;font-weight:bold;color:#62887a}.welcome-banner h2{font-size:23px;color:#254c43;margin:10px 0 7px;letter-spacing:-.7px}.welcome-banner p{font-size:11px;color:#759187}.welcome-banner a{display:inline-flex;align-items:center;gap:25px;font-size:10px;color:#277965;font-weight:bold;margin-top:18px}.banner-graphic{width:310px;height:150px;position:relative;margin-right:20px}.graphic-sheet{position:absolute;right:45px;top:4px;background:#fff;border:1px solid #d8e4dd;border-radius:7px;width:172px;height:139px;transform:rotate(8deg);box-shadow:0 10px 20px #486d4f0a;padding:15px}.graphic-sheet.back{transform:rotate(-10deg);right:85px;top:6px;background:#f6faf7}.graphic-logo{font-size:6px;letter-spacing:.6px;display:flex;align-items:center;gap:5px;color:#608377;font-weight:bold}.graphic-logo svg{width:18px;height:18px}.graphic-sheet i{display:block;height:4px;background:#e9efec;width:75%;margin-top:11px;border-radius:3px}.graphic-sheet i:nth-child(3){width:58%}.graphic-sheet i:nth-child(4){width:66%}.graphic-sheet b{font-size:6px;display:flex;justify-content:space-between;margin-top:15px;color:#91a49c}.graphic-sheet b span{color:#519278}.graphic-check{position:absolute;right:17px;top:53px;background:#e7f5eb;border:3px solid #fff;color:#469878;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;font-size:21px}.graphic-bubble{position:absolute;bottom:0;right:3px;background:white;box-shadow:0 4px 20px #55756b12;padding:8px 13px;display:flex;align-items:center;gap:7px;border-radius:5px;color:#4c806e;font-size:8px}.graphic-bubble svg{width:14px;height:14px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.stat{background:white;border:1px solid var(--border);border-radius:9px;padding:18px 19px;transition:box-shadow .2s}.stat:hover{box-shadow:0 3px 18px #263c3610}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7d8a90}.stat-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center}.stat-icon svg{height:17px;width:17px}.teal{color:#4f9888;background:#eff6f2}.amber{color:#bb943d!important;background:#fbf5e7!important}.green{color:#47a886;background:#ecf7f1}.blue{color:#6f97be;background:#edf4fa}.stat-number{font-size:31px;font-weight:650;line-height:1.5;letter-spacing:-1px;margin:4px 0 5px}.stat-number span{font-size:9px;font-weight:400;letter-spacing:0;color:#a3adb0;margin-left:9px}.stat>small{color:#9aa6aa;font-size:10px}.panel{background:white;border:1px solid var(--border);border-radius:9px;overflow:hidden;margin-bottom:23px}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px}.panel-heading{padding:21px 23px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-heading h2{font-size:13px}.panel-heading p{font-size:10px;color:#9aa5aa;margin-top:4px}.subtle-tag{font-size:9px;border:1px solid #e7ecee;background:#fafbfc;padding:4px 9px;border-radius:5px;color:#929da3}.overview-body{display:flex;align-items:center;gap:30px;padding:0 30px 24px;min-height:171px}.donut-wrap{width:158px;height:158px;position:relative;flex-shrink:0}.donut{width:100%;height:100%}.donut-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-label strong{font-size:28px;letter-spacing:-1px}.donut-label small{font-size:8px;color:#9ba5a9}.legend{flex:1;min-width:100px}.legend a{display:flex;align-items:center;gap:8px;font-size:10px;margin:10px 0;color:#879299}.legend strong{margin-left:auto;color:#4b5a62;font-size:10px}.legend-dot{height:6px;width:6px;border-radius:50%}.status-draft{background:#abbac5}.status-checking{background:#e9b95a}.status-approved{background:#19a786}.status-issued{background:#4692cc}.status-closed{background:#7d79bb}.status-cancelled{background:#d78186}.count-pill{display:inline-block;font-size:9px;background:#faf0db;color:#b99448;border-radius:5px;min-width:18px;text-align:center;padding:1px 5px;margin-left:4px;vertical-align:middle}.attention-icon{color:#ccaa61}.attention-icon svg{width:17px;height:17px}.pending-row{display:flex;align-items:center;gap:12px;padding:15px 23px;border-top:1px solid #f0f3f3}.pending-row strong{font-size:11px;font-weight:600}.pending-row small{display:block;color:#95a1a6;font-size:9px;margin-top:3px}.pending-row>span:last-child:not(:first-child){margin-left:auto;color:#9ba9ae}.pending-row:hover{background:#fcfdfd}.panel-bottom-link{display:flex;align-items:center;justify-content:space-between;padding:12px 23px;color:var(--teal);font-size:10px;border-top:1px solid var(--border);margin-top:auto}.approval-panel{display:flex;flex-direction:column}.file-icon{height:33px;width:29px;color:#6f9291;background:#f0f6f4;border:1px solid #e5eeeb;border-radius:5px;display:grid;place-items:center;flex-shrink:0}.file-icon svg{height:17px;width:17px}.text-link{font-size:10px;color:var(--teal);font-weight:600}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#f9fbfb;font-size:8px;letter-spacing:.7px;color:#929fa5;font-weight:600;padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}td{font-size:10px;color:#78878e;padding:16px 18px;border-bottom:1px solid #f0f3f3}th:first-child,td:first-child{padding-left:23px}td strong{display:block;font-size:10px;color:#52616a;font-weight:500}td small{display:block;font-size:9px;color:#a1abb0;margin-top:3px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfd}.doc-link{display:flex;gap:11px;align-items:center}.doc-link strong{color:#354952;font-size:11px;font-weight:600}.revision{font-family:inherit;font-variant-numeric:tabular-nums;font-size:9px;border:1px solid #e6ebed;color:#8a99a0;border-radius:4px;padding:3px 6px;white-space:nowrap}.badge{font-size:9px;border-radius:5px;padding:4px 7px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:#f1f3f5;color:#91a0a9}.badge:before{content:'';height:4px;width:4px;border-radius:50%;background:currentColor}.badge.approved{background:#eaf7ef;color:#3a9e79}.badge.checking{background:#fff5df;color:#bc9343}.badge.issued{background:#edf4fd;color:#5b92c6}.badge.closed{background:#f1effb;color:#9690b5}.badge.cancelled{background:#fbeeee;color:#c3717a}.arrow-link{font-size:18px;color:#adb7ba}.mono{font-family:inherit;font-variant-numeric:tabular-nums;font-size:10px}.table-footer{border-top:1px solid var(--border);display:flex;justify-content:space-between;padding:13px 23px;font-size:9px;color:#a4adb2}footer{display:flex;justify-content:space-between;font-size:9px;color:#a6b0b4;padding:4px 0 23px}footer .online-dot{width:4px;height:4px}.alert{padding:14px 18px;background:#e9f5ed;border:1px solid #d6e9dc;color:#387351;border-radius:7px;margin-bottom:20px;font-size:12px}.alert a{text-decoration:underline}.alert.error{background:#fff0ed;border-color:#f2d2cc;color:#ad594c}.empty{text-align:center;padding:35px;color:#94a1a5;font-size:12px}.filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:16px 23px 23px}.filters label{font-size:10px;min-width:120px;flex:1}.filters .search-label{flex:2;min-width:210px}.filters input,.filters select{font-size:11px}.filters .grow{flex:3}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:500;color:#667b83}input:not([type=hidden]),select,textarea{border:1px solid #dce5e5;background:#fff;border-radius:6px;min-height:39px;padding:9px 11px;color:#354c55;width:100%;max-width:100%}input::placeholder{color:#a4b0b5}input:focus,select:focus,textarea:focus{outline:2px solid #b2d9ce;border-color:#6caf9e}input:disabled,input:read-only{background:#f6f8f8;color:#92a2a6}.form-panel{max-width:960px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px;padding:8px 25px 26px}.span2{grid-column:span 2}.form-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--border);padding-top:20px}.upload{border:1px dashed #c4d9d2;border-radius:8px;background:#f6faf8;padding:22px}.upload small{font-size:10px;color:#849c94;font-weight:400}.upload input{background:white}.details-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:27px}.details-grid small{display:block;color:#9aa7aa;font-size:10px;margin-bottom:7px}.details-grid strong{font-size:12px;font-weight:500}.details-grid p{font-size:12px}.workflow{display:flex;justify-content:space-between;padding:17px 30px;background:#f9fbfa;border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:10px}.workflow span{color:#a9b3b5;font-size:11px}.workflow span:not(:last-child):after{content:'→';margin-left:20px;color:#c4cece}.workflow .current{color:var(--teal);font-weight:bold}.login{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr}.login-art{background:#e6f0eb;padding:60px 12%;display:flex;flex-direction:column;justify-content:center;position:relative}.login-art .brand{position:absolute;top:50px;left:12%;padding:0}.login-art h1{font-size:52px;color:#24574b;line-height:1.15;margin:18px 0 25px;letter-spacing:-2px}.login-art p{color:#709383;font-size:16px;line-height:1.9}.login-flow{margin-top:65px;border-top:1px solid #cddfd5;padding-top:25px;color:#65937c;font-size:11px}.login-form{align-self:center;width:min(360px,80%);margin:60px auto;display:flex;flex-direction:column;gap:21px}.login-form h2{font-size:30px}.login-form .eyebrow{margin:0}.login-form .muted{margin-top:-12px}.login-form .wide{min-height:45px}.login-form>small{margin-top:15px;text-align:center}.login-form input{min-height:45px}.login-form .alert{margin:0}.detail-lower .panel{max-height:360px;overflow:auto}
@media(min-width:1550px){:root{--sidebar:265px}.content{padding:38px 44px 0}.nav-item{font-size:12px;padding:12px 13px}.welcome-banner{min-height:208px}.stat{padding:22px}.overview-body{gap:55px}.donut-wrap{width:175px;height:175px}td{padding-top:19px;padding-bottom:19px}}
@media(max-width:1180px){:root{--sidebar:218px}.content{padding:25px 24px 0}.topbar{padding:0 24px}.nav-item{font-size:10px;gap:9px;padding:10px}.workspace{gap:5px}.workspace strong{font-size:9px}.workspace small{font-size:8px}.global-search{width:220px}.overview-body{gap:15px;padding:0 20px 20px}.donut-wrap{width:130px;height:130px}.stat{padding:14px}.stat-top{font-size:10px}.stats{gap:12px}.banner-graphic{width:250px;margin-right:0}.date-label{display:none}.details-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){:root{--sidebar:72px}.sidebar{padding:24px 8px}.brand{font-size:0;padding:0;justify-content:center}.brand-icon{margin:0}.brand-dot,.workspace,.nav-label,.nav-item span,.nav-item b,.sidebar-bottom{display:none}.sidebar nav{margin-top:25px}.nav-item{justify-content:center;padding:13px 0;margin:5px 0}.nav-item svg{height:20px;width:20px}.overview-grid{grid-template-columns:1fr}.overview-body{justify-content:center;gap:60px}.legend{max-width:210px}.donut-wrap{width:160px;height:160px}.global-search{width:220px}.stats{grid-template-columns:repeat(2,1fr)}.banner-graphic{width:200px;opacity:.8}.welcome-banner{padding:23px}.welcome-banner h2{font-size:21px}.graphic-sheet{right:15px}.graphic-sheet.back{right:45px}.topbar{gap:10px}.breadcrumbs{display:none}.global-search{margin:0 auto 0 0}.login-art h1{font-size:40px}.login-art{padding:55px 10%}.login-art .brand{font-size:25px}.heading-actions{gap:5px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:26px}}
@media(max-width:600px){:root{--sidebar:57px}.content{padding:21px 14px 0}.topbar{height:65px;padding:0 14px}.global-search{width:145px}.global-search input{font-size:9px}.user-info,.top-divider{display:none}.page-heading{align-items:start}.page-heading .eyebrow{font-size:7px}.page-heading h1{font-size:23px}.page-heading p{font-size:9px;max-width:200px}.heading-actions .button{font-size:9px;padding:8px;min-height:33px}.welcome-banner{padding:22px 18px;min-height:185px}.banner-graphic{display:none}.welcome-banner h2{font-size:19px}.welcome-banner p{font-size:10px}.banner-label{font-size:7px}.stats{gap:9px}.stat{padding:12px}.stat-top{font-size:9px;gap:4px}.stat-icon{width:25px;height:25px}.stat-number{font-size:28px}.stat-number span{font-size:8px}.stat>small{font-size:8px}.panel-heading{padding:17px}.panel-heading h2{font-size:12px}.panel-heading p{font-size:9px}.text-link{font-size:8px}.overview-body{gap:20px;padding:0 16px 20px}.donut-wrap{height:140px;width:140px}.pending-row{padding:14px 17px}.pending-row small{font-size:8px}.filters{padding:14px}.form-grid{grid-template-columns:1fr;padding:16px;gap:16px}.form-grid .span2{grid-column:span 1}.details-grid{padding:20px;gap:20px}.workflow{padding:14px;gap:5px}.workflow span{font-size:9px}.workflow span:not(:last-child):after{margin-left:7px}.panel-heading .heading-actions{flex-wrap:wrap;justify-content:end}footer>span:last-child{display:none}.login{display:block}.login-art{padding:90px 10% 35px;min-height:300px}.login-art .brand{top:25px;left:10%}.login-art h1{font-size:35px;margin:10px 0}.login-art p{font-size:12px}.login-flow{display:none}.login-form{margin:35px auto}.login-art .eyebrow{margin:15px 0 0}.table-footer span:last-child{display:none}}

/* Product wordmark */
.brand-name{font-size:18px;line-height:1.1;letter-spacing:-.5px}.brand-icon{flex-shrink:0}.login-art .brand-name{font-size:22px}
@media(max-width:900px){.sidebar .brand-name{display:none}}

/* Language controls are available before and after signing in. */
.language-switcher{display:inline-flex;align-items:center;gap:3px;padding:3px;background:#f1f5f3;border:1px solid #dfe8e3;border-radius:8px;flex-shrink:0}
.language-switcher a{font-size:11px;line-height:1.3;padding:6px 9px;color:#738880;border-radius:5px;white-space:nowrap}
.language-switcher a.selected{background:white;color:var(--teal);font-weight:700;box-shadow:0 1px 4px #284d3e12}
.language-switcher a:hover{color:var(--teal)}
.login{position:relative}.login-language{position:absolute;top:25px;right:28px;z-index:1}
.topbar .global-search{min-width:100px;flex-shrink:1}.topbar .breadcrumbs{min-width:0;overflow:hidden;text-overflow:ellipsis}
html[lang=th] .eyebrow,html[lang=th] .nav-label{letter-spacing:.3px}
html[lang=th] .login-art h1{line-height:1.4;letter-spacing:-1px}
html[lang=th] .badge{font-size:10px}
@media(max-width:1180px){.topbar{gap:9px}.topbar .global-search{width:190px}.topbar .user-info{max-width:100px;overflow:hidden}}
@media(max-width:600px){.topbar{gap:8px}.topbar .global-search{width:auto;min-width:0;flex:1}.topbar .global-search input{min-width:0}.language-switcher a{padding:7px 8px;font-size:10px}.login-language{top:24px;right:18px}.topbar .avatar{display:none}.login-art .brand-name{font-size:19px}}
/* Customer billing */
.billing-banner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;border:1px solid #c6e6dd;border-radius:14px;background:#eaf7f2;margin-bottom:22px}.billing-banner h2{font-size:26px;letter-spacing:-.4px;margin:10px 0}.billing-banner p{color:#517167;margin:0}.billing-cycles{display:flex;gap:10px}.billing-cycles>span{background:#fff;border:1px solid #c6e6dd;border-radius:12px;padding:16px;text-align:center;font-size:26px;font-weight:600;min-width:66px}.billing-cycles small{display:block;font-size:12px;color:#68847a;font-weight:400}.billing-panel{padding:24px;margin-bottom:22px}.billing-panel h2{margin:0 0 12px}.billing-panel h3{margin:6px 0}.billing-panel .panel-heading{padding:0 0 16px;border:0;gap:15px}.billing-panel .form-grid{padding:0}.billing-stat-value{font-size:24px;font-weight:600;margin:12px 0;color:#173e34;overflow-wrap:anywhere}.billing-stats .stat{cursor:default}.billing-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.billing-plan{border:1px solid #e1e9e5;border-radius:12px;padding:20px;min-width:0}.billing-plan h3{font-size:24px;margin:12px 0}.plan-price{font-size:18px;color:#13785d;min-height:28px}.billing-stack{display:grid;gap:12px}.billing-stack .button{justify-self:start}.billing-check{display:flex!important;align-items:center;gap:8px!important;line-height:1.6}.billing-check input{width:16px!important;height:16px!important;flex:0 0 16px;margin:0}.billing-details{margin-top:12px;min-width:160px}.billing-details summary,details.billing-panel>summary{cursor:pointer;color:#187c63;font-weight:500;margin-bottom:12px}.billing-qr{display:block;width:200px;max-width:100%;height:auto;object-fit:contain;margin:16px 0;border:1px solid #e1e9e5;border-radius:8px}.billing-toolbar{display:flex;justify-content:space-between;margin-bottom:18px}.billing-invoice-meta{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:15px 0}.billing-invoice-meta dl,.billing-account{display:grid;grid-template-columns:auto 1fr;gap:12px 24px;margin:0}.billing-invoice-meta dd,.billing-account dd{margin:0;overflow-wrap:anywhere}.billing-invoice-meta dt,.billing-account dt{color:#6b7d76}.billing-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f0f7f4;border-radius:10px;padding:24px;margin:12px 0 20px;gap:16px}.billing-totals strong{display:block;font-size:26px;margin-top:10px;color:#135e49}.billing-two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}.billing-two-col .form-grid{gap:16px}.billing-two-col .panel{min-width:0}.billing-slip{border-top:1px solid #e3ebe7;padding:20px 0}.billing-review{margin-top:20px}.billing-prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.bill-paid,.bill-approved,.bill-posted,.bill-active{background:#e1f4e9;color:#167049}.bill-overdue,.bill-rejected,.bill-reversed{background:#ffebe6;color:#a44733}.bill-pending,.bill-partially-paid,.bill-unpaid{background:#fff3d9;color:#946620}.bill-void,.bill-paused,.bill-cancelled{background:#edf0f2;color:#68707b}
@media(max-width:1200px){.billing-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-two-col{grid-template-columns:1fr}.billing-banner{align-items:flex-start;flex-direction:column}.billing-stat-value{font-size:21px}}
@media(max-width:640px){.billing-plan-grid,.billing-invoice-meta,.billing-totals{grid-template-columns:1fr}.billing-panel{padding:18px}.billing-cycles{gap:6px;width:100%}.billing-cycles>span{flex:1;min-width:0;padding:10px}.billing-banner{padding:22px}.billing-invoice-meta dl,.billing-account{grid-template-columns:1fr;gap:8px}.billing-account dd{margin-bottom:8px}.billing-panel .panel-heading{flex-wrap:wrap}.billing-stats{grid-template-columns:1fr 1fr}}
@media print{.sidebar,.topbar,.page-heading,footer,.no-print,.alert,.language-switcher{display:none!important}.main{margin:0!important}.content{padding:0!important}.billing-panel{box-shadow:none;border:1px solid #ddd;break-inside:avoid}.billing-two-col{display:block}.billing-invoice{margin-top:0}body{background:#fff;font-size:12px}.table-wrap{overflow:visible}.billing-totals strong{font-size:20px}}
.department-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:24px}.department-card{border:1px solid #dfe9e4;border-radius:10px;padding:18px;background:#fbfdfc}.department-card h3{margin:8px 0}.department-card small{color:#61796f}
.billing-check{flex-direction:row!important;justify-content:flex-start}
.file-count{display:flex;flex-direction:column;align-items:center;padding:16px 30px;background:#fff;border:1px solid #c6e6dd;border-radius:12px;color:#246550}.file-count strong{font-size:32px}.file-count span{font-size:13px}.file-link-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:205px;max-width:320px}.file-link-actions .button{font-size:12px;padding:8px 10px;white-space:nowrap}.copy-link-status{color:#257858;font-size:12px;flex-basis:100%}.copy-link-status:empty{display:none}.copy-link-fallback{flex-basis:100%;max-width:100%;font-size:12px}.copy-link-fallback[hidden]{display:none!important}.copy-link-fallback input{width:100%;font-size:12px}.library-table td{vertical-align:top}.library-table td:first-child{min-width:170px;max-width:300px;overflow-wrap:anywhere}.file-notes{white-space:pre-wrap;max-width:300px}.uploaded-file{background:#eef9f3}.document-file-link+.document-file-link{margin-top:10px}.attachment-link-controls{padding:0 24px 18px}.upload input[type=file]{max-width:100%}@media(max-width:700px){.file-count{align-self:stretch;flex-direction:row;justify-content:center;gap:10px;padding:10px}.file-link-actions{min-width:180px}}

.business-card{min-width:0}.business-card h3{overflow-wrap:anywhere}.business-profile-summary{margin:16px 0;display:grid;gap:5px}.business-profile-summary dt{font-size:11px;color:#71877f}.business-profile-summary dd{margin:0 0 10px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.business-card>p{margin-top:20px}

.settings-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;min-height:34px;padding:7px 10px;border:1px solid #dfe8e3;border-radius:7px;background:#f7faf8;color:#517167;font-size:11px;white-space:nowrap}.settings-link svg{width:17px;height:17px}.settings-link:hover,.settings-link[aria-current="page"]{background:#eaf7f2;border-color:#b8dacc;color:#187c63}.settings-link:focus-visible{outline:2px solid #187c63;outline-offset:3px}
@media(max-width:600px){.settings-link{width:34px;padding:7px}.settings-link span{display:none}}

.form-grid [hidden]{display:none!important}

/* Public company registration shares the site's Sarabun typography and account styling. */
.login-register{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--border);font-size:13px}.login-register a,.registration-signin a{color:var(--teal);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.registration-page{min-height:100vh;background:#f6f8f7}.registration-header{max-width:1220px;margin:auto;padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.registration-header .brand{padding:0}.registration-header-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.registration-header-actions .button{font-size:13px}.registration-layout{max-width:1160px;margin:22px auto 40px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;padding:0 30px;align-items:start}.registration-intro{padding:35px 0}.registration-intro>.eyebrow{color:#42786a;letter-spacing:1.2px;font-size:11px}.registration-intro h1{font-size:36px;line-height:1.4;letter-spacing:-.6px;margin:13px 0 18px;color:#204f43}.registration-intro>p{font-size:15px;line-height:1.85;color:#607870}.registration-steps{list-style:none;padding:0;margin:30px 0;display:grid;gap:22px}.registration-steps li{display:flex;gap:14px;align-items:flex-start}.registration-steps li>span{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e0eee7;color:#236a56;font-weight:600}.registration-steps strong{display:block;font-size:15px;margin:2px 0 5px}.registration-steps p{font-size:13px;line-height:1.75;color:#5b7269}.registration-intro .registration-existing{font-size:13px;border-top:1px solid #dce6e0;padding-top:20px}.registration-card{background:white;border:1px solid #e1e8e4;border-radius:14px;padding:30px;box-shadow:0 10px 38px #254b3810;display:grid;gap:14px;min-width:0}.registration-card h2{font-size:26px;line-height:1.5}.registration-card>.eyebrow{margin:0;color:#5a786b;font-size:10px}.registration-card>p{color:#5b706a;font-size:14px;line-height:1.7}.registration-card .alert{margin:0}.registration-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin-top:9px}.registration-form .span2{grid-column:span 2}.registration-form label{display:grid;gap:7px;min-width:0;color:#3b5450;font-size:13px;font-weight:500}.registration-form input{width:100%;min-width:0;min-height:45px;border:1px solid #d7e1dc;border-radius:7px;padding:10px 12px;background:#fff;color:#233830;font-size:15px}.registration-form input:focus{outline:2px solid #8dc7b4;outline-offset:2px}.registration-hint{font-size:12px;color:#5f746b;line-height:1.7;margin-top:-10px}.registration-scope{display:flex;gap:9px;padding:12px;background:#eff6f2;border-radius:7px;color:#426858;font-size:12px;line-height:1.75}.registration-scope svg{margin-top:2px;height:17px;width:17px}.registration-card .wide{min-height:46px;width:100%;font-size:14px;white-space:normal}.registration-signin{padding-top:16px;border-top:1px solid var(--border);text-align:center;color:#657870;font-size:13px}.registration-footer{text-align:center;color:#6f8179;font-size:12px;padding:15px 20px 26px}.registration-success-icon{width:49px;height:49px;display:grid;place-items:center;background:#e7f3ec;color:#22765f;border-radius:50%;margin-bottom:4px}.registration-success-icon svg{width:28px;height:28px}.registration-summary{display:grid;gap:14px;background:#f5f8f6;border-radius:8px;padding:18px;margin:2px 0 6px}.registration-summary dt{font-size:12px;color:#60796d}.registration-summary dd{margin:5px 0 0;font-size:15px;overflow-wrap:anywhere}
@media(max-width:850px){.registration-layout{gap:28px;grid-template-columns:1fr;max-width:640px;margin-top:0}.registration-intro{padding:15px 0 0}.registration-intro h1{font-size:29px}.registration-steps{gap:14px;margin:22px 0}.registration-header{padding:20px 24px}.registration-layout{padding:0 24px}.registration-card{padding:26px}}
@media(max-width:450px){.registration-header{padding:20px 17px;gap:15px}.registration-header .brand{font-size:21px}.registration-header-actions{gap:8px}.registration-layout{padding:0 17px}.registration-form{grid-template-columns:1fr}.registration-form .span2{grid-column:auto}.registration-card{padding:22px 18px}.registration-card h2{font-size:23px}.registration-form input{font-size:16px}.registration-header-actions .button{padding:8px 10px;font-size:12px}}

/* File-library revisions: keep update actions separate from downloads. */
.library-version-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.library-version-actions .button{font-size:11px;padding:7px 9px}.file-version-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.file-current-summary{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:15px 0 20px}.file-current-summary>div{min-width:0}.file-current-summary strong{overflow-wrap:anywhere}.file-current-summary p{margin:8px 0;font-size:13px}.file-version-reason{white-space:pre-wrap;overflow-wrap:anywhere;max-width:360px}.file-latest-label{color:var(--teal);font-weight:600}.library-table .revision{display:inline-flex;margin-top:6px}
@media(max-width:700px){.file-current-summary{align-items:flex-start;flex-direction:column}.file-current-summary .file-link-actions{max-width:100%}.file-version-toolbar .button{flex:1}.file-version-reason{min-width:140px}}

/* Workspace shell: menus live in the left sidebar. */
.workspace-shell{--workspace-sidebar-width:248px;min-height:100vh;display:grid;grid-template-columns:var(--workspace-sidebar-width) minmax(0,1fr);grid-template-rows:auto 1fr}
.workspace-sidebar{grid-column:1;grid-row:1 / span 2;position:sticky;top:0;align-self:start;height:100vh;height:100dvh;overflow-y:auto;padding:30px 20px;background:#fff;border-right:1px solid var(--border)}
.workspace-sidebar .brand{padding:0 8px;gap:10px;justify-content:flex-start;min-width:0}
.workspace-sidebar .brand-icon{margin:0}
.workspace-sidebar .brand-name{font-size:19px;line-height:1.15;letter-spacing:-.3px}
.workspace-nav-label{margin:40px 12px 12px;font-size:10px;letter-spacing:1.3px;font-weight:600;color:#9aa6ac}
.workspace-navigation{display:flex;flex-direction:column;gap:8px}
.workspace-menu-link{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 14px;border-radius:8px;color:#617570;font-size:14px;font-weight:600}
.workspace-menu-link svg{width:19px;height:19px;flex-shrink:0}
.workspace-menu-link:hover{background:#f1f6f4;color:var(--teal)}
.workspace-menu-link[aria-current="page"]{background:#e5efeb;color:var(--teal)}
.workspace-sidebar a:focus-visible,.workspace-header a:focus-visible,.workspace-logout:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.workspace-header{grid-column:2;grid-row:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;padding:16px 32px;background:#fff;border-bottom:1px solid var(--border)}
.workspace-header .breadcrumbs{min-width:0;overflow-wrap:anywhere}
.workspace-utilities,.workspace-account{display:flex;align-items:center;gap:12px;min-width:0}
.workspace-utilities{gap:22px;margin-left:auto}
.workspace-account .avatar{flex-shrink:0}
.workspace-user{max-width:240px;min-width:0}
.workspace-user strong{display:block;font-size:13px;overflow-wrap:anywhere}
.workspace-user small{display:block;font-size:11px;color:#83928d;margin-top:3px}
.workspace-logout{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;background:#fff;border:1px solid var(--border);border-radius:8px;color:#617570;font:inherit;white-space:nowrap;cursor:pointer}
.workspace-logout svg{width:17px;height:17px;flex-shrink:0}
.workspace-logout:hover{background:#f1f6f4;color:var(--teal)}
.workspace-content{grid-column:2;grid-row:2;min-width:0;width:100%;margin:0 auto;display:flex;flex-direction:column;padding-bottom:30px}
.workspace-empty{flex:1;min-height:50vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:48px 20px}
.workspace-empty-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#e5efeb;color:var(--teal);margin-bottom:20px}
.workspace-empty-icon svg{width:32px;height:32px}
.workspace-empty h1{font-size:25px;font-weight:600;line-height:1.5;letter-spacing:0;margin:0 0 8px}
.workspace-empty p{font-size:14px;line-height:1.7;color:#7e908a;margin:0}
@media(max-width:1180px){.workspace-shell{--workspace-sidebar-width:218px}.workspace-header{padding:16px 24px;gap:16px}.workspace-utilities{gap:14px}.workspace-user{max-width:150px}}
@media(max-width:900px){.workspace-shell{--workspace-sidebar-width:76px}.workspace-sidebar{padding:24px 10px}.workspace-sidebar .brand{padding:0;justify-content:center}.workspace-sidebar .brand-name,.workspace-nav-label,.workspace-menu-link span{display:none}.workspace-navigation{margin-top:36px}.workspace-menu-link{justify-content:center;padding:12px 0}.workspace-header .breadcrumbs,.workspace-account .avatar{display:none}.workspace-user{max-width:180px}}
@media(max-width:600px){.workspace-shell{--workspace-sidebar-width:64px}.workspace-sidebar{padding:20px 7px}.workspace-header{padding:12px;min-height:72px}.workspace-utilities{width:100%;gap:8px;justify-content:flex-end;flex-wrap:wrap}.workspace-account{margin-left:auto}.workspace-user{max-width:110px}.workspace-user strong{font-size:12px}.workspace-user small{font-size:10px}.workspace-logout{padding:9px}.workspace-logout span{display:none}.workspace-empty{padding:40px 10px}.workspace-empty h1{font-size:23px}}
@media print{.workspace-shell{display:block}.workspace-sidebar,.workspace-header{display:none}.workspace-content{padding:0}}

/* Account profile pictures are cropped on the server and displayed as circles. */
.profile-avatar-link{display:inline-flex;border-radius:50%;flex-shrink:0}.profile-avatar{overflow:hidden;flex-shrink:0}.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-avatar [hidden]{display:none!important}.workspace-account .profile-avatar-link .avatar{display:grid}.profile-avatar-large{width:88px;height:88px;font-size:30px;border-width:4px}.profile-picture-body{padding:0 25px 25px}.profile-picture-upload{display:flex;align-items:center;gap:24px;margin:5px 0 24px}.profile-picture-preview{flex-shrink:0}.profile-picture-fields{flex:1;min-width:0}.profile-picture-fields .muted{font-size:12px;line-height:1.8;margin-top:10px}.profile-picture-status{font-size:12px;color:var(--teal);margin-top:8px}.profile-picture-status:empty{display:none}.profile-picture-remove{display:flex;justify-content:flex-end;margin-top:12px}.profile-picture-panel{scroll-margin-top:24px}
@media(max-width:600px){.profile-picture-body{padding:0 16px 20px}.profile-picture-upload{align-items:flex-start;flex-direction:column;gap:16px}.profile-picture-fields{width:100%}.profile-avatar-large{width:76px;height:76px}.profile-picture-body .button{white-space:normal}}

/* Settings subsections use ordinary links so reload, back and keyboard navigation work. */
.workspace-menu-link[aria-current="location"]{background:#e5efeb;color:var(--teal)}
.workspace-settings-submenu{display:grid;gap:5px;margin:0 0 0 20px;padding:4px 0 4px 13px;border-left:1px solid var(--border)}
.workspace-settings-link,.settings-section-link{display:flex;align-items:center;gap:9px;min-height:39px;padding:9px 10px;border-radius:7px;font-size:13px;line-height:1.5;color:#617570;font-weight:500}
.workspace-settings-link svg,.settings-section-link svg{width:17px;height:17px;flex-shrink:0}
.workspace-settings-link:hover,.settings-section-link:hover{background:#f1f6f4;color:var(--teal)}
.workspace-settings-link[aria-current="page"],.settings-section-link[aria-current="page"]{background:#e5efeb;color:var(--teal);font-weight:700;box-shadow:inset 3px 0 var(--teal)}
.settings-section-link:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.settings-content{width:100%;max-width:960px;min-width:0}.settings-mobile-nav{display:none}
@media(max-width:900px){.workspace-settings-submenu{margin:4px 0 0;padding:0;border:0;gap:6px}.workspace-settings-link{justify-content:center;padding:10px 0;min-height:40px}.workspace-settings-link span{display:none}.settings-mobile-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.settings-section-link{border:1px solid var(--border);background:#fff;padding:8px 11px;font-size:12px;min-height:40px}.settings-section-link[aria-current="page"]{border-color:var(--teal)}}
@media print{.settings-mobile-nav{display:none}}

/* Complete workspace navigation, including compact-screen labels. */
.workspace-navigation{gap:4px}
.workspace-navigation .workspace-nav-label{margin:22px 12px 6px}
.workspace-menu-link{position:relative}
.workspace-menu-count{margin-left:auto;min-width:22px;padding:1px 6px;border-radius:6px;background:#fbefd8;color:#916917;font-size:11px;text-align:center}
@media screen{[data-theme=dark] .workspace-menu-count{background:#483b22;color:#f4d68c}}
@media(max-width:900px){
 .workspace-navigation{margin-top:20px;gap:8px}
 .workspace-navigation .workspace-nav-label{display:block;font-size:8px;letter-spacing:0;margin:14px 0 0;text-align:center;overflow-wrap:anywhere}
 .workspace-menu-link{flex-direction:column;gap:4px;padding:8px 2px;min-height:56px}
 .workspace-menu-link span{display:block;font-size:9px;line-height:1.4;text-align:center;overflow-wrap:anywhere}
 .workspace-menu-count{position:absolute;top:0;right:0;font-size:9px;min-width:17px;padding:0 4px}
}
.public-home-link{font-size:13px;color:var(--muted,#4c665f);text-decoration:underline;text-underline-offset:3px;margin-right:12px}
