:root{--navy:#0b315f;--blue:#0b57b7;--line:#b9d4f0;--soft:#f3f8fe;--yellow:#ffd447;--ink:#172033}
*{box-sizing:border-box}
body{margin:0;background:#eef4fb;color:var(--ink);font:14px/1.35 Arial,Helvetica,sans-serif;overflow-x:hidden}
button,input,select,textarea{font:inherit}
.prematricula-public-shell{width:min(1180px,calc(100% - 24px));margin:18px auto 38px}
.prematricula-share{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:10px}
.prematricula-share a,.prematricula-share button,.receipt-actions button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-weight:800;padding:9px 13px;text-decoration:none;cursor:pointer}
.prematricula-share details{position:relative}.prematricula-share summary{cursor:pointer;color:var(--navy);font-weight:800}.prematricula-share details img{position:absolute;right:0;top:30px;z-index:3;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff}
.prematricula-card{background:#fff;border:1px solid #d8e6f5;border-radius:18px;box-shadow:0 14px 38px rgba(11,49,95,.1);padding:18px}
.prematricula-header{display:flex;align-items:center;gap:16px;border-bottom:4px solid var(--yellow);padding:0 4px 12px;margin-bottom:12px}
.prematricula-header img{width:62px;height:72px;object-fit:contain}.prematricula-header span{color:var(--blue);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.prematricula-header h1{margin:2px 0;color:var(--navy);font-size:clamp(1.45rem,3vw,2.1rem);line-height:1}.prematricula-header p{margin:3px 0 0;color:#49617b;font-weight:700}
form{display:grid;gap:9px}fieldset{min-width:0;margin:0;border:1px solid #cfdfef;border-radius:12px;padding:9px 10px 10px}legend{padding:0 8px;color:var(--navy);font-weight:900;font-size:.91rem}
.form-grid{display:grid;gap:8px}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}.span-4{grid-column:1/-1}
label{min-width:0;display:grid;gap:4px;color:var(--navy);font-size:.74rem;font-weight:800}input,select,textarea{width:100%;min-width:0;min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:6px 8px;outline:none}textarea{min-height:44px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,87,183,.12)}input[readonly]{background:var(--soft)}
.check-label{display:flex;align-items:center;gap:7px;align-self:end;min-height:34px;padding:6px 8px;border:1px solid #d8e6f5;border-radius:8px;background:var(--soft)}.check-label input{width:18px;min-height:18px;flex:0 0 18px}.declaration{border-color:#e7c02a;background:#fffbeb}.declaration .check-label{background:#fff;border-color:#efd56d;font-size:.82rem}
.submit-prematricula{justify-self:center;min-width:min(100%,320px);border:0;border-radius:10px;background:var(--yellow);color:var(--navy);font-weight:900;padding:13px 20px;cursor:pointer;box-shadow:0 8px 18px rgba(129,99,0,.18)}.submit-prematricula:disabled{opacity:.65;cursor:wait}.form-message{min-height:18px;text-align:center;color:#a11;font-weight:700}.form-message.success{color:#16713b}.spam-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}
.receipt-panel{margin-top:16px}.receipt-actions{display:flex;justify-content:center;gap:8px;margin-bottom:10px}.receipt-actions button:first-child{background:var(--yellow);border-color:var(--yellow)}
.prematricula-receipt-sheet{width:216mm;height:330mm;margin:0 auto;padding:12mm;background:#fff;color:#172033;overflow:hidden;box-shadow:0 15px 40px rgba(15,23,42,.16);font:9pt/1.25 Arial,Helvetica,sans-serif}.receipt-head{display:grid;grid-template-columns:20mm 1fr auto;align-items:center;gap:5mm;border-bottom:3px solid var(--yellow);padding-bottom:4mm}.receipt-head img{width:18mm;height:20mm;object-fit:contain}.receipt-head h1{margin:0;color:var(--navy);font-size:17pt}.receipt-head p,.receipt-head span{margin:1mm 0 0;color:#52677f}.receipt-meta{text-align:right}.receipt-status{display:inline-block;padding:2mm 3mm;border-radius:4mm;background:#e8f2ff;color:var(--blue);font-weight:800}.receipt-section{margin-top:3mm;border:1px solid var(--line);border-radius:3mm;overflow:hidden}.receipt-section h2{margin:0;padding:2mm 3mm;background:var(--navy);color:#fff;font-size:9.5pt}.receipt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.receipt-field{min-height:12mm;padding:2mm 3mm;border-right:1px solid #d9e6f3;border-bottom:1px solid #d9e6f3}.receipt-field.wide{grid-column:span 2}.receipt-field.full{grid-column:1/-1}.receipt-field span{display:block;color:#58708b;font-size:7.2pt;text-transform:uppercase;font-weight:700}.receipt-field b{display:block;margin-top:1mm;color:#172033;font-size:8.6pt;overflow-wrap:anywhere}.receipt-message{margin-top:4mm;padding:3mm;border:1px solid #e6c53f;border-radius:3mm;background:#fff9dd;color:var(--navy);font-weight:800;text-align:center}.receipt-footer{display:flex;justify-content:space-between;margin-top:3mm;padding-top:2mm;border-top:1px solid var(--line);color:#5d6d7e;font-size:7.5pt}
@page{size:216mm 330mm;margin:0}
@media(max-width:900px){.receipt-panel{width:100%;overflow:hidden}.prematricula-receipt-sheet{transform-origin:top left;transform:scale(calc((100vw - 20px) / 816.38));margin-left:0;margin-bottom:calc((330mm * ((100vw - 20px) / 816.38)) - 330mm)}}
@media(max-width:760px){.prematricula-public-shell{width:min(100% - 16px,620px);margin-top:8px}.prematricula-card{padding:11px;border-radius:13px}.cols-4{grid-template-columns:1fr}.span-2,.span-4{grid-column:auto}.prematricula-share{justify-content:space-between;flex-wrap:wrap}.prematricula-header{align-items:flex-start}.prematricula-header img{width:48px;height:58px}}
@media print{body{background:#fff}.no-print,.prematricula-card{display:none!important}.prematricula-public-shell,.receipt-panel{width:auto;margin:0}.prematricula-receipt-sheet{margin:0;box-shadow:none;transform:none!important}}
