/* Components and responsive layouts. Colour/scale values live in tokens.css and themes/. */
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--font)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}a{color:var(--accent)}.shell{display:grid;grid-template-columns:var(--nav-width) minmax(0,1fr);min-height:100vh}.sidebar{background:var(--nav);color:var(--on-accent);padding:32px 20px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;gap:11px;align-items:center;font-size:18px;font-weight:750;letter-spacing:-.5px}.brandmark{background:var(--accent);border-radius:var(--small-radius);padding:7px 10px;color:var(--on-accent);letter-spacing:-2px}.workspace{border:1px solid var(--nav-line);border-radius:9px;padding:13px;font-size:13px}.workspace small,.side-label{display:block;color:var(--nav-muted);font-size:11px;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:5px}.sidebar nav{display:grid;gap:7px}.navitem{color:var(--nav-muted);text-align:left;background:transparent;border:0;border-radius:var(--control-radius);padding:12px;display:flex;justify-content:space-between}.navitem.active{color:var(--on-accent);background:var(--nav-active);box-shadow:inset 3px 0 var(--accent)}.navitem:disabled{cursor:default;opacity:.65}.navitem small{font-size:10px;border:1px solid var(--nav-line);border-radius:4px;padding:2px 5px}.sidebar footer{margin-top:auto;font-size:12px;color:var(--nav-muted)}.topbar{height:80px;background:var(--surface);border-bottom:1px solid var(--line);padding:0 40px;display:flex;justify-content:space-between;align-items:center}.crumb{color:var(--muted);font-size:13px}.user{display:flex;align-items:center;gap:12px;font-size:13px}.avatar{background:var(--palette-f0e9dc);color:var(--palette-725c31);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:700}.pill{font-size:11px;font-weight:700;border-radius:5px;padding:4px 8px;background:var(--accent-soft);color:var(--accent)}.proposal{background:var(--warning-soft);color:var(--warning)}.content{max-width:1250px;margin:0 auto;padding:38px 40px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.6px;color:var(--accent);text-transform:uppercase;margin:0 0 8px}h1{font-size:var(--heading-size);letter-spacing:-1px;margin:0 0 6px;line-height:1.2}h2{font-size:18px;letter-spacing:-.3px;margin:0}p{margin:0}.muted{color:var(--muted)}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.button{padding:10px 17px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-weight:650;white-space:nowrap}.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow:auto}.tab{border:0;background:none;padding:12px 1px;color:var(--muted);white-space:nowrap}.tab.active{color:var(--accent);font-weight:700;border-bottom:3px solid var(--accent)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.cardhead{padding:var(--panel-padding);display:flex;justify-content:space-between;align-items:center;gap:18px}.cardhead p{font-size:13px;margin-top:5px}.toolbar{padding:0 24px 20px;display:flex;gap:12px}.toolbar input{max-width:320px;width:100%}input,select{padding:10px 12px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text)}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);background:var(--table-head);padding:13px 24px;font-weight:650}td{padding:var(--cell-padding);border-top:1px solid var(--line);font-size:14px}td strong{display:block;font-weight:650}td small{display:block;color:var(--muted);margin-top:3px}.textbutton{border:0;background:none;color:var(--accent);font-weight:650;padding:7px}.status{color:var(--accent);font-size:12px;background:var(--accent-soft);padding:4px 8px;border-radius:5px}.cardfoot{border-top:1px solid var(--line);padding:14px 24px;color:var(--muted);font-size:12px}.hint{display:flex;gap:12px;padding:18px 0;color:var(--muted);font-size:13px}.hint b{color:var(--text)}.rolegrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:var(--panel-padding)}.rolebox{padding:20px;border:1px solid var(--line);border-radius:9px}.rolebox ul{padding-left:19px;color:var(--muted);font-size:14px}.rolebox .pill{display:inline-block;margin-bottom:14px}.context{padding:0 24px 22px;display:flex;align-items:center;gap:14px;font-size:13px}.context select{min-width:220px}.empty{padding:32px;color:var(--muted)}.mobilemenu{display:none}dialog{border:1px solid var(--line);border-radius:var(--panel-radius);padding:28px;max-width:440px;width:calc(100% - 32px);color:var(--text);box-shadow:0 25px 80px var(--palette-0003)}dialog::backdrop{background:var(--palette-17263e70)}dialog label{display:grid;gap:6px;margin:18px 0;font-size:13px}dialog .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.notice{font-size:12px;color:var(--muted);margin:12px 0}.toast{position:fixed;bottom:24px;right:24px;background:var(--nav);color:var(--on-accent);border-radius:9px;padding:14px 20px;max-width:calc(100% - 48px)}[hidden]{display:none!important}@media(max-width:1000px){.shell{grid-template-columns:205px minmax(0,1fr)}.content{padding:28px 24px}.topbar{padding:0 24px}.sidebar{padding:var(--panel-padding) 15px}.rolegrid{grid-template-columns:1fr}}@media(max-width:700px){.shell{display:block}.sidebar{display:none}.sidebar.open{display:flex}.topbar{height:auto;min-height:68px;padding:15px;gap:12px}.mobilemenu{display:inline-block}.crumb{display:none}.content{padding:25px 16px}.intro{align-items:flex-start;flex-direction:column;gap:16px}.intro .button{width:100%}h1{font-size:27px}.tabs{gap:22px}.toolbar,.cardhead{padding-left:16px;padding-right:16px}.cardhead{align-items:flex-start}.toolbar{flex-wrap:wrap}td,th{padding:14px 16px}.user .muted{display:none}.context{flex-wrap:wrap;padding:0 16px 18px}.rolegrid{padding:16px}.proposal{font-size:10px}}

/* Shared live components: edit tokens above, never per-page styling. */
.workspace-main{min-width:0;display:flex;flex-direction:column}.content{width:100%;flex:1;overflow-wrap:anywhere}.brand{text-decoration:none}.sidebar .brand{color:var(--on-accent);font-size:16px}.navitem{text-decoration:none;min-height:44px}.app-footer{padding:20px 40px;color:var(--muted);font-size:13px}.app-footer span{font-weight:700}.auth-shell{max-width:600px;margin:5vh auto}.auth-shell .content{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.auth-shell .topbar{background:transparent;border:0;padding:20px 0}.auth-shell h1{margin-bottom:24px}.content p{margin:12px 0}.content h2{margin:18px 0 10px}.content article{background:var(--surface);border:1px solid var(--line);padding:var(--panel-padding);margin:18px 0;border-radius:var(--radius)}.content details{padding:16px;border:1px solid var(--line);background:var(--surface);margin:16px 0;border-radius:var(--radius)}summary{cursor:pointer;min-height:44px;padding:10px 0}button{background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:var(--control-radius);padding:10px 16px;min-height:44px;font-weight:600}button.secondary{color:var(--text);background:var(--surface);border-color:var(--line)}input,select,textarea{font:inherit;font-size:16px;max-width:100%;width:100%;min-height:44px;padding:12px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text)}input[type=hidden]{display:none}input[type=checkbox],input[type=radio]{width:auto;min-height:24px}textarea{min-height:120px}label{display:block;font-weight:600;margin-bottom:7px}.content>form{max-width:700px;background:var(--surface);border:1px solid var(--line);padding:var(--panel-padding);border-radius:var(--radius)}.helptext{display:block;font-size:13px;color:var(--muted);margin-top:6px}.errorlist{color:var(--danger)}.button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:normal;text-align:center}.admin-company{margin:24px 0}.cardhead{flex-wrap:wrap}.rolebox{min-width:0}.rolebox a{display:inline-block;padding:6px 0}.user{min-width:0}.username{max-width:200px;overflow:hidden;text-overflow:ellipsis}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:var(--surface);padding:12px;z-index:20}a:focus-visible,button:focus-visible{outline:3px solid var(--accent)}
@media(max-width:700px){.app-footer{padding:20px 16px}.auth-shell{margin:12px}.auth-shell .topbar{padding:16px 4px}.content>form,.content article{padding:16px}.username{max-width:100px}.topbar{flex-wrap:wrap}.content form button{margin:4px 0}.sidebar.open{position:relative}.sidebar{gap:16px}.rolegrid{grid-template-columns:minmax(0,1fr)}.tablewrap{max-width:100%}.content h1{overflow-wrap:anywhere}}

/* All existing work screens share these components. */
.backlink{display:inline-block;min-height:44px;padding:10px 0}.record-row,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}.record-row>div{min-width:0}.record-row h2{overflow-wrap:anywhere}.form-actions,.action-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.action-links a{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:var(--control-radius);padding:8px 14px;text-decoration:none;background:var(--surface)}.project-title{display:inline-block;font-size:20px;font-weight:700;padding:8px 0;min-height:44px}.section-divider{border:0;border-top:1px solid var(--line);margin:32px 0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.metric-grid>div{padding:16px;background:var(--bg);border-radius:var(--control-radius)}.metric-grid small,.metric-grid strong{display:block}.metric-grid small{color:var(--muted)}.metric-grid strong{font-size:20px;margin-top:6px}.preserve-lines{white-space:pre-wrap}.danger{background:var(--surface);color:var(--danger);border-color:var(--danger)}.editor-form .form-actions{border-top:1px solid var(--line);padding-top:20px}.content ul.errorlist{padding-left:22px}.content select[multiple]{min-height:130px}.content input[type=file]{white-space:normal;overflow:hidden}
@media(max-width:700px){.record-row,.section-heading{align-items:flex-start;flex-direction:column}.metric-grid{grid-template-columns:minmax(0,1fr)}.form-actions>*{flex:1 1 auto}.form-actions input[type=hidden]{display:none}.action-links{gap:8px}.action-links a{flex:1 1 130px}.record-row>.button{width:100%}}

.workspace select{max-width:100%;font-size:16px}.switch-button{width:100%;margin-top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.compact-ui .content article{padding:16px}.compact-ui td{padding-top:12px;padding-bottom:12px}.audit-detail{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}.settings-actions form{display:inline}.source{display:block;font-size:12px;color:var(--muted)}

.work-line{border:1px solid var(--border,var(--line));border-radius:var(--small-radius);padding:16px;margin:14px 0;min-width:0}.work-line legend{font-weight:700;padding:0 6px}

.evidence-preview{display:block;max-width:100%;width:auto;height:auto;max-height:600px;object-fit:contain;border-radius:var(--control-radius)}.evidence-item{margin:16px 0;min-width:0}

.plan-scroll{overflow-x:auto;max-width:100%;border:1px solid var(--border,var(--line));border-radius:var(--control-radius);margin-top:16px}.plan-grid{width:max-content;min-width:100%;border-collapse:separate;border-spacing:2px}.plan-grid th,.plan-grid td{padding:0;text-align:center;min-width:22px;height:22px;font-size:12px}.plan-grid th:first-child{position:sticky;left:0;background:var(--surface);z-index:1;min-width:140px;max-width:180px;text-align:left;padding:6px;white-space:normal;overflow-wrap:anywhere}.plan-grid small{display:block;font-weight:normal}.plan-grid .plan-group{background:var(--accent-soft);text-align:left;padding:8px}.plan-grid td{background:var(--bg)}.plan-grid .plan-on{background:var(--palette-6c92c9)}.plan-grid .plan-color-1{background:var(--palette-97a8de)}.plan-grid .plan-color-2{background:var(--palette-65abb9)}.plan-grid .plan-color-3{background:var(--palette-d2b16f)}.plan-grid .plan-color-4{background:var(--palette-a998c5)}.plan-grid .plan-color-5{background:var(--palette-8da9c0)}.plan-grid .plan-conflict{background:var(--danger);color:var(--on-accent);font-weight:bold}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

.plan-scroll{position:relative}

.plan-grid .plan-actual{background:var(--palette-183c70);color:var(--surface);border:1px solid var(--palette-183c70)}

/* Administration hierarchy and compact data-entry components. */
.nav-group{display:grid;gap:2px}.nav-group+.nav-group{border-top:1px solid var(--nav-line);padding-top:16px;margin-top:12px}.sidebar{padding:var(--panel-padding) 16px;gap:20px}.sidebar nav{gap:12px}.navitem{padding:8px 12px}.nav-account{border-top:1px solid var(--nav-line);padding-top:8px}.nav-account summary{font-size:13px;color:var(--nav-muted)}.scope-banner{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;border:1px solid var(--line);background:var(--accent-soft);border-radius:var(--control-radius);padding:12px 16px;margin:12px 0;font-size:13px}.scope-banner span{flex:1 1 300px;color:var(--muted)}.tabs a{text-decoration:none;min-height:44px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-panel,.setup-guide{background:var(--surface);border:1px solid var(--line);border-radius:var(--small-radius);padding:18px;margin:16px 0}.admin-panel>a{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 0;border-top:1px solid var(--line);text-decoration:none;font-weight:600}.admin-panel>a span{font-size:12px;font-weight:400;color:var(--muted)}.setup-guide ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-left:22px;font-size:14px}.setup-guide small{display:block;color:var(--muted);margin-top:6px}.content .setup-guide h2,.content .admin-panel h2{margin:0 0 14px}.inline-actions{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.inline-actions a{min-height:36px;display:inline-flex;align-items:center}.catalogue .cardhead{padding:14px 18px;gap:12px}.catalogue .cardhead h2{margin:0}.catalogue th,.catalogue td{padding:10px 18px;white-space:normal}.catalogue .toolbar{padding:0 18px 14px}.catalogue input{min-height:40px;padding:8px 10px}.catalogue table td:first-child{min-width:150px}.filter-status{padding:12px 18px}.content>form.compact-form{max-width:900px;padding:20px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.form-field{min-width:0}.form-field label{font-size:13px;margin-bottom:5px}.compact-form input,.compact-form select{padding:8px 10px;min-height:40px}.compact-form .form-actions{margin-top:18px;padding-top:14px}.compact-form textarea{min-height:80px}.topbar{min-height:64px;height:auto;padding-top:10px;padding-bottom:10px}.intro{margin-bottom:18px}.content{padding-top:26px}.content .intro p{margin:6px 0}.backlink{padding:4px 0;min-height:32px}
@media(max-width:900px){.setup-guide ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.admin-grid,.field-grid{grid-template-columns:minmax(0,1fr)}.admin-panel{margin:4px 0}.scope-banner{align-items:flex-start}.compact-form input,.compact-form select{min-height:44px}.catalogue td,.catalogue th{padding:10px 12px}.setup-guide ol{gap:18px}.inline-actions .button{flex:1 1 auto}}
/* Level-based workspace. Shared components; narrow screens use real stacked rows. */
.level-switch{padding-bottom:20px;border-bottom:1px solid var(--palette-ffffff26);gap:8px!important}.level-link{display:flex;align-items:center;gap:12px;padding:12px 10px;color:var(--nav-muted);text-decoration:none;border-radius:var(--control-radius);font-weight:600;font-size:13px}.level-link span{font-size:11px;opacity:.65}.level-link.selected{background:var(--surface);color:var(--nav)}.level-link:hover{background:var(--palette-ffffff18);color:var(--on-accent)}.level-link.selected:hover{background:var(--accent-soft);color:var(--nav)}.sidebar .brand{color:var(--on-accent);text-decoration:none;font-size:17px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--palette-ffffff26);padding-top:16px}.section-nav{gap:4px!important}.context-name{display:block;font-weight:650;color:var(--text)}.page-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;font-size:12px}.demo-label{letter-spacing:1.5px;color:var(--muted);font-size:10px;border:1px solid var(--line);border-radius:4px;padding:3px 7px}.management-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--panel-radius);overflow:hidden;margin:18px 0}.management-toolbar{padding:var(--panel-padding);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.management-toolbar h2{margin:0}.management-toolbar p{font-size:13px;margin-bottom:0}.count{font-size:13px;background:var(--bg);padding:4px 8px;border-radius:6px;vertical-align:middle}.search-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.search-controls input{width:200px;min-width:0}.search-controls select{width:auto}.company-row{display:flex;gap:20px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.company-row:last-child{border:0}.company-avatar{width:42px;height:42px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);border-radius:12px;flex:none;font-weight:700}.company-identity{flex:1;min-width:0}.company-identity h3{margin:0 0 3px;font-size:15px;overflow-wrap:anywhere}.company-identity a{text-decoration:none;color:var(--text)}.company-identity .muted{font-size:12px}.status-pill{display:inline-block;padding:5px 10px;background:var(--accent-soft);border-radius:30px;white-space:nowrap;font-size:12px}.status-active{background:var(--success-soft);color:var(--success)}.status-suspended{background:var(--danger-soft);color:var(--danger)}.setup-strip{display:flex;flex-wrap:wrap;align-items:center;gap:24px;font-size:13px;margin:26px 0}.setup-strip span{color:var(--muted)}.setup-strip b{background:var(--surface);border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;width:24px;height:24px;margin-right:6px;font-size:11px}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.management-grid .management-panel{margin:0}.panel-pad{padding:26px}.panel-pad h2{margin-top:0;font-size:18px}.detail-list>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;text-align:right;overflow-wrap:anywhere}.plain-list{list-style:none;padding:0}.plain-list li{padding:8px 0}.feedback-row{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:20px 24px}.feedback-row h3{margin:5px 0;overflow-wrap:anywhere}.feedback-row p{margin:0;overflow-wrap:anywhere}.feedback-note{overflow-wrap:anywhere}.language-form{display:flex;align-items:center;gap:8px}.language-form select{width:auto}.login-panel{max-width:440px;margin:30px auto}.login-panel .editor-form{padding:0;background:none;border:0;box-shadow:none}.login-panel button{width:100%}.form-field:has(textarea){grid-column:1/-1}.level-platform .editor-form{max-width:860px}.empty-state{padding:48px 24px;text-align:center}.workspace-main{min-width:0}.intro h1{overflow-wrap:anywhere}.editor-form textarea{width:100%;font:inherit}.button,button{min-height:42px}.management-toolbar input,.management-toolbar select{margin:0}.topbar{gap:16px}.content{max-width:var(--page-width);width:100%;margin:0 auto}
@media(min-width:1000px){.sidebar{position:sticky;top:0;height:100vh;overflow:auto}.content{padding:var(--page-padding)}}
@media(max-width:1050px){.management-toolbar{align-items:stretch;flex-direction:column}.management-grid{gap:14px}}
@media(max-width:700px){.content{padding:20px 16px}.topbar{padding:12px 16px;min-height:68px;height:auto;flex-wrap:wrap}.crumb{font-size:11px;flex:1}.username{display:none}.management-grid{grid-template-columns:1fr}.management-toolbar{padding:18px}.search-controls{display:grid;grid-template-columns:1fr auto}.search-controls input{width:100%;grid-column:1/-1}.search-controls select{width:100%;min-width:0}.company-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:18px}.company-avatar{width:36px;height:36px}.company-row .status-pill{grid-column:2;justify-self:start}.company-row>.button{grid-column:2;justify-self:start}.setup-strip{gap:10px;align-items:flex-start;flex-direction:column}.panel-pad{padding:20px}.detail-list>div{flex-direction:column;gap:4px}.detail-list dd{text-align:left}.feedback-row{align-items:flex-start;flex-direction:column;padding:18px}.page-meta{margin-bottom:18px}.intro{gap:16px}.intro h1{font-size:28px}.auth-shell .topbar .brand{font-size:16px}.language-form{flex-wrap:wrap}.language-form select{max-width:150px}.auth-shell .topbar{justify-content:center}.login-panel{margin:12px auto}.management-panel{border-radius:var(--small-radius)}}
.company-row,.feedback-row{margin:0;border-radius:0;box-shadow:none}.company-row{padding-top:15px;padding-bottom:15px}.feedback-row{border-top:0;border-left:0;border-right:0}.company-list{overflow:hidden}@media(max-width:700px){.company-row{padding-top:16px;padding-bottom:16px}.detail-list>div{padding:9px 0}.panel-pad{padding:18px}.topbar .crumb{display:block;order:3;flex-basis:100%;font-size:11px}.page-meta a{overflow-wrap:anywhere}}
.backlink{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);text-decoration:none;white-space:nowrap;font-size:13px;min-height:42px}.intro>.backlink{flex:none}.company-row.selected-row{background:var(--accent-soft);box-shadow:inset 4px 0 var(--accent)}.company-row:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.ui-icon{width:17px;height:17px;vertical-align:-3px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;margin-right:7px;pointer-events:none}.backlink .ui-icon{margin:0}.feedback-images{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.feedback-images a{display:grid;gap:5px;font-size:12px;max-width:100%}.feedback-images img{width:200px;max-width:100%;max-height:160px;object-fit:contain;border:1px solid var(--line);border-radius:var(--control-radius)}.feedback-embedded{background:var(--surface);padding:16px}.feedback-embedded .intro{margin-bottom:14px}.feedback-embedded .editor-form{margin:0;padding:0;border:0;box-shadow:none}.feedback-embedded h1{font-size:23px}#feedback-dialog{width:min(760px,calc(100% - 24px));max-width:760px;padding:0;max-height:calc(100dvh - 24px);overflow:hidden}.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);gap:12px}#feedback-frame{display:block;border:0;width:100%;height:min(700px,calc(100dvh - 110px))}.toast a{color:var(--on-accent)}.form-field:has(input[type=file]){grid-column:1/-1}input[type=file]{max-width:100%;width:100%}@media(max-width:700px){.intro>.backlink{align-self:flex-end}.feedback-embedded .field-grid{grid-template-columns:1fr}.feedback-embedded{padding:12px}}
.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.feedback-embedded .form-actions button{white-space:normal}.tabs a{text-decoration:none}.feedback-row .status-pill{max-width:100%}

.clipboard-files{list-style:none;padding:0}.clipboard-files li{display:flex;gap:.5rem;align-items:center;justify-content:space-between;margin:.4rem 0}.clipboard-files span{overflow-wrap:anywhere;min-width:0}
#feedback-dialog[data-kind=company]{max-width:620px}#feedback-dialog[data-kind=company] #feedback-frame{height:min(340px,calc(100dvh - 110px))}

.dialog-toolbar{cursor:move;touch-action:none;user-select:none;flex-wrap:wrap}.dialog-actions{display:flex;gap:8px;margin-left:auto}.dialog-toolbar button{cursor:pointer}.dialog-toolbar h2:focus-visible{outline:2px solid var(--accent);outline-offset:4px}#feedback-restore{position:fixed;bottom:16px;right:16px;z-index:1000;box-shadow:0 4px 20px var(--palette-0003)}#feedback-restore[hidden],[data-feedback-minimize][hidden]{display:none}@media(max-width:400px){.dialog-actions{width:100%;justify-content:flex-end}.dialog-actions button{padding:8px;font-size:12px}#feedback-frame{height:min(700px,calc(100dvh - 170px))}}

#feedback-dialog{position:fixed}

#feedback-fab{position:fixed;right:16px;bottom:16px;z-index:999;box-shadow:0 4px 18px var(--palette-0003);max-width:calc(100% - 32px);font-size:13px}#feedback-restore{bottom:72px}.app-footer{padding-bottom:84px}

.clipboard-files li{flex-wrap:wrap}.clipboard-files .pending-image-preview{width:160px;max-width:100%;height:100px;object-fit:contain;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface)}.clipboard-files span{flex:1 1 120px}

.feedback-original{padding:14px 18px;margin:14px 0}.feedback-original summary{font-weight:700;cursor:pointer}.feedback-detail-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:24px;margin-top:24px;align-items:start}.feedback-event{padding:14px 18px;margin:12px 0}.feedback-event header{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px}.feedback-event .feedback-note p{margin:10px 0}.feedback-reply .editor-form{margin:12px 0;padding:18px}.feedback-detail-grid>*{min-width:0}@media(max-width:850px){.feedback-detail-grid{grid-template-columns:1fr;gap:16px}.feedback-reply{grid-row:1}}

/* Shared action/row feedback: selection is distinct from pointer hover. */
:is(button,.button,.backlink,.tab){transition:background-color .15s,border-color .15s,box-shadow .15s}
:is(button,.button,.backlink,.tab):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
:is(button,.button,.backlink):not(:disabled):not([aria-disabled="true"]):hover{filter:brightness(.92);box-shadow:0 2px 8px var(--palette-17263e24)}
 :is(.secondary,.backlink,.tab):not(:disabled):hover{background:var(--selected);color:var(--text)}
 :is(tbody tr,.company-row,.feedback-row):hover{background:var(--hover)}
:is(tbody tr,.company-row,.feedback-row).selected-row{background:var(--selected);box-shadow:inset 4px 0 var(--accent)}
:is(tbody tr,.feedback-row):focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.feedback-list{display:grid;gap:12px;margin:18px 0}
.content .feedback-list .feedback-row{margin:0;padding:18px 22px;border:1px solid var(--line);border-radius:var(--small-radius);box-shadow:none}
.feedback-original>summary{margin-bottom:12px}.feedback-original>.button{margin-bottom:8px}
@media(prefers-reduced-motion:reduce){:is(button,.button,.backlink,.tab){transition:none}}
@media(max-width:700px){.content .feedback-list .feedback-row{padding:16px}}
.content .feedback-list .feedback-row.selected-row{box-shadow:inset 4px 0 var(--accent)}

/* Compact modal toolbar, readable labels retained on 320px screens. */
#feedback-dialog .dialog-toolbar{display:flex;flex-wrap:nowrap;padding:8px;gap:6px}
#feedback-dialog .dialog-toolbar h2{font-size:15px;line-height:1.2;margin:0;min-width:0;flex:1}
#feedback-dialog .dialog-actions{width:auto;flex:none;gap:4px;margin:0}
#feedback-dialog .dialog-actions button{font-size:11px;min-height:36px;padding:6px;white-space:nowrap}
#feedback-dialog .dialog-actions .ui-icon{width:13px;height:13px;margin-right:3px}
.catalogue-explainer{padding:0 18px;color:var(--muted);font-size:13px}
.access-user{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 0;border-top:1px solid var(--line)}.access-user>div:first-child{flex:1;min-width:180px}.access-user p{margin:4px 0}.access-user details{width:100%}.access-user summary{cursor:pointer;color:var(--muted);font-size:13px}
.work-editor{max-width:1100px!important}.work-section{margin-bottom:20px}.work-help{margin:12px 0 18px}.work-help summary{cursor:pointer;color:var(--accent)}
.work-editor .work-line{display:grid;grid-template-columns:2fr 1fr 1fr 2fr auto;gap:12px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:var(--small-radius);margin:12px 0;min-width:0}.work-editor .work-line p{margin:0;min-width:0}.work-editor .work-line label{font-size:12px}.work-editor .work-line input,.work-editor .work-line select{width:100%;min-width:0}.work-editor .work-line input[type=checkbox]{width:auto}.work-line .errorlist{grid-column:1/-1}
@media(max-width:760px){.work-editor .work-line{grid-template-columns:1fr 1fr}.work-editor .work-line p:first-of-type,.work-editor .work-line p:nth-of-type(4){grid-column:1/-1}.work-editor{padding:16px!important}.access-user>.button{width:100%}}

.work-editor textarea{min-height:64px!important;height:76px}.work-editor .work-help{padding:10px 14px}.work-editor .form-field input,.work-editor .form-field select{min-height:42px}

/* Global component contract. Themes supply tokens, never duplicate selectors. */
button:disabled,[aria-disabled="true"]{opacity:.5;cursor:not-allowed}
input,textarea,select{accent-color:var(--accent)}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
label{color:var(--text)}
dialog{background:var(--surface)}
.sidebar,.sidebar .brand{color:var(--nav-text)}
.level-link.selected,.level-link.selected:hover{background:var(--surface);color:var(--text)}
.level-link:hover,.navitem:hover{background:var(--nav-active);color:var(--nav-text)}
.navitem.active{color:var(--nav-text)}
.notice{padding:12px 16px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--control-radius);background:var(--accent-soft);color:var(--text);font-size:14px}
.toast{background:var(--text);color:var(--surface)}
.toast a{color:var(--surface)}
.secondary{background:var(--surface);color:var(--text);border-color:var(--line)}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space)}
.theme-options article{min-width:0}
.theme-swatch{display:block;height:6px;border-radius:var(--control-radius)}
.swatch-standard{background:var(--swatch-standard)}.swatch-graphite{background:var(--swatch-graphite)}.swatch-garden{background:var(--swatch-garden)}
.source-photo{max-width:100%;max-height:65vh;object-fit:contain}
.admin-grid,.management-grid,.field-grid{gap:var(--space)}
@media(min-width:701px){.catalogue td,.catalogue th{padding:var(--cell-padding)}.panel-pad{padding:var(--panel-padding)}}
@media(max-width:700px){.theme-options{grid-template-columns:1fr;gap:0}}

/* Shared modern component layer. Both alternatives consume this single contract.
   Scoped deliberately: Standard blue retains its existing layout and styling. */
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) body{font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .shell{grid-template-columns:var(--nav-width) minmax(0,1fr);background:var(--bg)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .workspace-main{margin:var(--frame-margin);border:var(--frame-border);border-radius:var(--frame-radius);background:var(--frame-bg);overflow:clip}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar{background:var(--nav);padding:var(--sidebar-pad);border-right:var(--sidebar-border);gap:24px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar .brand{font-size:17px;font-weight:700;letter-spacing:-.4px;color:var(--nav-text);gap:10px;padding:0 8px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .brandmark{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:9px;font-size:13px;letter-spacing:-.5px;background:var(--accent);color:var(--on-accent)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .level-switch{padding:5px;background:var(--level-bg);border:1px solid var(--level-border);border-radius:10px;gap:4px!important}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .level-link{min-height:42px;padding:10px;gap:10px;font-size:12px;color:var(--nav-muted);border-radius:6px;font-weight:600}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .level-link span{opacity:1;color:inherit;font-variant-numeric:tabular-nums;font-size:10px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .level-link.selected{background:var(--level-selected-bg);color:var(--level-selected-text);box-shadow:var(--level-selected-shadow)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .level-link:hover{background:var(--nav-active);color:var(--nav-text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .section-nav{gap:4px!important}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .side-label{font-size:10px;letter-spacing:.8px;font-weight:600;margin:0 12px 8px;color:var(--nav-muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .navitem{justify-content:flex-start;align-items:center;gap:10px;min-height:42px;padding:10px 12px;font-size:13px;font-weight:550;color:var(--nav-muted);border-radius:6px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .navitem .ui-icon{width:18px;height:18px;margin:0;stroke-width:1.6}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .navitem.active{background:var(--menu-selected-bg);color:var(--menu-selected-text);box-shadow:var(--menu-selected-shadow)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .navitem:hover{background:var(--nav-active);color:var(--nav-text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .nav-account{border-color:var(--nav-line);margin-top:12px;padding-top:12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .nav-account summary{padding:8px 12px;font-size:12px;color:var(--nav-muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar-bottom{border-color:var(--nav-line);padding-top:16px;display:grid;gap:4px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .workspace{border:1px solid var(--nav-line);border-radius:8px;padding:12px;margin:0 4px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .workspace small{font-size:10px;letter-spacing:.6px;color:var(--nav-muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .topbar{background:var(--header-bg);min-height:64px;padding:12px 32px;gap:16px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .crumb{font-size:12px;letter-spacing:0;color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .context-name{font-size:13px;color:var(--text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .username{color:var(--muted);font-size:12px;text-decoration:none}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content{padding:var(--page-padding);max-width:var(--page-width)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .page-meta{margin-bottom:20px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .demo-label{font-size:9px;letter-spacing:1px;padding:2px 6px;border-radius:4px;background:var(--surface);color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) h1{font-size:var(--heading-size);letter-spacing:-.7px;font-weight:var(--title-weight);line-height:1.25}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) h2{font-size:17px;font-weight:650;letter-spacing:-.2px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) h3{font-weight:600}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro{align-items:center;gap:20px;margin-bottom:24px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro p{max-width:70ch;color:var(--muted);font-size:14px;margin:8px 0 0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro .eyebrow{font-size:11px;letter-spacing:.7px;color:var(--muted);margin:0 0 8px;font-weight:600}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .setup-strip{padding:14px 18px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);margin:0 0 24px;gap:12px 24px;font-size:12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .setup-strip b{background:var(--accent-soft);color:var(--accent);border:0;width:22px;height:22px;font-size:11px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tabs{background:var(--tab-bg);border:var(--tab-border);border-radius:var(--tab-radius);padding:var(--tab-padding);gap:var(--tab-gap);margin:0 0 24px;max-width:100%;align-items:center}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tab{min-height:40px;font-size:13px;font-weight:600;padding:var(--tab-item-padding);border-radius:var(--tab-radius);border-bottom:2px solid transparent;color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tab.active{background:var(--tab-active-bg);box-shadow:var(--tab-active-shadow);border-bottom-color:var(--tab-active-border);color:var(--accent)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tab:hover{background:var(--hover);color:var(--text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.button,.backlink){min-height:40px;font-size:13px;font-weight:600;line-height:1.4;border-radius:var(--control-radius);padding:10px 14px;box-shadow:var(--control-shadow);gap:7px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.button,.backlink) .ui-icon{margin:0;width:16px;height:16px;vertical-align:-3px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.primary){background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button.secondary,.button.secondary,.backlink){background:var(--surface);color:var(--text);border-color:var(--line)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.button,.backlink):not(:disabled):hover{filter:none;background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 3px var(--accent-soft)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button.secondary,.button.secondary,.backlink):hover{background:var(--hover);color:var(--text);border-color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.button,input,select,textarea,a,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) label{font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(input,select,textarea){background:var(--surface);font-size:16px;line-height:1.5;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--control-radius);box-shadow:var(--control-shadow);color:var(--text)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(input,select,textarea)[aria-invalid=true]{border-color:var(--danger)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(input[type=checkbox],input[type=radio]){min-height:20px;width:20px;height:20px;box-shadow:none;vertical-align:middle}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .helptext{font-size:12px;line-height:1.6;color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .errorlist{font-size:13px;color:var(--danger)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.card,.management-panel,.admin-panel,.setup-guide,.content article,.content>form,.content details){border:1px solid var(--line);border-radius:var(--panel-radius);box-shadow:var(--shadow);background:var(--surface)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.management-toolbar,.cardhead){padding:var(--toolbar-padding);border-bottom:1px solid var(--line);gap:20px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .management-toolbar h2{font-size:16px;margin:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .management-toolbar p{font-size:12px;line-height:1.5;max-width:60ch}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .count{background:var(--accent-soft);color:var(--accent);border:1px solid var(--line);font-size:11px;vertical-align:middle;display:inline-block;padding:2px 7px;border-radius:20px;margin-left:4px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .search-controls{gap:8px;flex-shrink:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .search-controls input{width:220px;font-size:14px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content .company-row{padding:var(--list-row-padding);margin:0;box-shadow:none;border:0;border-radius:0;border-bottom:1px solid var(--line);gap:16px;background:var(--surface)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-row:last-child{border-bottom:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-avatar{width:38px;height:38px;border-radius:var(--control-radius);background:var(--accent-soft);color:var(--accent);border:1px solid var(--line);font-size:14px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-identity h3{font-size:14px;margin:0 0 3px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-identity .muted{font-size:12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-row>.button{background:var(--row-action-bg);border-color:var(--row-action-border);color:var(--accent);box-shadow:none}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.content .company-row,tbody tr,.feedback-row):hover{background:var(--hover)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.content .company-row,tbody tr,.content .feedback-list .feedback-row).selected-row{background:var(--selected);box-shadow:inset 3px 0 var(--accent)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .status-pill{font-size:11px;font-weight:550;line-height:1.6;padding:2px 8px;border-radius:20px;border:1px solid var(--line);background:var(--accent-soft);color:var(--accent)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .status-active{background:var(--success-soft);color:var(--success);border-color:var(--success-soft)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .status-suspended{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-soft)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(table th,.catalogue th){padding:12px 20px;font-size:12px;font-weight:550;text-transform:none;letter-spacing:0;background:var(--table-head);color:var(--muted);border-top:0;border-bottom:1px solid var(--line)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(table td,.catalogue td){padding:var(--cell-padding);font-size:13px;border-color:var(--line);line-height:1.5}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) table{font-variant-numeric:tabular-nums}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .catalogue .toolbar{padding:16px 20px;margin:0;border-bottom:1px solid var(--line);background:var(--surface)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .catalogue .cardhead{border-bottom:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .catalogue .tabs{margin:0 20px 12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .catalogue-explainer{padding:0 20px;font-size:12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .plan-grid th,:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .plan-grid td{padding:0;min-width:22px;height:22px;font-size:12px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .plan-grid th:first-child{padding:6px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content>form{max-width:860px;padding:var(--panel-padding)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .field-grid{gap:20px 24px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .form-actions{gap:10px;margin-top:24px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .admin-grid{gap:var(--space)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .admin-panel{padding:var(--panel-padding);margin:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .admin-panel>a{font-size:13px;padding:14px 0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .scope-banner{border-left:3px solid var(--accent);background:var(--accent-soft);font-size:12px;padding:12px 16px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .notice{font-size:13px;font-weight:400;line-height:1.6;padding:12px 16px;border:1px solid var(--line);border-left:3px solid var(--accent);box-shadow:none}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content .feedback-list .feedback-row{padding:var(--list-row-padding);border-radius:var(--panel-radius);box-shadow:var(--shadow)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .feedback-row h3{font-size:15px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .feedback-event header{font-size:12px;color:var(--muted)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .detail-list>div{padding:14px 0;font-size:13px;border-color:var(--line)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .metric-grid>div{background:var(--table-head);border:1px solid var(--line);border-radius:var(--control-radius)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .metric-grid strong{font-size:24px;font-weight:600;letter-spacing:-.5px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .feedback-embedded{background:var(--surface);padding:20px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .feedback-embedded .editor-form{box-shadow:none;border:0}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .dialog-toolbar{background:var(--table-head);border-color:var(--line)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .toast{background:var(--text);color:var(--surface);border-radius:var(--control-radius);box-shadow:var(--shadow)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .app-footer{font-size:11px;padding:20px 32px 84px;border-top:1px solid var(--line);margin-top:20px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell{max-width:480px;margin:6vh auto}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .workspace-main{margin:0;border:0;overflow:visible;background:transparent}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .topbar{padding:16px 0;background:transparent;flex-wrap:wrap}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .content{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .app-footer{border:0;margin:0;text-align:center;padding:24px}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .login-panel{margin:8px auto}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .login-panel .editor-form{border:0;box-shadow:none;background:transparent}
@media(max-width:1100px){:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .management-toolbar{align-items:stretch;flex-direction:column}:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .search-controls input{width:100%;max-width:360px}}
@media(max-width:1000px){:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .shell{grid-template-columns:220px minmax(0,1fr)}:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content{padding:24px}:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar{padding:24px 12px}}
@media(max-width:700px){
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .shell{display:block}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .workspace-main{margin:0;border:0;border-radius:0;overflow:visible}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar{padding:20px 16px;border-bottom:1px solid var(--line)}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .sidebar.open{display:flex;height:auto;max-height:none;position:relative}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content{padding:20px 16px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .topbar{padding:12px 16px;min-height:64px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) h1{font-size:25px;letter-spacing:-.5px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro{align-items:stretch;flex-direction:column;gap:16px;margin-bottom:20px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro>.button{width:auto;align-self:flex-start}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .intro p{font-size:13px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .setup-strip{padding:12px;gap:10px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tabs{margin-bottom:20px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .tab{min-height:44px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(button,.button,.backlink,input,select){min-height:44px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .search-controls{grid-template-columns:minmax(0,1fr) auto;display:grid}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .search-controls input{grid-column:1/-1;font-size:16px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.management-toolbar,.cardhead){padding:16px;gap:12px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .content .company-row{padding:16px;gap:10px 12px;grid-template-columns:38px minmax(0,1fr)}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .company-row>.button{padding:8px 0;justify-self:start}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(.panel-pad,.content>form,.content article,.admin-panel){padding:16px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .theme-options article{padding:16px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell{margin:16px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .content{padding:20px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .auth-shell .topbar{padding:12px 0;justify-content:space-between}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .feedback-embedded{padding:12px}
 :is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .app-footer{padding:20px 16px 84px}
}

/* Schematic theme previews; presentation only, never duplicate form logic. */
.theme-mini{height:132px;display:grid;grid-template-columns:28% 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#f5f6fa;margin-bottom:18px;gap:0}
.mini-nav{background:#17263e;padding:12px 8px;display:flex;flex-direction:column;gap:10px}
.mini-nav b{width:18px;height:18px;border-radius:4px;background:#365fc0;margin-bottom:8px}
.mini-nav i{display:block;height:5px;background:#acb9cf;border-radius:2px}
.mini-work{padding:14px 12px;min-width:0}
.mini-work>b{display:block;width:60%;height:7px;background:#344054;border-radius:2px;margin-bottom:14px}
.mini-tabs{display:flex;gap:8px;margin-bottom:10px}.mini-tabs i{width:28px;height:5px;background:#365fc0;border-radius:2px}
.mini-table{background:white;border:1px solid #e4e7ec;border-radius:4px;padding:0 8px}.mini-table i{display:block;height:16px;border-bottom:1px solid #e4e7ec}.mini-table i:last-child{border:0}
.mini-studio{background:#f9fafb}.mini-studio .mini-nav{background:white;border-right:1px solid #eaecf0}.mini-studio .mini-nav b,.mini-studio .mini-tabs i{background:#6941c6}.mini-studio .mini-nav i{background:#d0d5dd}.mini-studio .mini-work{background:white;margin:6px;border:1px solid #eaecf0;border-radius:8px}.mini-studio .mini-tabs{padding:4px;background:#f4f3ff;border-radius:4px}
.mini-operations .mini-nav{background:#182433}.mini-operations .mini-nav b,.mini-operations .mini-tabs i{background:#1765b2}.mini-operations .mini-table{border-radius:2px}

/* Semantic danger and input boundaries remain distinguishable in both variants. */
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) :is(input,select,textarea){border-color:var(--control-line)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .danger,:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) button.danger{background:var(--surface);color:var(--danger);border-color:var(--danger)}
:is(html[data-theme="studio"],html[data-theme="operations"],html[data-theme="workverio"]) .danger:not(:disabled):hover{background:var(--danger-soft);color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}

/* Shared contextual help: compact by default, native keyboard disclosure. */
.page-heading{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}
.page-heading h1{margin:0}
.page-help summary{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;color:var(--accent);padding:.45rem .65rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:.875rem;list-style:none}
.page-help summary::-webkit-details-marker{display:none}
.page-help summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.page-help-content{position:absolute;left:0;top:100%;z-index:30;width:min(100%,40rem);box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:0 8px 24px #0002}
.page-help-content p:first-child{margin-top:0}.page-help-content p:last-child{margin-bottom:0}

.content .page-help{padding:0;margin:0;border:0;background:transparent;box-shadow:none;border-radius:0}

/* Compact global chrome. Owner-approved icon-only exceptions: help/profile/logout. */
html[data-theme] body .topbar{min-height:52px;height:52px;padding:4px 16px;gap:12px;flex-wrap:nowrap}
html[data-theme] body .topbar .crumb{display:block;min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
html[data-theme] body .topbar .context-name{display:inline;margin-left:8px;font-size:12px}
html[data-theme] body .content{padding-top:18px}
.account-tools{display:flex;align-items:center;gap:8px;margin-top:-12px}
.account-tools form{margin:0}
html[data-theme] body .icon-control{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;border:1px solid var(--nav-line);border-radius:var(--control-radius);color:var(--nav-text);background:transparent}
html[data-theme] body .app-footer{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:14px 20px}
html[data-theme] body .app-footer .page-help{padding:0;margin:0;border:0;background:none;box-shadow:none}
html[data-theme] body .page-help summary{padding:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;border:0;background:none}
html[data-theme] body .app-footer .page-help-content{top:auto;bottom:calc(100% - 8px);left:16px;width:min(40rem,calc(100% - 32px));max-height:60vh;overflow:auto}
html[data-theme] body .app-footer .page-help-content .scope-banner{margin:0;border:0;padding:0;background:none}
html[data-theme] body .app-footer .page-help-content p{font-size:14px}
html[data-theme] body .mobilemenu{min-height:40px;padding:6px 10px;font-size:13px}
@media(max-width:700px){
 html[data-theme] body .topbar{position:relative;z-index:60;padding:4px 12px}
 html[data-theme] body .sidebar.open{position:fixed;top:52px;left:0;bottom:0;width:min(320px,100%);overflow:auto;z-index:55;box-shadow:var(--shadow)}
 html[data-theme] body .app-footer{padding-bottom:80px}
 html[data-theme] body .app-footer .page-help-content{bottom:calc(100% - 8px)}
}

html[data-theme] body .auth-shell .topbar{height:auto;min-height:52px;flex-wrap:wrap}

/* Page help belongs beside the title; only the environment badge is in footer. */
html[data-theme] body .heading-with-help{position:relative;display:flex;align-items:center;gap:8px;max-width:100%;min-width:0}
html[data-theme] body .heading-with-help h1{margin:0;min-width:0}
html[data-theme] body .heading-with-help .page-help{flex:none;margin:0;padding:0;background:none;border:0;box-shadow:none}
html[data-theme] body .heading-with-help .page-help-content{top:calc(100% + 8px);bottom:auto;left:0;width:min(40rem,calc(100vw - 48px));max-height:60vh;overflow:auto;text-align:left;font-weight:400}
html[data-theme] body .heading-with-help .page-help-content p{font-size:14px}
/* Shared compact actions, master/detail and company rows — all themes. */
html[data-theme] body .account-tools{justify-content:center;gap:10px}
html[data-theme] body .account-tools .icon-control{width:34px;height:34px;min-height:34px;padding:7px}
html[data-theme] body .title-actions,html[data-theme] body .tabs-actions{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}
html[data-theme] body .title-actions>div{min-width:0}
html[data-theme] body .title-actions>.button,html[data-theme] body .tabs-actions>.button{flex:none;margin:0;max-width:45%;white-space:normal;text-align:center}
html[data-theme] body .tabs-actions{margin-bottom:16px}
html[data-theme] body .tabs-actions .tabs{margin:0;min-width:0;overflow:auto;flex:1}
html[data-theme] body .content>.backlink{display:inline-flex;margin:0 0 8px;min-height:28px;padding:2px 0;font-size:.85rem}
html[data-theme] body .intro:has(>.backlink){flex-direction:row;align-items:center;gap:8px}
html[data-theme] body .intro>.backlink{margin:0;flex:none;font-size:.85rem;max-width:40%}
html[data-theme] body .company-row{display:block;padding:16px 20px}
html[data-theme] body .company-row-heading{display:flex;align-items:center;gap:10px}
html[data-theme] body .company-row-heading h3{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}
html[data-theme] body .company-avatar{flex:none;width:34px;height:34px}
html[data-theme] body .company-row-heading .icon-control{flex:none}
html[data-theme] body .company-row-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}
.results-count{margin:0;padding:8px 20px;font-size:.85rem;color:var(--muted)}
.role-detail{margin-top:20px}.table-wrap{max-width:100%;overflow-x:auto}.role-detail td form{margin:0}.role-detail td button{white-space:normal}
@media(max-width:600px){html[data-theme] body .title-actions h1{font-size:1.3rem}html[data-theme] body .tabs-actions>.button{font-size:.8rem;padding:8px;max-width:38%}html[data-theme] body .tabs-actions .tab{padding:10px 8px;font-size:.8rem}html[data-theme] body .company-row{padding:14px}html[data-theme] body .search-controls{display:flex;flex-direction:column;align-items:stretch;width:100%}html[data-theme] body .search-controls input{min-width:0;width:100%}}
html[data-theme] body .company-row-heading .icon-control{color:var(--accent);background:var(--surface);border:1px solid var(--line);text-decoration:none}
@media(max-width:600px){html[data-theme] body .tabs-actions .tab{font-size:.72rem;padding:10px 5px;white-space:normal;text-align:center}html[data-theme] body .tabs-actions>.button{max-width:30%;font-size:.75rem;padding:8px 6px}html[data-theme] body .tabs-actions{gap:6px}}
html[data-theme] body :is(.roles-master,.role-detail) table{min-width:0;width:100%;table-layout:fixed}
html[data-theme] body :is(.roles-master,.role-detail) :is(td,th){overflow-wrap:anywhere;white-space:normal;padding:10px}
html[data-theme] body .role-detail .tabs{display:flex;white-space:normal}
html[data-theme] body .role-detail .tab{white-space:normal;flex:1;text-align:center}
@media(max-width:600px){html[data-theme] body .role-detail :is(td,th){padding:6px;font-size:.8rem}html[data-theme] body .role-detail td button{padding:6px;gap:3px;flex-wrap:wrap;justify-content:center;font-size:.8rem;max-width:100%}}
@media(max-width:600px){html[data-theme] body .tabs-actions .tabs{gap:2px}html[data-theme] body .tabs-actions .tab{white-space:nowrap;flex:none;padding-inline:4px;overflow-wrap:normal}}

/* WorkVerio shares the modern components; brand-specific accessible typography. */
html[data-theme="workverio"] body{font-family:WorkVerioInter,Inter,system-ui,sans-serif;font-size:16px}
html[data-theme="workverio"] .sidebar .brand{color:var(--text)}
html[data-theme="workverio"] .brandmark{background:transparent;padding:0}
.mini-workverio{--mini-nav:#fff;--mini-accent:#2563EB;background:#F6F8FB}.mini-workverio .mini-nav{background:#172B4D}.mini-workverio .mini-tabs i:first-child{background:#2563EB}

/* Feedback39: shared wider desktop navigation; tablet/mobile rules unchanged. */
@media(min-width:1001px){html[data-theme] .shell{grid-template-columns:var(--nav-desktop-width) minmax(0,1fr)}}
