:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#1a2b47;background:#f5f7fb;--navy:#10245e;--navy-2:#183a86;--gold:#f4c51f;--muted:#64748b;--line:#e2e8f0;--card:#fff;--shadow:0 12px 32px rgba(15,35,80,.08)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#f8faff 0,#f2f5fa 100%)}a{color:#244d93}button,input,select,textarea{font:inherit}.admin-header{background:var(--navy);color:#fff;padding:.9rem max(1rem,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:1.25rem;align-items:center;flex-wrap:wrap;box-shadow:0 5px 18px rgba(8,22,56,.15)}.admin-header a{color:#fff;text-decoration:none}.admin-header .brand{font-weight:800;letter-spacing:-.01em;font-size:1.12rem}.admin-header nav,.actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.admin-header nav a{padding:.48rem .68rem;border-radius:7px;font-size:.9rem;color:#eaf0ff}.admin-header nav a:hover{background:#ffffff18;color:#fff}.admin-header button{background:transparent;color:#fff;border:1px solid #91a2ce;border-radius:7px;padding:.48rem .78rem;cursor:pointer}.admin-header button:hover{background:#fff;color:var(--navy)}.admin-main{max-width:1240px;margin:2.5rem auto;padding:0 1.25rem 5rem}h1{font-size:clamp(1.85rem,4vw,2.6rem);letter-spacing:-.035em;margin:0 0 1.3rem;color:var(--navy)}h2{font-size:1.3rem;margin-top:0;color:var(--navy)}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:1.5rem;margin:1.15rem 0;box-shadow:var(--shadow)}.narrow{max-width:480px;margin:5rem auto}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:1rem}.stats .card{margin:0;padding:1.25rem 1.35rem}.stats strong{display:block;font-size:2.35rem;line-height:1;color:var(--navy)}.stats span{display:block;color:var(--muted);margin-top:.45rem;font-size:.9rem}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.page-heading h1{margin:0}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--navy-2);color:#fff!important;text-decoration:none;font-weight:800;padding:.7rem 1rem;cursor:pointer;box-shadow:0 5px 12px rgba(16,36,94,.15)}.button:hover{background:#214da0}.form-group{display:flex;flex-direction:column;gap:.4rem;margin:0 0 1.1rem}.form-group label{font-weight:800;font-size:.9rem;color:#273b5d}.form-group input,.form-group select,.form-group textarea{border:1px solid #c9d3e2;border-radius:8px;padding:.75rem .8rem;background:#fff;color:#172744;width:100%;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:#4a73c1;box-shadow:0 0 0 3px #4a73c11f}.form-group small,.table-scroll small{display:block;color:var(--muted)}.field-error{color:#b42318;font-size:.88rem}.notice{background:#eaf8ef;color:#205d35;border:1px solid #b9e5c8;border-left:4px solid #3c9a59;border-radius:8px;padding:1rem 1.1rem}.filters{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.filters .form-group{flex:1;min-width:190px}.table-scroll{overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.9rem;vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#5a6c86;background:#f7f9fc}tr:last-child td{border-bottom:0}td .actions{gap:.45rem}td button{background:#fff;color:#244d93;border:1px solid #bdc9db;border-radius:6px;padding:.38rem .58rem;cursor:pointer;font-size:.83rem}td button:hover{border-color:#244d93;background:#f3f7ff}.image-preview{max-width:320px;max-height:200px;object-fit:cover;display:block;margin-bottom:1rem;border-radius:9px}.editor-fallback-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.ql-container{min-height:280px;background:#fff;font-size:1rem}.ql-editor{min-height:280px}.ql-toolbar{background:#f7f9fc;border-color:#c9d3e2!important}.ql-container{border-color:#c9d3e2!important}dt{font-weight:800;margin-top:.8rem}dd{margin-left:0;color:#52627a}@media(max-width:700px){.admin-header{align-items:flex-start;padding:.85rem 1rem}.admin-header nav{gap:.35rem}.admin-header nav a{font-size:.8rem;padding:.4rem .5rem}.admin-main{margin:1.5rem auto;padding:0 .85rem 3rem}.card{padding:1.1rem}.narrow{margin:3rem auto}.page-heading{align-items:flex-start;flex-direction:column}.filters{display:block}.filters .button{width:100%}th,td{padding:.7rem}.table-scroll{margin-left:-.3rem;margin-right:-.3rem}}
.table-picker{position:absolute;top:100%;left:0;z-index:20;margin-top:4px;padding:8px;background:#fff;border:1px solid #c9d3e2;border-radius:8px;box-shadow:0 8px 20px rgba(16,36,94,.18)}.table-picker[hidden]{display:none}.table-picker-grid{display:grid;grid-template-columns:repeat(10,18px);gap:2px}.table-picker-grid span{width:18px;height:18px;border:1px solid #c9d3e2;background:#fff;cursor:pointer}.table-picker-grid span.on{background:#cfe0ff;border-color:#244d93}.table-picker-label{margin-top:6px;text-align:center;font-size:13px;color:#273b5d}
.ql-editor table{border-collapse:collapse;width:100%;table-layout:fixed}.ql-editor td,.ql-editor th{border:1px solid #9aa8bf;padding:.4rem .6rem;text-transform:none;letter-spacing:normal;background:#fff;font-size:inherit;color:inherit}
.ql-toolbar .table-buttons{margin-left:8px}.ql-snow.ql-toolbar .table-btn{float:none;display:inline-block;width:auto;height:28px;padding:2px 9px;margin:0 3px 0 0;border:1px solid #c9d3e2;border-radius:5px;background:#fff;color:#444;font-weight:700;font-size:14px;line-height:20px;cursor:pointer}.ql-snow.ql-toolbar .table-btn:hover:not(:disabled){border-color:#244d93;color:#244d93}.ql-snow.ql-toolbar .table-btn:disabled{opacity:.45;cursor:not-allowed}
.ql-editor table{border:1px solid #000;margin:0 0 1em}.ql-editor td,.ql-editor th{border:1px solid #000;height:34px}.ql-editor td:last-child,.ql-editor th:last-child{border-right:1px solid #000}.ql-editor tr:last-child td,.ql-editor tr:last-child th{border-bottom:1px solid #000}
