:root{--maroon: #551e1b;--maroon-dark: #3d1513;--maroon-tint: #f5efee;--grey: #d2d3d4;--grey-soft: #eceded;--ink: #1d1a19;--ink-soft: #5d5856;--white: #fff;--danger: #8a2d24;--radius: 4px;--shadow: 0 1px 3px rgba(29, 26, 25, .12)}*{box-sizing:border-box}body{margin:0;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--grey-soft);font-size:15px;line-height:1.5}h1,h2,h3,.serif{font-family:Cinzel,Times New Roman,Georgia,serif;font-weight:600;letter-spacing:.02em;margin:0 0 .5rem}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:1rem}a{color:var(--maroon)}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{background:var(--maroon);color:var(--white);padding:.6rem 1.25rem;display:flex;align-items:center;gap:1rem}.topbar .brand{font-family:Cinzel,serif;font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;color:var(--white);text-decoration:none;display:flex;align-items:center;gap:.6rem}.topbar .brand img{height:30px;width:auto;display:block}.topbar .spacer{flex:1}.topbar .who{font-size:.85rem;opacity:.9}.topbar .role-chip{background:#ffffff29;border-radius:999px;padding:.1rem .6rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin-left:.4rem}.topbar nav{display:flex;gap:.25rem}.topbar nav a{color:var(--white);text-decoration:none;padding:.3rem .7rem;border-radius:var(--radius);font-size:.9rem;opacity:.85}.topbar nav a:hover{background:#ffffff1f;opacity:1}.topbar nav a.active{background:#fff3;opacity:1}main{flex:1;padding:1.5rem;max-width:1100px;width:100%;margin:0 auto}.card{background:var(--white);border:1px solid var(--grey);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.25rem;margin-bottom:1.1rem}.card>h2:first-child,.card>h3:first-child{margin-top:0}.muted{color:var(--ink-soft)}.small{font-size:.85rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}button,.btn{font:inherit;background:var(--maroon);color:var(--white);border:1px solid var(--maroon);border-radius:var(--radius);padding:.45rem 1rem;cursor:pointer}button:hover{background:var(--maroon-dark)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--white);color:var(--maroon);border-color:var(--grey)}button.secondary:hover{background:var(--maroon-tint)}button.link{background:none;border:none;color:var(--maroon);text-decoration:underline;padding:0;cursor:pointer}input,select,textarea{font:inherit;padding:.45rem .6rem;border:1px solid var(--grey);border-radius:var(--radius);background:var(--white);color:var(--ink)}input:focus,select:focus{outline:2px solid var(--maroon);outline-offset:-1px}label{display:block;font-size:.82rem;color:var(--ink-soft);margin-bottom:.2rem}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;padding:.42rem .6rem;border-bottom:1px solid var(--grey)}th{font-family:Cinzel,serif;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--maroon);border-bottom:2px solid var(--maroon);white-space:nowrap}tbody tr:hover{background:var(--maroon-tint)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto}.tabs{display:flex;gap:.2rem;border-bottom:2px solid var(--grey);margin-bottom:1.1rem;flex-wrap:wrap}.tabs a{padding:.5rem .95rem;text-decoration:none;color:var(--ink-soft);border-bottom:3px solid transparent;margin-bottom:-2px;font-size:.92rem}.tabs a:hover{color:var(--maroon)}.tabs a.active{color:var(--maroon);border-bottom-color:var(--maroon);font-weight:600}.field-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.9rem 1.4rem}.field .k{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.field .v{font-size:.98rem}.notice{border-left:3px solid var(--maroon);background:var(--maroon-tint);padding:.7rem .9rem;border-radius:0 var(--radius) var(--radius) 0;margin-bottom:1rem}.notice.error{border-left-color:var(--danger);background:#fbf0ee}.badge{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;padding:.12rem .5rem;border-radius:999px;background:var(--grey-soft);border:1px solid var(--grey);color:var(--ink-soft)}.badge.on{background:var(--maroon);border-color:var(--maroon);color:var(--white)}.signin-wrap{min-height:100vh;display:grid;place-items:center;background:var(--maroon);padding:1.5rem}.signin{background:var(--white);border-radius:var(--radius);padding:2.25rem 2rem;max-width:380px;width:100%;text-align:center;box-shadow:0 6px 24px #00000038}.signin img.logo{max-height:72px;margin-bottom:1rem}.signin h1{color:var(--maroon)}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.6rem;background:var(--white);color:var(--ink);border:1px solid var(--grey);padding:.6rem 1rem;font-size:.95rem}.google-btn:hover{background:var(--grey-soft)}.dev-panel{margin-top:1.5rem;padding-top:1rem;border-top:1px dashed var(--grey);text-align:left}.dev-panel .tag{background:#8a2d24;color:#fff;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;padding:.1rem .45rem;border-radius:3px}.print-only,.tp-doc{display:none}.tp-probe{position:absolute;left:-10000px;top:0;width:7.3in;visibility:hidden}.tp-doc,.tp-probe{font-family:"Source Sans 3",-apple-system,sans-serif;font-size:11pt;color:#1d1a19;background:#fff}.tp-page{width:8.5in;height:11in;padding:.55in .6in;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.tp-header{flex:none}.tp-head-row{display:flex;align-items:center;gap:.28in}.tp-logo{width:.9in;flex:none}.tp-logo img{width:100%;height:auto;display:block}.tp-head-text h1{font-family:Cinzel,Times New Roman,serif;font-size:15pt;font-weight:700;letter-spacing:.02em;color:#551e1b;margin:0 0 2pt}.tp-school{font-size:9pt;color:#3d3a39;line-height:1.35}.tp-rule{height:2.5pt;background:#551e1b;margin:7pt 0 6pt}.tp-reissue{font-size:8.5pt;font-style:italic;color:#3d3a39;margin-bottom:5pt}.tp-student{display:flex;flex-wrap:wrap;gap:0 .3in;font-size:9.5pt;margin-bottom:9pt}.tp-exit{font-size:9.5pt;margin:-3pt 0 9pt}.tp-signature{margin-top:14pt;break-inside:avoid}.tp-siglines{display:flex;gap:.55in;font-size:9.5pt;align-items:baseline;margin-bottom:4pt}.tp-rule-line{display:inline-block;width:2.6in;border-bottom:.75pt solid #1d1a19;margin-left:4pt}.tp-rule-short{width:1.3in}.tp-body{flex:1 1 auto;min-height:0}.tp-section{margin-bottom:9pt}.tp-section h2{font-family:Cinzel,Times New Roman,serif;font-size:10.5pt;color:#551e1b;margin:0 0 3pt}.tp-section table{width:100%;border-collapse:collapse;font-size:9.5pt}.tp-section th{font-family:Cinzel,Times New Roman,serif;font-size:8pt;text-transform:uppercase;letter-spacing:.04em;color:#551e1b;border-bottom:1pt solid #551e1b;text-align:left;padding:2pt 4pt;white-space:nowrap}.tp-section td{border-bottom:.4pt solid #d2d3d4;padding:2.2pt 4pt}.tp-section tbody tr:hover{background:none}.tp-section .num{text-align:right;font-variant-numeric:tabular-nums}.tp-summary{break-inside:avoid}.tp-summary .tp-cum td{border-top:1pt solid #551e1b;border-bottom:1pt solid #551e1b;font-weight:700}.tp-xfer{font-size:7.5pt;color:#3d3a39;font-style:italic}.tp-cumfig{width:auto;margin-top:5pt;border-collapse:collapse}.tp-cumfig td{border:none;padding:1.5pt 10pt 1.5pt 0;font-size:9.5pt}.tp-cumfig td:first-child{font-weight:700}.tp-note{font-size:7.5pt;color:#3d3a39;margin:3pt 0 0;line-height:1.35}.tp-footer{flex:none;border-top:.75pt solid #551e1b;padding-top:4pt;display:flex;justify-content:space-between;font-size:8pt;color:#3d3a39}@media print{@page{size:Letter portrait;margin:0}html,body{background:#fff;margin:0;padding:0;font-size:11pt}.app{display:block;min-height:0}main{display:block;padding:0;max-width:none;flex:none}.topbar,.tabs,.no-print,button{display:none!important}.print-only{display:block}.card{border:none;box-shadow:none;padding:0;margin:0 0 .6rem}table{font-size:10pt}thead{display:table-header-group}tr{break-inside:avoid}tbody tr:hover{background:none}td,th{padding:.18rem .35rem}.tp-doc{display:block}.tp-probe{display:none}.tp-page{break-after:page}.tp-page:last-child{break-after:auto}.tp-head-text h1,.tp-rule,.tp-section h2,.tp-section th,.tp-section td,.tp-footer,.tp-logo img{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
