:root{
  --ita-red:#8d171b;
  --ita-red-dark:#6f0d12;
  --ita-deep:#44070c;
  --ita-gold:#f5bd16;
  --ita-cream:#fffaf0;
  --ita-line:#e7cbc4;
  --ita-ink:#21191a;
  --ita-muted:#756a69;
}

.ita-page-hero .wrap,
.ita-directory>.wrap{
  width:min(calc(100% - 48px),1590px);
  max-width:1590px;
  margin-inline:auto;
  padding-inline:0;
}

.ita-page-hero{position:relative;overflow:hidden;padding:54px 0 50px;color:#fff;background:linear-gradient(112deg,#36070a 0%,#701116 56%,#a41f25 100%)}
.ita-page-hero:before,.ita-page-hero:after{content:"";position:absolute;border:1px solid rgba(245,189,22,.2);border-radius:50%;pointer-events:none}
.ita-page-hero:before{width:420px;height:420px;right:-100px;top:-250px}
.ita-page-hero:after{width:260px;height:260px;right:170px;bottom:-210px}
.ita-page-hero .wrap{position:relative;z-index:1}
.ita-breadcrumb{display:flex;align-items:center;gap:9px;margin:0 0 24px;font-size:14px;color:#f0d8d5}
.ita-breadcrumb a{color:#fff;text-decoration:none}
.ita-hero-label{display:inline-flex;margin-bottom:14px;padding:7px 15px;border:1px solid rgba(245,189,22,.55);border-radius:999px;background:rgba(245,189,22,.09);color:#ffd54f;font-size:13px;font-weight:700;letter-spacing:.02em}
.ita-page-hero h1{max-width:900px;margin:0;font:700 clamp(32px,4vw,54px)/1.16 Prompt,Sarabun,sans-serif;color:#fff}
.ita-page-hero p{max-width:890px;margin:17px 0 0;color:#f4e5e2;font-size:17px;line-height:1.8}
.ita-hero-summary{display:inline-flex;align-items:center;gap:12px;margin-top:25px;padding:10px 16px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.08);font-size:14px}
.ita-hero-summary strong{color:#ffd044;font-size:20px}
.ita-hero-summary i{width:1px;height:18px;background:rgba(255,255,255,.25)}

.ita-directory{padding:52px 0 72px;background:linear-gradient(110deg,#fff 0%,#fffdf8 54%,#fff9e7 100%);color:var(--ita-ink)}
.ita-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}
.ita-section-heading>div:first-child{max-width:790px}
.ita-section-heading>div:first-child>span{display:inline-block;margin-bottom:8px;color:var(--ita-red);font-size:14px;font-weight:700}
.ita-section-heading h2{margin:0;font:700 clamp(26px,3vw,38px)/1.25 Prompt,Sarabun,sans-serif}
.ita-section-heading p{margin:12px 0 0;color:var(--ita-muted);font-size:16px;line-height:1.75}
.ita-year-filter{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.ita-year-filter small{width:100%;text-align:right;color:var(--ita-muted)}
.ita-year-filter a{min-width:54px;padding:8px 13px;border:1px solid var(--ita-line);border-radius:9px;background:#fff;color:var(--ita-red);text-align:center;text-decoration:none;font-weight:700}
.ita-year-filter a.is-current,.ita-year-filter a:hover{border-color:var(--ita-red);background:var(--ita-red);color:#fff}

.ita-status-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 34px;border:1px solid var(--ita-line);border-radius:15px;background:#fff;box-shadow:0 14px 35px rgba(70,25,20,.06);overflow:hidden}
.ita-status-grid>div{display:flex;align-items:center;justify-content:center;gap:12px;min-height:80px;padding:16px 24px;border-right:1px solid var(--ita-line)}
.ita-status-grid>div:last-child{border-right:0}
.ita-status-grid strong{color:var(--ita-red);font:700 30px/1 Prompt,Sarabun,sans-serif}
.ita-status-grid span{color:var(--ita-muted);font-weight:600}

.ita-major{margin:0 0 52px;background:transparent}
.ita-major-header{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:32px;color:var(--ita-ink)}
.ita-major-number{display:flex;flex-direction:column;align-items:center;justify-content:center;width:86px;height:104px;border:1px solid #c89017;border-radius:0 0 18px 18px;background:linear-gradient(160deg,#982126 0%,#680a0f 100%);box-shadow:0 12px 24px rgba(104,10,15,.18)}
.ita-major-number small{color:#f8d7d3;font-size:11px}
.ita-major-number b{color:#fff;font-size:36px;line-height:1.1}
.ita-major-header h2{margin:0;color:var(--ita-ink);font:700 clamp(32px,3vw,44px)/1.25 Prompt,Sarabun,sans-serif}
.ita-major-header p{max-width:970px;margin:8px 0 0;color:var(--ita-muted);font-size:17px;line-height:1.65}
.ita-major-progress{padding:10px 16px;border:1px solid #ead394;border-radius:999px;background:#fff4cf;color:var(--ita-red);font-size:13px;font-weight:700;white-space:nowrap}

.ita-subgroup{padding:0 0 34px}
.ita-subgroup+.ita-subgroup{border-top:0}
.ita-subgroup>header{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:9px 0 9px 16px;border-left:4px solid var(--ita-gold)}
.ita-subgroup>header>span{min-width:auto;padding:0;background:transparent;color:var(--ita-red);text-align:left;font-weight:700}
.ita-subgroup h3{margin:0;font:700 21px/1.4 Prompt,Sarabun,sans-serif}

.ita-item-list{display:grid;gap:12px}
.ita-item{position:relative;min-height:92px;padding-left:92px;border:1px solid var(--ita-line);border-radius:12px;background:#fff;box-shadow:0 10px 26px rgba(72,22,18,.07);overflow:hidden}
.ita-item summary{display:grid;grid-template-columns:minmax(0,1fr) 34px 174px;align-items:center;gap:12px;min-height:92px;padding:0 18px 0 22px;cursor:pointer;list-style:none}
.ita-item summary::-webkit-details-marker{display:none}
.ita-item summary:hover{background:linear-gradient(90deg,rgba(255,250,240,.32),rgba(255,246,207,.42))}
.ita-code{position:absolute;inset:0 auto 0 0;display:flex;align-items:center;justify-content:center;width:92px;height:auto;min-height:100%;background:linear-gradient(160deg,#981d22 0%,#700d12 100%);color:#fff;font-size:18px;font-weight:700}
.ita-item-heading{display:flex;align-items:center;gap:20px;min-width:0}
.ita-item-title{font-weight:700;line-height:1.5}
.ita-detail-label{flex:0 0 auto;color:var(--ita-muted);font-size:13px;font-weight:600}
.ita-toggle{display:flex;align-items:center;justify-content:center;color:#b76d69;font-size:25px;transition:.2s transform}
.ita-item[open] .ita-toggle{transform:rotate(180deg)}
.ita-links{display:grid;gap:8px;width:100%}
.ita-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:8px 14px;border:1px solid #e2c7bc;border-radius:10px;background:linear-gradient(120deg,#fff 0%,#fff8dc 100%);color:var(--ita-red);text-decoration:none;font-size:13px;font-weight:700;transition:.18s ease}
.ita-links a:hover{border-color:var(--ita-red);background:var(--ita-red);color:#fff;transform:translateY(-1px)}
.ita-links a b{font-size:17px}
.ita-waiting{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border-radius:9px;background:#f2eeeb;color:#827674;font-size:12px;font-weight:600;text-align:center}
.ita-item-body{padding:0 220px 20px 22px}
.ita-description{padding:17px 20px;border-top:1px solid #eadfd7;background:linear-gradient(100deg,#fffaf0 0%,#fffdf7 100%);color:#625857;line-height:1.75}
.ita-description p{margin:0 0 12px}
.ita-description p:last-child{margin-bottom:0}

.ita-empty{padding:48px;border:1px dashed #d7c5bf;border-radius:17px;background:#fff;text-align:center}
.ita-empty h2{margin-top:0}
.ita-back-row{display:flex;justify-content:center;margin-top:36px}
.ita-back-row a{padding:11px 20px;border:1px solid var(--ita-line);border-radius:10px;background:#fff;color:var(--ita-red);text-decoration:none;font-weight:700}
.ita-back-row a:hover{border-color:var(--ita-red);background:var(--ita-red);color:#fff}

@media(max-width:1000px){
  .ita-major-header{grid-template-columns:76px minmax(0,1fr)}
  .ita-major-number{width:74px;height:86px}
  .ita-major-progress{grid-column:2;justify-self:start}
  .ita-section-heading{align-items:flex-start;flex-direction:column}
  .ita-year-filter{justify-content:flex-start}
  .ita-year-filter small{text-align:left}
  .ita-status-grid>div{flex-direction:column;gap:6px;text-align:center}
  .ita-item{padding-left:78px}
  .ita-code{width:78px}
  .ita-item summary{grid-template-columns:minmax(0,1fr) 30px 150px;padding-right:14px;padding-left:18px}
  .ita-item-body{padding-right:184px;padding-left:18px}
}

@media(max-width:700px){
  .ita-page-hero .wrap,.ita-directory>.wrap{width:calc(100% - 32px)}
  .ita-page-hero{padding:36px 0}
  .ita-page-hero h1{font-size:30px}
  .ita-page-hero p{font-size:15px}
  .ita-hero-summary{display:flex;flex-wrap:wrap}
  .ita-directory{padding:38px 0 50px}
  .ita-status-grid{grid-template-columns:1fr}
  .ita-status-grid>div{flex-direction:row;justify-content:flex-start;min-height:66px;border-right:0;border-bottom:1px solid var(--ita-line)}
  .ita-status-grid>div:last-child{border-bottom:0}
  .ita-major{margin-bottom:40px}
  .ita-major-header{grid-template-columns:60px minmax(0,1fr);gap:14px;margin-bottom:24px}
  .ita-major-number{width:58px;height:72px;border-radius:0 0 12px 12px}
  .ita-major-number b{font-size:27px}
  .ita-major-header h2{font-size:27px}
  .ita-major-header p{font-size:14px}
  .ita-subgroup>header{align-items:flex-start}
  .ita-subgroup h3{font-size:19px}
  .ita-item{min-height:0;padding-left:64px}
  .ita-code{width:64px;font-size:15px}
  .ita-item summary{grid-template-columns:minmax(0,1fr) 24px;gap:8px;min-height:78px;padding:11px 11px 11px 13px}
  .ita-item-heading{display:block}
  .ita-item-title{display:block;font-size:15px}
  .ita-detail-label{display:none}
  .ita-toggle{font-size:21px}
  .ita-links{grid-column:1/-1;display:flex;flex-wrap:wrap;padding-right:1px}
  .ita-links a{flex:1 1 135px;min-height:42px}
  .ita-waiting{width:100%;min-height:38px}
  .ita-item-body{padding:0 11px 13px 13px}
  .ita-description{padding:13px 14px;font-size:14px}
}
