:root{color:#172033;font-synthesis:none;background:#f5f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%}body{min-width:320px;margin:0}button,a{font:inherit}.app-shell{background:#f8fafc;min-height:100vh}.app-header{z-index:20;color:#fff;background:#d60b26;justify-content:space-between;align-items:center;gap:1.5rem;min-height:92px;padding:1.4rem 3.5rem;display:flex;position:relative;box-shadow:0 4px 15px #d60b2633}.brand{align-items:center;gap:1rem;min-width:0;display:flex}.brand-icon{background:#ffffff1a;border:2px solid #fffc;border-radius:.75rem;flex:none;place-items:center;width:3rem;height:3rem;display:grid;box-shadow:inset 0 1px 4px #0f172a1f}.brand-icon img{width:2rem;height:2rem}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.01em;font-size:1.45rem;line-height:1}.brand small{color:#fff;opacity:.95;margin-top:.35rem;font-size:.85rem;font-weight:600}.user-menu{position:relative}.user-trigger{color:#fff;cursor:pointer;text-align:left;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;grid-template-columns:2rem minmax(0,1fr) .8rem;align-items:center;gap:.75rem;min-width:15rem;max-width:22rem;padding:.38rem .75rem .38rem .45rem;transition:background .2s,transform .2s;display:grid;box-shadow:0 1px 8px #0f172a14}.user-trigger:hover,.user-trigger.open{background:#ffffff2e;transform:translateY(-1px)}.avatar{color:#d60b26;background:#fff;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:.76rem;font-weight:800;display:grid}.user-trigger-copy{min-width:0}.user-trigger-copy strong,.user-trigger-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-trigger-copy strong{font-size:.8rem;line-height:1}.user-trigger-copy small{color:#fecdd3;letter-spacing:.06em;text-transform:uppercase;margin-top:.3rem;font-size:.65rem;font-weight:700}.user-trigger>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.85rem;transition:transform .2s}.user-trigger.open>svg{transform:rotate(180deg)}.user-menu-panel{z-index:50;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;width:min(25rem,100vw - 1rem);padding:.75rem;position:absolute;top:calc(100% + .65rem);right:0;box-shadow:0 20px 40px #0f172a33}.user-menu-identity{border-bottom:1px solid #e2e8f0;align-items:center;gap:.65rem;padding:.2rem .25rem .7rem;display:flex}.user-menu-identity>span:last-child{min-width:0}.user-menu-identity strong,.user-menu-identity small{overflow-wrap:anywhere;display:block}.user-menu-identity strong{color:#1e293b;font-size:.8rem}.user-menu-identity small{color:#64748b;margin-top:.15rem;font-size:.65rem}.user-details{gap:.25rem;margin:.65rem 0;padding:0;list-style:none;display:grid}.user-details li{background:#f8fafc;border-radius:.5rem;grid-template-columns:1.4rem minmax(0,1fr);align-items:center;gap:.35rem;min-width:0;padding:.5rem .55rem;display:grid}.user-details li:hover{background:#f0fdf4}.user-details svg,.user-menu-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem}.user-details svg{color:#059669}.user-details small,.user-details strong{display:block}.user-details small{color:#64748b;letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:800}.user-details strong{color:#334155;overflow-wrap:anywhere;margin-top:.1rem;font-size:.7rem}.user-menu-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:.4rem;padding-top:.6rem;display:flex}.user-menu-actions a,.user-menu-actions button{cursor:pointer;border-radius:.55rem;place-items:center;width:2.35rem;height:2.35rem;padding:0;display:grid}.user-menu-actions a{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.user-menu-actions button{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca}.user-menu-actions a:hover{background:#dcfce7}.user-menu-actions button:hover{background:#ffe4e6}.workspace{width:min(100%,1900px);margin:0 auto;padding:1.5rem}.workspace-placeholder{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:1rem;place-content:center;min-height:18rem;padding:2rem;display:grid}.workspace-placeholder h1{font-size:clamp(1.5rem,3vw,2.25rem)}.user-access-page{background:linear-gradient(145deg,#f8fafc,#fff 70%);border:1px solid #e2e8f0;border-radius:.9rem;width:100%;padding:.9rem;overflow:hidden;box-shadow:0 3px 12px #0f172a0d}.user-access-title{align-items:center;gap:.7rem;margin-bottom:.8rem;display:flex}.user-access-title>span:nth-child(2){flex:1;min-width:0}.user-access-title h1{color:#1e293b;margin:0;font-size:.95rem}.user-access-title p{color:#64748b;margin:.18rem 0 0;font-size:.68rem}.access-title-icon{color:#be123c;background:#ffe4e6;border-radius:.65rem;flex:none;place-items:center;width:2.35rem;height:2.35rem;display:grid}.access-title-icon svg,.access-refresh svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem}.access-refresh{color:#be123c;cursor:pointer;background:#fff;border:1px solid #fecdd3;border-radius:.55rem;place-items:center;width:2.2rem;height:2.2rem;display:grid}.access-refresh .spinning{animation:.8s linear infinite spin}.access-section+.access-section{margin-top:1rem}.access-section>h2{color:#475569;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .55rem;font-size:.7rem}.user-access-columns{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.7rem;display:grid}.access-column{background:#ffffffe0;border:1px solid #e2e8f0;border-radius:.75rem;align-content:start;gap:.5rem;min-width:0;padding:.65rem;display:grid;box-shadow:0 2px 6px #0f172a0a}.access-column-heading{align-items:center;gap:.5rem;min-width:0;display:flex}.access-column-heading>span{color:#be123c;background:#ffe4e6;border-radius:.45rem;flex:none;place-items:center;width:1.75rem;height:1.75rem;font-size:.68rem;font-weight:900;display:grid}.access-column-heading div{min-width:0}.access-column-heading h3,.access-column-heading small{overflow-wrap:anywhere;margin:0;display:block}.access-column-heading h3{color:#1e293b;font-size:.72rem}.access-column-heading small{color:#64748b;margin-top:.12rem;font-size:.56rem}.branch-column{background:#f8fafc;gap:.4rem}.branch-heading{padding-bottom:.15rem}.structure-access-card{background:#fff;border:1px solid #e2e8f0;border-radius:.55rem;gap:.4rem;padding:.5rem;display:grid}.structure-access-card>header strong,.structure-access-card>header small{overflow-wrap:anywhere;display:block}.structure-access-card>header strong{color:#334155;font-size:.65rem}.structure-access-card>header small{color:#64748b;margin-top:.08rem;font-size:.54rem}.unit-access-card{border-left:3px solid #fecdd3;margin-left:.55rem}.access-members{gap:.25rem;display:grid}.access-member{background:#fff;border:1px solid #e2e8f0;border-radius:.45rem;grid-template-columns:1.7rem minmax(0,1fr) 1.65rem;align-items:start;gap:.4rem;min-width:0;padding:.4rem;display:grid}.member-avatar{color:#be123c;text-transform:uppercase;background:#fff1f2;border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;font-size:.55rem;font-weight:800;display:grid}.access-member strong,.access-member small{overflow-wrap:anywhere;display:block}.access-member strong{color:#334155;font-size:.62rem}.access-member small{color:#64748b;margin-top:.08rem;font-size:.55rem}.access-remove{color:#b91c1c;cursor:pointer;background:#fee2e2;border:0;border-radius:.4rem;width:1.65rem;height:1.65rem;font-weight:900}.access-remove:disabled{opacity:.35;cursor:default}.access-empty{color:#94a3b8;margin:0;padding:.35rem 0;font-size:.57rem;font-style:italic}.access-add{grid-template-columns:minmax(0,1fr) 1.9rem;gap:.25rem;display:grid}.access-add input{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:.4rem;width:100%;min-width:0;padding:.4rem .45rem;font-size:.59rem}.access-add input:focus{border-color:#e11d48;outline:0;box-shadow:0 0 0 2px #ffe4e6}.access-add button{color:#fff;cursor:pointer;background:#d60b26;border:0;border-radius:.4rem;width:1.9rem;height:1.9rem;font-weight:900}.access-add button:disabled,.access-add input:disabled{opacity:.45;cursor:default}.user-access-error,.user-access-state{color:#475569;background:#f1f5f9;border-radius:.5rem;margin:0 0 .6rem;padding:.55rem .7rem;font-size:.7rem}.user-access-error{color:#991b1b;background:#fef2f2}.page{background:radial-gradient(circle at top,#fff 0,#f5f6f8 55%);place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:#fff;border:1px solid #e4e7ec;border-radius:20px;width:min(100%,620px);padding:clamp(28px,5vw,52px);box-shadow:0 18px 50px #151d2c17}.eyebrow{color:#a20c26;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}h1{margin:0 0 14px;font-size:clamp(2rem,5vw,3rem);line-height:1.05}p{color:#556070;line-height:1.65}dl{border-top:1px solid #eceef2;margin:28px 0;padding:0}dl div{border-bottom:1px solid #eceef2;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;display:grid}dt{color:#687386}dd{overflow-wrap:anywhere;margin:0;font-weight:700}.button{color:#fff;cursor:pointer;background:#a20c26;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:750;text-decoration:none;display:inline-flex}.secondary{color:#283244;background:#eef0f4}.spinner{border:3px solid #eceef2;border-top-color:#a20c26;border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=680px){.app-header{min-height:76px;padding:.85rem 1rem}.brand{gap:.65rem}.brand-icon{width:2.5rem;height:2.5rem}.brand-icon img{width:1.65rem;height:1.65rem}.brand strong{font-size:1rem}.brand small{font-size:.65rem}.user-trigger{grid-template-columns:2rem .8rem;gap:.4rem;min-width:auto}.user-trigger-copy{display:none}.workspace{padding:.75rem}.user-access-columns{grid-template-columns:1fr}}@media (width>=681px) and (width<=1100px){.user-access-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=540px){dl div{grid-template-columns:1fr;gap:4px}}
