:root{--ink:#18211e;--muted:#69746f;--line:#dce4df;--paper:#f4f7f3;--white:#fff;--green:#176b4d;--green-dark:#10523b;--mint:#e2f4ea;--red:#a83b3b;--amber:#9a6a16}*{box-sizing:border-box}html{max-width:100%;overflow-x:hidden}body{margin:0;min-height:100vh;max-width:100%;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.glow{position:fixed;pointer-events:none;border-radius:50%;filter:blur(2px)}.glow-one{width:520px;height:520px;right:-170px;top:-250px;background:radial-gradient(circle,rgba(168,222,190,.42),transparent 68%)}.glow-two{width:430px;height:430px;left:-210px;bottom:-230px;background:radial-gradient(circle,rgba(235,207,155,.23),transparent 70%)}.shell{position:relative;width:min(1120px,calc(100% - 40px));margin:auto}.brand-logo{display:block;width:140px;height:58px;object-fit:cover;border-radius:10px}nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(110,130,120,.2)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:19px;font-weight:750}.mark{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;background:var(--green);color:white}.account-menu{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:12px}.quiet{border:0;background:transparent;color:var(--muted);font:inherit;cursor:pointer}.hidden{display:none!important}.login-layout{min-height:calc(100vh - 80px);display:grid;grid-template-columns:1.08fr .72fr;gap:10vw;align-items:center;padding:60px 4vw}.eyebrow{font-size:10px!important;letter-spacing:.18em;font-weight:800;color:var(--green)!important;margin:0 0 14px!important}.intro h1,.page-header h1{letter-spacing:-.05em}.intro h1{font-size:clamp(40px,5vw,61px);line-height:1.05;margin:0}.intro h1 span{color:var(--green)}.intro>p:last-child{max-width:550px;color:var(--muted);line-height:1.65}.card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 45px rgba(27,56,43,.06)}.auth-card{padding:27px}.card-heading{display:flex;align-items:center;gap:13px;margin-bottom:25px}.card-heading h2{margin:0 0 3px;font-size:20px}.card-heading p{margin:0;color:var(--muted);font-size:11px}.lock{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:var(--mint);color:var(--green);font-size:21px}label{display:grid;gap:7px;color:#4f5b56;font-size:11px;font-weight:650;margin-bottom:15px}input,select{width:100%;min-width:0;border:1px solid #d4ddd8;border-radius:9px;background:white;padding:12px 13px;font:inherit;color:var(--ink);outline:none}input:focus,select:focus{border-color:#68a188;box-shadow:0 0 0 3px rgba(43,129,91,.1)}button{font:inherit}.primary,.secondary{border:0;border-radius:9px;padding:12px 16px;font-weight:650;cursor:pointer}.primary{display:flex;justify-content:center;gap:9px;width:100%;background:var(--green);color:white}.primary:hover{background:var(--green-dark)}.primary:disabled{opacity:.6;cursor:wait}.primary.compact{width:auto;padding:9px 14px;font-size:12px}.secondary{width:100%;border:1px solid #bed4c9;background:#f2f8f5;color:var(--green)}.error{color:var(--red);background:#fff0f0;border-radius:8px;padding:9px;font-size:11px;overflow-wrap:anywhere}.center-view{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:45px 0}.password-card{width:min(440px,100%);padding:30px}.password-card h1{font-size:27px;letter-spacing:-.035em;margin:15px 0 8px}.password-card>p{color:var(--muted);font-size:13px;line-height:1.55;margin-bottom:23px}.step-badge{display:inline-block;background:#fff2d7;color:var(--amber);border-radius:15px;padding:5px 8px;font-size:9px;font-weight:800;letter-spacing:.12em}.hint{margin:-5px 0 15px!important;font-size:10px!important}.dashboard{padding:55px 0 90px}.page-header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:31px}.page-header h1{font-size:38px;margin:0 0 5px}.page-header>div>p:last-child{margin:0;color:var(--muted);font-size:13px}.role-badge{flex:none;background:var(--mint);color:var(--green);font-size:10px;font-weight:800;letter-spacing:.08em;padding:7px 10px;border-radius:14px}.notice{padding:11px 14px;margin-bottom:18px;border-radius:9px;background:var(--mint);color:var(--green-dark);font-size:12px;overflow-wrap:anywhere}.notice.bad{background:#ffeded;color:var(--red)}.dashboard-grid{display:grid;grid-template-columns:1fr 300px;gap:20px}.main-column{min-width:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:15px}.section-heading>div{min-width:0}.section-heading h2{margin:0 0 3px;font-size:20px}.section-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.inline-form{padding:19px;margin-bottom:15px}.form-title{display:flex;justify-content:space-between;gap:12px;margin-bottom:15px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.user-list{display:grid;gap:8px}.user-row{display:flex;align-items:center;justify-content:space-between;gap:14px;background:white;border:1px solid var(--line);border-radius:11px;padding:13px 15px}.user-identity{display:flex;align-items:center;gap:11px;min-width:0}.user-identity>div{min-width:0}.mini-avatar,.avatar{display:grid;flex:none;place-items:center;border-radius:10px;background:#eaf2ed;color:var(--green);font-weight:750}.mini-avatar{width:35px;height:35px;font-size:12px}.user-identity h4{margin:0 0 3px;font-size:13px;overflow-wrap:anywhere}.user-identity p{margin:0;color:var(--muted);font-size:10px;line-height:1.45;overflow-wrap:anywhere}.user-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px}.user-role{font-size:9px;background:#f0f3f1;color:#58645f;padding:5px 7px;border-radius:11px}.reset{border:0;background:transparent;color:#996228;font-size:10px;cursor:pointer}.force{color:var(--amber);font-size:9px}.side-column{display:grid;gap:14px;align-content:start}.profile-card,.change-card{padding:20px}.avatar{width:46px;height:46px;font-size:17px}.profile-card h3{margin:13px 0 3px;font-size:16px}.profile-card>p{color:var(--muted);font-size:11px;margin:0 0 17px}.profile-card dl{margin:0}.profile-card dl div{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid var(--line);font-size:10px}.profile-card dt{color:var(--muted)}.profile-card dd{margin:0;font-weight:650}.active{color:var(--green)}.change-card h3{margin:0 0 4px;font-size:15px}.change-card>p{color:var(--muted);font-size:10px;line-height:1.45;margin:0 0 16px}.empty{background:white;border:1px solid var(--line);border-radius:11px;text-align:center;padding:30px;color:var(--muted);font-size:12px}

@media(max-width:820px){
  .shell{width:min(100% - 24px,1120px)}
  .login-layout{grid-template-columns:1fr;gap:30px;padding:45px 0}
  .dashboard-grid{grid-template-columns:1fr}
  .side-column{grid-row:1;grid-template-columns:1fr 1fr}
  .intro h1{font-size:41px}
  .form-grid{grid-template-columns:1fr}
  .user-role{display:none}
  .page-header{align-items:start}
  .account-menu>span{display:none}
}

@media(max-width:620px){
  .shell{width:calc(100% - 20px)}
  nav{min-height:70px;gap:8px}
  .brand-logo{width:102px;height:44px}
  .account-menu{gap:5px}
  .account-menu>.quiet{min-height:40px;padding:6px 4px;font-size:11px}
  .dashboard{padding:30px 0 54px}
  .page-header{align-items:flex-start;margin-bottom:23px}
  .page-header h1{font-size:31px}
  .page-header>div>p:last-child{font-size:11px}
  .role-badge{max-width:42%;font-size:8px;text-align:center;overflow-wrap:anywhere}
  .section-heading{align-items:stretch;flex-direction:column}
  .section-heading .primary.compact{width:100%;min-height:42px}
  .inline-form{padding:15px}
  input,select,textarea{font-size:16px}
  .form-title{align-items:center}
  .form-title .quiet{min-height:38px;padding:6px 0}
  .check-field{max-width:100%;width:auto}
  .user-row{align-items:flex-start;flex-direction:column;padding:13px}
  .user-identity{width:100%;align-items:flex-start}
  .user-actions{width:100%;justify-content:flex-start;padding-top:10px;border-top:1px solid var(--line)}
  .user-actions button{min-height:38px}
  .side-column{grid-template-columns:1fr;grid-row:auto}
  .primary.compact,.secondary.compact{min-height:42px}
  .login-layout{min-height:calc(100dvh - 70px);padding:28px 0 40px}
  .intro h1{font-size:clamp(34px,11vw,41px)}
  .intro h1 br{display:none}
  .auth-card,.password-card{padding:21px}
  .center-view{min-height:calc(100dvh - 70px);padding:28px 0}
}

@media(max-width:380px){
  .shell{width:calc(100% - 16px)}
  .brand-logo{width:88px;height:40px}
  .workspace-navigation-button{font-size:9px}
  .page-header{gap:8px}
  .page-header h1{font-size:28px}
}
