*{margin:0;padding:0;box-sizing:border-box}body{font-family:Times New Roman,Times,serif;font-size:10pt;color:#000;background:#f0f0f0;line-height:1.3}.app-container{display:flex;flex-direction:column;align-items:center;gap:30px;padding:20px}.print-controls{position:fixed;top:20px;right:20px;z-index:100}.print-btn{background:#2563eb;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-family:Arial,sans-serif;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:background .2s}.print-btn:hover{background:#1d4ed8}.transcript-page{width:8.5in;min-height:11in;background:#fff;padding:.4in .5in .3in;box-shadow:0 4px 20px #0000001a;page-break-after:always}.transcript-border{border:2px solid #000;padding:12px 14px 10px;min-height:10.3in;display:flex;flex-direction:column}.header-section{display:flex;align-items:flex-start;justify-content:center;margin-bottom:4px;gap:12px}.header-left{width:60px;flex-shrink:0}.seal-placeholder{width:55px;height:55px;border:1px solid #999;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:7pt;color:#999}.header-center{text-align:center;flex:1}.header-right{width:60px;flex-shrink:0}.header-small{font-size:9pt;margin-bottom:1px}.header-title{font-size:13pt;font-weight:700;letter-spacing:.5px;margin-bottom:1px}.header-subtitle{font-size:10pt;font-weight:700;margin-bottom:1px}.header-tiny{font-size:7.5pt;margin-bottom:0;font-style:italic}.office-title{text-align:center;margin-bottom:6px;border-bottom:1px solid #000;padding-bottom:4px}.office-bold{font-weight:700;font-size:10pt;letter-spacing:1px}.official-title{font-weight:700;font-size:11pt;letter-spacing:1.5px;text-decoration:underline}.student-info{margin-bottom:4px;border-bottom:1px solid #000;padding-bottom:4px}.info-grid{display:flex;gap:20px}.info-left{flex:1.3}.info-right{flex:1}.info-row{display:flex;margin-bottom:1px;font-size:8.5pt;line-height:1.35}.info-label{font-weight:700;min-width:110px;flex-shrink:0;font-size:8pt}.info-right .info-label{min-width:105px}.info-value{border-bottom:1px solid #ccc;flex:1;padding-left:4px;font-size:8.5pt}.info-value-name{font-weight:700;font-size:9pt}.prelim-section{margin-bottom:4px;border-bottom:1px solid #000;padding-bottom:4px}.prelim-header{font-weight:700;font-size:8.5pt;margin-bottom:2px}.prelim-row{display:flex;align-items:baseline;margin-bottom:1px;font-size:8.5pt}.prelim-label{font-weight:700;min-width:75px;font-size:8pt}.prelim-value{flex:1;border-bottom:1px solid #ccc;font-size:8.5pt;padding-left:4px}.prelim-year{margin-left:10px;font-size:8pt;white-space:nowrap}.year-label{font-weight:700}.record-section{flex:1;margin-bottom:4px}.record-table{width:100%;border-collapse:collapse;font-size:8pt}.record-table th{border:1px solid #000;padding:2px 4px;text-align:center;font-weight:700;font-size:7.5pt;background:#f9f9f9}.record-table td{border:1px solid #000;padding:1.5px 4px;font-size:8pt;vertical-align:top}.col-course{width:70px}.col-title{width:auto}.col-year{width:35px}.col-final,.col-final-sub,.col-reexam-sub,.col-credit{width:45px}.grade,.credit{text-align:center}.records-from td{font-size:8pt;padding:3px 4px;background:#fafafa}.formerly{font-style:italic;font-size:7.5pt}.semester-header td{padding:2px 4px;font-size:8pt}.remarks-section{margin-top:4px;margin-bottom:3px;font-size:8.5pt}.grading-section{margin-bottom:3px;font-size:7pt}.grading-text{font-size:6.5pt;line-height:1.3}.credits-section{margin-bottom:6px;font-size:7pt}.credits-text{font-size:6.5pt;line-height:1.3}.footer-section{display:flex;gap:30px;margin-top:auto;padding-top:8px}.footer-left{flex:1}.footer-right{flex:1.2}.footer-item{margin-bottom:4px;font-size:8pt}.cert-label{font-weight:700;font-size:8.5pt;margin-bottom:8px}.signature-block{text-align:center;margin-bottom:10px}.signature-item{margin-top:8px}.signature-line{border-bottom:1px solid #000;width:80%;margin:15px auto 2px}.signatory-name{font-weight:700;font-size:8.5pt;text-align:center}.signatory-title{font-size:7.5pt;font-style:italic;text-align:center}.not-valid{font-weight:700;font-size:8pt;text-align:center;margin-top:6px;font-style:italic}.certified-copy-box{border:2px solid #000;padding:8px 12px;margin-bottom:12px;text-align:center}.certified-copy-title{font-weight:700;font-size:10pt;letter-spacing:1px;margin-bottom:4px}.certified-copy-date{font-size:8.5pt;margin-bottom:4px}@media print{.no-print{display:none!important}body{background:#fff;margin:0;padding:0}.app-container{padding:0;gap:0}.transcript-page{box-shadow:none;margin:0;padding:.4in .5in .3in;width:100%;min-height:auto;height:auto}@page{size:letter portrait;margin:0}}
