
    *{margin:0;padding:0;box-sizing:border-box}

    body{background:var(--bg);color:var(--text);font-family:'Segoe UI',system-ui,sans-serif;
         min-height:100vh;display:flex;align-items:center;justify-content:center}

    .login-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;
                padding:40px;width:100%;max-width:400px}
    .logo{display:flex;align-items:center;gap:10px;margin-bottom:32px;justify-content:center}
    .logo-icon{width:40px;height:40px;background:var(--green);border-radius:10px;
               display:flex;align-items:center;justify-content:center;font-size:22px}
    .logo-text{font-size:20px;font-weight:700}
    h2{font-size:18px;margin-bottom:6px}
    .subtitle{font-size:13px;color:var(--muted);margin-bottom:28px}

    label{font-size:13px;color:var(--muted);display:block;margin-bottom:6px;margin-top:16px}
    input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:10px;
          padding:10px 14px;color:var(--text);font-size:14px;outline:none;transition:border .2s}
    input:focus{border-color:var(--accent)}
    input::placeholder{color:var(--muted)}

    .btn{width:100%;background:var(--accent);color:white;border:none;border-radius:10px;
         padding:12px;font-size:15px;font-weight:600;cursor:pointer;margin-top:24px;transition:opacity .2s}
    .btn:hover{opacity:.85}
    .btn:disabled{opacity:.5;cursor:not-allowed}

    .error{background:rgba(239,68,68,.1);border:1px solid var(--red);border-radius:8px;
           padding:10px 14px;font-size:13px;color:var(--red);margin-top:16px;display:none}
    .error.show{display:block}

    .back{display:block;text-align:center;margin-top:20px;color:var(--muted);font-size:13px;
          text-decoration:none;transition:color .2s}
    .back:hover{color:var(--text)}

    .role-info{display:flex;flex-direction:column;gap:8px;margin-top:24px;padding-top:20px;
               border-top:1px solid var(--border)}
    .role-chip{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
    .chip{padding:2px 8px;border-radius:20px;font-weight:600;font-size:11px}
    .chip-prop{background:rgba(99,102,241,.2);color:#a5b4fc}
    .chip-tech{background:rgba(234,179,8,.2);color:#fbbf24}
