:root{--cloistr-primary: #7c3aed;--cloistr-primary-hover: #6d28d9;--cloistr-primary-light: #a78bfa;--cloistr-primary-dark: #5b21b6;--cloistr-success: #10b981;--cloistr-warning: #f59e0b;--cloistr-error: #ef4444;--cloistr-info: #3b82f6;--cloistr-bg: #0f0f0f;--cloistr-bg-elevated: #1a1a1a;--cloistr-bg-hover: #262626;--cloistr-border: #333333;--cloistr-text: #f5f5f5;--cloistr-text-muted: #a3a3a3;--cloistr-text-dim: #737373;--cloistr-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";--cloistr-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--cloistr-space-xs: .25rem;--cloistr-space-sm: .5rem;--cloistr-space-md: 1rem;--cloistr-space-lg: 1.5rem;--cloistr-space-xl: 2rem;--cloistr-radius-sm: .25rem;--cloistr-radius-md: .5rem;--cloistr-radius-lg: .75rem;--cloistr-radius-full: 9999px;--cloistr-shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--cloistr-shadow-md: 0 4px 6px rgba(0, 0, 0, .5);--cloistr-shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--cloistr-transition-fast: .15s ease;--cloistr-transition-normal: .25s ease;--cloistr-z-dropdown: 100;--cloistr-z-modal: 200;--cloistr-z-toast: 300}@media(prefers-color-scheme:light){:root.cloistr-light{--cloistr-bg: #ffffff;--cloistr-bg-elevated: #f5f5f5;--cloistr-bg-hover: #e5e5e5;--cloistr-border: #d4d4d4;--cloistr-text: #171717;--cloistr-text-muted: #525252;--cloistr-text-dim: #a3a3a3;--cloistr-shadow-sm: 0 1px 2px rgba(0, 0, 0, .1);--cloistr-shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--cloistr-shadow-lg: 0 10px 15px rgba(0, 0, 0, .1)}}.cloistr-btn,.cloistr-input{font-family:var(--cloistr-font-sans);font-size:.875rem;line-height:1.5}.cloistr-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-sm) var(--cloistr-space-md);border:1px solid transparent;border-radius:var(--cloistr-radius-md);font-weight:500;cursor:pointer;transition:all var(--cloistr-transition-fast);text-decoration:none}.cloistr-btn:disabled{opacity:.5;cursor:not-allowed}.cloistr-btn-primary{background:var(--cloistr-primary);color:#fff}.cloistr-btn-primary:hover:not(:disabled){background:var(--cloistr-primary-hover)}.cloistr-btn-secondary{background:var(--cloistr-bg-elevated);border-color:var(--cloistr-border);color:var(--cloistr-text)}.cloistr-btn-secondary:hover:not(:disabled){background:var(--cloistr-bg-hover)}.cloistr-btn-outline{background:transparent;border-color:var(--cloistr-border);color:var(--cloistr-text)}.cloistr-btn-outline:hover:not(:disabled){border-color:var(--cloistr-primary);color:var(--cloistr-primary)}.cloistr-input{width:100%;padding:var(--cloistr-space-sm) var(--cloistr-space-md);background:var(--cloistr-bg);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-md);color:var(--cloistr-text);transition:border-color var(--cloistr-transition-fast)}.cloistr-input:focus{outline:none;border-color:var(--cloistr-primary)}.cloistr-input::placeholder{color:var(--cloistr-text-dim)}.cloistr-header{display:flex;align-items:center;justify-content:space-between;padding:var(--cloistr-space-md) var(--cloistr-space-lg);background:var(--cloistr-bg-elevated);border-bottom:1px solid var(--cloistr-border)}.cloistr-header-left,.cloistr-header-right{display:flex;align-items:center;gap:var(--cloistr-space-md)}.cloistr-header-logo{display:flex;align-items:center;gap:var(--cloistr-space-sm);color:var(--cloistr-text);text-decoration:none;font-weight:600}.cloistr-header-brand{font-size:1.125rem}.cloistr-footer{padding:var(--cloistr-space-lg);background:var(--cloistr-bg-elevated);border-top:1px solid var(--cloistr-border)}.cloistr-footer-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--cloistr-space-md)}.cloistr-footer-copyright{color:var(--cloistr-text-muted);font-size:.875rem}.cloistr-footer-links{display:flex;gap:var(--cloistr-space-md)}.cloistr-footer-link{color:var(--cloistr-text-muted);text-decoration:none;font-size:.875rem;transition:color var(--cloistr-transition-fast)}.cloistr-footer-link:hover{color:var(--cloistr-text)}.cloistr-modal-backdrop{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:var(--cloistr-z-modal)}.cloistr-modal{background:var(--cloistr-bg-elevated);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-lg);width:100%;max-width:400px;box-shadow:var(--cloistr-shadow-lg)}.cloistr-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--cloistr-space-md) var(--cloistr-space-lg);border-bottom:1px solid var(--cloistr-border)}.cloistr-modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--cloistr-text)}.cloistr-modal-close{background:none;border:none;color:var(--cloistr-text-muted);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.cloistr-modal-close:hover{color:var(--cloistr-text)}.cloistr-modal-content{padding:var(--cloistr-space-lg)}.cloistr-login-options{display:flex;flex-direction:column;gap:var(--cloistr-space-sm)}.cloistr-login-help{margin-top:var(--cloistr-space-md);font-size:.875rem;color:var(--cloistr-text-muted);text-align:center}.cloistr-login-help a{color:var(--cloistr-primary-light)}.cloistr-bunker-form{display:flex;flex-direction:column;gap:var(--cloistr-space-md)}.cloistr-bunker-form label{font-size:.875rem;font-weight:500;color:var(--cloistr-text)}.cloistr-form-actions{display:flex;gap:var(--cloistr-space-sm);justify-content:flex-end}.cloistr-error{padding:var(--cloistr-space-sm) var(--cloistr-space-md);background:#ef44441a;border:1px solid var(--cloistr-error);border-radius:var(--cloistr-radius-md);color:var(--cloistr-error);font-size:.875rem;margin-bottom:var(--cloistr-space-md)}.cloistr-user-menu{position:relative}.cloistr-user-menu-trigger{display:flex;align-items:center;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-xs) var(--cloistr-space-sm);background:var(--cloistr-bg);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-full);cursor:pointer;transition:border-color var(--cloistr-transition-fast)}.cloistr-user-menu-trigger:hover{border-color:var(--cloistr-primary)}.cloistr-user-avatar{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--cloistr-primary);color:#fff;border-radius:50%;font-size:.75rem;font-weight:600}.cloistr-user-pubkey{font-family:var(--cloistr-font-mono);font-size:.75rem;color:var(--cloistr-text-muted)}.cloistr-user-menu-dropdown{position:absolute;top:calc(100% + var(--cloistr-space-xs));right:0;min-width:200px;background:var(--cloistr-bg-elevated);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-md);box-shadow:var(--cloistr-shadow-lg);z-index:var(--cloistr-z-dropdown);overflow:hidden}.cloistr-user-menu-header{padding:var(--cloistr-space-sm) var(--cloistr-space-md);border-bottom:1px solid var(--cloistr-border)}.cloistr-user-menu-pubkey-full{display:block;font-family:var(--cloistr-font-mono);font-size:.75rem;color:var(--cloistr-text-muted)}.cloistr-user-menu-method{font-size:.75rem;color:var(--cloistr-text-dim)}.cloistr-user-menu-items{display:flex;flex-direction:column}.cloistr-user-menu-item{display:block;padding:var(--cloistr-space-sm) var(--cloistr-space-md);color:var(--cloistr-text);text-decoration:none;font-size:.875rem;background:none;border:none;text-align:left;cursor:pointer;width:100%;transition:background var(--cloistr-transition-fast)}.cloistr-user-menu-item:hover{background:var(--cloistr-bg-hover)}.cloistr-user-menu-logout{color:var(--cloistr-error);border-top:1px solid var(--cloistr-border)}.cloistr-service-menu{position:relative}.cloistr-service-menu-trigger{display:flex;align-items:center;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-xs) var(--cloistr-space-sm);background:transparent;border:1px solid transparent;border-radius:var(--cloistr-radius-md);cursor:pointer;color:var(--cloistr-text);transition:all var(--cloistr-transition-fast)}.cloistr-service-menu-trigger:hover{background:var(--cloistr-bg-hover)}.cloistr-service-icon{font-size:1rem}.cloistr-service-name{font-size:.875rem;font-weight:500}.cloistr-service-chevron{font-size:.625rem;color:var(--cloistr-text-muted)}.cloistr-service-menu-dropdown{position:absolute;top:calc(100% + var(--cloistr-space-xs));left:0;min-width:180px;background:var(--cloistr-bg-elevated);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-md);box-shadow:var(--cloistr-shadow-lg);z-index:var(--cloistr-z-dropdown);overflow:hidden}.cloistr-service-menu-item{display:flex;align-items:center;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-sm) var(--cloistr-space-md);color:var(--cloistr-text);text-decoration:none;font-size:.875rem;transition:background var(--cloistr-transition-fast)}.cloistr-service-menu-item:hover{background:var(--cloistr-bg-hover)}.cloistr-service-menu-item.active{background:var(--cloistr-bg-hover);color:var(--cloistr-primary-light)}.cloistr-toast-container{position:fixed;z-index:var(--cloistr-z-toast, 9999);display:flex;flex-direction:column;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-md);pointer-events:none}.cloistr-toast-top-right{top:0;right:0}.cloistr-toast-top-left{top:0;left:0}.cloistr-toast-bottom-right{bottom:0;right:0}.cloistr-toast-bottom-left{bottom:0;left:0}.cloistr-toast-top-center{top:0;left:50%;transform:translate(-50%)}.cloistr-toast-bottom-center{bottom:0;left:50%;transform:translate(-50%)}.cloistr-toast{display:flex;align-items:center;gap:var(--cloistr-space-sm);padding:var(--cloistr-space-sm) var(--cloistr-space-md);background:var(--cloistr-bg-elevated);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-md);box-shadow:var(--cloistr-shadow-lg);pointer-events:auto;animation:cloistr-toast-enter .2s ease-out;max-width:400px}.cloistr-toast-exit{animation:cloistr-toast-exit .2s ease-in forwards}@keyframes cloistr-toast-enter{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes cloistr-toast-exit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.cloistr-toast-icon{flex-shrink:0;font-size:1rem}.cloistr-toast-message{flex:1;font-size:.875rem;color:var(--cloistr-text)}.cloistr-toast-dismiss{flex-shrink:0;background:none;border:none;color:var(--cloistr-text-muted);cursor:pointer;padding:0;font-size:1.25rem;line-height:1}.cloistr-toast-dismiss:hover{color:var(--cloistr-text)}.cloistr-toast-success{border-color:var(--cloistr-success, #22c55e)}.cloistr-toast-success .cloistr-toast-icon{color:var(--cloistr-success, #22c55e)}.cloistr-toast-error{border-color:var(--cloistr-error)}.cloistr-toast-error .cloistr-toast-icon{color:var(--cloistr-error)}.cloistr-toast-warning{border-color:var(--cloistr-warning, #f59e0b)}.cloistr-toast-warning .cloistr-toast-icon{color:var(--cloistr-warning, #f59e0b)}.cloistr-toast-info{border-color:var(--cloistr-info, #3b82f6)}.cloistr-toast-info .cloistr-toast-icon{color:var(--cloistr-info, #3b82f6)}.cloistr-spinner{display:inline-block}.cloistr-spinner svg{width:100%;height:100%;animation:cloistr-spin 1s linear infinite}@keyframes cloistr-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cloistr-spinner-track{stroke:var(--cloistr-border)}.cloistr-spinner-head{stroke:var(--cloistr-primary);stroke-dasharray:45 90}.cloistr-spinner-secondary .cloistr-spinner-head{stroke:var(--cloistr-text-muted)}.cloistr-spinner-white .cloistr-spinner-head{stroke:#fff}.cloistr-spinner-white .cloistr-spinner-track{stroke:#ffffff4d}.cloistr-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.cloistr-loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:var(--cloistr-z-overlay, 100)}.cloistr-loading-blur{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cloistr-loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--cloistr-space-md)}.cloistr-loading-message{color:#fff;font-size:.875rem;margin:0}.cloistr-skeleton{background:linear-gradient(90deg,var(--cloistr-bg-hover) 25%,var(--cloistr-bg-elevated) 50%,var(--cloistr-bg-hover) 75%);background-size:200% 100%;animation:cloistr-skeleton-shimmer 1.5s infinite}@keyframes cloistr-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cloistr-skeleton-none{border-radius:0}.cloistr-skeleton-sm{border-radius:var(--cloistr-radius-sm)}.cloistr-skeleton-md{border-radius:var(--cloistr-radius-md)}.cloistr-skeleton-lg{border-radius:var(--cloistr-radius-lg)}.cloistr-skeleton-full{border-radius:var(--cloistr-radius-full)}.cloistr-modal-sm{max-width:320px}.cloistr-modal-md{max-width:480px}.cloistr-modal-lg{max-width:640px}.cloistr-modal-xl{max-width:800px}.cloistr-modal-full{max-width:calc(100vw - var(--cloistr-space-lg) * 2);max-height:calc(100vh - var(--cloistr-space-lg) * 2)}.cloistr-modal-footer{padding:var(--cloistr-space-md) var(--cloistr-space-lg);border-top:1px solid var(--cloistr-border);background:var(--cloistr-bg)}.cloistr-modal-actions{display:flex;justify-content:flex-end;gap:var(--cloistr-space-sm)}.cloistr-confirm-message{margin:0;color:var(--cloistr-text-muted);line-height:1.5}.cloistr-btn-danger{background:var(--cloistr-error);color:#fff}.cloistr-btn-danger:hover:not(:disabled){background:#dc2626}body{font-family:var(--cloistr-font-sans);background:var(--cloistr-bg);color:var(--cloistr-text);line-height:1.6;min-height:100vh;margin:0}*{box-sizing:border-box}a{color:var(--cloistr-primary-light);text-decoration:none}a:hover{color:var(--cloistr-primary)}.sanctuary{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;max-width:1200px;margin:0 auto;padding:2rem;width:100%}.hero{text-align:center;padding:4rem 0}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--cloistr-primary),var(--cloistr-primary-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--cloistr-text-muted);max-width:600px;margin:0 auto 2rem}.cta-button{display:inline-block;padding:1rem 2rem;background:var(--cloistr-primary);color:#fff;font-weight:600;font-size:1.1rem;border-radius:var(--cloistr-radius-lg);transition:all .2s}.cta-button:hover{background:var(--cloistr-primary-hover);color:#fff;transform:translateY(-2px);box-shadow:0 4px 20px #7c3aed66}.services{padding:4rem 0}.services-title{text-align:center;font-size:2rem;margin-bottom:3rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.service-card{background:var(--cloistr-bg-elevated);border:1px solid var(--cloistr-border);border-radius:var(--cloistr-radius-lg);padding:1.5rem;transition:all .2s;display:block}.service-card:hover{border-color:var(--cloistr-primary);transform:translateY(-4px);box-shadow:0 8px 30px #7c3aed33}.service-icon{font-size:2rem;margin-bottom:.75rem;display:block}.service-name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--cloistr-text)}.service-description{font-size:.9rem;color:var(--cloistr-text-muted)}.cta-section{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#7c3aed1a,#7c3aed0d);border-radius:var(--cloistr-radius-lg);margin:2rem 0}.cta-title{font-size:2rem;margin-bottom:1rem}.cta-subtitle{font-size:1.1rem;color:var(--cloistr-text-muted);max-width:500px;margin:0 auto 2rem}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:4rem 0;border-top:1px solid var(--cloistr-border)}.feature{text-align:center}.feature h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--cloistr-primary-light)}.feature p{color:var(--cloistr-text-muted)}@media(max-width:768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.services-grid{grid-template-columns:1fr}.cta-section{padding:2rem 1rem}.cta-title{font-size:1.5rem}}
