:root{--background:#eef2f6;--surface:#fff;--surface-muted:#f7f9fc;--surface-strong:#111827;--ink:#111827;--ink-soft:#475569;--ink-muted:#6b7280;--line:#d9e1ea;--line-strong:#c6d1dc;--brand:#d91f2d;--brand-dark:#ad1621;--accent:#087f8c;--success:#18794e;--warning:#b45309;--danger:#b42318;--shadow:0 18px 50px #0f172a1a;--radius:8px}*{box-sizing:border-box}html{background:var(--background);min-height:100%}body{background:linear-gradient(180deg, #ffffffc7, #eef2f6eb), var(--background);min-height:100%;color:var(--ink);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{width:min(1440px,100%);margin:0 auto;padding:28px}.topbar{justify-content:space-between;align-items:center;gap:20px;padding:16px 0 28px;display:flex}.brand-block,.contact-header{align-items:center;gap:12px;display:flex}.brand-mark{border-radius:var(--radius);background:var(--brand);color:#fff;place-items:center;width:42px;height:42px;font-size:1.3rem;font-weight:800;display:inline-grid}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 4px;font-size:.76rem;font-weight:800}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:var(--ink);margin:0;line-height:1.08}h1{font-size:2.6rem}h2{font-size:1.18rem}h3{font-size:1.06rem}.status-strip{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.status-strip span,.mode-pill{border:1px solid var(--line);min-height:34px;color:var(--ink-soft);background:#ffffffd1;border-radius:999px;align-items:center;gap:8px;padding:7px 11px;font-size:.86rem;font-weight:700;display:inline-flex}.status-strip svg,.mode-pill svg{width:16px;height:16px}.workspace-grid{grid-template-columns:minmax(320px,420px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.tool-panel,.directory-panel,.contact-panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff2}.tool-panel{padding:20px;position:sticky;top:20px}.directory-panel{padding:20px}.panel-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.directory-heading{border-bottom:1px solid var(--line);padding-bottom:16px}.staff-form{gap:16px;display:grid}.staff-form.compact{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{gap:6px;min-width:0;display:grid}.field.span-2{grid-column:1/-1}.field span,.segmented-control legend{color:var(--ink-soft);font-size:.82rem;font-weight:800}.field input,.field textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;color:var(--ink);border-radius:6px;outline:none;padding:10px 11px;transition:border-color .16s,box-shadow .16s}.field textarea{resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #087f8c26}.segmented-control{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;display:grid}.segmented-control legend{grid-column:1/-1;margin-bottom:2px}.segmented-control label{min-width:0;position:relative}.segmented-control input{opacity:0;position:absolute;inset:0}.segmented-control span{border:1px solid var(--line-strong);background:var(--surface-muted);min-height:40px;color:var(--ink-soft);text-align:center;border-radius:6px;place-items:center;font-size:.88rem;font-weight:800;transition:background .16s,border-color .16s,color .16s;display:grid}.segmented-control input:checked+span{border-color:var(--brand);color:var(--brand-dark);background:#d91f2d14}.primary-button,.secondary-button,.danger-button{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 13px;font-size:.9rem;font-weight:800;line-height:1;transition:background .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.primary-button svg,.secondary-button svg,.danger-button svg{flex:none;width:17px;height:17px}.primary-button{background:var(--brand);color:#fff}.primary-button:hover,.primary-button:focus-visible{background:var(--brand-dark)}.secondary-button{border-color:var(--line-strong);background:var(--surface);color:var(--ink-soft)}.secondary-button:hover,.secondary-button:focus-visible{border-color:var(--accent);color:var(--accent)}.danger-button{width:100%;color:var(--danger);background:#b4231814;border-color:#b4231842;margin-top:10px}.danger-button:hover,.danger-button:focus-visible{background:#b4231824}.primary-button:active,.secondary-button:active,.danger-button:active{transform:translateY(1px)}.staff-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;display:grid}.staff-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.staff-card-main{grid-template-columns:158px minmax(0,1fr);gap:16px;padding:14px;display:grid}.qr-frame,.public-qr-frame{aspect-ratio:1;border:1px solid var(--line);background:#fff;border-radius:6px;place-items:center;display:grid}.qr-frame{width:158px}.qr-frame img,.public-qr-frame img{object-fit:contain;width:92%;height:92%;display:block}.qr-frame svg,.public-qr-frame svg{width:54px;height:54px;color:var(--ink-muted)}.staff-summary{align-content:start;gap:13px;min-width:0;display:grid}.staff-title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.staff-title-row p{color:var(--ink-muted);margin:5px 0 0;font-size:.9rem}.mode-pill{min-height:30px;color:var(--accent);background:#087f8c14;border-color:#087f8c3d;flex:none;padding:6px 9px;font-size:.78rem}.contact-list{gap:8px;margin:0;display:grid}.contact-list div{color:var(--ink-soft);grid-template-columns:18px 64px minmax(0,1fr);align-items:center;gap:8px;font-size:.88rem;display:grid}.contact-list svg{width:16px;height:16px;color:var(--accent)}.contact-list dt{color:var(--ink-muted);font-weight:800}.contact-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.contact-list a{color:var(--ink);font-weight:700}.action-row{flex-wrap:wrap;gap:8px;display:flex}.edit-panel{border-top:1px solid var(--line);background:var(--surface-muted);padding:12px 14px 14px}.edit-panel summary{cursor:pointer;color:var(--ink-soft);font-size:.9rem;font-weight:800}.form-actions{justify-content:flex-end;display:flex}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);min-height:260px;color:var(--ink-muted);text-align:center;place-items:center;gap:12px;display:grid}.empty-state svg{width:56px;height:56px}.empty-state p{margin:0;font-weight:800}.contact-page{place-items:center;min-height:100vh;padding:24px;display:grid}.contact-panel{gap:18px;width:min(460px,100%);padding:22px;display:grid}.compact-panel{max-width:440px}.contact-header p{color:var(--ink-soft);margin:0;font-weight:900}.contact-identity{gap:7px;display:grid}.contact-identity h1{font-size:2rem}.contact-identity p:last-child{color:var(--ink-soft);margin:0;font-weight:700}.public-qr-frame{justify-self:center;width:min(280px,100%)}.contact-list.public{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:10px;padding:14px 0}.public-actions{grid-template-columns:1fr repeat(2,minmax(94px,auto));display:grid}@media (max-width:980px){.workspace-grid{grid-template-columns:1fr}.tool-panel{position:static}}@media (max-width:700px){.app-shell{padding:18px}.topbar{flex-direction:column;align-items:flex-start}.status-strip{justify-content:flex-start}h1{font-size:2rem}.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:auto}.staff-card-main{grid-template-columns:1fr}.qr-frame{justify-self:center;width:min(220px,100%)}.staff-title-row{flex-direction:column;align-items:flex-start}.public-actions{grid-template-columns:1fr}}@media (max-width:430px){.app-shell,.contact-page{padding:12px}.tool-panel,.directory-panel,.contact-panel{padding:14px}.staff-grid,.segmented-control{grid-template-columns:1fr}.contact-list div{grid-template-columns:18px minmax(0,1fr)}.contact-list dt{display:none}}
