:root{color:#182025;background:#f4f1ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--background: #f4f1ea;--surface: #fffdf8;--surface-soft: #ebe7de;--foreground: #182025;--muted: #64706b;--border: #d9d5cb;--primary: #23644f;--primary-strong: #174837;--primary-soft: #dce9e2;--danger: #a63c32;--danger-soft: #f8e6e2;--shadow: 0 18px 50px rgba(24, 32, 37, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:var(--background)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(35,100,79,.28);outline-offset:2px}.skip-link{position:fixed;z-index:100;top:.75rem;left:.75rem;transform:translateY(-160%);border-radius:.5rem;background:var(--foreground);color:#fff;padding:.7rem 1rem}.skip-link:focus{transform:translateY(0)}.button{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;gap:.55rem;border:0;border-radius:.65rem;padding:.75rem 1rem;color:var(--foreground);font-weight:700;cursor:pointer;transition:background .16s ease,transform .16s ease,opacity .16s ease}.button:active{transform:translateY(1px)}.button:disabled{cursor:wait;opacity:.65}.button--primary{background:var(--primary);color:#fffdf8}.button--primary:hover:not(:disabled){background:var(--primary-strong)}.button--wide{width:100%}.icon-button{display:inline-grid;width:2.6rem;height:2.6rem;place-items:center;border:1px solid var(--border);border-radius:.65rem;background:var(--surface);color:var(--foreground);cursor:pointer}.eyebrow{margin:0;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.brand{display:flex;align-items:center;gap:.75rem}.brand__mark{display:grid;width:2.6rem;height:2.6rem;flex:0 0 auto;place-items:center;border-radius:.7rem;background:var(--primary);color:#fffdf8}.brand__logo{width:1.7rem;height:1.7rem;object-fit:contain}.brand>span:not(.brand__mark){display:grid;gap:.1rem}.brand strong{font-size:1rem;letter-spacing:-.02em}.brand small{color:var(--muted);font-size:.72rem}.shell{min-height:100vh}.sidebar{position:fixed;z-index:30;inset:0 auto 0 0;display:flex;width:16.75rem;flex-direction:column;border-right:1px solid var(--border);background:var(--surface);padding:1.35rem 1rem}.sidebar .brand{padding:0 .45rem 1.25rem}.sidebar__close,.topbar__menu{display:none}.tenant-card{display:flex;align-items:center;gap:.7rem;margin-bottom:1.3rem;border:1px solid #c9dbd1;border-radius:.75rem;background:var(--primary-soft);padding:.8rem}.tenant-card__icon{display:grid;width:2rem;height:2rem;place-items:center;border-radius:.5rem;background:#23644f1f;color:var(--primary)}.tenant-card>span:last-child{display:grid;min-width:0;gap:.1rem}.tenant-card small{color:#52655d;font-size:.67rem}.tenant-card strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.navigation{display:grid;gap:.25rem}.navigation__label{margin:0 0 .35rem;padding:0 .65rem;color:var(--muted);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.navigation__link{display:flex;min-height:2.65rem;align-items:center;gap:.75rem;border-radius:.6rem;padding:.65rem .75rem;color:#4a5651;font-size:.87rem;font-weight:650;text-decoration:none;transition:background .15s ease,color .15s ease}.navigation__link:hover{background:var(--surface-soft);color:var(--foreground)}.navigation__link--active{background:var(--primary);color:#fffdf8}.navigation__link--active:hover{background:var(--primary-strong);color:#fff}.sidebar__status{display:flex;align-items:center;gap:.5rem;margin:auto .45rem 0;color:var(--muted);font-size:.72rem}.sidebar__status span{width:.45rem;height:.45rem;border-radius:50%;background:#3e8f6f;box-shadow:0 0 0 4px #3e8f6f1f}.shell__body{min-height:100vh;margin-left:16.75rem}.topbar{position:sticky;z-index:20;top:0;display:flex;min-height:4.7rem;align-items:center;justify-content:flex-end;gap:1rem;border-bottom:1px solid var(--border);background:#f4f1eaeb;padding:.75rem clamp(1.25rem,4vw,3.5rem);backdrop-filter:blur(12px)}.topbar__context{display:grid;gap:.1rem;margin-right:.25rem;text-align:right}.topbar__context small{color:var(--muted);font-size:.66rem}.topbar__context strong{font-size:.76rem}.language-selector{position:relative}.language-selector__trigger{display:inline-flex;min-width:2.6rem;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);padding:.55rem .75rem;color:var(--foreground);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.language-selector__menu{position:absolute;top:calc(100% + .5rem);right:0;z-index:40;min-width:9rem;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);padding:.35rem;box-shadow:var(--shadow)}.language-selector__option{display:flex;width:100%;align-items:center;gap:.65rem;border:0;border-radius:.55rem;background:transparent;padding:.68rem .7rem;color:var(--foreground);font-size:.8rem;font-weight:700;cursor:pointer}.language-selector__option:hover{background:var(--surface-soft)}.language-selector__option[aria-checked=true]{background:var(--primary-soft)}.language-selector__check{margin-left:auto;width:1rem;height:1rem;color:var(--primary)}.profile{position:relative}.profile__trigger{display:flex;align-items:center;gap:.7rem;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);padding:.4rem .65rem .4rem .4rem;color:var(--foreground);cursor:pointer}.profile__avatar{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:.55rem;background:var(--primary-soft);color:var(--primary-strong);font-size:.82rem;font-weight:800}.profile__identity{display:grid;max-width:13rem;gap:.1rem;text-align:left}.profile__identity strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis}.profile__identity small{color:var(--muted);font-size:.65rem}.profile__menu{position:absolute;top:calc(100% + .5rem);right:0;width:16.5rem;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);padding:.5rem;box-shadow:var(--shadow)}.profile__menu>div{display:grid;gap:.2rem;border-bottom:1px solid var(--border);padding:.65rem .75rem .8rem}.profile__menu small{color:var(--muted);font-size:.67rem}.profile__menu strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis}.profile__menu button{display:flex;width:100%;align-items:center;gap:.65rem;margin-top:.4rem;border:0;border-radius:.5rem;background:transparent;padding:.7rem .75rem;color:var(--danger);font-size:.8rem;font-weight:700;cursor:pointer}.profile__menu button:hover{background:var(--danger-soft)}.workspace{width:min(100%,90rem);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) clamp(1.25rem,4vw,3.5rem)}.page-heading{max-width:45rem}.page-heading h1{margin:.5rem 0 .75rem;font-size:clamp(2.2rem,5vw,3.8rem);letter-spacing:-.055em;line-height:1}.page-heading>p:last-child{max-width:38rem;margin:0;color:var(--muted);font-size:1rem;line-height:1.65}.state-view{display:flex;min-height:22rem;align-items:center;justify-content:center;flex-direction:column;margin-top:2.5rem;border:1px dashed #c4c1b8;border-radius:1rem;background:#fffdf89e;padding:2rem;text-align:center}.state-view__icon{display:grid;width:3.2rem;height:3.2rem;place-items:center;border-radius:.8rem;background:var(--primary-soft);color:var(--primary)}.state-view__eyebrow{margin:1.2rem 0 0;color:var(--primary);font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.state-view h2{margin:.45rem 0 .55rem;font-size:1.25rem;letter-spacing:-.025em}.state-view>p:last-of-type{max-width:31rem;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.state-view .button{margin-top:1.25rem}.global-state{display:grid;min-height:100vh;place-content:center;justify-items:center;gap:.8rem;padding:2rem;color:var(--primary);text-align:center}.global-state p{max-width:30rem;margin:0;color:var(--muted)}.global-state h1{margin:.25rem 0 0;color:var(--foreground);font-size:1.6rem}.global-state .button{margin-top:.6rem}.global-state--error{color:var(--danger)}.spinner{animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{display:grid;min-height:100vh;grid-template-columns:minmax(20rem,1fr) minmax(24rem,.85fr)}.login-page--centered{grid-template-columns:1fr;place-items:center}.login-intro{display:flex;min-height:100%;flex-direction:column;justify-content:space-between;overflow:hidden;background:var(--foreground);padding:clamp(2rem,6vw,5.5rem);color:#f8f5ed}.login-intro__topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.brand--login small{color:#b8c0bc}.login-intro>div:nth-child(2){max-width:42rem;padding:6rem 0}.login-intro h2{margin:.75rem 0 1.25rem;font-size:clamp(3rem,7vw,6.6rem);letter-spacing:-.07em;line-height:.91}.login-intro>div:nth-child(2)>p:last-child{max-width:34rem;margin:0;color:#c1c8c4;font-size:clamp(1rem,2vw,1.2rem);line-height:1.65}.login-intro__footnote{margin:0;color:#96a29d;font-size:.75rem}.login-card{align-self:center;width:min(100% - 3rem,31rem);margin:3rem auto;border:1px solid var(--border);border-radius:1rem;background:var(--surface);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:var(--shadow)}.login-card__heading{display:flex;align-items:flex-start;gap:.9rem}.login-card__icon{display:grid;width:2.8rem;height:2.8rem;flex:0 0 auto;place-items:center;border-radius:.7rem;background:var(--primary-soft);color:var(--primary)}.login-card h1{margin:.35rem 0 0;font-size:1.8rem;letter-spacing:-.045em}.login-card__intro{margin:1.25rem 0 1.5rem;color:var(--muted);font-size:.9rem;line-height:1.55}.login-method{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;border-radius:.7rem;background:var(--surface-soft);padding:.25rem}.login-method button{border:0;border-radius:.5rem;background:transparent;padding:.65rem;color:var(--muted);font-weight:700;cursor:pointer}.login-method .login-method__active{background:var(--surface);color:var(--foreground);box-shadow:0 1px 4px #1820251f}.login-card label{display:grid;gap:.45rem;margin-top:1rem}.login-card label span{font-size:.75rem;font-weight:750}.login-card input{width:100%;min-height:2.9rem;border:1px solid var(--border);border-radius:.6rem;background:#fff;padding:.7rem .8rem;color:var(--foreground);font-size:.85rem}.login-card input::placeholder{color:#9aa19e}.login-card .button{margin-top:1.4rem}.form-error{border:1px solid #efc4bd;border-radius:.6rem;background:var(--danger-soft);padding:.75rem .85rem;color:#7d2d26;font-size:.78rem;line-height:1.45}.form-success{border:1px solid #b9d7c8;border-radius:.6rem;background:var(--primary-soft);padding:.75rem .85rem;color:var(--primary-strong);font-size:.78rem;line-height:1.45}.login-card__support{margin:1.2rem 0 0;color:var(--muted);font-size:.72rem;text-align:center}@media(max-width:900px){.sidebar{transform:translate(-105%);box-shadow:20px 0 50px #1820252e;transition:transform .18s ease}.sidebar--open{transform:translate(0)}.sidebar__close,.topbar__menu{display:inline-grid}.sidebar__close{margin-left:auto}.shell__scrim{position:fixed;z-index:25;inset:0;border:0;background:#1820257a}.shell__body{margin-left:0}.topbar{justify-content:flex-start}.topbar__context{margin-right:auto;text-align:left}.login-page{grid-template-columns:1fr}.login-intro{min-height:27rem}.login-intro>div:nth-child(2){padding:4rem 0}.login-intro h2{max-width:42rem;font-size:clamp(3rem,12vw,5.5rem)}}@media(max-width:600px){.topbar{min-height:4.25rem;padding:.7rem 1rem}.topbar__context small,.profile__identity,.profile__trigger>svg{display:none}.profile__trigger{border:0;background:transparent;padding:0}.profile__menu{position:fixed;top:4.35rem;right:1rem;left:1rem;width:auto}.workspace{padding:2rem 1rem}.page-heading h1{font-size:2.4rem}.state-view{min-height:19rem;padding:1.4rem}.login-intro{min-height:23rem;padding:1.5rem}.login-intro>div:nth-child(2){padding:3.5rem 0 2rem}.login-intro h2{font-size:3.1rem}.login-card{width:calc(100% - 2rem);margin:1rem auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
