:root{--navy:#112d42;--orange:#df7e31;--paper:#f3f7f8;--line:#d5e0e4}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 6vw;background:var(--navy);color:#fff}.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.brand img{width:110px;height:auto}.brand small,.eyebrow{display:block;letter-spacing:.16em;font-size:12px;color:#5b82a0}.topbar nav{display:flex;gap:20px}.topbar nav a{color:#fff;text-decoration:none}.topbar nav .active{color:#ffd18b}body{margin:0;background:var(--paper);font-family:Arial,"Microsoft YaHei",sans-serif;color:var(--navy)}main{max-width:1180px;margin:auto;padding:34px 18px 55px}.hero{display:grid;grid-template-columns:1.7fr 1fr;gap:30px;background:linear-gradient(120deg,#12364e,#1c668a);padding:54px;border-radius:18px;color:#fff}.hero h1{font-size:44px;margin:8px 0}.hero p{max-width:620px;line-height:1.8}.hero aside{align-self:center;background:#ffffff15;border:1px solid #ffffff44;border-radius:14px;padding:24px;display:grid;gap:14px}.hero aside b{font-size:22px}.actions{display:flex;gap:12px;margin-top:24px}.button{border:0;padding:13px 20px;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block}.primary{background:var(--orange);color:#fff}.secondary{background:#fff;color:var(--navy)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.benefits article,.card{background:#fff;border:1px solid var(--line);padding:28px}.benefits b{font-size:30px;color:var(--orange)}.benefits h2{margin:9px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card h2{margin-top:5px}.hint,.message{line-height:1.6;color:#617b8c}.message:not(:empty){margin:16px 0 0;padding:12px 14px;border-left:4px solid var(--orange);background:#fff7e9;color:#734011}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:18px 0}.tabs button{background:none;border:0;padding:10px 14px;font-size:16px;color:#426073;cursor:pointer}.tabs .active{border-bottom:3px solid var(--orange);color:var(--navy);font-weight:bold}form{display:grid;gap:14px}form[hidden],[hidden]{display:none!important}label{display:grid;gap:6px;font-weight:bold}input,select{box-sizing:border-box;width:100%;padding:11px;border:1px solid #b7c8d1;font-size:16px;background:#fff}label span{display:flex;gap:8px}label span input{flex:1}label span button{white-space:nowrap;border:1px solid var(--orange);background:#fff;color:var(--orange);padding:0 12px}.check{display:block;font-weight:normal}.check input{width:auto}.profile-summary{padding:14px;margin-bottom:16px;background:#fff7e9;border-left:4px solid var(--orange);line-height:1.6}.empty{color:#617b8c}footer{padding:28px 6vw;background:var(--navy);color:#dce8ed}
.welfare-card{margin-top:22px}.welfare-card details{margin-top:18px;border:1px solid var(--line);background:#fbfdfe}.welfare-card summary{padding:17px 20px;color:var(--navy);font-size:18px;font-weight:bold;cursor:pointer;list-style:none}.welfare-card summary::-webkit-details-marker{display:none}.welfare-card summary:before{content:"＋";display:inline-block;margin-right:10px;color:var(--orange);font-size:24px;line-height:12px;vertical-align:-2px}.welfare-card details[open] summary{border-bottom:1px solid var(--line);background:#fff7ed}.welfare-card details[open] summary:before{content:"－"}.teacher-welfare-copy{max-width:940px;padding:28px 24px 32px;line-height:1.9;color:#27485d}.teacher-welfare-copy p{margin:0 0 16px}.teacher-welfare-copy h3{margin:30px 0 12px;color:var(--navy);font-size:24px}.welfare-title{margin:0 0 8px!important;font-size:28px;font-weight:800;color:var(--navy)}.welfare-subtitle{margin-bottom:22px!important;color:#a45d24;font-weight:bold}.welfare-lead{padding:16px 18px;border-left:4px solid var(--orange);background:#fff7ed}.welfare-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 24px}.welfare-step{padding:18px;border:1px solid var(--line);background:#fff}.welfare-step b{display:block;margin-bottom:8px;color:var(--orange);font-size:18px}.welfare-step span{display:block;font-weight:bold;color:var(--navy)}.welfare-table{width:100%;border-collapse:collapse;margin:16px 0 26px;background:#fff}.welfare-table th,.welfare-table td{padding:13px 14px;border:1px solid var(--line);text-align:left;vertical-align:top}.welfare-table th{background:#183b54;color:#fff}.welfare-contact{padding:18px 20px;background:#eef5f7;border-top:3px solid var(--orange)}.welfare-contact p:last-child{margin-bottom:0}.welfare-disclaimer{font-size:13px;color:#617b8c}
/* teacher-vip-public-benefit-1.0.5-20260820 */
.benefit-reminder{max-width:620px;margin:18px 0 0;padding:12px 15px;border:1px solid #ffd58b;border-left:5px solid #ffb12a;border-radius:6px;background:#fff7df;color:#613b08;line-height:1.65;font-weight:600}.benefit-reminder-light{max-width:none;margin:20px 0}
@media(max-width:760px){.topbar{display:block}.topbar nav{margin-top:14px;gap:12px;flex-wrap:wrap}.hero,.grid{grid-template-columns:1fr}.hero{padding:28px}.hero h1{font-size:34px}.benefits,.welfare-steps{grid-template-columns:1fr}.actions{flex-wrap:wrap}.welfare-card{padding:20px}.welfare-card summary{padding:15px}.teacher-welfare-copy{padding:20px 15px}.welfare-title{font-size:23px}.welfare-table{font-size:14px}.welfare-table th,.welfare-table td{padding:10px}}

/* build: teacher-vip-sms-input-layout-fix-1.2.0-20260829 */
label>.sms-row{display:grid!important;width:100%;min-width:0;grid-template-columns:minmax(180px,1fr) max-content;align-items:stretch;gap:8px}
label>.sms-row>input{display:block;width:100%;min-width:180px;grid-column:1;grid-row:1;flex:none}
label>.sms-row>button{grid-column:2;grid-row:1;min-height:44px;padding:0 14px}
label>.sms-row>.hint{display:block;grid-column:1/-1;grid-row:2;min-width:0;font-weight:normal;overflow-wrap:anywhere}
@media(max-width:520px){label>.sms-row{grid-template-columns:minmax(110px,1fr) max-content}label>.sms-row>input{min-width:110px}label>.sms-row>button{padding:0 10px}}
.appointment-message:not(:empty){margin:0;padding:13px 15px;border-left:4px solid #2d7396;background:#eef7fb;color:#173f55;line-height:1.55}.appointment-message[data-type="success"]{border-color:#27945c;background:#edf9f2;color:#17613d}.appointment-message[data-type="error"]{border-color:#c9473a;background:#fff1ef;color:#842b23}.button:disabled{cursor:wait;opacity:.7}.refresh-records{margin:-4px 0 18px;border:1px solid #9db5c3}.certification-record{padding:16px;border-left:4px solid var(--orange);background:#fff8ec}.appointment-records{margin-top:22px}.appointment-records h3{margin:0 0 12px}.appointment-record{display:grid;grid-template-columns:1fr auto;gap:5px 14px;margin-top:10px;padding:14px;border:1px solid var(--line);background:#f8fbfc}.appointment-record b{color:#17613d}.appointment-record span{color:#617b8c}.appointment-record p{grid-column:1/-1;margin:4px 0 0;line-height:1.5}@media(max-width:760px){.appointment-record{grid-template-columns:1fr}.appointment-record span,.appointment-record p{grid-column:1}}
