:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#172031;background:#f3f5f9}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}.app-shell{max-width:860px;margin:0 auto;padding:2rem 1rem 3rem}.app-header{margin-bottom:1.5rem}.app-header h1{margin:0;font-size:2rem}.app-header p{margin:.5rem 0 0;color:#4d5a70}.card{background:#fff;border:1px solid #d7deea;border-radius:14px;padding:1.25rem;box-shadow:0 4px 18px #0f172a0f}.card h2{margin:0;font-size:1.4rem}.status-card{text-align:left}.muted{margin-top:.65rem;color:#4d5a70}.login-form{margin-top:1rem;display:grid;gap:.6rem}.login-form label{font-weight:600}.login-form input{width:100%;border:1px solid #b9c4d8;border-radius:9px;padding:.6rem .7rem}.login-form input:focus{outline:2px solid #1e66f5;outline-offset:0;border-color:#1e66f5}.error-text{margin:0;color:#b42318}.session-list{margin:1rem 0;display:grid;gap:.75rem}.session-list div{display:grid;gap:.25rem}.session-list dt{font-size:.9rem;color:#4d5a70}.session-list dd{margin:0;font-family:Consolas,Courier New,monospace;word-break:break-all}.actions{display:flex;gap:.6rem;flex-wrap:wrap}button{border:none;border-radius:9px;padding:.55rem .9rem;background:#1e66f5;color:#fff;cursor:pointer}button:disabled{opacity:.7;cursor:not-allowed}button.secondary{background:#5f6b7f}button:hover{filter:brightness(.95)}
