.shell.authenticated{max-width:1180px}.authenticated main{padding:0 0 24px}.workspace{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:520px}nav{background:#fbf9ff;border-right:1px solid #e8dfee;padding:24px 12px}nav button{display:block;width:100%;text-align:left;margin-bottom:10px;background:transparent;color:#463453;box-shadow:none;font-weight:500}nav button[aria-pressed=true]{color:white;background:linear-gradient(115deg,#7735c4,#ad2f9b);box-shadow:0 7px 18px #7735c433}nav #logout{margin-top:28px;border-top:1px solid #e8dfee;border-radius:0}.content{padding:28px;min-width:0}.content h1{font-size:26px}.heading,.actions,.person-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.heading h1{margin:0}.filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.filters label{flex:1;min-width:160px}.filters button{margin-bottom:18px}.person-row{padding:18px 0;border-bottom:1px solid #e9e1f0;overflow-wrap:anywhere}.person-row:last-child{border:0}.muted{color:#6b5b78;font-size:13px}.pill{display:inline-block;background:#efe4f8;color:#65318b;border-radius:20px;padding:3px 10px;margin:5px 5px 0 0;font-size:13px}.secondary{background:white;color:#6a3290;border:1px solid #ddcce9;box-shadow:none}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.check{display:flex;align-items:center;gap:10px}.check input{width:18px;min-height:18px;margin:0;flex:none}.value-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:12px 0;border-top:1px solid #eee4f5;margin-top:16px}.value-row label:first-child{flex:1;min-width:130px}.value-row label:nth-child(2){max-width:100px}.value-row button{margin-bottom:18px}.value-row .check{padding-bottom:12px}.authenticated #message{margin:12px 28px}dialog{border:1px solid #e7d9ef;border-radius:24px;width:min(620px,calc(100% - 28px));max-height:calc(100dvh - 32px);padding:0;box-shadow:0 25px 100px #13041c70;background:white;color:#281a38}dialog::backdrop{background:#1409239c;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(115deg,#31134e,#762463);color:white;padding:20px 24px}.dialog-top h2{margin:0;overflow-wrap:anywhere}.dialog-top button{background:#ffffff20;border:1px solid #ffffff55;box-shadow:none;padding:8px 14px}#person-form{padding:0 24px 24px}fieldset{margin:16px 0;border:1px solid #e5d5ef;border-radius:12px;padding:12px 16px}legend{padding:0 8px}#person-message{color:#792851;overflow-wrap:anywhere}details{margin:20px 0}summary{cursor:pointer}#person-history p{padding-bottom:8px;border-bottom:1px solid #eee5f5}#person-form .heading{margin-top:20px}#person-form h3{margin:0}@media(max-width:700px){.workspace{display:block}nav{display:flex;gap:5px;flex-wrap:wrap;padding:12px;border-right:0;border-bottom:1px solid #e8dfee}nav button{width:auto;margin:0;padding:10px}nav #logout{margin:0;border:0;border-radius:12px}.content{padding:20px}.grid{grid-template-columns:1fr;gap:0}.heading{align-items:flex-start}.filters{gap:0}.filters label{min-width:100%;margin-bottom:4px}.filters button{margin:12px 0}.person-row{align-items:flex-start}.value-row label:nth-child(2){max-width:85px}.content .card{padding:18px}.authenticated #message{margin:12px 20px}}
select{display:block;margin-top:7px;border:1px solid #dcd0e6;background:white;color:#281a38;border-radius:12px;padding:13px;width:100%;font:inherit;min-height:46px}.filters label{overflow-wrap:anywhere}input:disabled{opacity:.65}

.family-section{margin:0 24px 24px;padding-top:16px;border-top:1px solid #e4d5ef}.family-section h3{margin:18px 0 8px}.family-section p{overflow-wrap:anywhere}.family-section .person-row{align-items:flex-start}#family-message{color:#792851}.family-section details{padding:8px 0}
.dialog-top{position:sticky;top:0;z-index:1}

.diagnostic-row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #eee3f5}.diagnostic-row dt{font-weight:600}.diagnostic-row dd{margin:0;color:#725d81}
.notice-board textarea{width:100%;resize:vertical;font:inherit;padding:12px;border:1px solid #dfcfec;border-radius:12px;min-height:80px}.team-notice{margin-top:16px;padding:18px;border:1px solid #e5d7ee;border-left:5px solid #9a42ba;border-radius:14px;background:linear-gradient(110deg,#faf5ff,#fff)}.team-notice.urgent{border-color:#efb4ba;border-left-color:#cf304b;background:linear-gradient(110deg,#fff0ef,#fff8f4)}.notice-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.notice-meta strong{font-size:13px;color:#7b349b}.urgent .notice-meta strong{color:#b0203e}.notice-meta span,.team-notice small{font-size:12px;color:#705f79}.team-notice p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.team-notice button{display:block;margin-top:12px;font-size:12px;padding:8px 12px}.notice-board h2{margin:0}.notice-board form{margin-top:18px}
.notice-board summary{cursor:pointer;color:#8538a6;font-weight:600;padding:10px 0}.notice-board #notice-list{max-height:480px;overflow:auto;padding-right:4px}.notice-board form .grid{margin:12px 0}.notice-board .team-notice{padding:14px}
/* Compact team feed: keep the message prominent and group secondary actions. */
.content .notice-board{padding:18px 24px;margin-top:16px}
.notice-board>.heading{gap:8px;align-items:center}
.notice-board>.heading button{padding:6px 12px;min-height:34px;font-size:12px}
.notice-board>.heading+p{font-size:12px;margin:4px 0;color:#705f79}
.notice-board #notice-compose{margin:4px 0}
.notice-board summary{padding:4px 0;font-size:13px}
.notice-board #notice-feedback{font-size:12px;margin:4px 0}
.notice-board #notice-feedback:empty{display:none}
.notice-board #notice-list{margin-top:8px}
.notice-board .team-notice{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:3px;margin-top:8px;padding:10px 12px;border-radius:10px;line-height:1.4}
.notice-board .team-notice:first-child{margin-top:0}
.notice-board .notice-meta{grid-column:1;gap:8px;line-height:1.3}
.notice-board .notice-meta span{font-size:11px}
.notice-board .team-notice p{grid-column:1;margin:2px 0;font-size:14px;line-height:1.45}
.notice-board .team-notice small{grid-column:1;font-size:11px}
.notice-board .team-notice button{grid-column:2;grid-row:1/4;align-self:center;margin:0;padding:6px 10px;min-height:36px;font-size:11px}
@media(max-width:700px){.content .notice-board{padding:14px}.notice-board .team-notice{column-gap:8px}.notice-board .team-notice button{grid-row:3;align-self:end}.notice-board .team-notice p,.notice-board .notice-meta{grid-column:1/-1}.notice-board .team-notice small{align-self:center}}
/* Compact classification editors, scoped to categories and statuses. */
#categories .card,#status-list .card,#configuration #status-form{padding:16px 18px;margin:12px 0}
#categories label,#status-list label,#configuration #status-form label{margin:4px 0;font-size:13px}
#categories input:not([type=checkbox]),#status-list input:not([type=checkbox]),#configuration #status-form input{min-height:38px;padding:8px 10px;margin-top:3px;border-radius:9px}
#categories button,#status-list button,#configuration #status-form button{min-height:38px;padding:8px 12px;font-size:13px}
#categories h2,#configuration #status-form h2{margin:0 0 8px;font-size:17px}
#status-list [data-status]{display:grid;grid-template-columns:minmax(0,1fr) 88px auto auto;gap:12px;align-items:end}
#status-list [data-status]>.grid{display:contents}
#status-list .check{align-self:center;white-space:nowrap}
#categories .value-row{display:grid;grid-template-columns:minmax(0,1fr) 88px auto auto;gap:12px;align-items:end;padding:8px 0;margin:6px 0 0}
#categories .value-row label:first-child{min-width:0}
#categories .value-row .check{padding:0;align-self:center;white-space:nowrap}
#categories .value-row button{margin:0}
#categories [data-add-value]{grid-template-columns:minmax(0,1fr) auto}
#categories [data-family]{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:6px 14px;align-items:end}
#categories [data-family]>.grid{display:contents}
#categories [data-family]>.check{grid-column:1/-1;margin:2px 0}
#categories [data-family]>button{justify-self:start}
#family-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:end}
#family-form h2,#family-form>.check{grid-column:1/-1}
#family-form>label:not(.check){min-width:0}
#family-form>button{grid-column:2;grid-row:2}
#configuration #status-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:end}
#configuration #status-form h2{grid-column:1/-1}
@media(max-width:1050px){#status-list [data-status],#categories .value-row{grid-template-columns:minmax(0,1fr) 80px}#status-list [data-status]>button,#categories .value-row>button{justify-self:end}#categories [data-add-value]{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:550px){#categories .card,#status-list .card,#configuration #status-form{padding:12px}#family-form,#configuration #status-form{grid-template-columns:minmax(0,1fr)}#family-form>button{grid-column:1;grid-row:auto;justify-self:start}#family-form h2,#family-form>.check{grid-column:1}#categories [data-family]{column-gap:10px}#categories [data-add-value]{grid-template-columns:minmax(0,1fr)}#categories [data-add-value]>button{justify-self:start}#configuration #status-form>button{justify-self:start}}
/* Compact administrative lists; expand only the item being edited. */
#accounts .card,#journal .card{padding:14px 18px;margin:12px 0}
#accounts details.access-entry{margin:8px 0}
.access-entry>summary{display:list-item;padding:4px 0;overflow-wrap:anywhere}
.access-entry>summary strong{font-size:15px}
.access-entry>summary>span{font-size:12px;color:#705f79;margin-left:14px}
.access-editor{border-top:1px solid #eadff0;margin-top:10px;padding-top:8px}
#accounts label{margin:8px 0;font-size:13px}
#accounts input:not([type=checkbox]){min-height:38px;padding:8px 10px;margin-top:3px}
#accounts button{padding:8px 12px;min-height:38px;font-size:13px}
#accounts fieldset{margin:10px 0;padding:8px 12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 14px}
#accounts fieldset .check{margin:3px 0}
#new-role-permissions,#new-account-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 14px;grid-column:1/-1}
#journal>p{font-size:13px;margin:8px 0}
#journal>label{margin:10px 0;font-size:13px;max-width:320px}
#journal #audit-list{padding:4px 14px}
.audit-row{display:grid;grid-template-columns:155px minmax(0,1fr) minmax(100px,160px);gap:12px;padding:9px 0;border-bottom:1px solid #eee4f5;align-items:center;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.audit-row:last-child{border-bottom:0}
.audit-row time,.audit-actor{font-size:12px;color:#705f79}
.audit-target{display:block;font-size:12px;color:#705f79;margin-top:2px}
#journal .actions button{min-height:36px;padding:6px 12px;font-size:13px}
@media(max-width:700px){.access-entry>summary>span{display:block;margin-left:0;margin-top:3px}#accounts fieldset,#new-role-permissions,#new-account-roles{grid-template-columns:minmax(0,1fr)}.audit-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.audit-row>div{grid-column:1/-1;grid-row:1}.audit-row time{grid-column:1}.audit-actor{text-align:right}}
#journal #audit-list{max-height:520px;overflow:auto}
#benefits .card{padding:14px 18px;margin:12px 0}#benefits label{font-size:13px;margin:8px 0}#benefits input{min-height:38px;padding:8px 10px}#benefits button{min-height:38px;padding:8px 12px;font-size:13px}.benefit-row{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;padding:10px 12px;border:1px solid #e9dff1;border-radius:12px;background:#fff;margin:8px 0;overflow-wrap:anywhere}.benefit-row>div{flex:1;min-width:140px}.benefit-row>div>span{display:block;font-size:12px;color:#705f79}#benefits h2{font-size:19px}

#benefits .qr-action{display:inline-flex;align-items:center;justify-content:center;background:#eee0f8;color:#69328a;border:1px solid #dcc3ed;border-radius:18px;padding:7px 12px;font-size:12px;font-weight:600;text-decoration:none;line-height:1.4;min-height:34px;vertical-align:middle}#benefits .qr-action:hover{background:#e4cff3}#benefits .qr-action:focus-visible{outline:3px solid #b481e5;outline-offset:3px}

.benefit-result{border-radius:12px;border:2px solid;padding:12px 16px;margin:12px 0}.benefit-result strong{display:block;font-size:20px}.benefit-result span{display:block;font-size:13px;margin-top:4px}.benefit-result-prepared{background:#fff8e8;border-color:#d8a441;color:#6f4910}.benefit-result-none{background:#fff0f1;border-color:#c95165;color:#912a40}

.access-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.access-tabs button[aria-pressed="false"]{background:white;color:#7134a4;border:1px solid #dfceef;box-shadow:none}.access-explanation,.access-effective{padding:12px 16px;border:1px solid #e8dcf4;border-radius:12px;background:#faf7fd;margin:12px 0}.access-explanation p,.access-effective p{margin:6px 0;font-size:.9rem;line-height:1.5}.access-warning{border-left:3px solid #d78d17;padding-left:10px;color:#805000}.access-tabs button{white-space:normal}
#accounts fieldset > p { grid-column: 1 / -1; }

.camera-body{padding:16px 24px}.camera-body video{display:block;width:100%;max-height:55dvh;min-height:140px;object-fit:contain;background:#21132f;border-radius:12px}.camera-body p{margin:12px 0}

#qr-camera-dialog .dialog-top{position:relative;padding-right:76px;min-height:76px}#qr-camera-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff75;border-radius:50%;background:#ffffff18;color:#fff;font-size:32px;line-height:1;box-shadow:none}#qr-camera-close:hover{background:#ffffff30}#qr-camera-close:focus-visible{outline:3px solid #fff;outline-offset:3px}

.benefit-result-ready{padding:14px 16px;background:#ecf9ef;color:#1b6435;border:1px solid #a7d6b5;border-radius:12px;margin:16px 0}.partner-used{color:#73677b;border-left:3px solid #b5a8bf;padding-left:10px}.partner-choice{padding:8px 0;border-top:1px solid #eee5f4}

#raevo-confirm-dialog{width:min(520px,calc(100% - 28px))}#raevo-confirm-dialog .dialog-top{position:relative;padding-right:76px}.confirm-brand{display:block;width:100px;height:auto;padding:5px 8px;background:#fff;border-radius:6px;margin-bottom:10px}#raevo-confirm-dialog h2{margin:0}.raevo-dialog-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #ffffff75;border-radius:50%;background:#ffffff18;color:#fff;font-size:32px;line-height:1;box-shadow:none}.raevo-dialog-close:focus-visible{outline:3px solid #fff;outline-offset:3px}

#partner-result > .benefit-result-none,#partner-result > .benefit-result-prepared,#partner-result > .benefit-result-ready{margin:16px 0;padding:14px 16px;border-width:1px;border-style:solid;border-radius:12px}
