:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#27323e;background:#f4f5f7;font-synthesis:none;--green:#26374a;--muted:#7e8a96;--line:#e2e5e8}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.defs{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.logo{width:46px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--green);color:white}.logo svg{width:27px;height:27px}.brand,.login-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand b,.login-brand b{display:block;font-size:23px;letter-spacing:-.05em}.brand small,.login-brand small{display:block;font-size:10px;color:#8f99a3;letter-spacing:.2em;margin-top:6px;font-weight:700}.app-shell{display:flex;min-height:100vh}.sidebar{width:240px;background:#fbfcfd;border-right:1px solid var(--line);padding:28px 16px 18px;display:flex;flex-direction:column;position:fixed;height:100vh}.brand{padding:0 3px}.team-badge{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:14px 12px;border-radius:9px;margin:42px 0 30px;font-size:13px}.team-badge>span:last-child{margin-left:auto;color:#949ea8;font-size:11px}.status-dot{width:7px;height:7px;background:#8093a7;border-radius:50%;display:inline-block;flex:none}.nav-label{font-size:10px;letter-spacing:.2em;color:#969fa9;font-weight:700;padding:0 8px;margin:10px 0 16px}nav{display:grid;gap:5px}nav button{display:flex;align-items:center;gap:13px;background:transparent;border:0;text-align:left;padding:14px 12px;border-radius:9px;color:#7a8692;font-size:14px}nav button.active{background:#e8ecf0;color:#334a63;font-weight:650}nav button:hover{background:#eef1f4}nav button svg{width:19px;height:19px}.side-note{margin-top:auto;background:#edf0f4;border:1px solid #dfe4ea;border-radius:10px;padding:18px;color:#798591;font-size:12px;line-height:1.7}.side-note b{display:block;color:#424e5b;margin:10px 0 4px;font-size:13px}.side-note p{margin:0}.logout{display:flex;gap:10px;align-items:center;justify-content:center;border:0;background:transparent;color:#89939e;font-size:12px;padding:20px 0 0}.workspace{margin-left:240px;flex:1;min-width:0}.topbar{height:66px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;font-size:12px;color:#9ca5ae}.topbar b{color:#54606c;font-weight:500}.topbar i{font-style:normal;margin:0 17px;color:#515e6b}.private-label{display:flex;align-items:center;gap:8px;font-size:11px;color:#88939e}main{padding:40px 36px 36px;max-width:1800px;margin:auto;min-height:calc(100vh - 124px)}.eyebrow{font-size:10px;font-weight:750;color:#8693a0;letter-spacing:.2em;text-transform:uppercase}h1{font-size:34px;letter-spacing:-.045em;margin:13px 0 12px;font-weight:650}h2{font-size:18px;letter-spacing:-.025em;margin:0}h3{font-size:15px;margin:0}p.sub{color:#88929d;font-size:14px;line-height:1.7;margin:0}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.head-actions{display:flex;gap:10px}.outline,.primary{display:inline-flex;gap:9px;align-items:center;justify-content:center;border:1px solid #dde1e6;background:white;color:#616d7a;border-radius:8px;padding:11px 15px;font-size:12px;font-weight:600;min-height:42px;text-decoration:none}.primary{background:var(--green);color:white;border-color:var(--green)}.outline:hover{background:#f5f7f9}.primary:hover{background:#324962}.banner{display:flex;gap:14px;align-items:center;background:#ecf0f5;border:1px solid #d5dfe9;border-radius:10px;padding:20px 22px;margin-bottom:24px;color:#576b80}.banner b{font-size:13px}.banner p{font-size:12px;line-height:1.6;margin:5px 0 0;color:#7b8998}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}.stat,.panel,.tool{background:white;border:1px solid var(--line);border-radius:12px}.stat{padding:24px;position:relative}.stat>svg{position:absolute;right:20px;top:22px;width:24px;height:24px;background:#eef2f6;color:#7c8ea1;padding:4px;box-sizing:content-box;border-radius:8px}.stat-label{font-size:10px;letter-spacing:.13em;font-weight:650;color:#7a8693}.stat-value{display:block;margin:23px 0 10px;font-size:34px;color:#3c4957;font-weight:500;letter-spacing:-.04em}.stat-value.name{font-size:23px;margin-top:28px}.stat small{font-size:12px;color:#8e98a2}.tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 28px}.tool{text-align:left;display:flex;gap:18px;padding:23px;align-items:center;color:#3c4a59}.tool>svg:first-child{background:#edf1f5;border-radius:11px;box-sizing:content-box;padding:12px;width:23px;height:23px;color:#72869b}.tool p{font-size:12px;color:#89949f;line-height:1.6;margin:8px 0 0}.tool>svg:last-child{margin-left:auto;width:16px;color:#9ca5af}.tool:hover{border-color:#a4b1be;box-shadow:0 5px 15px #26384b10}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:23px 24px;border-bottom:1px solid #ebeef1;gap:16px}.panel-head p{font-size:12px;color:#8e98a2;margin:7px 0 0}.upcoming{padding:0 24px}.birthday-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid #ebeef1}.birthday-row:last-child{border-bottom:0}.avatar{width:37px;height:37px;border-radius:50%;background:#e9eef3;display:grid;place-items:center;color:#70849a;font-size:11px;font-weight:650;flex:none}.person-name{font-size:13px;font-weight:600;color:#4c5966}.person-meta{font-size:11px;color:#909aa5;margin-top:5px}.birthday-row .date{margin-left:auto;font-size:12px;color:#67788a;font-variant-numeric:tabular-nums;white-space:nowrap}.filters{display:flex;gap:12px;align-items:center;margin-bottom:20px}.search{flex:1;min-width:0}.search,input,select{border:1px solid #dde2e7;border-radius:8px;padding:12px 14px;background:white;color:#4a5663;outline:0;min-height:43px}input:focus,select:focus{border-color:#8295aa;box-shadow:0 0 0 3px #8295aa18}.search::placeholder,input::placeholder{color:#9da6af}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#f4f6f9;color:#848f9b;font-size:10px;letter-spacing:.08em;padding:15px 22px;font-weight:600}td{padding:16px 22px;border-top:1px solid #ebedf0;color:#75818e}td:first-child{font-weight:600;color:#455260}tbody tr:hover{background:#f8fafc}.role{font-size:11px;border-radius:5px;background:#ebeff4;color:#637487;padding:5px 8px;white-space:nowrap}.muted{color:#9ba4ae;font-size:11px}.empty{padding:50px 24px;text-align:center;color:#85909c;font-size:13px;line-height:1.8}.empty>svg{width:42px;height:42px;color:#93a2b1;margin-bottom:15px}.empty h2{color:#495663;margin-bottom:10px}.year-controls{display:flex;gap:12px;align-items:center}.year-controls button{padding:8px 13px;min-height:36px}.year-controls b{font-size:17px;color:#4b5967}.birthday-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.birth-month{background:white;border:1px solid var(--line);border-radius:12px;min-width:0;overflow:hidden}.birth-month h3{padding:18px 20px;background:#f8fafc;border-bottom:1px solid #eaedf1;color:#5f6f81;font-size:14px;display:flex;justify-content:space-between}.birth-month h3 span{font-weight:400;color:#9ea7b0;font-size:11px}.birth-month .birthday-row{padding:14px 18px;gap:10px}.birth-month .person-name{font-size:12px}.birth-month .date{font-size:11px}.birth-month .person-meta{font-size:10px}.birth-month.current{border-color:#95a6b9}.birth-month .no-birthday{padding:22px 18px;font-size:12px;color:#9da6af}.note{font-size:12px;color:#85909c;line-height:1.7;margin-top:22px}footer{padding:22px 36px;border-top:1px solid var(--line);color:#9ea7b0;font-size:10px;display:flex;justify-content:space-between}.login-shell{max-width:930px;margin:0 auto;padding:50px 28px}.login-brand{margin-bottom:65px}.login-intro h1{font-size:44px;margin-top:14px}.login-intro p{line-height:1.9;font-size:15px;color:#8c96a1}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:36px 0 22px}.team-card{background:white;border:1px solid #dde1e6;border-radius:12px;text-align:left;padding:22px;color:#606f80;transition:border-color .15s,box-shadow .15s}.team-card small{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.15em;color:#929eaa;margin-bottom:20px}.team-card b{font-size:30px;letter-spacing:-.04em;font-weight:500}.team-card svg{float:right;margin-top:8px;width:18px}.team-card.selected{background:#e9eef4;border-color:#71869d;box-shadow:0 0 0 1px #71869d}.team-card.selected b{color:#31465d}.login-form{background:white;border:1px solid var(--line);border-radius:12px;padding:24px}.login-form label{font-size:12px;display:block;color:#6d7b89;margin-bottom:12px}.password-row{display:flex;gap:12px}.password-row input{flex:1;min-width:0}.login-form p{color:#ad6d57;font-size:12px;margin:12px 0 0;min-height:16px}.login-foot{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:27px;font-size:11px;color:#949da7}.login-foot svg{width:14px;height:14px}.loading{padding:50px;color:#788592}.helper-preview{width:100%;height:75vh;border:1px solid var(--line);border-radius:12px}.file-action{margin-top:18px}.file-input{max-width:100%;font-size:12px}button:focus-visible,a:focus-visible{outline:3px solid #889aad;outline-offset:3px}
@media(min-width:1600px){.birthday-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.sidebar{width:210px}.workspace{margin-left:210px}main{padding:30px 24px}.birthday-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:19px}.stat-label{max-width:70%;line-height:1.5;display:block}.stat>svg{right:15px}.stat-value.name{font-size:19px}.private-label{display:none}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:18px 16px 10px;border-right:0;border-bottom:1px solid var(--line)}.brand{display:inline-flex}.brand .logo{width:34px;height:38px;border-radius:10px}.brand b{font-size:19px}.brand small{font-size:8px}.team-badge{position:absolute;top:17px;right:16px;padding:10px;margin:0;font-size:11px}.team-badge>span:last-child{display:none}.nav-label,.side-note,.logout svg{display:none}.logout{position:absolute;right:16px;top:66px;padding:0;font-size:10px}.sidebar nav{display:flex;overflow:auto;margin-top:25px;padding-bottom:4px;gap:5px}.sidebar nav button{padding:10px 11px;font-size:11px;gap:7px;white-space:nowrap}.sidebar nav button svg{width:15px;height:15px}.workspace{margin:0}.topbar{height:42px;padding:0 20px;font-size:10px}main{padding:27px 16px;min-height:65vh}h1{font-size:28px}.page-head{align-items:flex-start;gap:10px}.stats{gap:9px;grid-template-columns:1fr 1fr}.stats .stat:last-child{grid-column:1/-1}.stat{padding:17px}.stat-value{margin:18px 0 8px;font-size:29px}.stat-value.name{font-size:23px;margin-top:18px}.stat small{font-size:10px}.banner{padding:16px}.tools{grid-template-columns:1fr;gap:10px}.tool{padding:17px}.tool>svg:first-child{padding:10px;width:20px;height:20px}.panel-head{padding:18px}.upcoming{padding:0 18px}.filters{flex-wrap:wrap}.search{flex-basis:100%}.filters select{flex:1;font-size:12px}.birthday-grid{grid-template-columns:1fr}.birthday-grid .birth-month{min-height:unset}.birth-month .birthday-row{padding:15px 18px}.birth-month .person-name{font-size:13px}.year-controls{gap:7px}.year-controls button{min-height:34px;padding:7px 10px}footer{padding:20px 16px}footer span{display:none}.login-shell{padding:28px 18px}.login-brand{margin-bottom:48px}.login-intro h1{font-size:34px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px}.team-card{padding:18px}.team-card small{margin-bottom:14px}.password-row{flex-direction:column}.login-form{padding:20px}.login-foot{font-size:10px}.head-actions .outline{font-size:10px}.panel-head h2{font-size:16px}}
@media(max-width:500px){.page-head{flex-direction:column}.year-controls{align-self:flex-start;margin-top:5px}}
/* Heraldic identity: Hamburg blue, white and silver. */
:root{--green:#19466e;--muted:#8392a5;--line:#e0e6ed;color:#263c53;background:#f3f5f8}
body{background:#f3f5f8}.crest{display:block;object-fit:contain;flex:none;filter:drop-shadow(0 3px 3px #1738590b)}
.sidebar{background:#fcfdff;overflow-y:auto}.brand{gap:12px}.brand b{color:#173b5a;letter-spacing:-.045em}.brand small{color:#8d9bad}.sidebar-crest{width:43px;height:62px}.team-badge{margin-top:28px;margin-bottom:25px;border-color:#e0e6ee;background:#f8fafd}.status-dot{background:#5384ad}.nav-label{color:#94a2b2}.sidebar nav button.active{background:#e9f0f8;color:#22527c}.sidebar nav button:hover{background:#eef3f9}.side-note{background:#f1f5fa;border-color:#e4eaf2;color:#7d8fa5}.side-note b{color:#3d5b78}.side-note{padding:15px}.topbar{background:#173650;border-bottom:1px solid #244661;color:#9fb4c7}.topbar b{color:#e8f0f7}.topbar i{color:#7494ad}.private-label{color:#b9cbd9}.topbar .status-dot{background:#8aaecb}
.eyebrow{color:#748da8;letter-spacing:.18em}h1{color:#183a58}.heading-identity{display:flex;gap:22px;align-items:center;min-width:0}.page-crest{width:66px;height:95px}.heading-identity h1{margin-top:10px}.stat,.panel,.tool,.birth-month{border-color:#e0e6ed}.stat-value{color:#244c6d}.stat>svg{background:#edf3f9;color:#6e8fab}.banner{background:#ebf2f9;border-color:#dbe6f2;color:#3b668a}.banner p{color:#7d94ab}.tool>svg:first-child{background:#edf3f9;color:#7092af}.tool h3{color:#2b4f6d}.tool:hover{border-color:#9bb6cf;box-shadow:0 6px 18px #1639590c}.primary{background:#194b76;border-color:#194b76;box-shadow:0 3px 7px #183c5d12}.primary:hover{background:#123c60}.avatar{background:#e8f0f8;color:#527b9c}.birth-month.current{border-color:#82a6c8}.birth-month h3{background:#f7f9fc;color:#557895}.role{background:#edf3f8;color:#61809b}.search:focus,input:focus,select:focus{border-color:#80a4c5;box-shadow:0 0 0 3px #80a4c51a}button:focus-visible,a:focus-visible{outline-color:#729dc2}.login-shell{max-width:1100px;padding-top:35px}.login-brand{gap:13px;margin-bottom:42px}.login-brand b{color:#173b5a;font-size:25px}.login-brand small{color:#8196ad}.login-crest{width:42px;height:61px}.login-intro{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;padding:28px 0 30px;border-top:1px solid #dde5ee;border-bottom:1px solid #dde5ee}.login-intro h1{font-size:49px;line-height:1.12;letter-spacing:-.045em;margin:18px 0 17px}.login-intro h1 span{color:#8196ae;font-weight:400}.login-intro p{color:#8395a8;font-size:14px;line-height:1.8}.intro-line{display:flex;gap:9px;align-items:center;color:#90a0b1;font-size:11px;margin-top:20px}.intro-line span{width:20px;height:2px;background:#3978ad}.hero-emblem{display:grid;justify-items:center;gap:17px;padding:4px 28px 3px}.hero-crest{width:152px;height:218px;filter:drop-shadow(0 12px 14px #173c5b16)}.hero-emblem>span{font-size:9px;letter-spacing:.19em;color:#8197ae;font-weight:600}.team-grid{gap:17px;margin:28px 0 22px}.team-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:22px 18px 18px;border-radius:12px;background:#fff;border:1px solid #dde5ee;color:#345c7a;box-shadow:0 3px 10px #18375a03}.team-card .card-crest{width:89px;height:128px;margin-bottom:22px;transition:transform .18s}.team-card:hover{border-color:#9cb7ce;box-shadow:0 5px 20px #193b5b0b}.team-card:hover .card-crest{transform:translateY(-3px)}.team-card.selected{background:#f9fbfe;border-color:#527fa6;box-shadow:0 0 0 1px #527fa6}.team-card.selected:after{content:'';position:absolute;top:13px;right:13px;width:7px;height:7px;border-radius:50%;background:#346b98}.team-card-label{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border-top:1px solid #e9eef4;padding-top:15px}.team-card small{font-size:8px;color:#93a4b6;letter-spacing:.16em;margin:0 0 6px}.team-card b{font-size:19px;color:#345c7b;letter-spacing:-.025em;font-weight:600}.team-card.selected b{color:#1a4b74}.team-card-label svg{margin:0;float:none;width:17px;height:17px;color:#8ba5bc}.login-form{border-color:#dde5ee;box-shadow:0 5px 18px #15385703}.login-form label{color:#627d98;font-weight:550}.login-foot{color:#94a3b3}.login-form p{color:#aa6d5c}
@media(max-width:1100px){.page-crest{width:58px;height:84px}.heading-identity{gap:18px}.login-intro h1{font-size:43px}.hero-emblem{padding:0 12px}.hero-crest{width:132px;height:190px}}
@media(max-width:760px){.sidebar-crest{width:32px;height:46px}.sidebar .brand b{font-size:20px}.sidebar .brand small{font-size:8px}.sidebar .team-badge{margin:0}.topbar{background:#173650}.page-crest{width:44px;height:64px}.heading-identity{gap:14px}.heading-identity h1{font-size:25px;margin:8px 0}.heading-identity p.sub{font-size:12px;line-height:1.6}.heading-identity .eyebrow{font-size:8px;letter-spacing:.12em}.side-note{display:none}.login-shell{padding:23px 18px 30px}.login-brand{margin-bottom:27px}.login-brand b{font-size:22px}.login-crest{width:35px;height:50px}.login-intro{gap:16px;padding:24px 0}.login-intro h1{font-size:32px;line-height:1.17;margin:15px 0}.login-intro .eyebrow{font-size:8px;letter-spacing:.12em}.login-intro p{font-size:12px}.hero-emblem{padding:0;gap:10px}.hero-crest{width:93px;height:134px}.hero-emblem>span{font-size:6px;letter-spacing:.12em}.intro-line{font-size:9px;margin-top:14px;line-height:1.6}.team-grid{gap:10px;margin:20px 0}.team-card{padding:17px 15px 14px}.team-card .card-crest{width:79px;height:114px;margin-bottom:17px}.team-card small{font-size:7px}.team-card b{font-size:18px}.team-card-label{padding-top:12px}.password-row .primary{font-size:12px}}
@media(max-width:400px){.login-intro h1{font-size:27px}.hero-crest{width:77px;height:111px}.login-intro{gap:10px}.login-intro p{font-size:11px}.intro-line{font-size:8px}.heading-identity h1{font-size:23px}}
.nav-short{display:none}.birthday-controls{display:flex;align-items:flex-end;gap:16px}.month-field{display:grid;gap:7px;font-size:11px;color:#7a8fa5}.month-field select{min-width:160px}.filters input[type=checkbox]{min-height:20px;width:19px;height:19px;accent-color:#356990}.filters label.muted{display:flex;align-items:center;gap:8px;min-height:44px}
@media(max-width:760px){
html{scroll-padding-top:85px}body{overscroll-behavior-y:none}button,a,input,select{touch-action:manipulation}input,select,.search{font-size:16px!important}button{min-height:44px}.app-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.sidebar{position:sticky;top:0;z-index:30;display:flex;flex-direction:row;align-items:center;height:76px;padding:10px 16px;background:#fcfdfff7;backdrop-filter:blur(12px);overflow:visible}.sidebar .brand{gap:9px;padding:0;flex:1;min-width:0}.sidebar .brand b{font-size:19px}.sidebar .brand small{font-size:7px;letter-spacing:.15em}.sidebar-crest{width:30px;height:44px}.sidebar .team-badge{position:static;margin:0 10px 0 0;min-height:36px;padding:9px;border-radius:8px;font-size:11px}.logout{position:static;display:grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #e2e9f0;border-radius:10px;color:#6b859c}.logout svg{display:block;width:18px;height:18px}.logout span{display:none}.sidebar nav{position:fixed;z-index:50;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #dfe6ee;background:#fcfdfff7;backdrop-filter:blur(14px);box-shadow:0 -5px 22px #15395708;overflow:visible}.sidebar nav button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px 0;min-height:56px;min-width:0;font-size:9px;border-radius:10px}.sidebar nav button svg{width:21px;height:21px}.sidebar nav .nav-full{display:none}.sidebar nav .nav-short{display:block}.sidebar nav button.active{background:#e9f1fa;color:#225a88}.topbar{height:36px;padding:0 16px}.topbar i{margin:0 10px}main{padding:23px 16px 26px}.page-head{margin-bottom:22px}.heading-identity{gap:12px}.page-crest{width:36px;height:52px}.heading-identity h1{font-size:25px;line-height:1.2;margin:8px 0}.heading-identity p.sub{font-size:12px;line-height:1.65}.heading-identity .eyebrow{font-size:8px}.banner{padding:14px;gap:10px;margin-bottom:18px}.banner b{font-size:12px}.banner p{font-size:11px}.stats{gap:10px;margin-bottom:24px}.stat{padding:16px;min-height:132px}.stat-label{font-size:8px;letter-spacing:.08em;max-width:75%;min-height:24px}.stat>svg{width:18px;height:18px;padding:4px;top:14px;right:12px}.stat-value{font-size:28px;margin:13px 0 8px}.stats .stat:last-child{min-height:116px}.stat-value.name{font-size:22px;margin:13px 0 7px}.stat small{font-size:10px;line-height:1.6}.tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.tool{position:relative;display:block;padding:16px 13px;min-height:150px}.tool>svg:first-child{width:21px;height:21px;padding:9px;margin-bottom:13px}.tool h3{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.tool p{font-size:10px;line-height:1.6;margin-top:7px}.tool>svg:last-child{position:absolute;top:22px;right:12px;width:14px}.panel-head{padding:17px 15px;gap:10px}.panel-head h2{font-size:15px}.panel-head .outline{font-size:10px;padding:9px 10px}.upcoming{padding:0 15px}.person-name{font-size:13px;overflow-wrap:anywhere}.person-meta{line-height:1.6}.birthday-row{gap:10px}.birthday-row .avatar{width:32px;height:32px;font-size:10px}.filters{gap:10px}.filters .search{flex-basis:100%;width:100%;min-height:48px}.filters select{width:100%;flex-basis:100%;min-height:48px}.filters label.muted{font-size:12px}.filters input[type=checkbox]{flex:none}.table-wrap{overflow:visible}table,tbody{display:block}table thead{display:none}tbody{display:grid;gap:10px}.table-wrap table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:17px 15px;border:1px solid #e0e7ef;border-radius:12px;background:#fff}.table-wrap table tbody td{display:block;padding:0;border:0;min-width:0;white-space:normal;overflow-wrap:anywhere}.table-wrap table tbody td:nth-child(1){font-size:14px;line-height:1.45;align-self:center}.table-wrap table tbody td:nth-child(2){font-size:10px;align-self:center;justify-self:end;border-radius:5px;background:#edf3f8;color:#61809b;padding:5px 7px}.table-wrap table tbody td:nth-child(3){grid-column:1/-1;line-height:1.5}.table-wrap table tbody td:nth-child(3) .role{background:transparent;padding:0;font-size:11px;white-space:normal}.table-wrap table tbody td:nth-child(4){grid-column:1/-1;border-top:1px solid #eef2f7;margin-top:3px;padding-top:10px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-variant-numeric:tabular-nums;color:#486b8b}.table-wrap table tbody td:nth-child(4):before{content:attr(data-label);color:#90a1b4;font-size:10px}.panel:has(.table-wrap){border:0;background:transparent}.note{font-size:11px}.birthday-controls{width:100%;align-items:flex-end;justify-content:space-between;gap:12px}.birthday-controls .month-field{flex:1;min-width:0}.month-field select{width:100%;min-width:0;min-height:46px}.year-controls{gap:8px;align-self:auto;margin-top:0;flex:none}.year-controls b{font-size:16px}.year-controls button{min-width:44px;min-height:46px;padding:8px}.birthday-grid{gap:13px}.birth-month .birthday-row{padding:17px 15px}.birth-month .person-name{font-size:13px}.birth-month .date{font-size:12px}.birth-month h3{padding:16px}.login-shell{padding:22px 18px 32px}.login-brand{margin-bottom:22px}.login-intro{padding:22px 0;gap:15px}.login-intro h1{font-size:29px}.login-intro p{font-size:12px}.hero-crest{width:78px;height:112px}.hero-emblem>span{font-size:6px}.intro-line{display:none}.team-grid{margin:18px 0;gap:10px}.team-card{padding:13px 14px;min-height:168px}.team-card .card-crest{width:61px;height:88px;margin-bottom:13px}.team-card-label{padding-top:10px}.team-card b{font-size:16px}.login-form{padding:18px;scroll-margin:20px}.login-form label{font-size:12px}.login-form input{min-height:48px}.login-form .primary{min-height:48px;font-size:13px}.login-foot{font-size:9px;line-height:1.7;flex-wrap:wrap}.empty{padding:35px 18px}.empty h2{font-size:17px}footer{font-size:9px;padding:18px 16px}
}
@media(max-width:360px){main{padding-right:12px;padding-left:12px}.heading-identity h1{font-size:22px}.sidebar{padding-left:12px;padding-right:12px}.sidebar .team-badge{margin-right:6px;font-size:10px}.brand small{display:none!important}.team-card{padding:11px}.tool{padding:14px 11px}.birthday-controls{gap:8px}.year-controls{gap:4px}.year-controls button{min-width:40px}.login-intro h1{font-size:25px}.hero-crest{width:66px;height:95px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:760px){.sidebar{backdrop-filter:none;background:#fcfdff}.stat-label{font-size:9px}.tool p{font-size:11px}}
@media(max-width:760px){.sidebar{height:calc(76px + env(safe-area-inset-top));padding-top:calc(10px + env(safe-area-inset-top))}.login-shell{padding-top:calc(22px + env(safe-area-inset-top))}}
/* Search fields keep the same CSS box in Safari and other browsers. */
input[type=search]{-webkit-appearance:none;appearance:none}

/* One personal mobile slot, alongside the fixed navigation. */
.sidebar nav .mobile-quick-link{display:none}
@media(max-width:760px){.sidebar nav .desktop-birthday-link{display:none}.sidebar nav .mobile-quick-link{display:flex}.sidebar nav .mobile-quick-link .nav-short{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* The editable personal slot sits at the far right of the mobile bar. */
@media(max-width:760px){.sidebar nav .mobile-quick-link{gap:2px;padding:6px 0;outline:1px dashed #b6c9d9;outline-offset:-4px;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.sidebar nav .mobile-quick-link .nav-short{line-height:1.1}.quick-nav-symbol{display:block;position:relative;line-height:0}.sidebar nav .quick-nav-pencil{position:absolute;width:12px;height:12px;top:-3px;right:-9px;padding:1px;border:1px solid #dce6ee;border-radius:4px;background:#fcfdff;color:#416d8e;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.quick-nav-hint{font-size:7px;line-height:1.15;color:#6b869c;white-space:nowrap}.sidebar nav .mobile-quick-link.active .quick-nav-hint{color:#35698f}}

@media(max-width:760px){.sidebar nav .mobile-quick-link:focus-visible{outline:2px solid #477da6;outline-offset:1px}}

/* Compact return action and real, keyboard-accessible breadcrumb links. */
.page-head .heading-identity{min-width:0}.page-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:none}.page-head-actions .people-action-buttons{margin-left:0}.page-back{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:10px;flex:none;border:1px solid #dce6ee;border-radius:10px;background:#fff;color:#708ba1}.page-back:hover{background:#edf4fa;color:#315e82}.page-back svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.portal-breadcrumbs{display:flex;align-items:center;gap:10px;min-width:0;flex:1;overflow:hidden}.portal-breadcrumbs a{display:block;min-height:44px;line-height:44px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;min-width:0;color:#b9cbd9;text-decoration:none}.portal-breadcrumbs a:not(.breadcrumb-current){flex:none}.portal-breadcrumbs .breadcrumb-current{color:#e8f0f7}.portal-breadcrumbs a:hover{text-decoration:underline;color:#fff}.portal-breadcrumbs a:focus-visible{outline:2px solid #d9eaf8;outline-offset:-2px;border-radius:3px}.breadcrumb-separator{color:#7494ad;flex:none}
@media(max-width:760px){.topbar:has(.portal-breadcrumbs){height:auto;min-height:44px;gap:8px}.topbar .topbar-actions{padding-right:0}.portal-breadcrumbs{gap:8px;font-size:10px}.page-head{flex-wrap:wrap;flex-direction:row;align-items:center}.page-head .heading-identity{flex:1 1 220px}.people-head .page-head-actions{justify-self:end}.page-head-actions>.primary{min-height:44px;font-size:12px}.page-head-actions{max-width:100%}}

.profile-tasks{padding:22px 24px;margin-bottom:24px;border-left:3px solid #c9953f}.profile-tasks h2{font-size:20px;margin:7px 0 0;display:flex;align-items:center;gap:9px}.profile-tasks h2 span{font-size:12px;background:#f7ecd6;color:#916723;min-width:24px;height:24px;border-radius:12px;display:inline-grid;place-items:center}.profile-task-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.profile-task-list button{display:flex;align-items:center;gap:10px;min-height:46px;padding:12px;border:1px solid #e4e9ec;border-radius:8px;background:#fff;color:#315872;text-align:left;font-size:13px;cursor:pointer}.profile-task-list button:hover{background:#f7fafd}.profile-task-list svg{width:17px;height:17px;margin-left:auto;flex:none}.profile-task-dot{width:13px;height:13px;border:1.5px solid #b99e72;border-radius:50%;flex:none}@media(max-width:760px){.profile-tasks{padding:18px 16px;margin-bottom:18px}.profile-tasks h2{font-size:18px}.profile-task-list{grid-template-columns:1fr;margin-top:14px}.profile-task-list button{font-size:14px}}

/* Navigation focuses the content landmark. Safari must not outline the whole page. */
#main:focus{outline:none}

/* The mobile footer has no visible content; avoid its empty divider and gap. */
@media(max-width:760px){.workspace>footer{display:none}}


.admin-trigger{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;margin-top:12px;padding:10px 12px;background:#edf3fa;border:1px solid #dce6f2;border-radius:9px;color:#617d98;font-size:12px;font-weight:600}.admin-trigger svg{width:18px;height:18px}.admin-trigger.is-admin{background:#dfeefa;border-color:#9cbed9;color:#205d8a}.person-link{border:0;background:none;padding:0;text-align:left;color:#355c7c;font-size:inherit;font-weight:600;cursor:pointer;line-height:1.5}.person-link:hover{text-decoration:underline}.group-caption{display:block;color:#95a5b5;font-size:10px;margin-top:7px;line-height:1.4}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px}.admin-tabs{display:flex;padding:4px;background:#e8eef5;border-radius:10px;gap:4px}.admin-tabs button{display:flex;align-items:center;gap:8px;padding:10px 14px;min-height:42px;border:0;border-radius:7px;background:transparent;color:#8294a8;font-size:12px}.admin-tabs button.selected{background:white;color:#355f82;box-shadow:0 2px 5px #1b3e5d08}.admin-tabs button span{font-size:10px;border-radius:4px;background:#edf2f8;padding:3px 5px}.admin-search{width:100%;margin-bottom:8px}.admin-list-note{font-size:12px;color:#8e9fb0;line-height:1.7;margin:8px 0 19px}.admin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.admin-card{background:white;border:1px solid #dfe7f0;border-radius:12px;padding:19px;display:flex;justify-content:space-between;gap:14px;align-items:center}.admin-person{display:flex;gap:12px;align-items:center;min-width:0}.admin-person>div:last-child{min-width:0}.admin-person .person-link{font-size:13px;overflow-wrap:anywhere}.admin-person p{font-size:10px;color:#8d9fb1;line-height:1.6;margin:5px 0}.admin-person small{font-size:10px;color:#62839f}.admin-person-actions .outline{padding:9px 10px;font-size:10px;min-height:40px;white-space:nowrap}.status-message{color:#4f7b97;font-size:12px;line-height:1.7}.back-link{background:none;border:0;color:#7a96ad;font-size:12px;padding:0;margin:0 0 20px;min-height:40px}.person-profile{padding:28px}.profile-identity{display:flex;gap:18px;align-items:center;border-bottom:1px solid #e8edf4;padding-bottom:25px}.profile-avatar{width:64px;height:64px;font-size:19px}.profile-identity h2{font-size:20px;color:#2a506f}.profile-identity p{font-size:12px;color:#8b9fb2;line-height:1.6;margin:9px 0}.profile-identity span{font-size:11px;color:#5f85a3}.profile-fields{margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.profile-fields>div{padding:22px 0;border-bottom:1px solid #edf1f6}.profile-fields dt{font-size:10px;color:#90a1b3;margin-bottom:10px}.profile-fields dd{margin:0;font-size:14px;color:#3a5b77;line-height:1.5;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.phone-link{color:#2e6895;text-decoration:none;display:inline-flex;align-items:center;min-height:30px}.phone-link:hover{text-decoration:underline}.profile-restore{margin-top:18px}.management-dialog{width:640px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 32px);border:1px solid #dbe5ef;border-radius:16px;padding:0;color:#375673;background:white;box-shadow:0 24px 80px #0c264638;overflow:auto}.management-dialog::backdrop{background:#122d4b80;backdrop-filter:blur(3px)}.management-dialog.small-dialog{width:460px}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px;border-bottom:1px solid #e7edf4;background:white;position:sticky;top:0;z-index:2}.dialog-heading h2{margin-top:8px;font-size:20px;color:#254e6e}.dialog-heading .eyebrow{font-size:9px}.dialog-close{display:grid;place-items:center;min-width:44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #e4eaf1;border-radius:9px;background:white;color:#859bb0;font-size:25px;font-weight:400}.dialog-body{padding:22px 24px}.dialog-intro{font-size:12px;line-height:1.8;color:#8b9caf;margin:0 0 20px}.editor-grid+.dialog-intro{margin:20px 0 12px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:17px 24px;border-top:1px solid #e6edf5;background:#fff;position:sticky;bottom:0;z-index:2}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 16px;min-width:0}.form-field{display:grid;gap:8px;font-size:11px;color:#738da5;min-width:0}.form-field input,.form-field select{width:100%;min-width:0;max-width:100%;min-height:46px;font-size:14px}.form-error{color:#ad6755;font-size:12px;line-height:1.7;margin:15px 0 0}.form-error:empty{display:none}.danger-link{padding:12px 0;background:none;border:0;color:#b77c68;font-size:11px;min-height:42px}.page-head h1{overflow-wrap:anywhere}.page-head>.primary{white-space:nowrap}.management-dialog .primary:disabled{opacity:.6}.panel.empty>.primary{margin-top:18px}
@media(max-width:1100px){.admin-cards{grid-template-columns:1fr}}
@media(max-width:760px){.admin-trigger{position:static;flex:none;margin:0 6px 0 0;min-height:44px;width:40px;padding:0;display:grid;place-items:center;background:#edf3fa}.admin-trigger span{display:none}.sidebar .team-badge{font-size:10px;gap:6px;padding:8px;margin-right:8px;min-height:36px}.person-link{font-size:14px;min-height:32px}.group-caption{font-size:11px;margin-top:5px}.admin-toolbar{align-items:stretch;flex-direction:column;gap:12px}.admin-tabs{align-self:flex-start}.admin-tabs button{min-height:44px;padding:10px 15px;font-size:12px}.admin-toolbar>.outline{align-self:flex-start;font-size:11px;min-height:40px}.admin-list-note{font-size:11px;margin-bottom:16px}.admin-card{display:block;padding:17px}.admin-person .avatar{width:34px;height:34px}.admin-person .person-link{font-size:14px}.admin-person p,.admin-person small{font-size:11px}.admin-person-actions{display:flex;justify-content:flex-end;margin-top:12px;border-top:1px solid #edf2f7;padding-top:12px}.admin-person-actions .outline{min-height:44px;padding:10px 15px;font-size:12px}.admin-cards{gap:12px}.page-head>.primary{min-height:46px;font-size:12px}.person-profile{padding:19px 17px}.profile-identity{gap:13px;align-items:flex-start;padding-bottom:20px}.profile-avatar{width:47px;height:47px;font-size:15px}.profile-identity h2{font-size:18px;line-height:1.5;overflow-wrap:anywhere}.profile-identity p{font-size:11px}.profile-fields{grid-template-columns:1fr}.profile-fields>div{padding:17px 0}.profile-fields dt{font-size:11px;margin-bottom:8px}.profile-fields dd{font-size:15px}.profile-fields .muted{font-size:13px}.phone-link{min-height:36px}.management-dialog{max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:13px}.dialog-heading{padding:17px;gap:10px}.dialog-heading h2{font-size:18px;line-height:1.5;margin-top:5px}.dialog-heading .eyebrow{font-size:8px}.dialog-body{padding:20px 17px}.editor-grid{grid-template-columns:1fr;gap:17px}.form-field{font-size:12px}.form-field input,.form-field select{min-height:48px;font-size:16px}.dialog-intro{font-size:12px}.dialog-actions{padding:14px 17px;gap:8px}.dialog-actions button{flex:1;min-height:46px;font-size:12px;padding:10px 9px}.danger-link{font-size:12px;min-height:44px}.form-error{font-size:12px}.back-link{min-height:44px;font-size:12px}.small-dialog .dialog-actions button{font-size:11px}}
@media(max-width:360px){.sidebar .brand b{font-size:17px}.sidebar .brand{gap:7px}.sidebar-crest{width:27px;height:39px}.sidebar .team-badge{padding:7px;gap:5px;margin-right:5px}.sidebar .team-badge .status-dot{display:none}.admin-trigger{width:38px;min-width:38px;margin-right:5px}.logout{width:40px;min-width:40px}}

/* Gender is also named in profiles and editable; color is a supplemental cue. */
.person-male{--person-bg:#f3f8fd;--person-border:#d5e5f3;--person-avatar:#e2eef9;--person-ink:#356b95}
.person-female{--person-bg:#fff5f8;--person-border:#f0d8e2;--person-avatar:#f8e2ec;--person-ink:#97526f}
.person-unspecified{--person-bg:#fafbfc;--person-border:#e3e7ec;--person-avatar:#edf0f3;--person-ink:#687987}
.admin-card[class*="person-"],.person-profile[class*="person-"],#personRows tr{background:var(--person-bg);border-color:var(--person-border)}
[class*="person-"] .avatar{background:var(--person-avatar);color:var(--person-ink)}
#personRows tr:hover{filter:brightness(.985)}.birthday-row[class*="person-"]{background:linear-gradient(90deg,var(--person-bg),transparent)}
.admin-person-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.person-issue-badge{border:1px solid #efc5c8;background:#fff0f1;color:#a33d49;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 10px;font-size:11px;white-space:nowrap}
.person-issue-badge>span:first-child{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#b74450;color:white;font-size:12px;font-weight:750}
@media(max-width:760px){.table-wrap table tbody tr{background:var(--person-bg);border-color:var(--person-border)}.admin-person-actions{justify-content:space-between}.person-issue-badge{font-size:12px}.role{white-space:normal}}

.editor-issues{border:1px solid #efc5c8;background:#fff3f4;color:#a33d49;padding:13px;border-radius:9px;font-size:12px;line-height:1.8;margin:0 0 20px}.admin-card{align-items:flex-start}.admin-person-actions{flex:none;max-width:45%}@media(max-width:760px){.admin-person-actions{max-width:none}}
/* Group background and avatar gender color communicate independent information. */
.group-command{--group-bg:#f1f6fb;--group-row:#f8fbfe;--group-line:#d7e4f0;--group-ink:#345f82;--group-marker:#c7dceb}
.group-first{--group-bg:#fbeeee;--group-row:#fff9f9;--group-line:#ecd4d5;--group-ink:#934e55;--group-marker:#d49a9f}
.group-second{--group-bg:#faf4dc;--group-row:#fffdf5;--group-line:#e9deae;--group-ink:#7d6728;--group-marker:#d4bd68}
.group-third{--group-bg:#eaf5ed;--group-row:#f7fcf8;--group-line:#cfe4d4;--group-ink:#3d7253;--group-marker:#8fbda0}
.group-unassigned{--group-bg:#eef1f5;--group-row:#fafbfc;--group-line:#dce2ea;--group-ink:#68798d;--group-marker:#b4bfcc}
.people-controls{background:#fff;border:1px solid #dfe7ef;border-radius:12px;padding:20px;margin-bottom:15px}.people-controls .filters{flex-wrap:wrap;margin-bottom:17px}.people-controls .filters .search{flex:1 1 270px}.people-controls .filters select{flex:0 1 auto;font-size:12px}.people-options{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap;border-top:1px solid #edf1f6;padding-top:17px}.people-sort{display:grid;gap:8px;color:#75899e;font-size:11px;min-width:240px}.people-sort select{min-height:44px;font-size:12px;max-width:100%}.people-missing{display:flex;align-items:center;gap:8px;font-size:12px;color:#72869b;min-height:44px}.people-missing input{min-height:0;width:16px;height:16px;accent-color:#285f8c}.people-legend{display:flex;gap:14px;margin-left:auto;min-height:44px;align-items:center;flex-wrap:wrap}.people-legend>span{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#778a9d}.gender-dot{width:12px;height:12px;border-radius:50%;border:1px solid #00000010;display:inline-block}.male-dot{background:#cce1f4}.female-dot{background:#efccdd}.unspecified-dot{background:#e2e6eb}.person-sort-note{font-size:11px;color:#8395a7;line-height:1.8;margin:0 0 23px}.person-groups{display:grid;gap:25px}.personnel-group{border:1px solid var(--group-line);border-radius:13px;background:white;overflow:hidden}.personnel-group-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 22px;background:var(--group-bg);border-bottom:1px solid var(--group-line)}.personnel-group-head>div{display:flex;gap:12px;align-items:center}.personnel-group-head h2{color:var(--group-ink);font-size:17px}.group-marker{display:grid;place-items:center;min-width:33px;width:33px;height:33px;background:#ffffff94;border:1px solid var(--group-line);color:var(--group-ink);border-radius:9px;font-size:14px;font-weight:700}.group-marker svg{width:18px;height:18px}.group-count{font-size:11px;color:var(--group-ink);white-space:nowrap}.group-open-note{font-size:11px;color:#8091a4;padding:16px 22px;margin:0;background:var(--group-row);line-height:1.7}.group-table{table-layout:fixed}.group-table th{background:white;font-size:9px;padding:14px 19px;line-height:1.6}.group-table th:first-child{width:31%}.group-table th:nth-child(2){width:13%}.group-table th:nth-child(3){width:19%}.group-table th:nth-child(4){width:19%}.group-table th:nth-child(5){width:18%}.group-table td{padding:16px 19px;background:var(--group-row);border-top:1px solid var(--group-line);font-size:12px;overflow-wrap:anywhere;color:#566e83}.group-table td:first-child{border-left:4px solid var(--group-marker);padding-left:15px}.group-table tr:hover td{background:var(--group-bg)}.people-identity{display:flex;gap:12px;align-items:center;min-width:0}.people-identity .avatar{width:34px;height:34px;font-size:10px}.people-identity .person-link{font-size:12px;line-height:1.7}.people-tenure{font-variant-numeric:tabular-nums}.group-table .role{display:inline-block;white-space:normal;font-size:10px;line-height:1.5;background:var(--group-bg);color:var(--group-ink)}.group-table .lead-role{font-weight:650;border:1px solid var(--group-line)}
.admin-card.group-command,.admin-card.group-first,.admin-card.group-second,.admin-card.group-third,.admin-card.group-unassigned{background:var(--group-row);border-color:var(--group-line);border-left:4px solid var(--group-marker)}
@media(min-width:761px){.notice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px) and (min-width:761px){.group-table td,.group-table th{padding-left:12px;padding-right:12px}.people-identity{gap:8px}.people-identity .avatar{width:28px;height:28px}.people-identity .person-link{font-size:11px}.group-table td{font-size:11px}}
@media(max-width:760px){.people-controls{padding:16px}.people-controls .filters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}.people-controls .filters .search{grid-column:1/-1;width:100%;min-height:48px}.people-controls .filters select{width:100%;min-width:0;font-size:12px!important;padding:10px;min-height:46px}.people-options{gap:12px;display:grid;grid-template-columns:1fr}.people-sort{width:100%;min-width:0;font-size:11px}.people-sort select{width:100%;font-size:13px!important;padding:12px 10px}.people-missing{font-size:12px;min-height:36px}.people-legend{margin:0;min-height:28px;gap:15px}.people-legend>span{font-size:10px}.person-sort-note{font-size:11px;margin-bottom:18px}.person-groups{gap:20px}.personnel-group{border-radius:12px}.personnel-group-head{padding:15px 14px}.personnel-group-head h2{font-size:16px}.personnel-group-head>div{gap:10px}.group-count{font-size:10px}.group-marker{width:30px;min-width:30px;height:30px}.group-open-note{padding:14px;font-size:11px}.group-table,.group-table tbody{display:block;width:100%}.group-table thead{display:none}.group-table tbody{display:grid;gap:10px;padding:12px;background:#fff}.group-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:15px 13px;background:var(--group-row);border:1px solid var(--group-line);border-left:4px solid var(--group-marker);border-radius:10px}.group-table td,.group-table td:first-child{display:block;border:0;padding:0;background:transparent;min-width:0}.group-table tr:hover td{background:transparent}.group-table td:first-child{grid-column:1;align-self:center}.people-identity{gap:9px}.people-identity .avatar{width:31px;height:31px;font-size:10px}.people-identity .person-link{font-size:13px;line-height:1.6;min-height:32px}.group-table td:nth-child(2){grid-column:2;align-self:center;font-size:10px;color:#6c8194}.group-table td:nth-child(3){grid-column:1/-1;margin-left:40px}.group-table .role{font-size:10px;padding:4px 7px}.group-table td:nth-child(4),.group-table td:nth-child(5){grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding-top:10px;border-top:1px solid var(--group-line)}.group-table td:nth-child(4){margin-top:5px}.group-table td:nth-child(4):before,.group-table td:nth-child(5):before{content:attr(data-label);font-size:10px;color:#8193a3;flex:none}.notice-summary:last-child{grid-column:auto;display:block;min-height:100px}.notice-summary:last-child span{margin-top:10px}}

.group-table tbody tr:hover{background:var(--group-bg)}
.qualification-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;color:#526779}.qualification-badges>span{display:grid;place-items:center;width:27px;height:27px;border:1px solid #d9e1e8;background:#ffffffb0;border-radius:6px}.qualification-badges svg{width:19px;height:19px;overflow:visible}.qualification-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px}.qualification-list li{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--group-line,#dfe7ef);border-radius:8px;font-size:12px}.qualification-list svg{width:22px;height:22px}.course-fieldset{border:0;border-top:1px solid #e4eaf1;margin:24px 0 0;padding:20px 0 0}.course-fieldset legend{padding:0 8px 0 0;font-size:14px;font-weight:650}.course-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.course-choices label{display:flex;align-items:center;gap:9px;min-height:48px;border:1px solid #dfe7ef;padding:10px;border-radius:8px;font-size:12px}.course-choices input{width:17px;height:17px;min-height:0;flex:none;padding:0}.course-choices svg{width:22px;height:22px}.profile-identity h1{font-size:29px;margin:10px 0;color:#254e6e}.profile-identity>.outline{margin-left:auto;align-self:flex-start}.person-profile[class*="group-"]{background:var(--group-row);border-color:var(--group-line);border-top:5px solid var(--group-marker)}.profile-courses{margin-top:25px}.profile-courses h2{font-size:16px}.profile-fields dt{line-height:1.6}.person-sort-note{max-width:100%}.notice-item{padding:16px}.notice-item h3{font-size:14px}.notice-people{margin-top:12px}.notice-kind{display:none}.notice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.notice-overview-head p{line-height:1.5}.birth-toolbar{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:24px}.birth-toolbar .month-field{display:grid;gap:8px;font-size:11px;color:#75899e}.birth-view-switch{display:flex;gap:5px;background:#e8eef5;padding:4px;border-radius:9px}.birth-view-switch button{border:0;border-radius:6px;background:transparent;color:#647f98;min-height:44px;padding:10px 20px;font-size:12px}.birth-view-switch [aria-pressed=true]{background:white;box-shadow:0 1px 5px #233c5910;color:#244d6f}.birth-toolbar .year-controls{margin-left:auto}.birth-month h3 button{background:none;border:0;padding:0;color:inherit;font-size:14px;font-weight:650;text-align:left;min-height:32px}.mini-birthday-calendar{padding:14px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;border-bottom:1px solid #edf1f6}.mini-birthday-calendar>span,.mini-birthday-calendar>button{min-width:0;min-height:30px;display:grid;place-items:center;font-size:11px;color:#6b8095;position:relative}.mini-birthday-calendar>.weekday{min-height:22px;font-size:9px;color:#93a1af}.mini-birthday-calendar button{border:1px solid #9ebbd4;background:#e5f0fa;color:#285e89;border-radius:5px}.mini-birthday-calendar i{width:4px;height:4px;background:#39749f;border-radius:50%;position:absolute;bottom:2px}.birth-single{grid-template-columns:1fr;max-width:760px}.birth-single .birthday-row{padding:20px}.birth-year .person-meta{display:none}.birthday-row>div:nth-child(2){min-width:0}.birthday-row .person-name{white-space:normal;line-height:1.6}.birthday-row .date{flex:none}
@media(max-width:760px){.course-choices{grid-template-columns:1fr}.profile-identity{flex-wrap:wrap}.profile-identity>div:nth-child(2){flex:1;min-width:0}.profile-identity h1{font-size:23px;line-height:1.3}.profile-identity>.outline{margin:0 0 0 auto;min-height:44px}.profile-identity .eyebrow{font-size:8px;line-height:1.7}.notice-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.birth-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:12px}.birth-view-switch{grid-column:1}.birth-toolbar .year-controls{grid-column:2;grid-row:1;margin:0;justify-content:flex-end;gap:5px}.birth-toolbar .year-controls button{min-width:40px;min-height:44px}.birth-toolbar .year-controls b{font-size:15px}.birth-toolbar select{width:100%;min-width:0;font-size:14px!important;padding:10px}.birth-view-switch button{padding:10px 13px}.birth-year{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.birth-year .mini-birthday-calendar{display:none}.birth-year .birthday-row{padding:10px;gap:5px;align-items:flex-start;flex-wrap:wrap}.birth-year .birthday-row .avatar{display:none}.birth-year .birthday-row .date{margin:0;color:#8192a4;font-size:10px}.birth-year .birthday-row>div:nth-child(2){flex-basis:100%}.birth-year .person-name{font-size:12px;min-height:32px}.birth-year .birth-month h3{padding:12px;gap:8px}.birth-year .no-birthday{padding:12px;font-size:10px}.birth-year .birth-month h3 button{font-size:13px;min-height:36px}.birth-single .birthday-row .avatar{display:grid}.qualification-badges>span{width:28px;height:28px}.group-table .person-link{min-height:44px}.admin-person .person-link{min-height:44px}.notice-filters{scrollbar-width:thin}.notice-filters button{min-height:44px}.admin-trigger svg{width:20px;height:20px;overflow:visible}.admin-trigger{min-width:44px!important;width:44px!important}.notice-trigger-mobile{min-width:44px!important;width:44px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep the eight-tooth administration cog clear at touch and desktop sizes. */
.admin-trigger svg{width:22px;height:22px;display:block;overflow:visible;stroke-width:1.7;flex-shrink:0}

@media(max-width:760px){.tools>.tool:only-child{grid-column:1/-1;min-height:125px}}

/* Optional search and filtering keep the group overview in the foreground. */
.people-head{align-items:center}.people-action-buttons{display:flex;gap:8px;flex:none;margin-left:auto}.people-icon-button{position:relative;display:grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;padding:10px;border:1px solid #dbe5ee;border-radius:10px;background:#fff;color:#67839b}.people-icon-button svg{display:block;width:21px;height:21px;overflow:visible}.people-icon-button:hover{background:#f0f5fa;border-color:#aec4d7}.people-icon-button[aria-expanded=true],.people-icon-button.is-active{background:#e7f0f9;border-color:#97b5cf;color:#275c85}.people-filter-badge{position:absolute;right:-4px;top:-5px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid #f4f5f7;border-radius:10px;background:#2d648f;color:#fff;font-size:9px;font-weight:700}.people-search-panel,.people-filter-panel{border:1px solid #dfe7ef;background:#fff;border-radius:12px;padding:16px;margin:0 0 16px}.people-search-input{display:flex;align-items:center;gap:10px}.people-search-input>svg{width:20px;height:20px;color:#7d97ac;flex:none}.people-search-input .search{width:100%;min-width:0;flex:1;min-height:44px;margin:0}.people-search-input .people-icon-button{font-size:24px;line-height:1}.people-filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.people-filter-fields>label{display:grid;gap:8px;color:#738a9e;font-size:11px;min-width:0}.people-filter-fields select{width:100%;min-width:0;min-height:44px}.people-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}.people-filter-footer .people-missing{margin:0}.people-filter-footer .text-button,.people-selection-summary .text-button{min-height:44px;font-size:12px;padding:8px 0}.people-filter-panel .person-sort-note{margin:8px 0 0;font-size:11px;line-height:1.6}.people-selection-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 14px;margin:0 0 16px;border:1px solid #dbe6f0;border-radius:10px;background:#edf4fb;color:#53728b;font-size:12px}.people-selection-summary>span{min-width:0;overflow-wrap:anywhere}.people-selection-summary>.text-button{flex:none}.people-search-panel:focus-within{border-color:#b2c8da}
@media(max-width:760px){.people-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.people-head .heading-identity{min-width:0}.people-head .heading-identity h1{font-size:22px}.people-head .heading-identity p.sub{font-size:11px}.people-action-buttons{gap:7px}.people-search-panel,.people-filter-panel{padding:12px;margin-bottom:14px}.people-search-input{gap:8px}.people-search-input>svg{display:none}.people-search-input .search{min-height:48px}.people-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.people-filter-fields>label:last-child{grid-column:1/-1}.people-filter-fields select{padding:12px 9px;min-height:48px}.people-filter-footer{margin-top:10px;gap:4px 12px}.people-filter-footer .people-missing{min-height:44px;font-size:12px}.people-filter-panel .person-sort-note{font-size:10px}.people-selection-summary{font-size:11px;padding:3px 11px;gap:10px}}
@media(max-width:380px){.people-head{grid-template-columns:1fr;gap:8px}.people-head .people-action-buttons{justify-self:end}.people-filter-fields{grid-template-columns:1fr}.people-filter-fields>label:last-child{grid-column:auto}}

#personSearch::-webkit-search-cancel-button{-webkit-appearance:none}

/* Qualification glyphs retain their square canvas even beside long labels. */
.course-icon{display:block;flex:none;aspect-ratio:1;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.qualification-list svg,.course-choices svg{flex:0 0 22px;min-width:22px;min-height:22px}.qualification-badges svg{flex:none;min-width:19px;min-height:19px}

/* Contact details stay with the identity in both table and mobile cards. */
.people-identity>div{min-width:0}.people-contact{display:flex;flex-wrap:wrap;align-items:center;gap:3px 12px;margin-top:4px;font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums}.people-service-number{color:#61788c}.people-phone{display:inline-flex;align-items:center;gap:5px;min-width:0;min-height:32px;max-width:100%;color:#2e6895;text-decoration:none}.people-phone:hover{text-decoration:underline}.people-phone svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.people-phone span{overflow-wrap:anywhere}
@media(max-width:760px){.people-contact{font-size:12px;gap:2px 12px}.people-phone{min-height:44px}.people-phone svg{width:16px;height:16px}.group-table td:first-child:has(.people-contact){grid-column:1/-1}.group-table tr:has(.people-contact) td:nth-child(2){grid-column:2;grid-row:2}.group-table tr:has(.people-contact) td:nth-child(3){grid-column:1;grid-row:2}}

.topbar-actions{display:flex;align-items:center;gap:20px}.notice-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:40px;border:1px solid #43607a;border-radius:9px;padding:9px 12px;background:#24445f;color:#d6e4ef;font-size:11px}.notice-trigger svg{width:19px;height:19px}.notice-trigger-mobile{display:none}.notice-badge{display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:#6f9cc1;color:white;font-size:9px;font-weight:650}.notice-trigger.has-review .notice-badge{background:#bb8856}.notice-overview{padding:23px;margin:0 0 24px}.notice-overview-head{display:flex;gap:18px;justify-content:space-between;align-items:center;margin-bottom:20px}.notice-overview-head h2{font-size:16px}.notice-overview-head p{font-size:12px;color:#8a9db0;line-height:1.7;margin:8px 0 0}.notice-overview-head .outline{font-size:11px;white-space:nowrap}.notice-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.notice-summary{display:flex;align-items:center;gap:13px;min-height:74px;padding:16px;text-align:left;border:1px solid #e1e9f2;border-radius:10px;background:#f7fafe;color:#64829d}.notice-summary b{font-size:25px;line-height:1;font-weight:500;color:#345f82;font-variant-numeric:tabular-nums}.notice-summary span{font-size:11px;line-height:1.6}.notice-summary svg{margin-left:auto;width:14px;height:14px;flex:none;color:#9cb0c2}.notice-summary:hover{border-color:#9dbad3;background:#f1f6fc}.notice-contact-note{font-size:10px;line-height:1.7;color:#9babba;margin:17px 0 0}.notice-dialog{width:730px}.notice-filters{display:flex;gap:6px;overflow:auto;padding:4px;margin:0 0 17px;border:1px solid #e7edf5;border-radius:9px;background:#f4f7fb}.notice-filters button{border:0;border-radius:6px;min-height:38px;padding:9px 13px;background:transparent;color:#8399ae;font-size:11px;white-space:nowrap}.notice-filters button.selected{background:white;box-shadow:0 2px 5px #1a3b5a09;color:#396b91}.notice-item{border:1px solid #e2eaf3;border-radius:11px;background:#fbfdff;padding:20px;margin-bottom:13px}.notice-item:last-child{margin-bottom:0}.notice-kind{display:inline-block;font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#6f95b4;margin-bottom:10px}.notice-item h3{font-size:15px;color:#365f7f;line-height:1.5}.notice-item>p{font-size:12px;color:#8a9db0;line-height:1.8;margin:9px 0 17px}.notice-review{background:#fdfbf7;border-color:#ebe2d6}.notice-review .notice-kind{color:#aa865b}.notice-people{border-top:1px solid #e9eff5;padding-top:4px}.notice-people>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:12px}.notice-people>div>span{font-size:12px;color:#527592;font-weight:600;overflow-wrap:anywhere}.notice-people .outline{font-size:11px;min-height:40px;padding:9px 12px}.notice-empty{padding:30px 12px;text-align:center;font-size:12px;color:#94a7b9;line-height:1.8}
@media(min-width:1101px){.workspace .topbar{padding-right:36px}.admin-toolbar>.outline{font-size:11px}.admin-search{max-width:760px}.admin-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.notice-overview{padding:25px}.notice-summary{min-height:84px}}
@media(max-width:1100px){.topbar-actions{gap:12px}.notice-summary{gap:10px;padding:13px}.notice-summary span{font-size:10px}}
@media(max-width:760px){.topbar-actions{display:none}.notice-trigger-desktop{display:none}.notice-trigger-mobile{display:grid;place-items:center;position:relative;flex:none;width:40px;min-width:40px;height:44px;min-height:44px;margin-right:6px;padding:0;background:#f3f7fc;color:#617e99;border:1px solid #dfe8f1}.notice-trigger-mobile .notice-badge{position:absolute;top:-3px;right:-4px;height:17px;min-width:17px;font-size:8px;box-shadow:0 0 0 2px #fcfdff}.notice-overview{padding:17px 15px;margin-bottom:22px}.notice-overview-head{align-items:flex-start;gap:10px;margin-bottom:16px}.notice-overview-head h2{font-size:15px}.notice-overview-head p{font-size:11px;line-height:1.7}.notice-overview-head .outline{padding:8px 9px;font-size:0;min-width:44px;min-height:44px;gap:0}.notice-overview-head .outline svg{width:19px;height:19px}.notice-summary-grid{grid-template-columns:1fr;gap:9px}.notice-summary{min-height:58px;padding:13px 14px;gap:14px}.notice-summary b{font-size:23px;min-width:31px}.notice-summary span{font-size:12px}.notice-contact-note{font-size:10px;margin-top:14px}.notice-dialog{width:calc(100vw - 20px)}.notice-filters{gap:2px;margin-bottom:16px}.notice-filters button{font-size:11px;padding:10px 9px;min-height:44px}.notice-item{padding:17px 15px}.notice-item h3{font-size:15px}.notice-item>p{font-size:12px}.notice-kind{font-size:9px}.notice-people .outline{min-height:44px;font-size:11px}.notice-people>div>span{font-size:13px}.notice-dialog .dialog-intro{font-size:12px;line-height:1.8}.notice-dialog .dialog-heading h2{font-size:18px}}
@media(max-width:420px){body.has-admin .sidebar .team-badge{display:none}.sidebar .brand{min-width:0}.notice-trigger-mobile{width:38px;min-width:38px;margin-right:5px}.notice-filters button{font-size:10px;padding-right:8px;padding-left:8px}}

@media(min-width:761px){.notice-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.notice-summary{flex-wrap:wrap;gap:9px;padding:13px}.notice-summary svg{display:none}.notice-summary span{flex-basis:100%}}
@media(max-width:760px){.notice-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notice-summary{display:block;min-height:100px}.notice-summary span{display:block;margin-top:10px;font-size:11px}.notice-summary svg{display:none}.notice-summary:last-child{grid-column:1/-1;display:flex;min-height:58px;align-items:center}.notice-summary:last-child span{margin-top:0}}
.notice-item.notice-compact{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;margin-bottom:10px}.notice-row-copy{min-width:0}.notice-row-copy h3{font-size:13px;line-height:1.5;margin:0;color:#365f7f}.notice-row-copy>span{display:block;margin-top:5px;font-size:12px;line-height:1.5;color:#72899f;overflow-wrap:anywhere}.notice-compact>.outline{flex:none;min-height:44px;padding:9px 12px;font-size:11px}.notice-review .notice-row-copy h3{color:#856841}@media(max-width:760px){.notice-item.notice-compact{padding:14px 12px;gap:10px}.notice-row-copy h3{font-size:13px}.notice-row-copy>span{font-size:12px}.notice-compact>.outline{padding:9px 10px;font-size:11px}}
#noticeDialogSummary:empty{display:none}

.personal-login{display:grid;gap:17px;max-width:560px;margin:0 auto}.personal-login h2{margin:0;font-size:24px;color:#244760;letter-spacing:-.04em}.personal-login .form-field{display:grid;gap:8px}.personal-login input{width:100%;border:1px solid #dce4ed;border-radius:9px;padding:13px 14px;min-height:48px;color:#294b66;background:#fff}.personal-login>.primary{width:100%;justify-content:center;min-height:48px}.personal-login .eyebrow{font-size:9px}.personal-login .form-error{margin:0}.login-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.login-links button,.text-button,.setup-link{min-height:44px;background:none;border:0;color:#416d8d;font-size:12px;padding:8px 0;text-align:left}.setup-link{display:block;margin:16px auto 0;color:#7d91a4}.account-help{font-size:12px;line-height:1.75;color:#7d91a4;margin:0}.account-trigger{width:42px;height:42px;min-height:42px;border:2px solid #d8e7f4;border-radius:50%;background:#e2edf8;color:#365f83;font-size:13px;font-weight:700;display:grid;place-items:center;position:fixed;top:12px;right:26px;z-index:45;box-shadow:0 0 0 4px #173650}.account-trigger.person-female{background:#f8e7ef;color:#ad607e;border-color:#eed2df}.account-trigger:focus-visible{outline:3px solid #7ea8ca;outline-offset:4px}.account-popover{position:fixed;top:67px;right:26px;z-index:70;width:260px;max-width:calc(100vw - 24px);padding:18px 10px 10px;background:white;border:1px solid #dce5ee;border-radius:13px;box-shadow:0 14px 40px #17365026;color:#35566f}.account-popover>strong,.account-popover>small{display:block;padding:0 10px;overflow-wrap:anywhere}.account-popover>small{font-size:11px;color:#8b9faf;margin:7px 0 13px}.account-popover button{display:block;width:100%;min-height:45px;border:0;border-radius:8px;background:white;text-align:left;padding:11px 12px;font-size:12px;color:#476b87}.account-popover button:hover{background:#f0f5fa}.account-popover button:last-child{border-top:1px solid #edf1f5;border-radius:0 0 8px 8px;margin-top:6px;color:#9b655e}.topbar-actions{padding-right:58px}.admin-section-tabs{display:flex;gap:6px;padding:4px;background:#e9eff6;border-radius:10px;width:max-content;margin:0 0 22px}.admin-section-tabs button{border:0;border-radius:7px;padding:10px 22px;min-height:42px;background:none;color:#7f94a6;font-size:12px}.admin-section-tabs button.selected{color:#2d5d81;background:white;box-shadow:0 2px 5px #1437520a}.account-setup-note{border:1px solid #c9deef;background:#edf5fc;border-radius:10px;color:#426e91;padding:16px;font-size:12px;line-height:1.7;margin:0 0 22px}.account-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.account-summary>div{padding:20px;border:1px solid #dfe7ef;background:white;border-radius:12px;display:flex;align-items:center;gap:14px}.account-summary b{font-size:27px;font-weight:500;color:#345f7f}.account-summary span{font-size:12px;color:#8297a9}.account-filters{display:flex;gap:12px;margin-bottom:20px}.account-filters input{flex:1;min-width:0}.account-filters select{min-height:48px}.account-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-card{border:1px solid #dce6ee;border-left:4px solid #b2c9dc;background:#fff;border-radius:12px;padding:20px;min-width:0}.account-card.group-first{background:#fdf5f3;border-left-color:#d7a19b}.account-card.group-second{background:#fffbef;border-left-color:#d5c58d}.account-card.group-third{background:#f5fbf6;border-left-color:#9fbea6}.account-card-person{display:flex;align-items:center;gap:12px;min-width:0}.account-card-person>div{min-width:0}.account-card h3{font-size:13px;line-height:1.6;color:#355870;overflow-wrap:anywhere}.account-username{display:block;font-size:11px;color:#8298aa;overflow-wrap:anywhere;line-height:1.7}.account-card .avatar{width:37px;height:37px;font-size:11px;background:#dfecf8;color:#477697;flex:none}.account-card .avatar.person-female{background:#fae4ed;color:#b46f8a}.account-state{font-size:9px;border:1px solid #dce6f0;border-radius:6px;background:#f0f5fa;color:#7c94a9;white-space:nowrap;padding:5px 7px;margin-left:auto}.state-active{color:#537e65;background:#edf7ef;border-color:#dbeade}.state-disabled{color:#a16b66;background:#f9eeec;border-color:#f0dbd7}.account-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e5edf2;margin-top:18px;padding-top:14px}.account-card-bottom>span{font-size:10px;color:#8a9dac;line-height:1.6}.account-card-bottom .outline{font-size:11px;padding:9px 12px}.account-warning{border:1px solid #eddbd4;background:#fcf4f0;border-radius:8px;padding:12px;font-size:12px;line-height:1.7;color:#a77766;margin:16px 0}.management-dialog .form-field+.form-field{margin-top:17px}.activation-details dt{font-size:10px;color:#8ba0b2;margin:20px 0 6px}.activation-details dd{margin:0;font-size:14px;color:#355b76;overflow-wrap:anywhere;line-height:1.6}.activation-details dd#resultCode{padding:12px;background:#f2f6fa;border:1px solid #e0e8f0;border-radius:8px;font-family:ui-monospace,monospace;font-size:12px;user-select:all}.my-account-layout{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,2fr);gap:24px;max-width:1120px}.my-account-layout .panel{padding:28px}.my-account-identity{text-align:center;align-self:start}.my-account-identity .avatar{margin:0 auto 20px}.my-account-identity h2{font-size:20px;line-height:1.5;margin-bottom:7px}.account-role-label{font-size:11px;color:#8199aa;margin:12px 0 24px}.account-security h2,.account-sessions h2{font-size:17px;margin-bottom:24px}.account-security form{display:grid;gap:18px}.account-security form .form-field{margin:0}.account-security .primary{justify-self:start;min-height:46px}.account-sessions{grid-column:1/-1}.account-session-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px}.account-session-heading h2{margin:0}.account-session-heading button{font-size:11px}.account-session{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #e7eef4}.account-session:last-child{border-bottom:0}.account-session b{display:block;font-size:13px;font-weight:600}.account-session span{display:block;font-size:11px;color:#8a9eae;margin-top:7px}.account-session .account-current{color:#5b8a6d}.account-session button{font-size:11px}.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}
@media(max-width:1100px){.account-cards{grid-template-columns:1fr}}
@media(max-width:760px){.account-trigger{position:static;flex:none;width:42px;height:42px;min-height:42px;margin-left:7px;box-shadow:none}.account-popover{top:calc(72px + env(safe-area-inset-top));right:12px}.sidebar .team-badge{display:none}.sidebar .brand{flex:1}.account-summary{gap:8px}.account-summary>div{padding:15px 10px;display:block}.account-summary b{display:block;font-size:24px;margin-bottom:8px}.account-summary span{font-size:10px;line-height:1.5;display:block}.account-filters{flex-direction:column;gap:10px}.account-card{padding:17px 14px}.account-card-person{flex-wrap:wrap;gap:10px}.account-state{margin-left:auto}.account-card-person>div{flex:1;min-width:100px}.account-card h3{font-size:13px}.account-card-bottom>span{max-width:60%}.my-account-layout{grid-template-columns:1fr;gap:16px}.my-account-layout .panel{padding:22px 18px}.my-account-identity .avatar{margin-bottom:14px}.account-sessions{grid-column:auto}.account-session-heading{display:block}.account-session-heading button{margin-top:16px}.account-security .primary{width:100%}.personal-login{max-width:none}.personal-login h2{font-size:22px}.login-links{gap:4px 14px}.admin-section-tabs{margin-bottom:20px}.account-setup-note{font-size:11px}.account-card-bottom .outline{min-height:44px}.account-session{gap:12px}.account-session .account-current{font-size:10px;white-space:nowrap}}
@media(max-width:360px){.account-state{flex-basis:auto}.account-card-person{gap:9px}.account-summary span{font-size:9px}.sidebar .brand b{font-size:17px}.sidebar .admin-trigger{margin-right:0}.account-trigger{width:40px;height:40px;min-height:40px}}

.account-card.group-command{background:#eef6fd;border-left-color:#9bbcd8}
@media(max-width:760px){.my-account-identity{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:14px;align-items:center;text-align:left}.my-account-identity .avatar{grid-column:1;grid-row:1/4;width:48px;height:48px;font-size:15px;margin:0}.my-account-identity h2{grid-column:2;font-size:18px;margin:0}.my-account-identity>.account-username{grid-column:2}.my-account-identity .account-role-label{grid-column:2;margin:5px 0 0}.my-account-identity>.outline{grid-column:1/-1;margin-top:18px;width:100%}.team-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.team-card{min-height:104px;padding:11px 5px 9px}.team-card .card-crest{width:32px;height:46px;margin-bottom:9px}.team-card-label{padding-top:8px;justify-content:center}.team-card-label small,.team-card-label>svg{display:none}.team-card b{font-size:12px;white-space:nowrap}}

.personal-login .account-help{color:#7d91a4;margin:0}.personal-login .account-success{color:#4c8165}
.access-mode{display:flex;gap:4px;padding:4px;border-radius:9px;background:#edf2f7}.access-mode button{flex:1;min-height:42px;padding:9px 10px;border:0;background:none;border-radius:6px;font-size:12px;color:#7f95a6}.access-mode button.selected{background:white;color:#315f80;box-shadow:0 2px 5px #1437520a}.personal-login select{width:100%;min-width:0;min-height:48px;border:1px solid #dce4ed;border-radius:9px;background:white;padding:12px;color:#294b66;font-size:14px}.account-username:empty{display:none}#username,#activationServiceNumber,#requiredServiceNumber{text-transform:uppercase}

#accountRoleHint{margin:16px 0}
.own-account-actions{display:grid;gap:10px;margin-top:20px}.own-account-actions button{width:100%;justify-content:center;min-height:44px;font-size:12px}.profile-actions{display:flex;gap:9px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.profile-actions button{min-height:44px;font-size:11px}.own-number-confirmation{padding:17px;border:1px solid #d9e5ef;border-radius:10px;background:#f3f7fb;margin-top:20px}.own-number-confirmation .form-field{margin-top:14px}#ownServiceNumber{text-transform:uppercase}@media(max-width:760px){.my-account-identity>.own-account-actions{grid-column:1/-1;margin-top:18px}.own-profile-dialog .editor-grid{grid-template-columns:1fr}.profile-actions{width:100%;justify-content:stretch;display:grid;grid-template-columns:1fr;margin:16px 0 0}.profile-actions button{width:100%}}

.self-save-status{margin:0 0 16px;color:#4c8165}

.own-profile-dialog .editor-grid>.form-field{margin-top:0}

.zug-entry-header{display:flex;align-items:center;gap:18px;max-width:560px;margin:0 auto 24px}.zug-entry-header .crest{width:48px;height:68px;object-fit:contain}.zug-entry-header h1{font-size:25px;margin:5px 0 0;color:#244760}.zug-entry-header .eyebrow{font-size:9px}.zug-entry-header .text-button{margin-left:auto;white-space:nowrap}.zug-entry-header[hidden]{display:none}@media(max-width:760px){.zug-entry-header{gap:12px;margin:0 0 20px}.zug-entry-header .crest{width:38px;height:54px}.zug-entry-header h1{font-size:23px}.zug-entry-header .text-button{font-size:12px}.zug-entry-header .eyebrow{font-size:8px}.personal-login h2{font-size:21px}}

.quick-access-intro{margin:0 0 18px;color:#738ba0;font-size:13px;line-height:1.6}.quick-access-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-access-choice{display:flex;align-items:center;gap:9px;min-height:68px;min-width:0;padding:12px;border:1px solid #dce6ef;border-radius:11px;font-size:12px;line-height:1.5;color:#3c607c;cursor:pointer}.quick-access-choice:has(input:checked){background:#edf5fc;border-color:#7ea5c4}.quick-access-choice:focus-within{outline:2px solid #487fa8;outline-offset:2px}.quick-access-choice input{width:17px;height:17px;min-height:0;flex:none;padding:0;accent-color:#356990}.quick-access-icon{display:grid;place-items:center;flex:none}.quick-access-icon svg{width:22px;height:22px;fill:none}.quick-access-choice>span:last-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){.quick-access-options{grid-template-columns:1fr}.quick-access-choice{min-height:54px}}

.updates-unread-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:12px;background:#b94750;color:#fff;font-size:10px;font-weight:750;line-height:1}.updates-trigger-badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;border:2px solid #fcfdff;padding:0 4px}.account-popover #updatesMenuLink{display:flex;align-items:center;justify-content:space-between;gap:12px}
@media(max-width:760px){.account-trigger{position:relative;inset:auto}}

.remember-choice,.email-review-choice{display:flex!important;align-items:center;gap:10px;line-height:1.6}.remember-choice input,.email-review-choice input{width:18px;min-height:18px;height:18px;padding:0;flex:none;accent-color:#356990}.remember-note{display:block;color:#8293a2;font-size:11px;margin:-4px 0 18px}.email-review-choice{font-size:12px;color:#5f788e}.more-menu{display:none;position:fixed;z-index:70;right:calc(12px + env(safe-area-inset-right));width:min(272px,calc(100vw - 24px));max-height:calc(100dvh - 170px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #dce6ef;border-radius:14px;box-shadow:0 8px 30px #17365026;gap:0}.more-links{padding:6px}.more-links a{width:100%;display:flex;align-items:center;gap:14px;min-height:48px;padding:11px 12px;border:0;border-radius:9px;background:white;color:#355974;text-align:left;font-size:14px;text-decoration:none}.more-links a:hover{background:#eef4f9}.more-links a>svg:last-child{margin-left:auto;width:15px;color:#94a8b8}#mobileMoreLink{display:none}.recovery-tasks{padding:22px;margin-bottom:22px}.recovery-tasks h2{margin:8px 0 16px}.recovery-tasks>div{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #e5ecf2}.recovery-tasks small{display:block;font-size:12px;color:#7c91a4;margin-top:5px}.account-popover #recoveryMenuLink{display:flex;justify-content:space-between;gap:10px}.people-phone small{font-size:10px;color:#7b91a4}
@media(min-width:761px){.sidebar{overflow-y:auto}.sidebar .team-badge{margin:25px 0 20px}.sidebar nav button{padding:12px}.sidebar .side-note{margin-top:22px}.sidebar .mobile-quick-link{display:none}}
@media(max-width:760px){.sidebar nav .desktop-extra-link{display:none!important}.sidebar nav button[data-page="overview"]{order:1}.sidebar nav button[data-page="people"]{order:2}.sidebar nav button[data-page="tools"]{order:3}.sidebar nav #mobileQuickLink{order:4}.sidebar nav #mobileMoreLink{display:flex;order:5}.sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr))}.more-menu{display:block;bottom:calc(80px + env(safe-area-inset-bottom))}.sidebar nav #mobileMoreLink[aria-expanded="true"]{background:#e9f1fa;color:#225a88}.recovery-tasks{padding:18px}.remember-note{font-size:12px}}

/* Consistent native select controls, including Safari's compact disclosure arrow. */
body select:not([multiple]):not([size]),body select[size="1"]:not([multiple]){
 -webkit-appearance:none;appearance:none;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%235b7890' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
 background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:16px 16px!important;
 padding-inline-end:42px!important;line-height:1.5;min-height:44px;cursor:pointer;
}
body select:disabled{cursor:default}
/* Short mobile search hints; entered text retains the existing 16px size. */
@media(max-width:760px){
 body input[type="search"]::placeholder,
 body input.search::placeholder{font-size:14px;font-weight:400}
}
@media(forced-colors:active){body select:not([multiple]):not([size]),body select[size="1"]:not([multiple]){-webkit-appearance:auto;appearance:auto;background-image:none!important;padding-inline-end:12px!important}}
