:root{color:#172126;font-synthesis:none;letter-spacing:0;--ink:#172126;--muted:#5b696e;--line:#c8d3d6;--paper:#fff;--nav:#172126;--cyan:#008eaa;--cyan-soft:#e3f3f6;--green:#18784b;--green-soft:#e6f3eb;--yellow:#e4af20;--yellow-soft:#fff5d7;--orange:#d66c20;--red:#bd3832;--red-soft:#f9e3e1;background:#e9eeee;font-family:Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{background:#e9eeee;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1{margin-bottom:4px;font-size:24px;line-height:1.2}h2{margin-bottom:4px;font-size:21px}p{color:var(--muted)}code{font:12px Consolas,monospace}.app-shell{min-height:100vh}.app-header{z-index:30;color:#fff;background:var(--nav);border-bottom:4px solid var(--cyan);grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:24px;min-height:66px;padding:8px 22px;display:grid;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand b,.brand span{display:block}.brand b{font-size:17px}.brand span{color:#bcd0d6;font-size:11px}.header-source{color:#c6d6da;align-items:center;gap:7px;font-size:11px;display:flex}.header-source code{color:#fff;background:#304249;padding:3px 5px}.user-menu{text-align:right;align-items:center;gap:9px;display:flex}.user-menu b,.user-menu span{display:block}.user-menu span{color:#bcd0d6;text-transform:capitalize;font-size:10px}.icon-button{width:36px;height:36px;color:inherit;background:0 0;border:1px solid #7e9198;border-radius:4px;place-items:center;padding:0;display:inline-grid}.icon-button:hover{background:#ffffff1a}.button{color:#26383e;background:#fff;border:1px solid #89999e;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:7px 11px;font-weight:700;display:inline-flex}.button:hover{background:#f1f6f6}.button.primary{color:#fff;background:var(--cyan);border-color:var(--cyan)}.button.primary:hover{background:#00758d}.button.compact{min-height:31px;padding:4px 8px;font-size:11px}.button:focus-visible,.icon-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;outline:3px solid #84d4e2}.context-bar{border-bottom:1px solid var(--line);background:#fff;align-items:end;gap:9px;padding:12px 22px;display:flex}.context-bar>div{margin-right:auto}.context-bar b,.context-bar span{display:block}.context-bar span{color:var(--muted);font-size:11px}.context-bar label,.matrix-header label,.matrix-toolbar>label{color:#526168;font-size:10px;font-weight:800}.context-bar select,.matrix-header select,.matrix-toolbar select{height:36px;color:var(--ink);background:#fff;border:1px solid #94a4a9;margin-top:3px;padding:5px 8px;display:block}.workspace-switch{border:1px solid #89999e;display:inline-flex;margin:0!important}.workspace-switch button{color:#405158;background:#fff;border:0;border-right:1px solid #89999e;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-weight:800;display:inline-flex}.workspace-switch button:last-child{border-right:0}.workspace-switch button.selected{color:#fff;background:#2c444c}.progress-band{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:1px;max-width:1540px;margin:14px auto 0;display:grid}.progress-band>div{background:#fff;min-height:66px;padding:10px 12px 13px;position:relative;overflow:hidden}.progress-band span,.progress-band b{display:block}.progress-band span{color:var(--muted);font-size:10px;font-weight:800}.progress-band b{font-size:21px}.progress-band i{background:var(--green);height:4px;position:absolute;bottom:0;left:0}.progress-band i.warn{background:var(--orange)}.progress-band i.muted-bar{background:#64767c}.progress-band i.pending{background:var(--yellow)}.workspace-layout{grid-template-columns:265px minmax(0,1fr);align-items:start;gap:12px;max-width:1540px;margin:12px auto;padding:0 12px 20px;display:grid}.family-nav,.matrix-workspace{border:1px solid var(--line);background:#fff}.family-nav{position:sticky;top:80px}.family-nav header{border-bottom:1px solid var(--line);padding:12px}.family-nav header b,.family-nav header span{display:block}.family-nav header span{color:var(--muted);font-size:10px}.family-nav button{color:#304147;text-align:left;background:#fff;border:0;border-bottom:1px solid #e0e6e7;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;width:100%;padding:10px 11px;display:grid}.family-nav button:last-child{border-bottom:0}.family-nav button:hover{background:#f3f7f7}.family-nav button.selected{color:#006c82;background:var(--cyan-soft);box-shadow:inset 4px 0 var(--cyan);font-weight:800}.family-nav button span,.family-nav button small{display:block}.family-nav button small{color:var(--muted);margin-top:2px;font-size:9px;font-weight:500}.family-nav button>b{background:#e7eeee;border-radius:10px;place-items:center;min-width:24px;height:20px;padding:0 5px;font-size:10px;display:inline-grid}.matrix-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:18px;padding:14px 16px;display:flex}.matrix-header p{max-width:760px;margin-bottom:0}.matrix-header select{min-width:230px}.eyebrow{color:#007b93;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:900;display:block}.inheritance-notice{background:var(--yellow-soft);border-bottom:1px solid #e8d48a;align-items:flex-start;gap:10px;padding:9px 15px;display:flex}.inheritance-notice b,.inheritance-notice span{display:block}.inheritance-notice span{color:#66572d;font-size:11px}.matrix-toolbar{border-bottom:1px solid var(--line);align-items:end;gap:9px;padding:10px 14px;display:flex}.matrix-toolbar>span{color:var(--muted);margin-left:auto;font-size:11px}.search-field{flex:1;max-width:480px;position:relative}.search-field svg{color:#607177;position:absolute;bottom:10px;left:9px}.search-field input{border:1px solid #94a4a9;width:100%;height:36px;padding:5px 9px 5px 33px}.table-scroll{min-height:360px;max-height:calc(100vh - 320px);overflow:auto}.control-table{border-collapse:collapse;width:100%;min-width:960px;font-size:12px}.control-table th,.control-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dce3e5;padding:8px 9px}.control-table th{z-index:2;color:#35464c;background:#e8eff0;font-size:10px;position:sticky;top:0}.control-table tbody tr:hover{background:#f4f8f7}.control-table tbody tr.changed{box-shadow:inset 4px 0 var(--cyan)}.control-table td:first-child{font-weight:700}.original-value,.row-comment{color:var(--muted);margin-top:4px;font-size:9px;font-weight:500;display:block}.original-value{border-left:2px solid #a4b4b8;padding-left:6px}.row-action{width:84px}.review-state{text-transform:uppercase;white-space:nowrap;border-radius:3px;padding:2px 6px;font-size:9px;font-weight:900;display:inline-block}.review-state.pending{color:#695515;background:#fff0bd}.review-state.approved{color:#125a39;background:var(--green-soft)}.review-state.correction{color:#8c322d;background:var(--red-soft)}.review-state.deferred{color:#43545a;background:#e6ecee}.matrix-footer{color:var(--muted);border-top:1px solid var(--line);background:#f7f9f9;justify-content:space-between;gap:20px;padding:9px 14px;font-size:10px;display:flex}.modal-backdrop{z-index:80;background:#0c161a9e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-panel{background:#fff;border:1px solid #6d7f85;border-radius:6px;width:min(900px,100%);max-height:94vh;overflow:auto;box-shadow:0 18px 55px #00000047}.modal-panel.compact-modal{width:min(720px,100%)}.modal-panel>header{color:#fff;background:var(--nav);border-bottom:3px solid var(--cyan);justify-content:space-between;gap:20px;padding:15px 17px;display:flex}.modal-panel>header h2{margin:0}.modal-panel>header .eyebrow{color:#7ed5e4}.modal-panel>footer{border-top:1px solid var(--line);background:#f5f8f8;justify-content:flex-end;gap:8px;padding:12px 17px;display:flex}.edit-grid,.publish-fields{grid-template-columns:1fr 1fr;gap:12px;padding:15px 17px;display:grid}.edit-grid label,.comment-field,.publish-fields label{color:#46575d;font-size:11px;font-weight:800}.edit-grid label.full,.publish-fields .full{grid-column:1/-1}.edit-grid textarea,.comment-field textarea,.publish-fields textarea,.publish-fields input{width:100%;min-height:72px;color:var(--ink);resize:vertical;background:#fff;border:1px solid #9aabb0;margin-top:4px;padding:7px;display:block}.edit-grid textarea:disabled{color:#4f5d62;background:#eef2f2}.publish-fields input{height:36px;min-height:36px}.fixed-warning{color:#71403c;background:var(--red-soft);border-left:4px solid var(--red);align-items:flex-start;gap:9px;margin:13px 17px 0;padding:10px 11px;display:flex}.disposition-field{border:1px solid var(--line);flex-wrap:wrap;gap:7px;margin:0 17px 13px;padding:10px;display:flex}.disposition-field legend{color:#46575d;padding:0 5px;font-size:11px;font-weight:800}.disposition-field label{align-items:center;gap:4px;display:flex}.comment-field{margin:0 17px 13px;display:block}.change-summary{color:#415157;background:var(--cyan-soft);border-top:1px solid #b9dade;justify-content:space-between;gap:14px;padding:9px 17px;display:flex}.change-summary span{color:var(--muted);font-size:11px}.publish-summary{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.publish-summary div{background:#fff;padding:10px}.publish-summary span,.publish-summary b{display:block}.publish-summary span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.confirm-box{background:var(--yellow-soft);border:1px solid #e7cf76;align-items:flex-start;gap:8px;padding:9px;display:flex}.history-table{border-collapse:collapse;width:100%}.history-table th,.history-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 11px}.history-table th{background:#e8eff0;font-size:10px}.empty-state{text-align:center;padding:45px 20px}.empty-state svg{color:var(--cyan)}.empty-state h3{margin:7px 0 3px}.permission-workspace{max-width:1540px;margin:14px auto;padding:0 12px 28px}.permission-loading{border:1px solid var(--line);background:#fff;max-width:1540px;margin:14px auto;padding:30px}.permission-heading{background:var(--line);border:1px solid var(--line);grid-template-columns:minmax(0,1fr) repeat(3,110px);align-items:center;gap:1px;display:grid}.permission-heading>div:first-child{background:#fff;min-height:96px;padding:15px 17px}.permission-heading h1{font-size:22px}.permission-heading p{margin:5px 0 0}.permission-stat{text-align:center;background:#f7f9f9;align-content:center;min-height:96px;padding:12px;display:grid}.permission-stat b,.permission-stat span{display:block}.permission-stat b{color:#006d83;font-size:24px}.permission-stat span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.permission-tabs{border:1px solid var(--line);background:#fff;margin-top:10px;display:flex}.permission-tabs button{color:#41535a;border:0;border-right:1px solid var(--line);background:0 0;align-items:center;gap:7px;min-height:42px;padding:8px 15px;font-weight:800;display:inline-flex}.permission-tabs button.selected{color:#006f86;background:var(--cyan-soft);box-shadow:inset 0 -3px var(--cyan)}.permission-grid{border:1px solid var(--line);background:#fff;grid-template-columns:280px minmax(0,1fr);min-height:590px;margin-top:10px;display:grid}.people-list{border-right:1px solid var(--line)}.people-list button{text-align:left;background:#fff;border:0;border-bottom:1px solid #e0e6e7;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:58px;padding:8px 10px;display:grid}.people-list button:hover{background:#f4f8f8}.people-list button.selected{background:var(--cyan-soft);box-shadow:inset 4px 0 var(--cyan)}.people-list b,.people-list small{display:block}.people-list small{color:var(--muted);margin-top:2px;font-size:10px}.people-list em,.demo-badge{color:#765414;text-transform:uppercase;background:var(--yellow-soft);border:1px solid #e8cf73;padding:2px 5px;font-size:9px;font-style:normal;font-weight:900}.avatar{color:#fff;background:#47626c;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:900;display:grid}.permission-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:15px;padding:15px 17px;display:flex}.permission-detail>header h2{margin:0}.permission-detail>header p{margin:3px 0 0}.effective-strip{color:#16573a;background:var(--green-soft);border-bottom:1px solid #b8d8c6;align-items:flex-start;gap:9px;padding:10px 17px;display:flex}.effective-strip b,.effective-strip span{display:block}.effective-strip span{color:#3e6551;margin-top:2px;font-size:10px}.assignment-columns{background:var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.assignment-columns>section{background:#fff;min-width:0;padding:15px 16px 18px}.assignment-columns h3{margin-bottom:4px;font-size:16px}.assignment-columns p{min-height:34px;margin-bottom:10px;font-size:11px}.assignment-list{border:1px solid var(--line);min-height:116px}.assignment-list>div{border-bottom:1px solid #e2e8e9;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:7px 9px;display:flex}.assignment-list>div:last-child{border-bottom:0}.assignment-list b,.assignment-list small{display:block}.assignment-list small{color:var(--muted);margin-top:2px;font-size:9px}.assignment-list button{color:var(--red);background:0 0;border:0;place-items:center;padding:4px;display:grid}.assignment-form{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8px;margin-top:11px;padding-top:11px;display:grid}.assignment-form label,.definition-form label{color:#46575d;font-size:10px;font-weight:800}.assignment-form label.full,.definition-form .full{grid-column:1/-1}.assignment-form input,.assignment-form select,.definition-form input,.definition-form select,.definition-form textarea{width:100%;min-height:36px;color:var(--ink);background:#fff;border:1px solid #94a4a9;margin-top:3px;padding:6px 8px;display:block}.assignment-form .button{grid-column:1/-1}.definition-layout{border:1px solid var(--line);background:#fff;grid-template-columns:310px minmax(0,1fr);min-height:560px;margin-top:10px;display:grid}.definition-layout>aside{border-right:1px solid var(--line)}.definition-layout>aside>header{color:#fff;background:#2d444c;align-items:center;gap:8px;min-height:54px;padding:8px 11px;display:flex}.definition-layout>aside>header b{margin-right:auto}.icon-button.dark{color:#fff;border-color:#81949a;width:32px;height:32px}.definition-layout>aside>button{text-align:left;background:#fff;border:0;border-bottom:1px solid #e0e6e7;width:100%;min-height:54px;padding:8px 11px;display:block}.definition-layout>aside>button.selected{color:#006d83;background:var(--cyan-soft);box-shadow:inset 4px 0 var(--cyan)}.definition-layout>aside b,.definition-layout>aside small{display:block}.definition-layout>aside small{color:var(--muted);margin-top:3px;font-size:9px}.definition-form{grid-template-columns:1fr 1fr;align-content:start;gap:12px;max-width:940px;padding:18px;display:grid}.definition-form textarea{resize:vertical;min-height:86px}.definition-form input:disabled,.definition-form select:disabled,.definition-form textarea:disabled{color:#54636a;background:#edf1f2}.capability-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;padding:0;display:grid}.capability-grid legend{color:#46575d;padding:0 6px;font-size:10px;font-weight:800}.capability-grid label{background:#fff;align-items:flex-start;gap:8px;min-height:66px;padding:10px;display:flex}.capability-grid input{width:auto;min-height:0;margin:2px 0 0}.capability-grid b,.capability-grid small{display:block}.capability-grid small{color:var(--muted);margin-top:3px;font-size:9px;font-weight:500}.toggle-field{align-items:center;gap:7px;min-height:36px;display:flex}.toggle-field input{width:auto;min-height:0;margin:0}.scope-rule{color:#5e522a;background:var(--yellow-soft);border:1px solid #e7cf76;align-items:flex-start;gap:9px;padding:10px;display:flex}.permission-message{color:#fff;border-left:4px solid var(--cyan);background:#25383e;width:-moz-fit-content;width:fit-content;max-width:680px;margin:10px 0 0 auto;padding:9px 12px;position:sticky;bottom:10px}.toast{z-index:100;color:#fff;border-left:4px solid var(--cyan);background:#23363c;align-items:center;gap:12px;max-width:480px;padding:10px 12px;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 8px 30px #0003}.toast button{color:#fff;background:0 0;border:0;place-items:center;padding:2px;display:grid}.auth-screen{background:#e7eded;place-items:center;min-height:100vh;padding:20px;display:grid}.auth-panel{border:1px solid var(--line);border-top:5px solid var(--cyan);background:#fff;width:min(420px,100%);padding:24px}.auth-brand{color:#006e84;align-items:center;gap:8px;margin-bottom:18px;font-weight:900;display:flex}.auth-panel form{gap:11px;display:grid}.auth-panel label{color:#46575d;font-size:11px;font-weight:800}.auth-panel input{border:1px solid #94a4a9;width:100%;height:38px;margin-top:4px;padding:6px 8px;display:block}.form-message{color:#33454b;background:var(--cyan-soft);margin:13px 0 0;padding:8px}.loading-screen{color:#33454b;justify-content:center;align-items:center;gap:9px;min-height:100vh;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1050px){.app-header{grid-template-columns:1fr auto}.header-source{display:none}.context-bar{flex-wrap:wrap;align-items:stretch}.context-bar>div{flex:1 0 100%}.workspace-layout{grid-template-columns:1fr}.family-nav{grid-template-columns:repeat(3,1fr);display:grid;position:static}.family-nav header{grid-column:1/-1}.table-scroll{max-height:none}.permission-grid,.definition-layout{grid-template-columns:1fr}.people-list,.definition-layout>aside{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.definition-layout>aside>header{grid-column:1/-1}}@media (max-width:680px){.app-header{min-height:58px;padding:7px 10px}.user-menu>div{display:none}.context-bar{padding:10px}.context-bar label,.context-bar select,.context-bar .button,.workspace-switch{width:100%}.workspace-switch button{flex:1;justify-content:center}.progress-band{grid-template-columns:1fr 1fr;margin:10px 10px 0}.workspace-layout{padding:0 10px 15px}.family-nav{grid-template-columns:1fr 1fr}.family-nav button{font-size:11px}.matrix-header{padding:12px;display:block}.matrix-header label{margin-top:10px;display:block}.matrix-header select{width:100%;min-width:0}.matrix-toolbar{flex-direction:column;align-items:stretch}.matrix-toolbar>label,.matrix-toolbar select,.search-field{width:100%;max-width:none}.matrix-toolbar>span{margin:0}.table-scroll{overflow:visible}.control-table{min-width:0}.control-table thead{display:none}.control-table,.control-table tbody,.control-table tr,.control-table td{width:100%;display:block}.control-table tr{border-bottom:1px solid var(--line);padding:10px}.control-table th,.control-table td{border:0;padding:3px 0}.control-table td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:900;display:block}.control-table td:first-child{font-size:13px}.control-table .row-action{width:100%;margin-top:6px}.control-table .row-action:before{display:none}.control-table .row-action .button{width:100%}.matrix-footer{display:block}.matrix-footer span{margin-bottom:5px;display:block}.modal-backdrop{padding:6px}.modal-panel{max-height:98vh}.edit-grid,.publish-fields{grid-template-columns:1fr;padding:12px}.edit-grid label.full,.publish-fields .full{grid-column:auto}.disposition-field,.comment-field{margin:0 12px 12px}.change-summary{padding:9px 12px;display:block}.change-summary span{margin-top:4px;display:block}.publish-summary{grid-template-columns:1fr 1fr}.modal-panel>footer{flex-direction:column-reverse}.modal-panel>footer .button{width:100%}.permission-heading{grid-template-columns:repeat(3,1fr)}.permission-heading>div:first-child{grid-column:1/-1}.permission-stat{min-height:70px}.permission-tabs{grid-template-columns:1fr 1fr;display:grid}.permission-tabs button{border-bottom:1px solid var(--line)}.people-list,.definition-layout>aside,.assignment-columns,.assignment-form,.definition-form,.capability-grid{grid-template-columns:1fr}.assignment-form label.full,.definition-form .full{grid-column:auto}}
