.admin-body{background:#f2f3ed}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:20px max(25px,calc((100vw - 1200px)/2));background:var(--cream);border-bottom:1px solid var(--line);gap:20px}.admin-header .brand strong{font-size:27px}.admin-header .text-link{font-size:11px}.admin-shell{max-width:1280px;margin:0 auto;padding:48px 35px 80px}.login-panel{max-width:480px;margin:35px auto;background:var(--cream);padding:42px;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 35px #0c294506}.login-panel h1{font-size:30px;margin-bottom:14px}.login-panel>p{font-size:12px;color:var(--muted)}.login-panel form{margin-top:25px}.login-panel .button{width:100%;margin-top:22px}.login-panel .login-note{font-size:10px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.admin-shell label:not(.grade-choice):not(.partial-choice):not(.all-grades):not(.weekday-choice){display:block;font-size:12px;font-weight:700;margin:17px 0 7px}.admin-shell input:not([type=checkbox]),.admin-shell textarea,.admin-shell select{width:100%;min-width:0;border:1px solid #cbd2c6;border-radius:6px;background:#fff;padding:10px 12px;font-size:14px;min-height:44px}.admin-shell textarea{resize:vertical}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.admin-title h1{font-size:32px;margin-bottom:9px}.admin-title p:not(.eyebrow){font-size:12px;color:var(--muted)}.admin-title .eyebrow{margin-bottom:9px}.admin-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:start}.editor-panel,.admin-events-panel{background:var(--cream);border:1px solid var(--line);padding:28px;border-radius:14px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.editor-heading h2,.admin-events-panel h2{font-size:20px;margin:0}.editor-heading .quiet-button{font-size:10px}.required-note{font-size:10px;color:var(--muted);margin-top:17px}.optional{font-size:9px;font-weight:500;color:var(--muted);margin-left:6px}.grade-fieldset{border:1px solid var(--line);margin:24px 0 18px;padding:15px 18px;border-radius:6px}.grade-fieldset legend{font-size:12px;font-weight:700;padding:0 5px}.grade-fieldset legend span{font-size:9px;font-weight:500;margin-left:7px}.all-grades{display:flex;align-items:center;gap:10px;padding:6px 0 13px;border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.grade-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e7e9e0}.grade-row:last-child{border:0}.grade-choice,.partial-choice{display:flex;align-items:center;gap:10px;font-size:13px}.partial-choice{font-size:11px;color:var(--muted)}input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.grade-row.disabled{opacity:.45}.grade-fieldset>small,.repeat-box small,.scope-box small{display:block;font-size:10px;color:var(--muted);margin-top:10px}.time-inputs{display:grid;grid-template-columns:1fr 14px 1fr;gap:10px;align-items:end}.time-inputs>span{padding-bottom:10px;text-align:center}.repeat-box{padding:2px 18px 16px;margin-top:23px;background:#edf1e7;border-radius:7px}.weekday-options{border:0;margin:18px 0 0;padding:0}.weekday-options legend{font-size:11px;font-weight:700}.weekday-options>div{display:flex;gap:12px;flex-wrap:wrap}.weekday-choice{display:flex;gap:5px;align-items:center;font-size:12px}.repeat-preview{font-size:11px;color:var(--green);margin-top:12px}.scope-box{background:#fff3c4;border:1px solid #ead57c;padding:1px 15px 15px;border-radius:7px;margin-top:20px}.editor-actions{display:flex;gap:13px;margin-top:25px;align-items:center;flex-wrap:wrap}.editor-actions .button{flex:1;font-size:13px;gap:20px}.danger-button{padding:10px 13px;min-height:44px;background:transparent;border:1px solid #dcb4ad;border-radius:5px;color:#973a32;font-size:11px}.danger-button:hover{background:#f9e7e2}.admin-events-panel .event-card{grid-template-columns:58px 1fr;gap:16px}.admin-events-panel .event-date strong{font-size:25px}.admin-events-panel .event-card h4{font-size:15px}.admin-events-panel .event-content{font-size:12px}.event-admin-actions{display:flex;gap:8px;margin-top:13px;align-items:center}.event-admin-actions .quiet-button{font-size:11px}.series-label{font-size:10px;color:var(--muted)}.admin-events-panel #admin-events{margin-top:20px}.admin-events-panel .empty-state{padding:28px 15px}.admin-events-panel .empty-state p{font-size:11px}.admin-shell .status-message:not(:empty){margin-top:13px}dialog{border:1px solid var(--line);border-radius:14px;padding:30px;max-width:460px;width:calc(100% - 40px);color:var(--navy);background:var(--cream)}dialog::backdrop{background:#0c294580}dialog h2{font-size:23px}dialog p:not(.eyebrow){font-size:13px;white-space:pre-line}.confirm-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:25px}.confirm-actions .button{font-size:12px;min-height:43px;padding:10px 22px}
.admin-shell label.remember-login{display:flex!important;gap:9px;align-items:flex-start;font-size:12px;font-weight:600;margin:17px 0 7px}.remember-login input{flex-shrink:0;margin-top:4px}.remember-help{display:block;font-size:10px;color:var(--muted);line-height:1.8}.admin-layout>*{min-width:0}.admin-shell fieldset{min-width:0}.time-inputs{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr)}.time-inputs>div{min-width:0}.editor-heading h2{min-width:0}.editor-heading .quiet-button{flex-shrink:0}.admin-shell .event-body{min-width:0;overflow-wrap:anywhere}
.time-select-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.time-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.admin-shell .time-selects select{font-size:16px;padding:10px 7px;font-variant-numeric:tabular-nums}.time-select-help{display:block;font-size:10px;color:var(--muted);line-height:1.9;margin-top:8px}
@media(max-width:600px){.time-select-grid{grid-template-columns:minmax(0,1fr);gap:0}}
@media(max-width:900px){.admin-shell{padding:35px 22px}.admin-layout{grid-template-columns:minmax(0,1fr);gap:25px}.admin-events-panel{max-height:none}.admin-title h1{font-size:27px}}
@media(max-width:520px){.admin-header{padding:15px;gap:12px}.admin-header .brand strong{font-size:22px}.admin-header .brand-ja{font-size:10px}.admin-header .brand img{width:30px}.admin-header .brand small{font-size:6px}.admin-header .text-link{font-size:9px;gap:2px}.admin-shell{padding:25px 15px 50px}.login-panel{padding:27px 22px;margin:20px auto}.admin-title{align-items:flex-start}.admin-title h1{font-size:24px}.admin-title p:not(.eyebrow){font-size:10px}.admin-title .quiet-button{font-size:10px;white-space:nowrap}.editor-panel,.admin-events-panel{padding:21px 17px}.editor-heading h2{font-size:18px}.admin-shell input:not([type=checkbox]),.admin-shell textarea,.admin-shell select{font-size:16px}.grade-fieldset{padding:13px}.editor-actions .button{min-width:170px}.repeat-box{padding-left:12px;padding-right:12px}.weekday-options>div{gap:10px}.weekday-choice{font-size:11px;gap:2px}.admin-events-panel .event-meta{font-size:11px}.admin-events-panel .event-content{font-size:11px}.required-note{font-size:9px}}
