:root{--ink:#233e4b;--deep:#173641;--green:#276575;--mint:#e8f0f2;--gold:#b58b4e;--paper:#f4f6f6;--white:#fff;--muted:#687c84;--line:#dce5e8;--radius:18px;--sans:'Noto Sans Thai',Tahoma,sans-serif;--serif:'Noto Serif Thai',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}button:disabled{opacity:.55;cursor:wait}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}a,button,input,select,summary{outline-offset:5px}:focus-visible{outline:3px solid var(--gold)}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.5}h2{font-size:26px}h3{font-size:20px}.shell{max-width:1180px;margin:auto;padding-inline:32px}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link:focus{position:fixed;top:12px;left:12px;z-index:50;background:white;padding:12px}.site-header{background:var(--paper);border-bottom:1px solid #d6e0e4}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:92px}.brand{display:flex;align-items:center;gap:13px;font-weight:700;font-size:24px;line-height:1.4}.brand small{display:block;font-size:9px;letter-spacing:2px;font-weight:600;margin-top:4px}.brand-icon{display:grid;place-items:center;width:48px;height:48px;background:var(--deep);color:#dfbc75;border-radius:13px}.brand-icon svg{width:27px;height:27px}.header-inner nav{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:500}.header-inner nav a:hover{color:var(--green)}.contact-link{border-left:1px solid #ccd4c9;padding-left:30px}.hero{background:var(--deep);color:#f9f7e9;overflow:hidden;position:relative}.hero:after{content:'';position:absolute;right:-140px;top:-270px;width:760px;height:760px;border:1px solid #ffffff08;border-radius:50%;box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff03;pointer-events:none}.hero-inner{display:flex;align-items:center;justify-content:space-between;min-height:448px;padding-top:50px;padding-bottom:90px;gap:56px;position:relative;z-index:1}.eyebrow{display:flex;align-items:center;gap:10px;color:#d7dfca;font-size:13px;font-weight:500;letter-spacing:.3px;margin-bottom:22px}.gold-dot{width:6px;height:6px;display:block;border-radius:50%;background:#ddbd78;box-shadow:0 0 0 5px #ddbd7812}.hero h1{font-family:var(--serif);font-size:clamp(38px,4.3vw,57px);font-weight:500;line-height:1.65;letter-spacing:-1px}.hero h1 span{color:#e2c080}.hero-description{color:#d0ded6;font-size:16px;line-height:1.9;margin-top:18px}.hero-facts{display:flex;align-items:center;gap:20px;margin-top:24px;font-size:12px;color:#cad7cf}.hero-facts b{color:white;font-size:19px;font-weight:600;margin-right:5px}.hero-facts i{height:16px;width:1px;background:#ffffff30}.archive-emblem{width:285px;height:285px;border:1px solid #bb9f6340;padding:13px;border-radius:50%;flex-shrink:0;position:relative;margin-right:20px}.emblem-inner{height:100%;border:1px dashed #bb9f633b;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column}.emblem-inner>svg{width:30px;height:30px;color:#d4b470;margin-bottom:13px}.emblem-inner>span{font-size:11px;letter-spacing:.3px;color:#d6d9bf}.emblem-inner strong{font-family:Georgia,serif;font-weight:400;color:#e1c17d;font-size:76px;line-height:1.25;letter-spacing:3px}.year-line{display:flex;align-items:center;gap:11px;font-size:14px;color:#ede7d5}.year-line i{height:1px;background:#cbb67b50;width:28px}.emblem-inner small{font-size:10px;letter-spacing:1px;color:#9eb6a9;margin-top:15px}.content-shell{position:relative;z-index:2}.search-panel{background:white;border:1px solid #dce5e8;border-radius:var(--radius);padding:30px 34px 22px;margin-top:-44px;box-shadow:0 12px 35px #183c3010;scroll-margin-top:25px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.section-kicker{display:block;font-size:11px;font-weight:600;letter-spacing:1.5px;color:#9d702c;margin-bottom:4px}.range-label{font-size:12px;border:1px solid var(--line);padding:5px 12px;border-radius:50px;color:var(--muted);white-space:nowrap}.search-box{display:flex;align-items:center;border:1.5px solid #bbcec2;border-radius:12px;padding:7px;gap:15px;background:#fff}.search-box>svg{color:#668c7b;margin-left:11px}.search-box:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #27657512}.search-box input{flex:1;min-width:0;border:0;outline:none;background:transparent;padding:10px 0;color:var(--ink);font-size:17px}.search-box input::placeholder{color:#8a958c}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 22px;border-radius:9px;border:1px solid transparent;font-size:15px;font-weight:600;line-height:1.5;min-height:48px;transition:background .15s,transform .15s}.button svg{width:19px;height:19px}.primary{background:var(--green);color:white}.primary:hover{background:#1e4f5e}.secondary{border-color:#cddbd1;background:#fff;color:var(--green)}.secondary:hover{background:#edf4f6}.full{width:100%}.search-options{position:relative;padding-top:13px}.search-options>span{font-size:12px;color:#8a918b;display:inline-block;padding-right:105px}.filters>summary{position:absolute;right:0;top:12px;font-size:13px;font-weight:600;list-style:none}.filters>summary::-webkit-details-marker{display:none}.filters summary span{display:inline-block;font-size:17px;margin-left:5px}.filters[open] summary span{transform:rotate(45deg)}.filter-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr 1.3fr;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.filter-grid label{font-size:12px;color:var(--muted)}.filter-grid select{display:block;width:100%;margin-top:5px;min-height:44px;border:1px solid #d6dfd5;border-radius:7px;background:#f8faf6;color:var(--ink);padding:8px;font-size:13px}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:48px 0;padding-inline:12px}.intro-grid>div{position:relative;padding-left:43px}.step-number{position:absolute;left:0;top:3px;font:italic 23px Georgia,serif;color:#b3bda9}.intro-grid h3{font-size:17px;font-weight:600;margin-bottom:7px}.intro-grid p{font-size:13px;line-height:1.85;color:var(--muted)}.archive-panel{margin:36px 0 50px;border:1px solid #dce3d6;background:#edf1f2;border-radius:var(--radius);padding:25px 30px}.archive-panel>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.archive-panel>summary::-webkit-details-marker{display:none}.summary-title{font-size:23px;font-weight:600}.archive-span{font-family:Georgia,serif;font-size:16px;color:#6e7c67;white-space:nowrap}.archive-span b{display:inline-block;font:23px var(--sans);margin-left:25px;color:#839179}.archive-panel[open] .archive-span b{transform:rotate(45deg)}.year-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:9px;margin-top:24px}.year-grid a{padding:12px 6px;background:#fff9;border:1px solid #e0e4d9;border-radius:9px;text-align:center;transition:background .15s,border-color .15s}.year-grid a:hover{background:white;border-color:var(--green)}.year-grid strong{display:block;font-size:18px;font-weight:500;letter-spacing:.5px}.year-grid span{font-size:9px;color:#85907e}.archive-note{font-size:11px;color:#7a8573;margin-top:18px}.results-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:35px 0 23px}.results-heading h2{font-size:34px;line-height:1.3}.results-heading h2 span{font-size:18px;font-weight:400}.results-heading p{font-size:13px;color:var(--muted);margin-top:8px;overflow-wrap:anywhere}.text-link{font-size:13px;white-space:nowrap}.text-link:hover{text-decoration:underline}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.result-card{background:white;border:1px solid #e0e5dc;padding:23px;border-radius:14px;transition:box-shadow .2s,border-color .2s;display:flex;flex-direction:column;min-width:0}.result-card:hover{border-color:#8aa892;box-shadow:0 7px 24px #234e3810}.card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.grade-badge{background:#e8f0f2;color:#166448;font-size:14px;font-weight:700;border-radius:7px;padding:4px 12px}.grade-badge.ts{background:#fcf0d8;color:#946527}.exam-year{font-size:12px;color:#84917f}.exam-year b{font-weight:500;color:#59705a}.result-card h3{font-size:18px;line-height:1.8;margin-bottom:10px;overflow-wrap:anywhere}.result-card p{font-size:13px;color:#607461;overflow-wrap:anywhere}.result-card .school{color:#8c9687;font-size:12px;margin-top:2px;margin-bottom:20px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:7px;margin-top:auto;padding-top:13px;border-top:1px solid #edf0e8;font-size:11px;color:#8b9586}.card-bottom strong{display:flex;align-items:center;gap:5px;color:var(--green);font-size:12px;font-weight:500}.card-bottom svg{width:16px;height:16px}.pagination{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:28px;font-size:13px}.pagination .button{font-size:12px;padding:10px 18px;min-height:42px}.search-page .hero-inner{min-height:250px;padding-block:35px 72px}.search-page .hero h1{font-size:35px}.search-page .hero h1 br{display:none}.search-page .hero h1 span{margin-left:8px}.search-page .hero-description,.search-page .hero-facts,.search-page .archive-emblem{display:none}.search-page .eyebrow{margin-bottom:10px}.empty-state{text-align:center;padding:60px 25px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-top:30px}.empty-state>svg{width:40px;height:40px;color:#88a18c;margin-bottom:12px}.empty-state p{font-size:14px;color:var(--muted);margin:10px 0 24px}.notice{padding:25px;background:#fff1dd;border:1px solid #e9ca91;border-radius:12px;margin:25px 0}.notice a{text-decoration:underline}
.profile-shell{padding-block:30px 60px}.back-link{display:inline-block;font-size:13px;color:#72816d;margin-bottom:22px}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.profile-main{border:1px solid #dde4d7;border-radius:var(--radius);overflow:hidden;background:white}.person-header{background:var(--deep);padding:34px 36px;color:white;border-bottom:4px solid #c6a460}.person-header .section-kicker{color:#d8bc7d;font-size:11px}.person-header h1{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.8;margin:10px 0 12px;overflow-wrap:anywhere}.person-header p{font-size:13px;color:#bcd1c4;line-height:1.9}.person-header p span{margin-inline:8px;color:#e2c68b}.person-tag{display:inline-block;border:1px solid #c4b17e4d;padding:4px 12px;margin-top:18px;color:#e3c98c;font-size:12px;border-radius:5px}.profile-content{padding:28px 30px}.profile-content h2{font-size:20px}.grade-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:20px 0 32px}.grade-step{background:#f2f3f1;border:1px solid #e7e9e4;color:#a0a79c;text-align:center;padding:16px 4px;border-radius:8px}.grade-step span{display:block;font-size:16px;font-weight:600;line-height:1.6}.grade-step strong{display:block;font-size:11px;margin-top:4px;font-weight:400}.grade-step.achieved{background:var(--mint);border-color:#bed6c6;color:var(--green)}.history-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.selection-hint{font-size:11px;color:#86907d;margin:4px 0 15px}.text-button{background:none;border:0;font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:5px 0;color:var(--green)}.history-list{margin-top:15px}.history-row{display:grid;grid-template-columns:19px 48px minmax(0,1fr);gap:13px;align-items:start;padding:21px 0;border-top:1px solid #eef0ea;cursor:pointer}.history-check{width:17px;height:17px;margin:6px 0 0;accent-color:var(--green)}.history-year{font-family:Georgia,serif;font-size:19px;color:#9ba38c;padding-top:1px}.is-selected .history-year{color:#ad7f32}.history-detail{font-size:13px;min-width:0;overflow-wrap:anywhere}.history-detail>strong{display:block;font-size:18px;font-weight:600;color:var(--ink);margin-bottom:6px}.history-detail small{font-size:11px;font-weight:400;color:#8e9985;margin-left:8px}.history-detail>span{display:block}.muted{color:#87927f;font-size:11px;margin-top:3px}.record-details{border-top:1px solid var(--line);padding-top:15px;margin-top:15px;font-size:12px;color:#7f8c76}.record-details dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}.record-details dd{margin:0;color:var(--ink)}.share-panel{position:sticky;top:24px;border:1px solid #dedfcf;border-radius:var(--radius);padding:28px;background:#edf2f3}.share-symbol{background:#dce7eb;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;color:#728257;margin-bottom:20px}.share-panel h2{font-family:var(--serif);font-size:23px;line-height:1.8;font-weight:500;margin:8px 0 13px}.share-panel>p{font-size:12px;line-height:1.9;color:#7a836c}.mini-preview{margin:24px 0;background:var(--deep);color:#dfc483;padding:22px 17px;border-radius:8px;transform:rotate(-2deg);box-shadow:0 6px 16px #29492716}.mini-preview>span{font-size:7px;letter-spacing:.5px;display:block}.mini-preview>strong{display:block;font-size:15px;font-weight:500;line-height:1.8;color:white;margin-top:12px;overflow-wrap:anywhere}.mini-preview>i{display:block;font-size:9px;font-style:normal;color:#b9cdbb;margin:5px 0 15px}.mini-preview>div{font-size:13px;letter-spacing:1px;border-top:1px solid #b69a5f45;padding-top:10px}.share-panel .button{font-size:13px;margin-top:10px;padding-inline:8px}.facebook-link{display:block;text-align:center;font-size:12px;margin-top:17px;color:#6f7e69;text-decoration:underline;text-underline-offset:3px}.share-panel .share-status{font-size:11px;margin-top:10px;color:var(--green)}dialog{max-width:700px;width:calc(100% - 28px);max-height:92dvh;border:0;border-radius:15px;padding:0;color:var(--ink);box-shadow:0 25px 100px #0004;background:var(--paper)}dialog::backdrop{background:#102c38b3;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:17px 24px;border-bottom:1px solid var(--line);background:white}.dialog-heading h2{font-size:18px}.close-dialog{border:0;background:#f0f3eb;border-radius:50%;width:36px;height:36px;font-size:27px;line-height:1}.image-scroll{max-height:60dvh;overflow:auto;padding:20px}.image-scroll img{width:100%;height:auto;display:block;border-radius:5px;box-shadow:0 3px 20px #0001}.dialog-actions{padding:15px 20px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line)}.dialog-actions span{font-size:11px;color:var(--muted);flex-basis:100%}.dialog-actions .button{font-size:13px}.site-footer{background:#edf1f2;border-top:1px solid #dce2d3;padding:35px 0 20px}.footer-main{display:flex;justify-content:space-between;gap:25px}.footer-brand{font-size:20px;font-weight:600}.footer-brand span{font-size:11px;font-weight:400;color:#87937d;margin-left:9px}.footer-main p{font-size:12px;color:#839078;margin-top:5px}.footer-links{display:flex;align-items:center;gap:22px;font-size:11px;color:#65745b}.footer-links a:hover{text-decoration:underline}.credits{font-size:11px;color:#86907e;margin-top:23px;max-width:750px}.credits p{margin-top:10px;line-height:1.9}.footer-bottom{border-top:1px solid #dbe1d2;margin-top:25px;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#929a88}
.grade-step.achieved{background:#2d6876;border-color:#2d6876;color:#fff}.grade-step.achieved strong{color:#dce6c5}.card-grades{display:flex;gap:4px;margin:0 0 17px}.card-grades span{flex:1;background:#f0f2ec;color:#abb1a5;text-align:center;border-radius:4px;font-size:10px;padding:5px 0}.card-grades .found{background:#2d6876;color:white}.mobile-save{display:none}
@media(max-width:700px){.mobile-save{display:flex;width:100%;margin:-10px 0 28px}}
@media(min-width:1300px){.hero-inner{min-height:470px}}
@media(max-width:960px){.shell{padding-inline:24px}.hero-inner{gap:30px}.hero h1{font-size:44px}.archive-emblem{width:245px;height:245px;margin-right:0}.emblem-inner strong{font-size:60px}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.year-grid{grid-template-columns:repeat(6,1fr)}.profile-layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.person-header{padding:28px}.profile-content{padding:25px}.share-panel{padding:22px}.intro-grid{gap:20px}.footer-main{flex-direction:column}.header-inner nav{gap:20px}}
@media(max-width:700px){.shell{padding-inline:18px}.header-inner{min-height:76px;gap:12px}.brand{font-size:21px;gap:10px}.brand-icon{width:40px;height:40px;border-radius:10px}.brand-icon svg{width:23px;height:23px}.brand small{font-size:7px;letter-spacing:1.5px}.header-inner nav>a:not(:first-child){display:none}.header-inner nav{font-size:11px;gap:0}.hero-inner{min-height:0;padding:35px 23px 75px;gap:0}.hero h1{font-size:38px;line-height:1.7}.eyebrow{font-size:10px;letter-spacing:0;margin-bottom:17px}.hero-description{font-size:13px;margin-top:14px;line-height:1.9}.hero-facts{gap:14px;font-size:10px;margin-top:21px}.hero-facts b{font-size:17px}.archive-emblem{display:none}.search-panel{padding:23px 20px 18px;margin-top:-37px;border-radius:15px}.section-top{margin-bottom:18px;gap:10px}h2{font-size:21px}.section-kicker{font-size:10px;letter-spacing:1px}.range-label{font-size:9px;padding:4px 9px}.search-box{gap:7px;padding:5px;border-radius:9px}.search-box>svg{width:19px;height:19px;margin-left:6px}.search-box input{font-size:15px;padding:8px 0}.search-box .button{padding:11px 13px;min-height:44px;font-size:12px}.search-box .button svg{display:none}.search-options>span{font-size:10px;padding-right:75px}.filters>summary{font-size:11px}.filters summary span{font-size:14px}.filter-grid{grid-template-columns:1fr 1fr;gap:13px;margin-top:16px}.filter-grid select{font-size:12px}.intro-grid{grid-template-columns:1fr;gap:22px;margin:33px 6px}.intro-grid>div{padding-left:44px}.intro-grid h3{font-size:16px;margin-bottom:3px}.intro-grid p{font-size:12px}.intro-grid p br{display:none}.step-number{font-size:24px}.archive-panel{padding:22px 20px;margin:30px 0 35px}.summary-title{font-size:20px}.archive-span{font-size:12px}.archive-span b{margin-left:9px;font-size:19px}.year-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:20px}.year-grid strong{font-size:16px}.year-grid span{font-size:8px}.year-grid a{padding:10px 4px}.archive-note{font-size:10px}.search-page .hero-inner{min-height:0;padding-block:25px 60px}.search-page .hero h1{font-size:25px;line-height:1.8}.search-page .hero h1 br{display:block}.search-page .hero h1 span{margin:0}.search-page .eyebrow{font-size:9px;margin-bottom:8px}.results-heading{margin:28px 0 18px;align-items:flex-end}.results-heading h2{font-size:29px}.results-heading h2 span{font-size:16px}.results-heading p{font-size:11px}.text-link{font-size:11px}.result-grid{grid-template-columns:1fr;gap:13px}.result-card{padding:21px;border-radius:12px}.card-top{margin-bottom:12px}.result-card h3{font-size:18px;line-height:1.8}.result-card .school{margin-bottom:13px}.pagination{gap:15px;font-size:12px}.pagination .button{font-size:11px;padding-inline:12px}.profile-shell{padding-top:22px}.back-link{font-size:12px;margin-bottom:18px}.profile-layout{display:flex;flex-direction:column;gap:20px}.profile-main,.share-panel{width:100%}.person-header{padding:26px 23px}.person-header h1{font-size:25px;line-height:1.85}.person-header p{font-size:12px}.person-tag{font-size:11px;margin-top:15px}.profile-content{padding:24px 20px}.profile-content h2{font-size:19px}.grade-path{gap:7px;margin:18px 0 28px}.grade-step{padding:13px 3px}.grade-step span{font-size:14px}.grade-step strong{font-size:9px}.history-row{gap:9px;grid-template-columns:17px 43px minmax(0,1fr);padding:20px 0}.history-year{font-size:17px;padding-top:3px}.history-detail>strong{font-size:17px}.history-detail small{font-size:10px;margin-left:3px}.history-detail{font-size:12px}.muted{font-size:10px}.selection-hint{font-size:10px}.share-panel{position:static;padding:25px}.share-panel h2{font-size:23px}.share-panel h2 br,.share-panel>p br{display:none}.share-symbol{display:none}.mini-preview{display:none}.share-panel .button{min-height:48px;font-size:14px}.share-panel>p{font-size:12px}.share-panel h2{margin:7px 0}.footer-main{gap:22px}.footer-links{gap:17px;font-size:10px;flex-wrap:wrap}.footer-brand{font-size:19px}.footer-main p{font-size:11px}.footer-bottom{font-size:8px;gap:20px}.footer-bottom span:last-child{text-align:right;max-width:140px;letter-spacing:0}.credits{font-size:10px}.dialog-heading{padding:15px 18px}.dialog-heading h2{font-size:16px}.image-scroll{padding:12px}.dialog-actions{padding:14px}.dialog-actions .button{flex:1;font-size:12px;white-space:nowrap;padding:12px}.empty-state{padding:35px 20px}.empty-state p{font-size:12px}}
@media(max-width:360px){.grade-step span{font-size:11px;white-space:nowrap}.grade-step strong{font-size:8px}.person-header h1{font-size:23px}.search-panel .range-label{font-size:8px;padding:4px 6px}.search-panel h2{font-size:19px}}
/* Readable secondary text, with the existing visual hierarchy retained. */
body{font-size:17px}
.header-inner nav{font-size:16px}
.eyebrow{font-size:15px}
.hero-description{font-size:18px}
.hero-facts{font-size:14px;flex-wrap:wrap}
.emblem-inner>span,.emblem-inner small{font-size:13px}
.section-kicker,.person-header .section-kicker{font-size:13px}
.section-top{flex-wrap:wrap}
.range-label{font-size:13px}
.search-options>span,.filter-grid label{font-size:14px}
.search-options>span{padding-right:115px}
.filters>summary{font-size:15px}
.filter-grid select{font-size:16px;min-width:0}
.intro-grid p,.results-heading p,.result-card p{font-size:15px}
.year-grid span{font-size:12px}
.archive-note{font-size:13px}
.text-link,.exam-year,.result-card .school{font-size:14px}
.result-card h3{font-size:20px}
.card-bottom,.card-bottom strong{font-size:14px}
.card-grades span{font-size:13px}
.pagination,.pagination .button{font-size:15px}
.back-link,.person-tag{font-size:14px}
.person-header p{font-size:15px}
.grade-step strong{font-size:13px}
.selection-hint{font-size:13px}
.text-button{font-size:14px}
.history-detail{font-size:16px}
.history-detail small,.muted{font-size:14px}
.record-details,.share-panel>p{font-size:14px}
.share-panel .button,.dialog-actions .button{font-size:15px}
.facebook-link{font-size:14px}
.share-panel .share-status,.dialog-actions span{font-size:13px}
.footer-main{flex-wrap:wrap;align-items:center}
.footer-main p,.footer-brand span{font-size:14px}
.footer-links{flex-wrap:wrap;gap:12px 22px;font-size:15px}
.footer-links a{padding-block:6px}
.credits{font-size:14px}
.footer-bottom{font-size:12px;flex-wrap:wrap;gap:12px}
@media(max-width:700px){
 .header-inner nav{font-size:14px}
 .eyebrow,.search-page .eyebrow{font-size:13px}
 .hero-description{font-size:16px}
 .hero-facts{font-size:12px;gap:10px}
 .hero-facts b{font-size:18px}
 .range-label,.search-panel .range-label{font-size:12px}
 .search-box input{font-size:16px}
 .search-box .button{font-size:14px}
 .search-options>span{font-size:12px;padding-right:90px}
 .filters>summary{font-size:14px}
 .intro-grid p,.empty-state p{font-size:14px}
 .year-grid span{font-size:11px}
 .results-heading{flex-wrap:wrap}
 .grade-step span{font-size:16px}
 .grade-step strong{font-size:12px}
 .history-detail>strong{line-height:1.8}
 .history-detail small{display:block;margin-left:0;margin-top:2px}
 .footer-main{align-items:flex-start}
 .footer-links{gap:8px 18px}
 .footer-bottom span:last-child{max-width:none;text-align:left}
 .dialog-heading h2{font-size:18px}
 .dialog-actions .button{font-size:14px}
}
@media(max-width:360px){
 .grade-step span{font-size:14px}
 .grade-step strong{font-size:11px}
 .grade-path{gap:5px}
 .year-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .hero-description br{display:none}
 .search-box .button{padding-inline:10px}
 .search-box>svg{display:none}
}
/* Give the grade and its number clear emphasis within each status tile. */
.grade-step{padding:18px 6px;display:flex;flex-direction:column;justify-content:center}
.grade-step span{font-size:26px;font-weight:700;line-height:1.5;white-space:nowrap}
.grade-step strong{font-size:15px;font-weight:500;margin-top:7px}
@media(min-width:701px) and (max-width:960px){
 .grade-path{grid-template-columns:repeat(2,minmax(0,1fr))}
 .grade-step span{font-size:22px}
 .grade-step strong{font-size:14px}
}
@media(max-width:700px){
 .grade-step{padding:17px 3px}
 .grade-step span{font-size:20px}
 .grade-step[data-grade="2"] span{font-size:clamp(16px,calc(8vw - 13px),20px)}
 .grade-step strong{font-size:13px}
}
@media(max-width:360px){
 .grade-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .grade-step span,.grade-step[data-grade="2"] span{font-size:23px}
 .grade-step strong{font-size:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{body{background:white}.site-header,.site-footer,.back-link,.share-panel,.record-details,.text-button,.selection-hint,.history-check{display:none!important}.shell{padding:0}.profile-layout{display:block}.profile-main{border:0}.person-header{color:#233e4b!important;background:white!important}.person-header p{color:#233e4b}.history-row:not(.is-selected){display:none}.history-row{break-inside:avoid}.grade-step.achieved{border:2px solid #276575}.grade-step{print-color-adjust:exact}}

/* Three attainment levels and the longer Dhamma archive title share the original layout. */
.brand{font-size:22px}.brand small{letter-spacing:1.6px}.grade-path{grid-template-columns:repeat(3,minmax(0,1fr))}.grade-step span{font-size:25px}.filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.source-note{margin-top:16px;font-size:13px;line-height:1.8}.source-note a,.credits a,.record-details a{text-decoration:underline;text-underline-offset:3px}.result-card .card-bottom{align-items:flex-start;flex-direction:column;gap:9px}.result-card .card-bottom>span{overflow-wrap:anywhere}.record-details dl{grid-template-columns:135px minmax(0,1fr)}.record-details dd{overflow-wrap:anywhere}.footer-brand{font-size:19px}.grade-path[data-track] .grade-step.achieved{background:linear-gradient(130deg,#DFB18C,#BC855B);border-color:#A76F47;color:#3B2416}.grade-path[data-track] .grade-step[data-grade="2"].achieved{background:linear-gradient(130deg,#EFF2F5,#BBC3CC);border-color:#A6AFBA;color:#2F3A43}.grade-badge[data-grade="1"]{background:linear-gradient(130deg,#DFB18C,#BC855B);color:#3B2416}.grade-badge[data-grade="2"]{background:linear-gradient(130deg,#EFF2F5,#BBC3CC);color:#2F3A43}.grade-badge[data-grade="3"]{background:linear-gradient(130deg,#f0d591,#d9b25d);color:#382c13}.grade-path[data-track] .grade-step.achieved strong{color:#3B2416}.grade-path[data-track] .grade-step[data-grade="2"].achieved strong{color:#2F3A43}.grade-path[data-track] .grade-step[data-grade="3"].achieved{background:linear-gradient(130deg,#f0d591,#d9b25d);border-color:#c9a34c;color:#382c13}.grade-path[data-track] .grade-step[data-grade="3"].achieved strong{color:#4b3a15}
@media(max-width:960px){.brand{font-size:19px}.header-inner nav{gap:18px}.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grade-path{grid-template-columns:repeat(3,minmax(0,1fr))}.grade-step span{font-size:21px}}
@media(max-width:700px){.brand{font-size:17px;gap:9px}.brand-icon{width:34px;height:38px}.brand small{font-size:7px;letter-spacing:1px}.header-inner{gap:8px}.header-inner nav{flex-shrink:0}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grade-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.grade-step span,.grade-step[data-grade="2"] span{font-size:21px}.grade-step strong{font-size:12px}.source-note{font-size:12px}.results-heading h2 span{font-size:14px}.record-details dl{grid-template-columns:110px minmax(0,1fr)}.footer-brand{font-size:17px}}
@media(max-width:360px){.brand{font-size:15px}.brand-icon{display:none}.grade-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.grade-step span,.grade-step[data-grade="2"] span{font-size:19px}.grade-step strong{font-size:11px}.results-heading{gap:9px}}
.import-status{max-width:600px;margin-top:20px;font-size:13px;line-height:1.9;color:#d0ded6}.import-status a,.empty-state a:not(.button){text-decoration:underline;text-underline-offset:3px}.history-notice{margin:14px 0;padding:12px 14px;border-radius:8px;background:#f7f2e5;color:#76603b;font-size:13px;line-height:1.8}@media(max-width:700px){.import-status{font-size:12px;margin-top:17px}.history-notice{font-size:12px}}
.filter-grid.nt-only{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:700px){.filter-grid.nt-only{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* A blue-teal identity distinguishes the Dhamma archive while preserving its familiar layout. */
.hero{background:linear-gradient(118deg,#173641 0%,#1e4858 100%)}.hero-copy{min-width:0}.hero h1{font-size:clamp(36px,4vw,53px)}.hero-description,.import-status{color:#d4e0e6}.eyebrow{color:#d6e1e4}.hero-facts{color:#c7d8e0}.hero-grades{display:flex;gap:9px;margin-top:18px}.hero-grades span{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:5px 16px;border:1px solid #d6b47677;border-radius:7px;font-size:14px;font-weight:500;color:#efdab4;background:#ffffff05}.hero-grades span:nth-child(1){border-color:#A76F47;background:linear-gradient(130deg,#DFB18C,#BC855B);color:#3B2416}.hero-grades span:nth-child(2){border-color:#A6AFBA;background:linear-gradient(130deg,#EFF2F5,#BBC3CC);color:#2F3A43}.hero-grades span:nth-child(3){border-color:#c9a34c;background:linear-gradient(130deg,#f0d591,#d9b25d);color:#382c13}.hero-facts{margin-top:19px}.search-page .hero-grades{display:none}.share-symbol{color:#426675}.site-footer{border-top-color:#d6e0e4}.search-box>svg{color:#63818e}@media(max-width:960px){.hero h1{font-size:42px}}@media(max-width:700px){.hero h1{font-size:34px;line-height:1.65}.hero-grades{gap:7px;margin-top:16px}.hero-grades span{min-width:50px;padding:4px 13px;font-size:13px}.search-page .hero h1{font-size:25px}}

/* Keep the reciprocal exam link available in both desktop and mobile navigation. */
.header-inner nav>a.cross-archive-link{color:var(--green);font-weight:600;white-space:nowrap}@media(max-width:700px){.header-inner{flex-wrap:wrap;row-gap:10px;padding-top:12px;padding-bottom:12px}.header-inner nav{gap:12px;flex-shrink:0;flex-wrap:wrap}.header-inner nav>a.cross-archive-link{display:inline-flex}.header-inner .brand{min-width:0;max-width:100%}}
