:root{--orbit-navy:#1f3a54;--orbit-deep:#17334e;--orbit-teal:#00708a;--orbit-aqua:#5b9ea7;--orbit-aqua-soft:#e4f0f1;--orbit-cream:#ffedcd;--orbit-canvas:#f2f4f7;--orbit-ink:#102d3a;--orbit-muted:#667d84;--orbit-line:#d8e7e6;--orbit-shadow:0 18px 46px rgba(18,55,74,.10)}*{box-sizing:border-box}body.universal-orbit{margin:0;color:var(--orbit-ink);background:var(--orbit-canvas);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.uo-app{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.uo-sidebar{position:sticky;top:0;height:100vh;padding:16px 11px;background:linear-gradient(180deg,#17334e 0%,#1f3a54 68%,#174b5d 100%);color:#fff;overflow-y:auto}.uo-brand{display:flex;align-items:center;gap:11px;padding:8px 10px 25px;border-bottom:1px solid rgba(255,255,255,.13)}.uo-brand img{width:40px;height:40px;object-fit:contain}.uo-brand strong{display:block;font-size:18px;letter-spacing:-.03em}.uo-brand small{display:block;margin-top:2px;color:#bcd2dc;font-size:11px;font-weight:700}.uo-board{margin:17px 8px 12px;padding:12px 13px;border:1px solid rgba(164,212,220,.28);border-radius:10px;background:rgba(2,26,45,.26)}.uo-board small{display:block;color:#a9cad1;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.uo-board strong{display:block;margin-top:5px;font-size:13px;line-height:1.25}.uo-nav-label{margin:20px 12px 7px;color:#99bbc7;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.uo-nav a{display:flex;align-items:center;gap:10px;margin:2px 0;padding:10px 12px;border-radius:8px;color:#dfedf0;text-decoration:none;font-size:13px;font-weight:750}.uo-nav a:hover{background:rgba(255,255,255,.09)}.uo-nav a.active{color:var(--orbit-deep);background:var(--orbit-cream);box-shadow:inset 4px 0 0 var(--orbit-teal)}.uo-icon{width:17px;text-align:center;color:#8ed1d5;font-size:14px}.uo-nav a.active .uo-icon{color:var(--orbit-teal)}.uo-footer{margin:28px 10px 0;padding:16px 0;border-top:1px solid rgba(255,255,255,.13);color:#b5d0d7;font-size:11px;line-height:1.45}.uo-main{min-width:0}.uo-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:62px;padding:0 24px;background:#fff;border-bottom:1px solid var(--orbit-line)}.uo-topbar .crumb{color:var(--orbit-muted);font-size:13px;font-weight:700}.uo-topbar .crumb strong{color:var(--orbit-teal)}.uo-topbar-link{color:var(--orbit-teal);font-size:13px;font-weight:850;text-decoration:none}.uo-page{width:100%;max-width:none;margin:0;padding:18px 24px 40px}.uo-kicker{color:var(--orbit-teal);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.uo-hero{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:26px 30px;border:1px solid #cfe6e5;border-radius:18px;background:linear-gradient(118deg,#fff 0%,#f5fbfb 62%,#e4f3f2 100%);box-shadow:var(--orbit-shadow)}.uo-hero h1{margin:6px 0 7px;font-size:38px;letter-spacing:-.045em;line-height:1.05}.uo-hero p{max-width:715px;margin:0;color:var(--orbit-muted);font-size:15px;line-height:1.5}.uo-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid #c5dfdf;border-radius:999px;background:#fff;color:var(--orbit-teal);font-size:11px;font-weight:850}.uo-setup-grid{display:grid;grid-template-columns:262px minmax(0,1fr);gap:22px;margin-top:24px}.uo-card{background:#fff;border:1px solid var(--orbit-line);border-radius:16px;box-shadow:0 8px 28px rgba(21,57,75,.055)}.uo-panel-nav{padding:15px}.uo-panel-nav h2{margin:8px 10px 15px;font-size:15px}.uo-panel-nav a{display:flex;align-items:center;gap:9px;margin:3px 0;padding:11px 11px;border-radius:9px;color:var(--orbit-ink);font-size:13px;font-weight:800;text-decoration:none}.uo-panel-nav a:hover,.uo-panel-nav a.active{background:var(--orbit-aqua-soft);color:var(--orbit-teal)}.uo-panel-nav a.type{margin-left:7px;padding-left:14px;font-weight:700}.uo-panel-nav .plus{color:var(--orbit-teal)}.uo-content{padding:27px 29px}.uo-content h2{margin:0;font-size:25px;letter-spacing:-.035em}.uo-content>.lead{margin:7px 0 23px;color:var(--orbit-muted);font-size:14px;line-height:1.5}.uo-notice{margin:0 0 19px;padding:12px 14px;border-radius:10px;background:#e7f4f3;color:#185d68;font-size:13px;font-weight:700}.uo-notice.error{background:#fff0ef;color:#9c3f37}.uo-record{padding:21px 0;border-top:1px solid var(--orbit-line)}.uo-record:first-of-type{padding-top:0;border-top:0}.uo-record-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.uo-record h3{margin:0;font-size:19px}.uo-record p{margin:5px 0 13px;color:var(--orbit-muted);line-height:1.4}.uo-fields{display:flex;flex-wrap:wrap;gap:8px}.uo-field{min-width:115px;padding:9px 10px;border:1px solid #dceaea;border-radius:9px;background:#fbfdfd}.uo-field strong{display:block;font-size:11px}.uo-field span{display:block;margin-top:2px;color:var(--orbit-muted);font-size:11px}.uo-button,.uo-button-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:0;border-radius:9px;background:var(--orbit-teal);color:#fff;cursor:pointer;font:inherit;font-size:13px;font-weight:850;text-decoration:none}.uo-button:hover{background:#005e73}.uo-button-secondary{border:1px solid #b9d9d9;background:#fff;color:var(--orbit-teal)}.uo-mini{min-height:33px;padding:0 10px;font-size:12px}.uo-form-card{margin-top:20px;padding:19px;border:1px solid #d2e7e6;border-radius:13px;background:#f8fcfc}.uo-form-card h3{margin:0 0 4px;font-size:15px}.uo-form-card p{margin:0 0 15px;color:var(--orbit-muted);font-size:13px}.uo-form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.uo-form-row.thirds{grid-template-columns:1fr 1fr auto}.uo-field-wrap label{display:block;margin:0 0 6px;font-size:11px;font-weight:850}.uo-field-wrap input,.uo-field-wrap textarea,.uo-field-wrap select{width:100%;padding:10px 11px;border:1px solid #cddfdf;border-radius:8px;background:#fff;color:var(--orbit-ink);font:inherit;font-size:13px}.uo-field-wrap textarea{min-height:77px;resize:vertical}.uo-field-wrap.wide{grid-column:1/-1}.uo-check{display:flex;align-items:center;gap:7px;margin:9px 0;color:var(--orbit-muted);font-size:12px;font-weight:700}.uo-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.uo-section{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border:1px solid #d8e9e8;border-radius:10px}.uo-section.enabled{border-color:#b8dedd;background:#f4fbfa}.uo-section strong{display:block;font-size:13px}.uo-section span{display:block;margin-top:3px;color:var(--orbit-muted);font-size:11px}.uo-section .uo-button-secondary{flex:0 0 auto}.uo-nav-builder{display:grid;grid-template-columns:1fr 310px;gap:20px}.uo-nav-list{padding:4px 0}.uo-nav-item{display:flex;align-items:center;gap:11px;padding:13px 8px;border-bottom:1px solid var(--orbit-line)}.uo-nav-item:last-child{border-bottom:0}.uo-nav-grip{color:#8aa5aa;letter-spacing:-2px}.uo-nav-item strong{display:block;font-size:13px}.uo-nav-item small{display:block;margin-top:3px;color:var(--orbit-muted);font-size:11px}.uo-settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.uo-setting{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #d8e9e8;border-radius:10px;font-size:13px;font-weight:800}.uo-setting input{width:17px;height:17px;accent-color:var(--orbit-teal)}.uo-empty{padding:30px;border:1px dashed #b9d8d7;border-radius:12px;background:#fbfefe;color:var(--orbit-muted);text-align:center;line-height:1.55}.uo-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:24px}.uo-board-card{position:relative;min-height:190px;padding:21px;border:1px solid #d6e8e7;border-radius:15px;background:#fff;color:var(--orbit-ink);text-decoration:none;box-shadow:0 8px 24px rgba(21,57,75,.05);overflow:hidden}.uo-board-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(#00708a,#5b9ea7)}.uo-board-card:hover{transform:translateY(-2px);box-shadow:var(--orbit-shadow)}.uo-board-card small{color:var(--orbit-teal);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.uo-board-card h2{margin:13px 0 8px;font-size:20px}.uo-board-card p{margin:0;color:var(--orbit-muted);font-size:13px;line-height:1.45}.uo-create{margin-top:24px;padding:28px}.uo-create h2{margin:0;font-size:24px}.uo-create .lead{margin:7px 0 22px;color:var(--orbit-muted)}@media(max-width:1100px){.uo-app{grid-template-columns:214px minmax(0,1fr)}.uo-page{padding:18px 20px 36px}.uo-topbar{padding:0 20px}.uo-nav-builder{grid-template-columns:1fr}.uo-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.uo-app{display:block}.uo-sidebar{display:none}.uo-page{padding:18px 14px 42px}.uo-topbar{height:auto;min-height:60px;padding:14px}.uo-hero{display:block;padding:22px}.uo-hero h1{font-size:31px}.uo-setup-grid{grid-template-columns:1fr}.uo-panel-nav{display:flex;gap:5px;overflow:auto}.uo-panel-nav h2{display:none}.uo-panel-nav a{white-space:nowrap}.uo-content{padding:20px}.uo-form-row,.uo-form-row.thirds,.uo-section-grid,.uo-settings-list,.uo-dashboard-grid{grid-template-columns:1fr}.uo-record-head{display:block}.uo-record-head .uo-button-secondary{margin-top:10px}}.uo-helper{color:var(--orbit-muted);font-weight:650}.uo-field-library{margin-top:20px;padding:19px;border:1px solid #d2e7e6;border-radius:13px;background:#f8fcfc}.uo-field-library h3{margin:0 0 4px;font-size:15px}.uo-field-library p{margin:0 0 15px;color:var(--orbit-muted);font-size:13px;line-height:1.45}.uo-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.uo-preset{position:relative;width:100%;min-height:77px;padding:12px 38px 11px 12px;border:1px solid #d8e9e8;border-radius:10px;background:#fff;color:var(--orbit-ink);text-align:left;cursor:pointer}.uo-preset:hover{border-color:#73b8bc;background:#f6fbfb}.uo-preset strong,.uo-preset span{display:block}.uo-preset strong{font-size:13px}.uo-preset span{margin-top:3px;color:var(--orbit-muted);font-size:11px}.uo-preset b{position:absolute;right:11px;top:29px;color:var(--orbit-teal);font-size:11px}.uo-inline-error{margin:13px 0 0}@media(max-width:780px){.uo-preset-grid{grid-template-columns:1fr}}.uo-preset.selected{border-color:var(--orbit-teal);background:#e7f4f3;box-shadow:inset 0 0 0 1px var(--orbit-teal)}.uo-preset.selected b{color:#0a5966}.uo-staged-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding-top:14px;border-top:1px solid #d8e9e8;color:var(--orbit-muted);font-size:12px;font-weight:700}.uo-staged-bar .uo-button:disabled{cursor:not-allowed;background:#91b9be}@media(max-width:780px){.uo-staged-bar{align-items:stretch;flex-direction:column}}.uo-record-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:26px 30px;border:1px solid #cfe6e5;border-radius:18px;background:linear-gradient(118deg,#fff,#edf9f8);box-shadow:var(--orbit-shadow)}.uo-record-page-head h1{margin:6px 0;font-size:36px;letter-spacing:-.045em}.uo-record-page-head p{margin:0;color:var(--orbit-muted);font-size:14px}.uo-record-actions{display:flex;gap:10px;flex-wrap:wrap}.uo-record-editor{margin-top:12px;padding:20px 22px}.uo-record-editor h2{margin:0;font-size:21px}.uo-record-editor>p{margin:6px 0 20px;color:var(--orbit-muted)}.uo-record-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--orbit-line)}.uo-profile-tabs{display:flex;gap:6px;overflow:auto;margin-top:12px;padding:7px;border:1px solid var(--orbit-line);border-radius:13px;background:#fff}.uo-profile-tabs span{white-space:nowrap;padding:9px 13px;border-radius:8px;color:var(--orbit-muted);font-size:13px;font-weight:800}.uo-profile-tabs span.active{background:var(--orbit-teal);color:#fff}.uo-profile-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.7fr);gap:20px}.uo-profile-context{align-self:start;margin-top:22px;padding:22px}.uo-profile-context h2{margin:0;font-size:18px}.uo-profile-context>p{margin:7px 0 17px;color:var(--orbit-muted);font-size:13px;line-height:1.5}.uo-panel-status{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid var(--orbit-line);font-size:13px}.uo-panel-status span{color:#19845d;font-size:11px;font-weight:800}@media(max-width:780px){.uo-record-page-head,.uo-profile-grid{display:block}.uo-record-page-head h1{font-size:29px}.uo-record-page-head .uo-button-secondary,.uo-record-actions{margin-top:16px}.uo-record-editor,.uo-profile-context{padding:19px}}.uo-type-library{margin-top:22px;padding:26px}.uo-type-library>h2{margin:0 0 8px;font-size:20px}.uo-type-library article{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;border-top:1px solid var(--orbit-line)}.uo-type-library article h3{margin:0;font-size:18px}.uo-type-library article p{margin:5px 0 0;color:var(--orbit-muted);font-size:13px}.uo-dialog{width:min(660px,calc(100vw - 32px));padding:0;border:0;border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(12,41,56,.34)}.uo-dialog::backdrop{background:rgba(18,47,65,.52);backdrop-filter:blur(3px)}.uo-dialog form{padding:30px}.uo-dialog h2{margin:6px 0;font-size:28px;letter-spacing:-.04em}.uo-dialog p{margin:0 0 21px;color:var(--orbit-muted);line-height:1.5}.uo-wizard-head{margin:0 0 20px;padding:25px 28px;border:1px solid #cfe6e5;border-radius:17px;background:linear-gradient(118deg,#fff,#edf9f8);box-shadow:var(--orbit-shadow)}.uo-wizard-head h1{margin:6px 0;font-size:31px;letter-spacing:-.04em}.uo-wizard-head p{margin:0;color:var(--orbit-muted);font-size:14px}.uo-profile-setup{padding:27px}.uo-profile-setup h2{margin:0;font-size:21px}.uo-profile-setup>p{margin:6px 0 20px;color:var(--orbit-muted)}.uo-preset.locked{cursor:default;opacity:.76}.uo-preset:disabled{color:var(--orbit-ink)}@media(max-width:780px){.uo-type-library article{display:block}.uo-type-library article .uo-button-secondary{margin-top:14px}.uo-dialog form{padding:21px}.uo-wizard-head{padding:21px}}.uo-setup-complete{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:19px 22px;border:1px solid #b9dedd;border-radius:13px;background:linear-gradient(100deg,#f7fdfc,#e8f5f4)}.uo-setup-complete strong,.uo-setup-complete span{display:block}.uo-setup-complete strong{font-size:15px}.uo-setup-complete span{margin-top:4px;color:var(--orbit-muted);font-size:13px}.uo-live-profile-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:20px 22px;border-radius:18px;background:linear-gradient(115deg,#163c58,#006f87 68%,#4a9eae);color:#fff;box-shadow:var(--orbit-shadow)}.uo-live-profile-head h1{margin:4px 0;font-size:34px;letter-spacing:-.045em}.uo-live-profile-head p{margin:0;color:#d5ebee;font-size:14px}.uo-live-profile-head .uo-kicker{color:#85dce0}.uo-live-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.uo-live-metrics span{min-height:92px;padding:14px 16px;border:1px solid var(--orbit-line);border-radius:13px;background:#fff}.uo-live-metrics strong,.uo-live-metrics small{display:block}.uo-live-metrics strong{font-size:21px}.uo-live-metrics small{margin-top:3px;color:var(--orbit-muted);font-size:12px}.uo-live-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.65fr);gap:20px}.uo-live-panels{align-self:start;margin-top:22px;padding:21px}.uo-live-panels h2{margin:0;font-size:18px}.uo-live-panels>p{margin:6px 0 15px;color:var(--orbit-muted);font-size:13px;line-height:1.45}.uo-live-panels>div:not(.uo-empty){padding:12px 0;border-top:1px solid var(--orbit-line)}.uo-live-panels strong,.uo-live-panels span{display:block}.uo-live-panels strong{font-size:13px}.uo-live-panels span{margin-top:3px;color:var(--orbit-muted);font-size:11px}@media(max-width:780px){.uo-setup-complete,.uo-live-profile-head{display:block}.uo-setup-complete .uo-button,.uo-live-profile-head .uo-record-actions{margin-top:15px}.uo-live-metrics,.uo-live-grid{grid-template-columns:1fr}.uo-live-profile-head h1{font-size:30px}}.uo-profile-tabs button{white-space:nowrap;padding:9px 13px;border:0;border-radius:8px;background:transparent;color:var(--orbit-muted);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.uo-profile-tabs button.active{background:var(--orbit-teal);color:#fff}.uo-live-panel,.uo-panel-workspace{display:none}.uo-live-panel.active,.uo-panel-workspace.active{display:grid}.uo-panel-workspace{margin-top:12px;padding:20px 22px}.uo-panel-workspace h2{margin:5px 0;font-size:23px}.uo-panel-workspace p{margin:0;color:var(--orbit-muted);line-height:1.5}.uo-panel-workspace .uo-empty{margin-top:20px;text-align:left}.uo-record-actions{display:flex;gap:10px}.uo-profile-tabs a{white-space:nowrap;padding:8px 11px;border-radius:8px;color:var(--orbit-muted);font-size:13px;font-weight:800;text-decoration:none}.uo-profile-tabs a.active{background:var(--orbit-teal);color:#fff}.uo-command-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:27px 30px;border:1px solid #cfe6e5;border-radius:18px;background:linear-gradient(118deg,#fff,#edf9f8);box-shadow:var(--orbit-shadow)}.uo-command-head h1{margin:6px 0;font-size:34px;letter-spacing:-.045em}.uo-command-head p{max-width:720px;margin:0;color:var(--orbit-muted);line-height:1.5}.uo-command-sections{display:flex;flex-direction:column;gap:18px;margin-top:20px}.uo-command-section{padding:0;border:1px solid var(--orbit-line);border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(21,57,75,.05);overflow:hidden}.uo-command-section>header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;border-bottom:1px solid var(--orbit-line)}.uo-command-section h2{margin:0;font-size:18px}.uo-command-section header p{margin:4px 0 0;color:var(--orbit-muted);font-size:12px}.uo-command-lists{display:flex;gap:14px;overflow-x:auto;padding:16px}.uo-command-list{flex:0 0 270px;min-height:190px;padding:12px;border:1px solid #d9e7e9;border-radius:12px;background:#f8fbfc}.uo-command-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}.uo-command-list-head strong{font-size:13px}.uo-command-card{margin-top:9px;padding:12px;border:1px solid #dce7ec;border-radius:10px;background:#fff;box-shadow:0 3px 9px rgba(28,59,76,.05)}.uo-command-card strong{display:block;font-size:13px}.uo-command-card p{margin:5px 0;color:var(--orbit-muted);font-size:11px;line-height:1.4}.uo-command-card span{display:inline-block;margin-top:5px;color:var(--orbit-teal);font-size:10px;font-weight:800}.uo-command-empty{padding:20px 8px;color:var(--orbit-muted);font-size:12px;text-align:center}.uo-command-starter{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:20px}.uo-command-starter strong,.uo-command-starter span{display:block}.uo-command-starter strong{font-size:16px}.uo-command-starter span{max-width:520px}

/* Universal Command Center list states mirror Orbit's configurable board lists. */
.uo-command-list{border-top:4px solid #087f95}
.uo-list-color-teal{border-top-color:#087f95}.uo-list-color-blue{border-top-color:#3578c7}.uo-list-color-purple{border-top-color:#7957b2}.uo-list-color-orange{border-top-color:#d97725}.uo-list-color-green{border-top-color:#18966b}.uo-list-color-rose{border-top-color:#c25570}.uo-list-color-slate{border-top-color:#667a88}
.uo-list-actions,.uo-card-actions{display:flex;gap:8px;align-items:center}.uo-card-actions{margin-top:12px}.uo-command-list-head{gap:10px}.uo-card-record{display:block;margin-top:5px;color:#607985;font-size:.79rem;font-weight:700}.uo-command-card{border-left:3px solid rgba(8,127,149,.22)}.uo-text-button{background:transparent;border:0;color:#007b98;font:inherit;font-weight:700;cursor:pointer;padding:0}.uo-danger-button{color:#b3475c}.uo-card-actions form{margin:0}.uo-check{display:flex;gap:8px;align-items:center;font-weight:700;color:#244452}


/* Record-backed Command Center cards and quick view. */
.uo-command-list{min-width:320px;background:#a8bcbe;border-top:5px solid #087f95;border-radius:18px;padding:10px}.uo-command-list-head{background:#f8fbfc;border-radius:12px;padding:12px}.uo-list-count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:999px;background:#a8bcbe;color:#fff;font-weight:900}.uo-command-card-button{display:block;width:100%;border:0;border-radius:18px;background:#fff;text-align:left;cursor:pointer;padding:22px 20px;margin:12px 0;box-shadow:0 8px 18px rgba(31,59,70,.12);transition:transform .15s ease,box-shadow .15s ease}.uo-command-card-button:hover{transform:translateY(-2px);box-shadow:0 15px 28px rgba(31,59,70,.18)}.uo-command-card-button strong{display:block;color:#17334e;font-size:1.32rem;line-height:1.2;margin:7px 0}.uo-card-type{display:inline-block;border:1px solid #e6d8b6;border-radius:999px;background:#fff0cf;color:#244452;text-transform:uppercase;font-size:.67rem;font-weight:900;letter-spacing:.15em;padding:6px 10px}.uo-card-code{color:#087f95;font-size:.85rem;font-weight:900;letter-spacing:.06em;margin-top:12px}.uo-card-update{border-left:3px solid #50a9b7;background:#eff7f8;border-radius:0 12px 12px 0;margin-top:15px;padding:11px 12px;color:#244452;line-height:1.45}.uo-card-update span{display:block;color:#087f95;text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;font-weight:900;margin-bottom:5px}.uo-card-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.uo-card-chips span{border:1px solid #c9e2e6;border-radius:999px;background:#eff8f9;color:#087f95;font-size:.73rem;font-weight:800;padding:5px 8px}.uo-card-footer{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #e1ebed;margin-top:16px;padding-top:13px;color:#69828b;font-size:.78rem}.uo-quick-view{width:min(1040px,95vw);max-width:1040px;padding:0}.uo-quick-view form{padding:0}.uo-quick-head{display:flex;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid #dbe8ea}.uo-quick-head h2{margin:5px 0;color:#17334e;font-size:2rem}.uo-quick-head p{margin:0;color:#6c858e}.uo-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px 24px}.uo-quick-grid .uo-full{grid-column:1/-1}.uo-quick-update{border-top:1px solid #dbe8ea;border-bottom:1px solid #dbe8ea;padding:20px 0}.uo-quick-update>.uo-kicker{padding:0 24px}.uo-quick-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:20px 24px}.uo-previous-updates{padding:0 24px 24px}.uo-previous-updates article{border:1px solid #dbe8ea;border-radius:12px;padding:14px;background:#fbfdfe}.uo-previous-updates article span{margin-left:10px;color:#087f95;font-size:.8rem;font-weight:800}.uo-previous-updates article p{margin:8px 0 0;color:#536f79}.uo-check{margin-top:14px}@media(max-width:760px){.uo-command-list{min-width:285px}.uo-quick-grid{grid-template-columns:1fr}.uo-quick-actions{grid-template-columns:1fr}.uo-quick-actions span{display:none}}

.uo-workspace-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);gap:22px;align-items:start}.uo-form-card h2{margin-top:0}.uo-form-card label{display:grid;gap:6px;margin:13px 0;font-weight:700;color:#183548}.uo-form-card input,.uo-form-card select,.uo-form-card textarea{width:100%;box-sizing:border-box;border:1px solid #cfe1e7;border-radius:11px;padding:11px;font:inherit;color:#183548;background:#fff}.uo-muted{color:#6c8792}.uo-workspace-row,.uo-note,.uo-resource{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:15px 0;border-bottom:1px solid #e2edf0}.uo-workspace-row span,.uo-note span{display:block;color:#6c8792;font-size:.9rem;margin-top:4px}.uo-chip{background:#e5f4f6!important;color:#057f97!important;border-radius:999px;padding:4px 9px;white-space:nowrap}.uo-note p,.uo-resource p{white-space:pre-wrap;color:#607b87;margin:8px 0}.uo-text-danger{border:0;background:transparent;color:#b94b55;font:inherit;cursor:pointer}.uo-resource{display:block}.uo-resource-preview{display:block;width:100%;height:360px;margin-top:14px;border:1px solid #d9e7ea;border-radius:10px;background:#fff}@media(max-width:900px){.uo-workspace-grid{grid-template-columns:1fr}}


/* Live profile workspace panels */
.uo-panel-list{display:grid;gap:10px;margin-top:4px}.uo-panel-row{display:grid;gap:4px;padding:14px 15px;border:1px solid var(--orbit-line);border-radius:12px;background:#fff;color:var(--orbit-ink);text-decoration:none;box-shadow:0 4px 12px rgba(21,57,75,.04)}a.uo-panel-row:hover{border-color:#9bcfd0;box-shadow:0 9px 20px rgba(21,57,75,.08);transform:translateY(-1px)}.uo-panel-row strong{font-size:13px}.uo-panel-row span{color:var(--orbit-muted);font-size:12px;line-height:1.45}

.uo-inline-link-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:end;margin:4px 0 18px;padding:15px;border:1px solid var(--orbit-line);border-radius:12px;background:var(--orbit-aqua-soft)}.uo-inline-link-form .uo-button{min-width:110px}@media(max-width:680px){.uo-inline-link-form{grid-template-columns:1fr}}

.uo-library-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.uo-library-hero h1{font-size:38px;margin:5px 0}.uo-library-hero p{margin:0;color:var(--orbit-muted);max-width:720px}.uo-record-library{display:grid;gap:12px}.uo-library-row{display:grid;grid-template-columns:minmax(280px,2fr) minmax(110px,.65fr) minmax(110px,.65fr) minmax(220px,1fr) 120px 44px;align-items:center;gap:22px;padding:20px 22px;background:#fff;border:1px solid var(--orbit-line);border-left:4px solid var(--orbit-aqua);border-radius:16px;color:var(--orbit-ink);text-decoration:none;box-shadow:0 8px 24px rgba(18,55,74,.05);transition:transform .16s ease,box-shadow .16s ease}.uo-course-library-row{grid-template-columns:minmax(240px,1.8fr) minmax(100px,.55fr) minmax(100px,.55fr) minmax(150px,.8fr) minmax(190px,.9fr) 100px 44px;gap:18px}.uo-course-library-row>*{min-width:0}.uo-course-library-row .uo-library-open{justify-self:end;flex:none}.uo-library-row:hover{transform:translateY(-2px);box-shadow:var(--orbit-shadow);border-left-color:var(--orbit-teal)}.uo-library-identity{display:grid;gap:4px}.uo-library-identity strong{font-size:20px}.uo-library-identity small,.uo-library-stat small,.uo-library-owner small,.uo-library-count small{color:var(--orbit-muted)}.uo-library-code{width:max-content;padding:4px 10px;border-radius:999px;background:var(--orbit-aqua-soft);color:var(--orbit-teal);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.uo-library-stat{display:grid;gap:4px}.uo-library-health{display:inline-flex;width:max-content;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:#edf3f3;color:#6c8187;font-weight:800;font-size:13px}.uo-library-health span{width:7px;height:7px;border-radius:50%;background:#82999e}.uo-library-health.green{background:#e7f7ef;color:#198754}.uo-library-health.green span{background:#20a563}.uo-library-health.yellow{background:#fff5d8;color:#9b7100}.uo-library-health.yellow span{background:#e3ad16}.uo-library-health.red,.uo-library-health.at-risk{background:#fff0ef;color:#b33b35}.uo-library-health.red span,.uo-library-health.at-risk span{background:#db514a}.uo-library-owner{display:flex;align-items:center;gap:12px}.uo-library-owner>div{display:grid;gap:3px}.uo-owner-avatar{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,var(--orbit-teal),var(--orbit-aqua));color:#fff;font-weight:900}.uo-library-count{display:grid;gap:2px}.uo-library-count strong{font-size:24px}.uo-library-open{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--orbit-aqua-soft);color:var(--orbit-teal);font-size:22px;font-weight:900}.uo-empty-library{padding:54px;text-align:center}.uo-back-link{display:inline-block;margin-bottom:12px;color:var(--orbit-teal);font-weight:800;text-decoration:none}.uo-path-list,.uo-panel-list,.uo-history{display:grid;gap:10px}.uo-path-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:14px;padding:13px 15px;border:1px solid var(--orbit-line);border-radius:13px;background:#fff}.uo-path-row>a{display:grid;color:var(--orbit-ink);text-decoration:none}.uo-path-row small{color:var(--orbit-muted)}.uo-path-number{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--orbit-aqua-soft);color:var(--orbit-teal);font-weight:900}.uo-icon-button{border:0;background:var(--orbit-aqua-soft);color:var(--orbit-teal);border-radius:9px;width:34px;height:34px;font-size:20px;cursor:pointer}.uo-icon-button.danger{background:#fff0ef;color:#d14841}.uo-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.uo-project-card{display:grid;gap:8px;padding:20px;border:1px solid var(--orbit-line);border-radius:15px;background:linear-gradient(145deg,#fff,var(--orbit-aqua-soft));color:var(--orbit-ink);text-decoration:none}.uo-project-card span{color:var(--orbit-teal);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.uo-project-card strong{font-size:18px}.uo-project-card small{color:var(--orbit-muted)}.uo-panel-entry-form,.uo-update-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.5fr) auto;gap:12px;align-items:end;margin:4px 0 20px;padding:16px;border:1px solid var(--orbit-line);border-radius:13px;background:var(--orbit-aqua-soft)}.uo-update-form{grid-template-columns:180px 180px 1fr auto}.uo-panel-entry-form .wide,.uo-update-form .wide{grid-column:auto}.uo-linked-item{display:flex!important;align-items:center;justify-content:space-between;gap:18px}.uo-linked-item>div{display:grid;gap:5px}.uo-linked-item a{color:var(--orbit-teal);font-weight:800}.uo-history article{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--orbit-line)}.uo-history span{color:var(--orbit-muted)}
@media(max-width:1050px){.uo-library-row{grid-template-columns:1.6fr 1fr 1fr}.uo-library-owner,.uo-library-count{display:none}.uo-panel-entry-form,.uo-update-form{grid-template-columns:1fr 1fr}.uo-panel-entry-form .wide,.uo-update-form .wide{grid-column:1/-1}}@media(max-width:720px){.uo-library-hero{align-items:flex-start;flex-direction:column}.uo-library-row{grid-template-columns:1fr auto}.uo-library-stat,.uo-library-health{display:none}.uo-panel-entry-form,.uo-update-form{grid-template-columns:1fr}.uo-panel-entry-form .wide,.uo-update-form .wide{grid-column:auto}}
.uo-path-actions{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap;margin:4px 0 14px}.uo-path-actions form:last-child{margin-left:auto}@media(max-width:720px){.uo-path-actions{align-items:stretch;flex-direction:column}.uo-path-actions form:last-child{margin-left:0}.uo-path-actions button{width:100%}}
.uo-profile-project-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px;padding:8px 10px;border:1px solid var(--orbit-line);border-radius:13px;background:#fff}.uo-profile-project-badges a,.uo-profile-badge-label{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border:1px solid #b9dfe5;border-radius:999px;background:#eaf8fa;color:var(--orbit-teal);font-size:12px;font-weight:900;text-decoration:none}.uo-profile-badge-label{border-color:var(--orbit-line);background:#f7fafb;color:var(--orbit-muted)}.uo-profile-project-badges a:hover{background:var(--orbit-teal);color:#fff}.uo-profile-tabs a{cursor:pointer}.uo-live-panel:not(.active),.uo-panel-workspace:not(.active){display:none!important}

/* ===========================================================================
   Person tile — shared component
   Lives here, not in a page stylesheet, because the profile pages and the
   record directory both render people and must render them identically: the
   same initials, and the same colour for the same person on every surface.
   It was previously in the course-profile sheet, which is why the directory
   -- the page that loads no profile stylesheet -- had no avatar styling at all.
   ======================================================================== */
.uo-person{
  display:flex;align-items:center;gap:13px;
  padding:14px 15px;
  border:1px solid transparent;border-radius:14px;
  background:#fbfdfd;
  transition:background .16s ease,border-color .16s ease;
}
.uo-person:hover{background:#f5fafb;border-color:#e3eef0}

.uo-person-avatar{
  flex:0 0 46px;width:46px;height:46px;
  display:grid;place-items:center;
  border-radius:50%;overflow:hidden;
  color:#fff;font-size:.95rem;font-weight:850;letter-spacing:.02em;
  /* Ring separates the avatar from the tile without drawing a hard edge. */
  box-shadow:0 0 0 3px #fff, 0 2px 6px rgba(11,45,65,.16);
}
.uo-person-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.uo-person-avatar svg{
  width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;
}

/* Six muted tones. Deep enough for white text to pass contrast, quiet enough
   that a row of three never looks like a chart. */
.uo-person-avatar[data-tone="0"]{background:linear-gradient(145deg,#1b6b7d,#0f4f5e)}
.uo-person-avatar[data-tone="1"]{background:linear-gradient(145deg,#2f6fb8,#23548c)}
.uo-person-avatar[data-tone="2"]{background:linear-gradient(145deg,#6d5bb8,#50438c)}
.uo-person-avatar[data-tone="3"]{background:linear-gradient(145deg,#1f7a5a,#155c44)}
.uo-person-avatar[data-tone="4"]{background:linear-gradient(145deg,#b06a2c,#8a5120)}
.uo-person-avatar[data-tone="5"]{background:linear-gradient(145deg,#9c4a72,#7a3a59)}

.uo-person-copy{min-width:0;display:block}
.uo-person-copy strong{
  display:block;color:#12304a;font-size:1rem;font-weight:800;line-height:1.2;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.uo-person-copy small{
  display:block;margin-top:3px;color:#7b93a0;
  font-size:.7rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase;
}
.uo-person-email{
  display:block;margin-top:3px;color:#8aa2ae;font-size:.76rem;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* A vacancy should read as a gap to fill, not as a person called Unassigned. */
.uo-person.is-vacant{background:transparent;border:1px dashed #dbe8eb}
.uo-person.is-vacant .uo-person-avatar{
  background:#f0f5f6;color:#a8bcc4;box-shadow:none;
}
.uo-person.is-vacant .uo-person-copy strong{color:#9db0ba;font-weight:700}

/* Screen-reader-only text. A utility, so it belongs in the sheet every Orbit
   page loads -- it previously existed only in the command-center stylesheet,
   which meant a visually-hidden label on any other page simply wasn't hidden. */
.uo-visually-hidden{
  position:absolute!important;width:1px;height:1px;
  margin:-1px;padding:0;border:0;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;
}

/* ===========================================================================
   THE page hero
   ---------------------------------------------------------------------------
   Universal had grown six of these: .uo-hero (light gradient), .uo-library-hero
   (no card at all), .uo-wizard-head, .uo-command-head, .uo-record-page-head,
   and .uo-live-profile-head -- the deep teal one on the course profile. Six
   because six pages were built at six different times, each copying whatever
   was nearest to hand. A product that disagrees with itself page to page is
   exactly what makes software feel assembled rather than designed.

   One treatment now, and every page states its identity the same way:

     back link   where you came from, when the page is a child of a list
     kicker      what KIND of thing this is
     h1          which one
     p           one line on what the page is for
     actions     to the right, or beneath on a narrow window

   Height is deliberately not fixed. The program profile is taller than the
   Reports header because it carries more -- a parent link, more actions. The
   treatment is what is shared; the content decides the size.

   Placed last in this file on purpose: it must win the specificity tie against
   the six rules it replaces, which are all (0,1,1) like these.
   =========================================================================== */

.uo-page-hero{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  flex-wrap:wrap;margin:0 0 22px;padding:24px 28px;border:0;border-radius:18px;
  background:linear-gradient(115deg,#163c58,#006f87 68%,#4a9eae);
  color:#fff;box-shadow:var(--orbit-shadow,0 18px 46px rgba(18,55,74,.10))}

/* min-width:0 lets a long title ellipsis instead of forcing the actions off
   the end of a flex row. */
.uo-page-hero>div:first-child{min-width:0}

.uo-page-hero h1{margin:6px 0 7px;font-size:34px;letter-spacing:-.045em;
  line-height:1.06;color:#fff}
.uo-page-hero p{margin:0;max-width:74ch;color:#d5ebee;font-size:14.5px;line-height:1.5}
.uo-page-hero small{color:#a9d8de}

.uo-page-hero .uo-kicker{display:block;color:#85dce0;font-size:11px;font-weight:900;
  letter-spacing:.15em;text-transform:uppercase}

/* The back link was inheriting --orbit-teal, which is a dark ink meant for
   white cards. On this gradient it was teal on teal. */
.uo-page-hero .uo-back-link,
.uo-page-hero .uo-back,
.uo-page-hero a.uo-back-link:visited{display:inline-block;margin:0 0 10px;
  color:#a8dfe8;font-size:13px;font-weight:800;text-decoration:none}
.uo-page-hero .uo-back-link:hover,
.uo-page-hero .uo-back:hover{color:#fff;text-decoration:underline}

/* Actions sit on the baseline of the title block, and keep the white-card
   button treatment -- which already reads correctly against the gradient. */
.uo-page-hero .uo-record-actions,
.uo-page-hero .uo-hero-actions{display:flex;align-items:center;gap:10px;
  flex-wrap:wrap;flex-shrink:0}
.uo-page-hero .uo-button-secondary{border-color:rgba(255,255,255,.5);background:#fff}

/* A hero is an identity band, not a form. Anything that takes input inside one
   needs its own treatment; nothing does today, and this keeps it honest. */
.uo-page-hero input,
.uo-page-hero select{color:var(--orbit-deep,#17334e)}

@media(max-width:820px){
  .uo-page-hero{align-items:flex-start;flex-direction:column;gap:16px;padding:20px 22px}
  .uo-page-hero h1{font-size:28px}
}

/* ===========================================================================
   Shared controls: buttons, alerts, muted text
   ---------------------------------------------------------------------------
   These lived in orbit_universal_reports.css because Reports needed them
   first. Imports needs the same buttons and the same alerts, and the style
   guard caught it immediately -- which is the second time that guard has paid
   for itself on exactly this class of bug.

   A shared component belongs in the shared sheet. The alternative -- every
   new page loading the Reports stylesheet to borrow a button -- is how a
   codebase ends up with one file nobody can safely change.
   =========================================================================== */

/* ===========================================================================
   Buttons
   ---------------------------------------------------------------------------
   These existed as `.uo-btn` in the markup with NO rule anywhere, so every
   control on this page rendered as a raw browser button. The house classes are
   `.uo-button` / `.uo-button-secondary`; rather than rewrite the markup twice,
   `.uo-btn` is defined here and deliberately shares the brand tokens so the
   Reports surface reads as the same product.

   Built on the brand palette (--orbit-teal, --orbit-deep, --orbit-line) with
   local fallbacks, so this file still renders correctly if loaded before the
   shared sheet.
   =========================================================================== */

.uo-btn {
  /* Local tokens keep the variants honest: change one value, not six rules. */
  --btn-h: 38px;
  --btn-radius: 10px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: var(--btn-h);
  padding: 0 16px;
  border: 1px solid var(--orbit-line, #d8e7e6);
  border-radius: var(--btn-radius);
  background: linear-gradient(180deg, #fff 0%, #f7fafb 100%);
  color: var(--orbit-deep, #17334e);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.005em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;

  /* Two shadows, not one: a hairline that sharpens the edge against the page,
     and a soft drop that gives it weight. A single blurry shadow reads cheap. */
  box-shadow:
    0 1px 1px rgba(16, 45, 58, 0.04),
    0 2px 5px rgba(16, 45, 58, 0.06);

  transition:
    background-color .15s ease,
    border-color .15s ease,
    box-shadow .18s ease,
    transform .12s ease;
}

.uo-btn:hover {
  border-color: #b6d4d6;
  background: linear-gradient(180deg, #fff 0%, #eef6f7 100%);
  box-shadow:
    0 1px 1px rgba(16, 45, 58, 0.05),
    0 6px 14px rgba(16, 45, 58, 0.10);
  /* A sub-pixel lift. Anything more and the row jitters as the cursor moves. */
  transform: translateY(-1px);
}

.uo-btn:active {
  transform: translateY(0);
  background: #e9f2f3;
  box-shadow: inset 0 1px 2px rgba(16, 45, 58, 0.10);
}

/* Keyboard focus only. :focus alone would ring the button after every mouse
   click, which is the thing that makes an interface feel unfinished. */
.uo-btn:focus-visible {
  outline: none;
  border-color: var(--orbit-teal, #00708a);
  box-shadow:
    0 0 0 3px rgba(0, 112, 138, 0.18),
    0 2px 5px rgba(16, 45, 58, 0.06);
}

.uo-btn:disabled,
.uo-btn[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: .55;
  box-shadow: none;
  transform: none;
}

/* --- primary ------------------------------------------------------------ */
.uo-btn-primary {
  border-color: transparent;
  /* Deep-to-teal rather than flat fill: the gradient is what separates a
     considered button from a coloured rectangle, and it is subtle enough that
     nobody consciously notices it. */
  background: linear-gradient(180deg, #0b7f97 0%, var(--orbit-teal, #00708a) 100%);
  color: #fff;
  font-weight: 800;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 1px 2px rgba(0, 78, 96, 0.20),
    0 4px 12px rgba(0, 78, 96, 0.22);
}

.uo-btn-primary:hover {
  border-color: transparent;
  background: linear-gradient(180deg, #0d8ba5 0%, #007e99 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 2px 4px rgba(0, 78, 96, 0.22),
    0 10px 22px rgba(0, 78, 96, 0.26);
}

.uo-btn-primary:active {
  background: linear-gradient(180deg, #00657d 0%, #00586d 100%);
  box-shadow: inset 0 2px 4px rgba(0, 51, 63, 0.28);
}

.uo-btn-primary:focus-visible {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 0 0 3px rgba(0, 112, 138, 0.30),
    0 4px 12px rgba(0, 78, 96, 0.22);
}

/* --- small -------------------------------------------------------------- */
.uo-btn-sm {
  --btn-h: 30px;
  padding: 0 11px;
  font-size: 12px;
  border-radius: 8px;
}

.uorp-toolbar-actions .uo-btn-primary { margin-left: 4px; }

.uo-btn { transition: none; }

.uo-btn-sm { padding:4px 10px; font-size:12px; }

.uo-visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

.uo-sub {
  margin: 0;
  max-width: 78ch;
  color: var(--orbit-muted, #667d84);
  font-size: 14px;
  line-height: 1.5;
}

.uo-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0 0 18px;
  padding: 12px 15px;
  /* A 3px left rule rather than a full border: it reads as an annotation on the
     page instead of a box floating on top of it. */
  border-left: 3px solid currentColor;
  border-radius: 0 10px 10px 0;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}

.uo-alert-ok    { background: #e9f6f1; color: #14624a; }

.uo-alert-error { background: #fdeeed; color: #9c3f37; }

.uorp-banner .uo-btn{border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.12);
  color:#fff;box-shadow:none}

.uorp-banner .uo-btn:hover{border-color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.2);transform:none}

.uorp-bar-row:not(.uorp-bar-selection)>.uorp-ctl>.uo-btn{min-height:var(--field-h);
  align-self:flex-end}

/* A button that stands in a row of labelled fields. The field labels above the
   inputs are what it is lining up under, so it carries no label of its own and
   takes its height from the shared token. */
.uo-btn-field{align-self:flex-end}

.uo-page-hero .uo-sub{color:#cfe7ea}

@media (prefers-reduced-motion: reduce) {
.uo-btn:hover { transform: none; }
}

/* Invitation onboarding uses the same card and page hero as the workspace. */
.uo-invitation{padding:28px;max-width:900px;margin:32px auto}
.uo-invitation .uo-button{margin-top:20px}
