
body.registration-layout,html.registration-layout body{--reg-primary:#176459;--reg-accent:#176459;--reg-ink:#243d37;--reg-muted:#65776f;background:#f5f7f4}
.registration-layout .wrapper{background:#f5f7f4}.reg-nav-top{background:linear-gradient(115deg,#123f39,#176459 65%,#56a493)}.reg-nav-menu{background:#f0f5ef;border-color:#dce6dc}.reg-nav-menu a{color:#426458}.reg-brand-mark{background:#ffffff1a;color:#f4e6b8;border-color:#ffffff30}.reg-brand small{color:#d6e9df}.reg-nav-badge,.reg-badge{background:#f0e3ba;color:#68552b}.reg-hero{background:linear-gradient(120deg,#e7f1e9,#fafbf7 65%,#f7f0dc);border-color:#dbe5d8}.reg-hero h1{color:#176459}.reg-eyebrow{color:#687d64}.reg-hero-icon{background:#fff;color:#176459;border-color:#d6eceb}.reg-help{background:#edf8f7;border-color:#d1eae6;color:#376e72}
.registration-layout .registration-page>.content>.box{border-color:#dfe7de;border-top-color:#56a493;box-shadow:0 12px 40px #153b4208}.registration-layout .form-control{border:1px solid #d7e4e7;border-radius:12px;min-height:46px;background:#fbfdfd}.registration-layout .form-control:focus{border-color:#56a493;box-shadow:0 0 0 4px #56a49320;outline:0}.registration-layout .form-group>.control-label{color:#33575e}.registration-layout .label-success{background:#def6ee;color:#11786c}.registration-layout .box-title{color:#176459}.registration-layout .main-footer{background:linear-gradient(110deg,#e4eddf,#f6f0de);border-color:#56a493;color:#426c70}.registration-layout .btn-warning,.registration-layout .btn-success,.reg-home-btn{background:#176459!important;border-color:#176459!important;color:#fff!important}.registration-layout .table th{background:#e7f5f4;color:#205e63}.registration-layout .direct-chat-text{background:#f1f8f8;border-color:#dcecea;color:#496d72}
.reg-overview{display:flex;align-items:center;gap:18px;padding:20px 24px;margin-bottom:24px;background:#fff;border:1px solid #dfe7de;border-radius:16px}.reg-overview canvas{width:76px!important;height:76px!important}.reg-overview h2{font-size:17px;margin:0 0 5px;color:#176459}.reg-overview p{margin:0;color:#65776f;font-size:13px}.reg-progress-badge{display:inline-block;padding:3px 10px;border-radius:99px;background:#e4f0e7;color:#176459;font-size:12px;margin-top:6px}.reg-file-tools{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.reg-file-tools button{border:1px solid #d6e6e8;background:#f1f8f8;color:#176459;border-radius:9px;padding:7px 12px;cursor:pointer;font:inherit;font-size:12px}.reg-file-tools button:last-child{color:#c03b3b;background:#fff5f5;border-color:#f1dddd}.reg-file-tools button:disabled{opacity:.45;cursor:default}
.reg-document-dialog{width:min(92vw,700px);border:0;padding:24px;border-radius:20px;color:#284a50;box-shadow:0 24px 80px #12383c33}.reg-document-dialog::backdrop{background:#16383c88;backdrop-filter:blur(4px)}.reg-document-dialog h2{font-size:20px;margin:0 0 16px}.reg-document-dialog img{max-height:60vh;object-fit:contain;width:100%}.reg-document-dialog .reg-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.reg-document-dialog button{border:0;border-radius:10px;padding:10px 18px;background:#176459;color:#fff;font:inherit;cursor:pointer}.reg-document-dialog button[data-close]{background:#edf4f5;color:#39656c}
.registration-layout .form-horizontal>.box{content-visibility:auto;contain-intrinsic-size:auto 500px}.reg-image-pending{background:linear-gradient(100deg,#e6eeee 25%,#f6fafa 40%,#e6eeee 60%);background-size:200% 100%;animation:reg-shimmer 1.4s infinite;border-radius:12px;min-height:120px}.reg-file-busy{opacity:.55;pointer-events:none}.reg-processing-spinner{border-color:#e1f0ee;border-top-color:#176459}.reg-processing-card h2{color:#176459}.swal2-popup{font-family:Sarabun,Tahoma,sans-serif!important;border-radius:20px!important}.swal2-confirm{background:#176459!important}.reg-closed{background:#eef8f7;border-color:#d2e9e5}.reg-closed h2{color:#176459}.reg-status-badge{background:#d9f3ee;color:#176459}
@keyframes reg-shimmer{to{background-position:-200% 0}}@media(max-width:767px){.reg-overview{padding:17px;gap:14px}.reg-overview h2{font-size:15px}.reg-document-dialog{padding:20px}.registration-layout .content{width:100%}}@media(prefers-reduced-motion:reduce){.reg-image-pending{animation:none}}

.reg-brand{min-width:0}.reg-brand>div{min-width:0}.reg-brand strong,.reg-brand small{overflow-wrap:anywhere}.reg-nav-actions{flex-shrink:0}.reg-overview>div:last-child{min-width:0}.reg-overview p{overflow-wrap:anywhere}

/* Coordinated forest, sage and champagne palette. */
.reg-nav-top{background:linear-gradient(115deg,#123f39,#176459 70%,#2f7d69)}.reg-nav-menu a.active{background:#176459;box-shadow:0 4px 12px #123f3918}.reg-nav-menu a:hover{color:#176459;background:#fff}.reg-brand-mark{background:#f1dfaa18;border-color:#e7d7a736}.reg-hero-icon{background:#fffaf0;border-color:#e9dfc6;color:#8b7340}.reg-nav-badge{border:1px solid #e0d4ab}.registration-layout .form-horizontal>.box>.box-header{background:#eef4ed;color:#42614b;border-color:#dde6d9}.registration-layout .form-horizontal>.box:nth-of-type(even)>.box-header{background:#faf5e8;color:#77653d}.registration-layout .form-control{color:#294439}.registration-layout .form-control[disabled]{background:#eff2ec;color:#65766b}.registration-layout input[type=file]{background:#f7faf5;border-color:#bdcdbb;color:#4b6658}.registration-layout input[type=file]::file-selector-button{background:#e3ede1;color:#355b43}.registration-layout .form-group:has(>label h3),.registration-layout .form-group:has(>label h2){background:#faf5e8;border-color:#e9dfc7}.registration-layout .form-group h2,.registration-layout .form-group h3{color:#75613b}.registration-layout .label-danger{background:#f8ead1;color:#78582d}.registration-layout .btn-danger{background:#fff1ee;color:#a64a3d;border-color:#edd3cc}.registration-layout .box-tools .btn-box-tool{color:#176459;background:#e8f1e7}.registration-layout .input-group-addon{background:#edf3e9;color:#577156;border-color:#dbe5d6}.reg-help{background:#f6f1e3;border-color:#e8dec3;color:#756240}.reg-progress-badge{background:#e3efe5;color:#275b43}.reg-file-tools button{background:#f0f5ee;color:#375d47;border-color:#d8e3d5}.reg-closed-icon{background:#f2e5c5;border-color:#e2d4ae;color:#8c733d}.reg-status-badge{background:#e4eedf;color:#41623e}
/* Stack supporting documents and their previews beneath the document selector. */
.registration-layout #my_radio_edu{display:block;width:100%;clear:both}
.registration-layout #my_radio_edu>.control-label{display:block;float:none;width:100%;max-width:none;padding:0;margin-bottom:10px}
.registration-layout #my_radio_edu>div[class*='col-']{display:block;float:none;width:100%;max-width:100%;margin:0 0 20px;padding:0}
.registration-layout #my_radio_edu>.form-group{width:100%;clear:both;margin:0;padding:20px 20px 12px;background:#f7faf5;border:1px solid #dce6d8;border-radius:14px 14px 0 0}
.registration-layout #my_radio_edu>.form-group>.control-label{display:block;float:none;width:100%;max-width:none;margin:0 0 10px;padding:0;text-align:left}
.registration-layout #my_radio_edu>.form-group>div[class*='col-']{display:block;float:none;width:100%;max-width:none;padding:0;margin:0}
.registration-layout #my_radio_edu>#p3,.registration-layout #my_radio_edu>#p4,.registration-layout #my_radio_edu>#p5{padding:0 20px 20px;margin-bottom:20px;border-top:0;border-radius:0 0 14px 14px}
.registration-layout #my_radio_edu>#p3>.control-label,.registration-layout #my_radio_edu>#p4>.control-label,.registration-layout #my_radio_edu>#p5>.control-label{display:none}
.registration-layout #my_radio_edu img[id^=preview]{display:block;max-width:100%;height:auto!important;object-fit:contain;margin:0;border-radius:10px}
@media(max-width:767px){.registration-layout #my_radio_edu>.form-group{padding:16px 14px 8px}.registration-layout #my_radio_edu>#p3,.registration-layout #my_radio_edu>#p4,.registration-layout #my_radio_edu>#p5{padding:0 14px 16px}}
/* Center the application submit action on desktop and mobile. */
.registration-layout #togglingForm1>.form-group:has(button[name='data_submit']){display:flex;justify-content:center}
.registration-layout #togglingForm1>.form-group:has(button[name='data_submit'])>div[class*='col-']{flex:0 1 auto;float:none;width:auto;max-width:100%;margin-left:0;padding:0;text-align:center}
.registration-layout #togglingForm1 button[name='data_submit']{display:inline-flex;align-items:center;justify-content:center;min-width:180px;width:auto;max-width:100%;margin:0 auto}

.registration-layout #togglingForm1 .reg-submit-row{display:flex!important;justify-content:center!important;align-items:center;width:100%;clear:both}
.registration-layout #togglingForm1 .reg-submit-row>div[class*='col-']{flex:0 0 auto!important;width:auto!important;float:none!important;margin:0!important;padding:0!important;text-align:center!important}
.registration-layout #togglingForm1 .reg-submit-row button{margin:0 auto!important}
.registration-layout .reg-field-hint{display:block;font-size:12px;color:#a64a3d;margin-top:6px}.registration-layout input[aria-invalid='true']{border-color:#c15c50}
.registration-layout .reg-field-hint[hidden]{display:none}
/* Stronger section colors while retaining readable form fields. */
.registration-layout .registration-page>.content>.box{border-color:#a9c3b5;border-top-color:#176459;box-shadow:0 12px 32px #123f3912}
.registration-layout .box.box-solid>.box-header{background:#174e43;color:#fff;border-color:#174e43}
.registration-layout .box.box-solid>.box-header .box-title{color:#fff}
.registration-layout .form-horizontal>.box{border:1px solid #9fbcab;border-radius:14px;overflow:hidden;background:#edf4ee}
.registration-layout .form-horizontal>.box>.box-header{background:#275e49;color:#fff;border-color:#275e49}
.registration-layout .form-horizontal>.box:nth-of-type(even)>.box-header{background:#786339;color:#fff;border-color:#786339}
.registration-layout .form-horizontal>.box>.box-header .box-title{color:#fff}
.registration-layout .form-horizontal>.box>.box-body{background:#e6efe5}
.reg-hero{background:linear-gradient(120deg,#c6dfcb,#dce9d6 65%,#e9dcb9);border-color:#97b99e}
.reg-hero h1{color:#174d3e}.reg-hero p,.reg-eyebrow{color:#415f45}
.reg-overview{background:#d8e8da;border-color:#9dbda5}.reg-overview p{color:#45604e}
.reg-progress-badge{background:#b5d5bd;color:#214e35}
.reg-help{background:#e9dcb9;border-color:#baa572;color:#5f4c26}
.registration-layout #my_radio_edu>.form-group{background:#d4e4d4;border-color:#98b59d}
.registration-layout #my_radio_edu input[type=file]{background:#f1f6ee;border-color:#87a48b;color:#314f39}
.registration-layout input[type=file]::file-selector-button{background:#b9d0b5;color:#24462e}
.registration-layout .form-group:has(>label h3),.registration-layout .form-group:has(>label h2){background:#e7d7af;border-color:#b59e65}
.registration-layout .form-group h2,.registration-layout .form-group h3{color:#5e4920}
.registration-layout .label-success{background:#b6d6bf;color:#245439}.registration-layout .label-danger{background:#ebd29f;color:#674a1c}
.registration-layout .direct-chat-text{background:#dbe8d8;border-color:#a5bda3;color:#3d5943}
.registration-layout .table th{background:#2c614d;color:#fff}.registration-layout .table{border-color:#a7bfaf}
.reg-nav-menu{background:#c9ddcb;border-color:#9cbaa1}.reg-nav-menu a{color:#315d3d}
.registration-layout .main-footer{background:linear-gradient(110deg,#b5ceb4,#dbc99d);border-color:#638669;color:#354e35}

.reg-birth-calendar{width:min(94vw,370px);padding:22px;border:1px solid #c4d7c5;border-radius:20px;background:#fff;color:#294f3d;box-shadow:0 24px 80px #123f3933;font-family:Sarabun,Tahoma,sans-serif}.reg-birth-calendar::backdrop{background:#143e3970;backdrop-filter:blur(3px)}.reg-calendar-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.reg-calendar-title button{border:0;background:#edf3e9;border-radius:8px;width:32px;height:32px;font-size:22px;cursor:pointer}.reg-calendar-selects{display:flex;gap:10px;margin-bottom:16px}.reg-calendar-selects select{width:50%;padding:10px;border:1px solid #bfd2bf;border-radius:10px;background:#eff5ed;font:inherit;color:#294f3d}.reg-calendar-week,.reg-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.reg-calendar-week{font-size:12px;color:#69806e;margin-bottom:8px}.reg-calendar-days button{border:0;background:#f2f6ef;color:#294f3d;border-radius:9px;min-height:36px;cursor:pointer;font:inherit;font-size:13px}.reg-calendar-days button:hover,.reg-calendar-days button.selected{background:#176459;color:#fff}.reg-calendar-days button:disabled{opacity:.3;cursor:default}.reg-calendar-days button:focus-visible{outline:3px solid #bb9e56;outline-offset:1px}.registration-layout input[aria-haspopup=dialog]{cursor:pointer}
/* Gradient section headers. */
.registration-layout .box.box-solid>.box-header{background:linear-gradient(115deg,#123f39 0%,#176459 58%,#3f876b 100%);border-color:#235e4d;color:#fff}
.registration-layout .form-horizontal>.box>.box-header{background:linear-gradient(115deg,#194635 0%,#2b6950 60%,#548c68 100%);border-color:#2b6950;color:#fff}
.registration-layout .form-horizontal>.box:nth-of-type(even)>.box-header{background:linear-gradient(115deg,#594624 0%,#846a39 58%,#ad9057 100%);border-color:#846a39;color:#fff}
.registration-layout .box.box-solid>.box-header .box-title,.registration-layout .form-horizontal>.box>.box-header .box-title{color:#fff}
.registration-layout .box-header .btn-box-tool{background:#ffffff20;color:#fff;border:1px solid #ffffff30}
/* Soft green and pale yellow section headers. */
.registration-layout .box.box-solid>.box-header{background:linear-gradient(115deg,#dcefdc 0%,#eaf4df 55%,#fff4ce 100%);border-color:#cbdcbd;color:#34573b}
.registration-layout .form-horizontal>.box>.box-header{background:linear-gradient(115deg,#d9edda 0%,#e9f3dd 60%,#f7f4d6 100%);border-color:#cfdfc2;color:#34573b}
.registration-layout .form-horizontal>.box:nth-of-type(even)>.box-header{background:linear-gradient(115deg,#fff0c5 0%,#faf4d7 55%,#e7f1dc 100%);border-color:#e4dcba;color:#65582e}
.registration-layout .box.box-solid>.box-header .box-title,.registration-layout .form-horizontal>.box>.box-header .box-title{color:#34573b}
.registration-layout .form-horizontal>.box:nth-of-type(even)>.box-header .box-title{color:#65582e}
.registration-layout .box-header .btn-box-tool{background:#ffffffb3;color:#47694a;border:1px solid #bed3b7}

html.registration-layout{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:767.98px){
 body.registration-layout,html.registration-layout body{font-size:16px;line-height:1.75}
 .registration-layout .form-control{font-size:16px;min-height:48px;padding:12px 13px}
 .registration-layout .form-group>.control-label{font-size:16px;line-height:1.7}
 .registration-layout .box-title{font-size:18px}.registration-layout .form-group h2,.registration-layout .form-group h3{font-size:16px}
 .reg-nav-menu a{font-size:15px;min-height:46px}.reg-brand strong{font-size:15px}.reg-brand small{font-size:12px}
 .reg-hero h1{font-size:24px}.reg-hero p,.reg-help,.reg-overview p{font-size:15px}.reg-overview h2{font-size:17px}
 .registration-layout input[type=file]{font-size:14px;line-height:1.7}.registration-layout input[type=file]::file-selector-button{font-size:14px;min-height:42px}
 .reg-file-tools button{font-size:14px;min-height:44px}.registration-layout .btn{font-size:16px;min-height:46px}.registration-layout .label,.reg-progress-badge,.reg-status-badge{font-size:14px}
 .registration-layout .direct-chat-text,.registration-layout .table,.reg-closed p,.reg-processing-card p{font-size:15px}.registration-layout .table h2{font-size:16px}
 .reg-field-hint,.registration-layout .main-footer{font-size:14px}
 .reg-calendar-days button{font-size:16px;min-height:40px}.reg-calendar-week{font-size:14px}.reg-document-dialog h2{font-size:21px}
}
