:root { color-scheme:light; --navy:#123b62; --dark:#0a2b49; --red:#b3262d; --gold:#c69a42; --ink:#22313f; --muted:#6c7a86; --line:#d9e1e7; --paper:#f2f5f8; font-family:"Microsoft YaHei",Arial,sans-serif; }
*{box-sizing:border-box} body{min-width:320px;margin:0;color:var(--ink);background:var(--paper)} button,input,select,textarea{font:inherit} button,select{cursor:pointer}[hidden]{display:none!important}
.top-strip{height:34px;color:rgba(255,255,255,.82);background:var(--dark);font-size:12px}.top-strip>div{display:flex;align-items:center;justify-content:space-between;width:min(100% - 40px,1120px);height:100%;margin:auto}
.site-header{height:88px;background:#fff;border-bottom:4px solid var(--red)}.header-inner{display:flex;align-items:center;justify-content:space-between;width:min(100% - 40px,1120px);height:100%;margin:auto}.brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none}.brand>img{width:62px;height:62px;object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font:700 24px SimSun,"Microsoft YaHei";letter-spacing:.08em}.brand small{margin-top:5px;color:#7c8792;font-size:9px;letter-spacing:.16em}.teacher-entry{padding:9px 17px;color:var(--navy);font-size:13px;text-decoration:none;border:1px solid #bdcad6}
.page-shell{width:min(100% - 32px,1120px);margin:auto;padding:32px 0 60px}.admin-mode-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:12px 18px;color:#fff;background:#8a5b13;font-size:13px}.admin-mode-bar a{color:#fff}
.form-banner{position:relative;padding:32px 40px;color:#fff;background:linear-gradient(110deg,var(--dark),var(--navy));border-bottom:5px solid var(--gold);overflow:hidden}.form-banner:after{position:absolute;right:45px;top:-30px;width:155px;height:155px;background:url("/logo.png") center/contain no-repeat;opacity:.09;content:""}.form-banner p{margin:0 0 8px;color:#f0d594;font-size:12px;letter-spacing:.1em}.form-banner h1{position:relative;z-index:1;margin:0 0 8px;font:700 30px SimSun,"Microsoft YaHei";letter-spacing:.08em}.form-banner span{font-size:13px;color:rgba(255,255,255,.75)}
#archive-form{background:#fff;border:1px solid var(--line);border-top:0;box-shadow:0 10px 30px rgba(18,59,98,.08)}.form-section{padding:30px 38px;border-bottom:1px solid var(--line)}.section-title{display:flex;align-items:center;gap:13px;margin-bottom:24px}.section-title>b{display:grid;width:38px;height:38px;color:#fff;background:var(--navy);font:700 18px SimSun;border-radius:50%;place-items:center}.section-title h2{margin:0 0 3px;font:700 19px SimSun,"Microsoft YaHei"}.section-title p{margin:0;color:var(--muted);font-size:11px}
.field-grid{display:grid;gap:18px 20px}.four-columns{grid-template-columns:repeat(4,1fr)}.three-columns{grid-template-columns:repeat(3,1fr)}.two-columns{grid-template-columns:repeat(2,1fr)}.span-2{grid-column:span 2}.span-all{grid-column:1/-1}.field-grid label>span{display:block;margin-bottom:7px;color:#425464;font-size:12px;font-weight:600}.field-grid label i{color:var(--red);font-style:normal}.field-grid input,.field-grid select,.field-grid textarea{width:100%;height:43px;padding:0 11px;color:var(--ink);background:#fbfcfd;border:1px solid #cdd7df;border-radius:2px;outline:none}.field-grid textarea{height:76px;padding:10px;resize:vertical}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus{border-color:var(--navy);box-shadow:0 0 0 2px rgba(18,59,98,.08)}
.birth-picker{display:grid;grid-template-columns:1.25fr 1fr;gap:8px}.birth-picker select{color:var(--navy);font-weight:500;background-color:#f8fafc}.birth-picker select:valid{background-color:#fff}
fieldset{margin:24px 0 0;padding:20px;border:1px solid var(--line)}legend{padding:0 8px;color:var(--navy);font-size:13px;font-weight:700}.check-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:20px}.check-grid label{display:flex;align-items:center;gap:7px;font-size:12px}.check-grid input{accent-color:var(--navy)}.compact{padding-top:18px;border-top:1px dashed var(--line)}
.table-wrap{overflow-x:auto;border:1px solid var(--line)}.form-table{width:100%;min-width:760px;border-collapse:collapse;table-layout:fixed}.form-table th{padding:11px;color:#3f5365;font-size:12px;background:#eaf0f5;border:1px solid #d4dde5}.form-table td{padding:7px;border:1px solid #e0e6eb}.form-table input,.form-table select,.form-table textarea{width:100%;height:38px;padding:0 8px;border:1px solid #d5dde4;outline:none}.form-table textarea{height:55px;padding:8px;resize:vertical}.family-table th:first-child{width:70px}.event-table th:first-child{width:60px}.event-table th:nth-child(2){width:180px}.action-column{width:70px}.delete-row{padding:6px 10px;color:#a5282e;font-size:11px;background:#fff;border:1px solid #d9aeb0;cursor:pointer}.delete-row:hover{color:#fff;background:#a5282e}.family-status{margin-top:22px}.add-row{margin-top:12px;padding:8px 14px;color:var(--navy);font-size:12px;background:#fff;border:1px solid #9fb2c3}
.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:24px 38px;background:#f7f9fb}.form-actions>p{flex:1;margin:0;font-size:13px}.form-actions>div{display:flex;gap:8px}.form-actions button{min-height:43px;padding:0 20px;border-radius:2px}.form-actions>div button{color:var(--navy);background:#fff;border:1px solid #9fb2c3}.submit-button{color:#fff;font-weight:600;background:var(--navy);border:1px solid var(--navy)}.submit-button:hover{background:var(--dark)}.error{color:#b3262d}.success{color:#23734d}
dialog{width:min(calc(100% - 30px),420px);padding:38px;text-align:center;border:0;border-top:5px solid var(--red);box-shadow:0 25px 80px rgba(0,20,38,.3)}dialog::backdrop{background:rgba(4,25,43,.55)}.success-icon{display:grid;width:58px;height:58px;margin:0 auto 18px;color:#fff;font-size:28px;background:#2e7b53;border-radius:50%;place-items:center}dialog h2{margin:0 0 10px}dialog p{color:var(--muted);font-size:13px;line-height:1.7}dialog button{margin-top:10px;padding:10px 30px;color:#fff;background:var(--navy);border:0}
footer{display:flex;justify-content:center;gap:18px;padding:22px;color:rgba(255,255,255,.7);background:var(--dark);font-size:11px}footer strong{color:#fff;font:700 13px SimSun}
@media(max-width:850px){.four-columns{grid-template-columns:repeat(2,1fr)}.three-columns{grid-template-columns:repeat(2,1fr)}.check-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.top-strip span,.teacher-entry{display:none}.site-header{height:76px}.brand>img{width:50px;height:50px}.brand strong{font-size:18px}.page-shell{width:min(100% - 20px,1120px);padding:18px 0 40px}.form-banner{padding:25px 20px}.form-banner h1{font-size:25px}.form-section{padding:24px 18px}.four-columns,.three-columns,.two-columns{grid-template-columns:1fr}.span-2,.span-all{grid-column:auto}.check-grid{grid-template-columns:repeat(2,1fr)}.form-actions{align-items:stretch;flex-direction:column;padding:20px 18px}.form-actions>div{display:grid;grid-template-columns:1fr 1fr}.submit-button{height:48px}footer{flex-direction:column;gap:5px;text-align:center}}
