:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#182230;background:#f4f6f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.topbar{height:64px;background:#fff;border-bottom:1px solid #e4e8ed;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1100px)/2))}.brand{font-weight:700;color:#1f4c82;text-decoration:none}.topbar nav{display:flex;gap:24px}.topbar nav a,.table-link{color:#395b7e;text-decoration:none;font-size:14px}.container{max-width:1100px;margin:42px auto;padding:0 24px}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px}h1{font-size:32px;letter-spacing:-.03em;margin:4px 0 16px}.eyebrow{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#718096;margin:0}.intro{color:#627083;line-height:1.6;max-width:760px;margin:0 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid #cbd4de;border-radius:8px;background:#fff;color:#253548;text-decoration:none;font:inherit;font-size:14px;cursor:pointer}.button.primary{background:#245a91;color:#fff;border-color:#245a91}.button:hover{filter:brightness(.97)}.empty-state,.panel{background:#fff;border:1px solid #e3e8ee;border-radius:14px;box-shadow:0 8px 28px #16283b0a}.empty-state{text-align:center;padding:56px 24px}.empty-state h2{margin:10px 0 6px}.empty-state p{color:#718096;margin:0 0 20px}.empty-icon{margin:auto;width:42px;height:42px;line-height:40px;border-radius:50%;background:#eaf2fa;color:#245a91;font-size:28px}.table-wrap{background:#fff;border:1px solid #e3e8ee;border-radius:12px;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:15px 16px;border-bottom:1px solid #edf0f3;font-size:14px;white-space:nowrap}th{color:#718096;font-size:12px;text-transform:uppercase;letter-spacing:.04em}tbody tr:last-child td{border-bottom:0}.mono{font-family:ui-monospace,Consolas,monospace}.badge{padding:4px 8px;background:#edf4fa;color:#315b7f;border-radius:99px;font-size:12px}.panel{padding:26px;max-width:820px}.panel.narrow{max-width:620px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field.wide{grid-column:1/-1}.field label{font-size:14px;font-weight:600}.field input,.field select,.field textarea{width:100%;min-height:42px;padding:10px 11px;border:1px solid #cad3dd;border-radius:7px;font:inherit;background:#fff}.field textarea{resize:vertical;min-height:140px}.field small{font-size:12px;color:#738195;line-height:1.45}.field small.error{color:#b42318}.check-row{display:flex;align-items:center;gap:9px;margin-top:20px;font-size:14px;color:#5d6878}.check-row input{width:16px;height:16px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.notice{margin:0 0 18px;padding:12px 14px;border-radius:8px;background:#e8f5ed;color:#21603a}.notice.error{background:#fff0ee;color:#a12a1e}.input-with-button{display:flex;gap:10px}.input-with-button input{flex:1;min-width:0}.required-mark{color:#b42318}.field .button{white-space:nowrap}@media(max-width:680px){.container{margin:28px auto;padding:0 16px}.topbar{padding:0 16px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.heading-row{align-items:flex-start;flex-direction:column}.heading-row .button{width:100%}.panel{padding:20px}.input-with-button{flex-direction:column}.input-with-button .button{width:100%}}
.lock-status{margin:0;padding:11px 13px;border-radius:8px;background:#edf7f0;color:#25623b;font-size:13px}.lock-status.conflict{background:#fff0ee;color:#a12a1e}.password-controls .button{flex:none}.field input[readonly]{background:#f4f6f8;color:#64748b}
.badge.busy{background:#fff0ee;color:#a12a1e}.badge.available{background:#edf7f0;color:#25623b}
.config-actions{display:flex;align-items:center;gap:10px;margin:0 0 22px}.config-actions form,.row-actions form{margin:0}.row-actions{white-space:nowrap}.action-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}.action-link:hover{text-decoration:underline}
.directory-search{max-width:480px;padding:18px;margin:-8px 0 20px}
.topbar nav{align-items:center;flex-wrap:wrap;gap:16px}.signed-in-name{font-size:13px;color:#627083}.nav-logout{margin:0}.nav-logout button{border:0;background:transparent;color:#395b7e;font:inherit;font-size:14px;cursor:pointer;padding:0}.user-create-panel{max-width:none;margin:0 0 24px}.user-create-panel h2{margin:0 0 18px;font-size:19px}.created-user-password{display:grid;gap:10px;margin-bottom:18px}.created-user-password .input-with-button{align-items:center}.created-user-password input{min-height:42px;flex:1;min-width:0;padding:10px 11px;border:1px solid #cad3dd;border-radius:7px;font:inherit;background:#fff;color:#182230}.login-panel{display:grid;gap:18px}.login-panel .actions{margin-top:0}
@media(max-width:680px){.topbar{height:auto;min-height:64px;align-items:flex-start;gap:10px;padding-top:14px;padding-bottom:14px}.topbar nav{justify-content:flex-end;gap:10px 14px}.signed-in-name{display:none}}
.blocks-summary{max-width:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:0 0 18px}.blocks-summary>div{display:flex;flex-direction:column;gap:5px;min-width:0}.blocks-summary strong{overflow-wrap:anywhere}.blocks-extension{font:600 18px ui-monospace,Consolas,monospace}.blocks-checks{display:flex;flex-wrap:wrap;gap:8px 16px;padding:13px 15px;margin:0 0 18px;background:#edf7f0;color:#25623b;border-radius:9px;font-size:13px}.blocks-checks strong{width:100%;font-size:14px}.blocks-list{display:grid;gap:14px}.code-panel{max-width:none;padding:20px}.code-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.code-heading h2{font-size:17px;margin:4px 0 0}.config-code{margin:0;padding:15px;background:#f5f7fa;border:1px solid #e5eaf0;border-radius:8px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.55 ui-monospace,Consolas,monospace;color:#17243a}.copy-feedback{display:block;min-height:18px;margin-top:7px;color:#25623b}.blocks-note{color:#627083;line-height:1.5;font-size:13px;margin:14px 0 0}@media(max-width:680px){.code-panel{padding:16px}.code-heading{align-items:flex-start;flex-direction:column}.code-heading .button{width:100%}}

