@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Sora:wght@300;400;500;600&display=swap";:root{--bg: #08090B;--surface: #0E0F14;--surface-raised: #13141A;--border: rgba(255, 255, 255, .07);--border-focus: rgba(201, 150, 61, .55);--gold: #C9963D;--gold-text: #D4A84B;--gold-glow: rgba(201, 150, 61, .1);--gold-subtle: rgba(201, 150, 61, .06);--text: #EBE7DE;--text-secondary: #55555E;--text-dim: #2A2A32;--error: #D95B5B;--error-bg: rgba(217, 91, 91, .07);--approve: #3BAF78;--approve-bg: rgba(59, 175, 120, .08);--approve-border: rgba(59, 175, 120, .14);font-family:Sora,sans-serif;font-size:15px;line-height:1.6;font-weight:400;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background-color:var(--bg)}#root{max-width:none;padding:0;text-align:left}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;background-color:var(--bg);background-image:radial-gradient(circle at 50% -10%,rgba(201,150,61,.08) 0%,transparent 55%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:100% 100%,48px 48px,48px 48px}.auth-card{width:100%;max-width:408px;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:2.75rem;position:relative;animation:cardIn .55s cubic-bezier(.16,1,.3,1) both;box-shadow:0 0 0 1px #ffffff0a inset,0 40px 80px #0000008c,0 0 120px #c9963d0a}.auth-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(160deg,rgba(255,255,255,.03) 0%,transparent 40%);pointer-events:none}@keyframes cardIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.brand-lockup{display:flex;align-items:center;gap:.625rem;margin-bottom:2.25rem}.brand-icon{width:34px;height:34px;background:var(--gold-glow);border:1px solid rgba(201,150,61,.22);border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-name{font-family:Cormorant Garamond,serif;font-size:1.0625rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text)}.auth-title{font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;line-height:1.15;color:var(--text);letter-spacing:-.01em;margin-bottom:.375rem}.auth-subtitle{font-size:.875rem;font-weight:300;color:var(--text-secondary);margin-bottom:2rem}.auth-form{display:flex;flex-direction:column;gap:1.125rem}.field{display:flex;flex-direction:column;gap:.4rem}.field-label{font-size:.6875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.field-input{background:var(--surface-raised);border:1px solid var(--border);border-radius:9px;padding:.8125rem 1rem;font-family:Sora,sans-serif;font-size:.9375rem;font-weight:400;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;appearance:none}.field-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #c9963d12}.field-input::placeholder{color:var(--text-dim)}.error-msg{background:var(--error-bg);border:1px solid rgba(217,91,91,.18);border-radius:9px;padding:.75rem 1rem;font-size:.875rem;color:var(--error);line-height:1.5}.btn-primary{background:var(--gold);color:#0c0700;border:none;border-radius:9px;padding:.875rem 1.5rem;font-family:Sora,sans-serif;font-size:.9375rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:opacity .15s,transform .15s,box-shadow .15s;width:100%;margin-top:.375rem}.btn-primary:hover:not(:disabled){opacity:.88;transform:translateY(-1px);box-shadow:0 10px 24px #c9963d47}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.loading-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--bg)}.spinner{width:28px;height:28px;border:2px solid rgba(255,255,255,.07);border-top-color:var(--gold-text);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.consent-card{max-width:460px}.client-block{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.25rem;background:var(--surface-raised);border:1px solid var(--border);border-radius:11px;margin-bottom:1.75rem}.client-avatar{width:46px;height:46px;background:var(--gold-subtle);border:1px solid rgba(201,150,61,.14);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.25rem}.client-name{font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:600;color:var(--text);margin-bottom:.2rem;line-height:1.2}.client-uri{font-size:.72rem;color:var(--text-secondary);font-family:SF Mono,Fira Code,Cascadia Code,monospace;word-break:break-all;line-height:1.4}.scopes-label{font-size:.6875rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.625rem}.scope-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.scope-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:var(--approve-bg);border:1px solid var(--approve-border);border-radius:8px;font-size:.875rem;color:var(--text)}.scope-check{color:var(--approve);font-size:.875rem;flex-shrink:0;line-height:1}.consent-actions{display:flex;flex-direction:column;gap:.625rem}.btn-approve{background:var(--approve);color:#021209;border:none;border-radius:9px;padding:.875rem 1.5rem;font-family:Sora,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;transition:opacity .15s,transform .15s,box-shadow .15s;width:100%}.btn-approve:hover{opacity:.88;transform:translateY(-1px);box-shadow:0 10px 24px #3baf7838}.btn-approve:active{transform:translateY(0);box-shadow:none}.btn-deny{background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:9px;padding:.875rem 1.5rem;font-family:Sora,sans-serif;font-size:.9375rem;font-weight:400;cursor:pointer;transition:color .15s,border-color .15s;width:100%}.btn-deny:hover{color:var(--error);border-color:#d95b5b47}
