*{box-sizing:border-box}body{margin:0;font:15px Arial;color:#172554;background:#f8fafc;display:flex}aside{width:235px;min-height:100vh;padding:24px;background:#172554;color:#fff}aside h1{font-size:19px}aside a{display:block;padding:11px 0;color:#dbeafe;text-decoration:none}aside small{display:block;margin-top:30px;color:#94a3b8}main{width:100%;max-width:1000px;padding:36px}.cards{display:flex;gap:18px}.cards section,.notice,table,.form{margin:18px 0;padding:20px;border-radius:12px;background:#fff;box-shadow:0 1px 4px #17255418}.cards section{min-width:220px;display:grid;gap:8px}.cards strong{font-size:24px}.form{max-width:700px}.form label{display:block;margin:12px 0;font-weight:bold}.form input:not([type=checkbox]),.form textarea,.form select{width:100%;margin-top:6px;padding:10px;border:1px solid #cbd5e1;border-radius:7px}.form textarea{min-height:100px}button{padding:10px 14px;border:0;border-radius:7px;background:#2563eb;color:#fff;font-weight:bold;cursor:pointer}.color-selector{display:flex;align-items:center;gap:10px;width:100%;margin-top:6px}.form .color-selector__picker{width:54px;height:42px;margin:0;padding:3px;flex:0 0 54px;cursor:pointer}.color-selector__swatch{width:42px;height:42px;flex:0 0 42px;border:1px solid #94a3b8;border-radius:7px;box-shadow:inset 0 0 0 1px #ffffff80}.color-selector__value{min-width:104px;padding:11px 12px;border:1px solid #cbd5e1;border-radius:7px;background:#f8fafc;color:#172554;font-family:monospace;font-size:14px;font-weight:700;letter-spacing:.04em}table{border-collapse:collapse;width:100%}th,td{padding:11px;text-align:left;border-bottom:1px solid #e2e8f0}.login{display:grid;place-items:center;min-height:100vh}.login form{width:360px;padding:28px;background:#fff;border-radius:14px;box-shadow:0 10px 30px #17255422}.login label{display:block;margin:14px 0}.login input{width:100%;padding:10px}.error{color:#b91c1c}@media(max-width:700px){body{display:block}aside{width:auto;min-height:auto}main{padding:20px}.cards{display:block}}.notice-success{color:#166534;border-left:4px solid #22c55e}.notice-error{color:#b91c1c;border-left:4px solid #ef4444}.form-edit{border:1px solid #93c5fd}.form-actions,.table-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.table-actions form{margin:0}.button-secondary{display:inline-block;padding:10px 14px;border-radius:7px;background:#e2e8f0;color:#172554;text-decoration:none;font-weight:bold}.button-danger{background:#dc2626}@media(max-width:700px){.table-actions{min-width:180px}}
