
:root{font-family:"Open Sans",Arial,Helvetica,sans-serif;color:#171847;background:#f7f8fb}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column}header{background:white;border-bottom:1px solid #e5e8ee}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.header-inner{min-height:88px;display:flex;align-items:center;gap:25px}header img{display:block;width:180px;height:auto}.header-label{border-left:1px solid #e5e8ee;padding-left:25px;color:#3d3d5d;font-size:14px;font-weight:700}main{padding:52px 0 70px;flex:1}.eyebrow{color:#c74800;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}h1{color:#000143;font-size:40px;line-height:1.1;margin:0 0 15px}.intro{color:#6d7280;line-height:1.7;font-size:14px;margin:0 0 30px}.table-wrap{background:white;border:1px solid #e5e8ee;border-radius:8px;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th,td{padding:21px 20px;border-bottom:1px solid #e5e8ee;vertical-align:top}thead th{background:#eef3f8;color:#3d3d5d;font-size:11px;letter-spacing:.04em}tbody tr:last-child>*{border-bottom:0}tbody th{color:#000143;min-width:190px}td:first-child,td:last-child{white-space:nowrap}.open{display:inline-block;color:#000143;background:#f35b00;border:1px solid #f35b00;border-radius:4px;padding:9px 13px;font-size:12px;font-weight:700;text-decoration:none}.open:hover{background:#c74800;border-color:#c74800;color:white}a:focus-visible{outline:3px solid #003c70;outline-offset:4px}.empty{padding:26px;color:#6d7280}footer{background:#1b1948;color:#d9dce7;padding:26px 0;font-size:11px}.footer-inner{display:flex;justify-content:space-between;gap:20px;line-height:1.7}@media(max-width:600px){.wrap{width:calc(100% - 30px)}.header-inner{min-height:76px;gap:17px}header img{width:135px}.header-label{padding-left:17px;font-size:12px}main{padding:35px 0}h1{font-size:32px}th,td{padding:16px 12px}.footer-inner{flex-direction:column;gap:5px}}

nav{margin-left:auto;display:flex;gap:18px;align-items:center}a{color:#000143}form.panel,.panel{background:white;border:1px solid #e5e8ee;padding:24px;border-radius:8px;margin-bottom:20px}label{display:block;margin:12px 0}input:not([type=checkbox]),select{display:block;width:100%;max-width:420px;padding:10px;border:1px solid #aab0bf;border-radius:4px;margin-top:6px}button{cursor:pointer;background:#f35b00;border:0;border-radius:4px;padding:11px 16px;font-weight:bold}h2{font-size:20px}.notice{padding:16px;background:#fff0e7;margin-bottom:20px}.inline{display:inline}.muted{color:#6d7280}nav form{margin:0}@media(max-width:600px){.header-inner{flex-wrap:wrap;padding:15px 0}nav{margin-left:0;flex-wrap:wrap}}
fieldset{border:1px solid #e5e8ee;border-radius:6px;margin:20px 0;padding:16px}legend{font-weight:bold;padding:0 6px}fieldset .muted{font-size:13px;line-height:1.6}

.access-section{margin:32px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.section-heading h2{margin:0 0 8px;font-size:22px}.section-heading p{margin:0;font-size:14px;line-height:1.6}.count-badge,.role-badge{display:inline-block;border-radius:20px;padding:5px 10px;background:#eef3f8;color:#525d73;font-size:11px;white-space:nowrap}.access-matrix{min-width:560px}.access-matrix th,.access-matrix td{vertical-align:middle;padding:20px 24px}.access-matrix .check-cell{text-align:center;min-width:130px;max-width:240px;white-space:normal}.access-matrix thead th{font-size:12px;line-height:1.5;text-transform:none}.access-matrix tbody tr:hover{background:#fafbfe}.access-matrix .all-cell{background:#f8f9fc;border-left:1px solid #e5e8ee;border-right:1px solid #e5e8ee}.access-matrix input[type=checkbox]{width:19px;height:19px;accent-color:#000143;cursor:pointer}.access-matrix input:disabled{cursor:default}.user-name,.user-email{display:block}.user-name{font-size:15px}.user-email{font-size:12px;font-weight:400;color:#6d7280;margin:5px 0 8px}.access-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;font-size:13px}summary{cursor:pointer;font-weight:700;font-size:16px}details[open]>summary{margin-bottom:22px}details .panel{padding:0;border:0;margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.access-matrix input:focus-visible{outline:3px solid #f35b00;outline-offset:4px}@media(max-width:600px){.access-actions,.section-heading{align-items:flex-start;flex-direction:column}.access-actions button{width:100%}}

.app-instructions{margin-top:32px}.app-instructions .section-heading{align-items:flex-start}.app-instructions .section-heading button{white-space:nowrap}.app-instructions textarea{display:block;width:100%;min-height:260px;resize:vertical;border:1px solid #d5dbe6;border-radius:6px;background:#f8faff;color:#303956;padding:18px;font:13px/1.7 Consolas,monospace}.app-instructions textarea:focus{outline:2px solid #000143;outline-offset:2px}.app-instructions .copy-status{font-size:12px;margin-bottom:0}.app-instructions .eyebrow{margin-bottom:8px}

.brand-home{display:inline-flex;align-items:center;gap:20px;text-decoration:none;border-radius:8px;padding:8px 0}.brand-home img{filter:brightness(0) saturate(100%) invert(43%) sepia(99%) saturate(3500%) hue-rotate(1deg) brightness(102%) contrast(106%)}.brand-home .header-label{border:1px solid #ffd4b8;background:#fff2e8;color:#b64100;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:700;letter-spacing:.02em}.brand-home:hover .header-label{background:#ffe3cf;border-color:#f35b00}.brand-home:focus-visible{outline:3px solid #f35b00;outline-offset:5px}@media(max-width:600px){.brand-home{gap:12px}.brand-home .header-label{padding:7px 9px;font-size:12px}}
