@font-face{font-family:"Baloo 2";src:url(/fonts/Baloo2-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--raven-bg: #FFFFFF;--raven-surface: #F5F0EA;--raven-surface-hover: #FAF7F4;--raven-border: #E2D9CF;--raven-border-light: #E8E0D6;--raven-text: #1A1A1A;--raven-text-secondary: #6B5D52;--raven-text-muted: #9A8B7C;--raven-text-subtle: #B8A99A;--raven-text-warm: #3D2B1F;--seal-core: #7B2425;--seal-light: rgba(123, 36, 37, .06);--seal-dark: #5C1818;--seal-text: #F0DDD0;--seal-gradient: radial-gradient(circle at 40% 38%, #9E3B3B, #7B2425 55%, #5A1A1B);--secret-bg: #FFFCF9;--secret-border: #D4B8A0;--secret-accent: #7B2425;--success: #2D8B4E;--success-bg: rgba(45, 139, 78, .08);--warning: #B8860B;--warning-bg: rgba(184, 134, 11, .08);--error: #C43E3E;--error-bg: rgba(196, 62, 62, .08);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-pill: 20px;--radius-full: 9999px;--font-wordmark: "Baloo 2", cursive;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", "Consolas", monospace;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-md: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--transition-fast: .1s ease;--transition-base: .15s ease;--transition-smooth: .25s ease;--transition-dramatic: .5s cubic-bezier(.34, 1.56, .64, 1);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .06);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .12);--shadow-glow: 0 0 12px rgba(123, 36, 37, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:1.6;color:var(--raven-text);background:var(--raven-bg);min-height:100vh}#app{max-width:480px;margin:0 auto;padding:var(--space-6) var(--space-5);min-height:100vh;position:relative;z-index:1}.hero-title{font-family:var(--font-primary);font-size:26px;font-weight:600;color:var(--raven-text);letter-spacing:-.02em;line-height:1.3;text-align:center}.screen-title{font-size:var(--text-lg);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-5)}.subtitle{text-align:center;color:var(--raven-text-muted);font-size:16px;margin-bottom:var(--space-6);line-height:1.5}.field-label{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:500;color:var(--raven-text-secondary);margin-bottom:var(--space-2)}.text-mono{font-family:var(--font-mono);font-size:12px;letter-spacing:.02em}.logo{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.logo .seal-icon{width:72px;height:72px;border-radius:var(--radius-full)}.logo .wordmark{height:32px;width:auto;display:block}.logo-sm{display:flex;align-items:center;gap:var(--space-2)}.logo-sm .seal-icon{width:40px;height:40px;border-radius:var(--radius-full)}.logo-sm .wordmark{height:22px;width:auto;display:block}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:12px 24px;border:none;border-radius:var(--radius-lg);background:var(--seal-gradient);color:var(--seal-text);font-family:var(--font-primary);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:opacity var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.btn-primary:hover{opacity:.92;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-primary:active{opacity:1;transform:translateY(0);box-shadow:none}.btn-primary:disabled{background:var(--raven-border);color:var(--raven-text-subtle);cursor:not-allowed;box-shadow:none;transform:none;opacity:1}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:11px 24px;border:.5px solid var(--raven-border);border-radius:var(--radius-md);background:var(--raven-bg);color:var(--raven-text);font-family:var(--font-primary);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base),transform var(--transition-base)}.btn-secondary:hover{background:var(--raven-surface-hover);border-color:var(--secret-border);transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-sm{padding:6px 14px;border:.5px solid var(--raven-border);border-radius:var(--radius-sm);background:var(--raven-bg);color:var(--raven-text);font-family:var(--font-primary);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base)}.btn-sm:hover{background:var(--raven-surface-hover);border-color:var(--secret-border)}.pill-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.pill{padding:8px 14px;border:.5px solid var(--raven-border);border-radius:999px;background:var(--raven-bg);color:var(--raven-text);font-family:var(--font-primary);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.pill:hover{background:var(--raven-surface-hover);border-color:var(--secret-border)}.pill-selected,.pill-selected:hover{background:var(--raven-text);color:var(--raven-bg);border-color:var(--raven-text)}.btn-danger{padding:10px 20px;border:1px solid rgba(196,62,62,.2);border-radius:var(--radius-md);background:transparent;color:var(--error);font-family:var(--font-primary);font-size:var(--text-base);font-weight:500;cursor:pointer;margin-top:var(--space-4);transition:background var(--transition-base)}.btn-danger:hover{background:var(--error-bg)}.btn-icon{background:none;border:none;color:var(--raven-text-muted);font-size:16px;cursor:pointer;padding:6px 8px;transition:color var(--transition-fast),background var(--transition-fast);border-radius:var(--radius-sm);display:flex;align-items:center}.btn-icon:hover{color:var(--raven-text);background:#0000000a}.btn-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.btn-row{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.btn-full{width:100%}.btn-send{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 24px;border:none;border-radius:var(--radius-pill);background:var(--seal-gradient);color:var(--seal-text);font-family:var(--font-primary);font-size:var(--text-md);font-weight:500;cursor:pointer;transition:opacity var(--transition-base),transform var(--transition-base);float:right}.btn-send:hover{opacity:.92;transform:translateY(-1px)}.btn-send:disabled{background:var(--raven-border);color:var(--raven-text-subtle);cursor:not-allowed;transform:none;opacity:1}.btn-send .seal-icon-sm{width:14px;height:14px;border-radius:var(--radius-full);opacity:.85}input,textarea,select{width:100%;padding:12px 14px;border:1px solid var(--raven-border);border-radius:var(--radius-lg);background:var(--raven-bg);color:var(--raven-text);font-family:var(--font-primary);font-size:var(--text-base);transition:border-color var(--transition-base),box-shadow var(--transition-base)}input::placeholder,textarea::placeholder{color:var(--raven-text-subtle)}input:hover,textarea:hover,select:hover{border-color:var(--secret-border)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--seal-core);box-shadow:0 0 0 3px var(--seal-light)}textarea{resize:vertical;line-height:1.5}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B5D52' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.input-group{margin-bottom:var(--space-4)}.secret-input{background:var(--secret-bg);border:1px solid var(--secret-border);border-left:3px solid var(--secret-accent);font-style:italic}.secret-input:focus{border-color:var(--secret-border);border-left-color:var(--secret-accent);box-shadow:0 0 0 3px var(--seal-light)}.input-lg{font-size:18px;padding:14px 20px;text-align:center;letter-spacing:.05em}.card{background:var(--raven-bg);border:.5px solid var(--raven-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-xs)}.key-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--raven-bg);border:.5px solid var(--raven-border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base)}.key-item:hover{background:var(--raven-surface-hover);border-color:var(--secret-border)}.key-item-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--seal-gradient);color:var(--seal-text);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--text-base);flex-shrink:0}.key-item-info{flex:1;min-width:0}.key-item-label{font-weight:500;font-size:var(--text-base);color:var(--raven-text)}.key-item-meta{font-size:var(--text-xs);color:var(--raven-text-muted)}.key-item-pending{opacity:.55}.key-item-pending .key-item-label{font-style:italic}.key-item-subtext{font-size:var(--text-xs);color:var(--raven-text-muted);font-style:italic;margin-top:2px}.connection-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;background:#2d8b4e;margin-left:6px;vertical-align:middle;box-shadow:0 0 0 2px #2d8b4e1f}.handshake-toast{position:fixed;top:16px;left:50%;transform:translate(-50%) translateY(-64px);background:#f4ece1;border:1px solid rgba(45,139,78,.35);border-radius:var(--radius-md);padding:10px 16px;font-size:var(--text-sm);color:var(--raven-text);box-shadow:0 4px 16px #0000001f;opacity:0;transition:transform .24s ease,opacity .24s ease;z-index:9999;pointer-events:none;max-width:calc(100% - 48px)}.handshake-toast:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#2d8b4e;margin-right:10px;vertical-align:middle}.handshake-toast.visible{transform:translate(-50%) translateY(0);opacity:1}.auto-tune-toast{position:fixed;top:16px;left:50%;transform:translate(-50%) translateY(-64px);background:#f4ece1;border:1px solid rgba(123,36,37,.35);border-radius:var(--radius-md);padding:10px 16px;font-size:var(--text-sm);color:var(--raven-text);box-shadow:0 4px 16px #0000001f;opacity:0;transition:transform .24s ease,opacity .24s ease;z-index:9999;pointer-events:none;max-width:calc(100% - 48px);display:flex;align-items:center;gap:10px}.auto-tune-toast:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--seal-core);flex-shrink:0}.auto-tune-toast strong{color:var(--seal-core);font-weight:600}.auto-tune-toast .auto-tune-toast-msg{color:var(--raven-text-secondary);font-style:italic;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-tune-toast.visible{transform:translate(-50%) translateY(0);opacity:1}.key-list{display:flex;flex-direction:column;gap:var(--space-2)}.key-arrow{color:var(--raven-text-subtle);font-size:16px;flex-shrink:0}.app-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:.5px solid var(--raven-border-light)}.app-header .header-actions{display:flex;gap:var(--space-1)}.identity-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--raven-surface);border:.5px solid var(--raven-border);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.identity-label{font-family:var(--font-mono);font-size:12px;color:var(--raven-text-muted);letter-spacing:.02em}.detail-content{background:var(--raven-surface);border:.5px solid var(--raven-border);border-radius:var(--radius-lg);padding:var(--space-4);font-size:var(--text-sm);line-height:1.6;word-break:break-all}.detail-field{margin-bottom:var(--space-3)}.detail-field:last-child{margin-bottom:0}.detail-value{color:var(--raven-text)}.rule-state{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-xs);margin-top:var(--space-2);line-height:1.4}.rule-state.is-red{background:var(--error-bg);color:var(--error);border:.5px solid var(--error)}.rule-state.is-green{background:var(--success-bg);color:var(--success);border:.5px solid var(--success)}.char-counter{font-size:var(--text-xs);color:var(--raven-text-muted);text-align:right;margin-top:var(--space-1)}.char-counter.warn{color:var(--warning)}.char-counter.limit{color:var(--error)}.section-label{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-2)}.section-label svg{width:13px;height:13px;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.section-label-carrier{color:var(--raven-text-secondary)}.section-label-carrier svg{stroke:var(--raven-text-secondary)}.section-label-secret{color:var(--seal-core)}.section-label-secret svg{stroke:var(--seal-core)}.section-helper{font-size:var(--text-xs);margin-top:var(--space-1);display:flex;justify-content:space-between;align-items:center}.section-helper-muted{color:var(--raven-text-subtle)}.section-helper-secure{color:var(--raven-text-muted)}.seal-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0}.seal-divider-line{flex:1;height:.5px;background:var(--raven-border-light)}.seal-divider-icon{width:22px;height:22px;border-radius:var(--radius-full);flex-shrink:0}.error{color:var(--error);font-size:var(--text-sm);margin-top:var(--space-2)}.error.shake{animation:shake .4s ease}.success{color:var(--success);font-size:var(--text-sm);margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.send-via-pills{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap}.send-via-pill{padding:6px 14px;border:.5px solid var(--raven-border);border-radius:var(--radius-pill);background:var(--raven-bg);color:var(--raven-text-muted);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.send-via-pill:hover:not(.active){border-color:var(--secret-border);color:var(--raven-text-secondary)}.send-via-pill.active{background:var(--raven-surface);border-color:var(--secret-border);color:var(--raven-text)}.stealth-row{display:flex;align-items:center;gap:var(--space-2, 6px);margin-top:var(--space-2, 8px);padding-top:var(--space-1, 4px)}.stealth-row.disabled{opacity:.5}.stealth-subtext{font-size:var(--text-xs);color:var(--raven-text-muted);margin-top:var(--space-1, 4px)}.stealth-checkbox-label{display:inline-flex;align-items:center;gap:var(--space-1, 6px);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;color:var(--raven-text);cursor:pointer;-webkit-user-select:none;user-select:none}.stealth-checkbox{width:14px;height:14px;margin:0;cursor:pointer;accent-color:var(--seal-core, #c08552)}.stealth-sent-view{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 16px 32px;text-align:center;font-family:var(--font-primary);color:var(--raven-text)}.stealth-sent-line{font-size:22px;font-weight:500;line-height:1.3}.stealth-sent-new-raven-btn{margin-top:28px;padding:6px 14px;background:transparent;border:none;color:var(--raven-text-muted);font-family:var(--font-primary);font-size:var(--text-xs);font-weight:500;cursor:pointer;transition:color var(--transition-base)}.stealth-sent-new-raven-btn:hover{color:var(--raven-text-secondary)}.stealth-sent-new-raven-btn:focus-visible{outline:none;color:var(--raven-text-secondary);text-decoration:underline}.mode-pill-group{display:inline-flex;align-items:center;gap:var(--space-1, 4px)}.mode-info-btn{width:18px;height:18px;padding:0;border:.5px solid transparent;background:transparent;color:var(--raven-text-muted);font-family:var(--font-primary);font-size:12px;font-weight:500;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:color var(--transition-base),border-color var(--transition-base)}.mode-info-btn:hover{color:var(--raven-text-secondary);border-color:var(--raven-border)}.mode-info-btn:focus-visible{outline:none;color:var(--raven-text-secondary);border-color:var(--secret-border)}.mode-popover-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100}.mode-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:320px;max-width:calc(100vw - 32px);padding:20px;background:var(--raven-bg);border:.5px solid var(--raven-border);border-radius:var(--radius-md, 8px);box-shadow:0 4px 16px #0003;z-index:101}.mode-popover-title{font-family:var(--font-primary);font-size:15px;font-weight:500;color:var(--raven-text);margin-bottom:12px}.mode-popover p{font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text-secondary);margin:0 0 10px;line-height:1.4}.mode-popover p:last-child{margin-bottom:0}.compose-empty-cta{padding:12px 14px;border:1px solid var(--raven-border);border-radius:var(--radius-lg);background:var(--raven-bg)}.compose-empty-cta-text{color:var(--raven-text-subtle);font-size:var(--text-base);line-height:1.4}.compose-empty-cta-text a{color:var(--raven-text);text-decoration:underline;font-weight:500}.compose-empty-cta-text a:hover{color:var(--seal-core)}.warning{color:var(--warning);background:var(--warning-bg);font-size:var(--text-sm);margin-top:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:8px;display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.warning button{background:transparent;border:1px solid currentColor;color:inherit;padding:4px 10px;border-radius:6px;font-size:var(--text-sm);cursor:pointer;font-family:inherit}.warning button:hover:not(:disabled){background:#b8860b29}.warning button:disabled{opacity:.6;cursor:not-allowed}.info{color:var(--raven-text-muted);font-size:var(--text-sm);margin-top:var(--space-2)}.seal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1a1a1a8c;animation:sealOverlayIn .3s ease;cursor:pointer}@keyframes sealOverlayIn{0%{opacity:0}to{opacity:1}}.seal-overlay video{width:300px;height:auto;border-radius:var(--radius-lg);background:transparent;object-fit:cover;display:block}.seal-sent{display:flex;flex-direction:column;align-items:center;gap:8px;animation:sealSentIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes sealSentIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.seal-sent-check{width:48px;height:48px;border-radius:50%;background:var(--success);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin-bottom:4px}.seal-sent-text{color:#fff;font-family:var(--font-wordmark);font-size:24px;font-weight:600}.seal-sent-sub{color:#ffffffb3;font-family:var(--font-primary);font-size:var(--text-base)}.tab-bar{display:flex;gap:var(--space-1);background:var(--raven-surface);border-radius:var(--radius-sm);padding:3px;margin-bottom:var(--space-5)}.tab{flex:1;padding:8px 12px;font-size:var(--text-sm);font-weight:500;color:var(--raven-text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all var(--transition-base);font-family:var(--font-primary)}.tab.active{background:var(--raven-bg);color:var(--raven-text);box-shadow:var(--shadow-xs)}.tab:hover:not(.active){color:var(--raven-text-secondary)}.raven-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999998;animation:fadeIn .2s ease-out}.raven-reveal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);max-width:400px;width:calc(100% - 40px);background:var(--raven-bg);border-top:2px solid var(--seal-core);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),var(--shadow-glow);overflow:hidden;z-index:999999;animation:revealSlideUp .5s cubic-bezier(.34,1.56,.64,1) forwards}.raven-reveal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:var(--secret-bg);border-bottom:.5px solid var(--raven-border-light)}.raven-reveal-header-left{display:flex;align-items:center;gap:var(--space-2)}.raven-reveal-header .seal-icon{width:22px;height:22px;border-radius:var(--radius-full)}.raven-reveal-sender{font-size:var(--text-sm);color:var(--seal-core);font-weight:600}.raven-reveal-badge{font-size:10px;font-weight:500;color:var(--seal-core);background:var(--seal-light);padding:2px 8px;border-radius:var(--radius-pill)}.raven-reveal-close{background:none;border:none;color:var(--raven-text-subtle);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.raven-reveal-close:hover{color:var(--raven-text);background:#0000000a}.raven-reveal-body{padding:var(--space-5)}.raven-reveal-message{font-size:16px;font-style:italic;line-height:1.6;color:var(--raven-text-warm);margin-bottom:var(--space-3)}.raven-reveal-carrier{padding-top:var(--space-3);border-top:.5px solid var(--raven-border-light);margin-bottom:var(--space-3)}.raven-reveal-carrier-label{font-size:var(--text-xs);color:var(--raven-text-subtle)}.raven-reveal-carrier-text{font-size:12px;color:var(--raven-text-muted)}.raven-reveal-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:.5px solid var(--raven-border-light)}.raven-reveal-time{font-size:var(--text-xs);color:var(--raven-text-subtle)}.raven-reveal-secure{font-size:var(--text-xs);color:var(--raven-text-muted);font-style:italic}.scanning-bar{padding:var(--space-3) 0;text-align:center;font-size:var(--text-sm);font-weight:500;color:var(--seal-core);background:linear-gradient(90deg,transparent,var(--seal-light),rgba(123,36,37,.1),var(--seal-light),transparent);background-size:200% 100%;border-radius:var(--radius-sm);animation:shimmer 1.5s ease-in-out infinite}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--seal-text);border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}.strength-bar{height:4px;border-radius:2px;background:var(--raven-border);margin-top:var(--space-1);overflow:hidden}.strength-fill{height:100%;border-radius:2px;transition:width .3s ease,background .3s ease}.strength-fill.weak{width:33%;background:var(--error)}.strength-fill.medium{width:66%;background:var(--warning)}.strength-fill.strong{width:100%;background:var(--success)}.strength-label{font-size:var(--text-xs);margin-top:2px;text-align:right}.strength-label.weak{color:var(--error)}.strength-label.medium{color:var(--warning)}.strength-label.strong{color:var(--success)}.qr-container{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4)}.qr-container canvas{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.scanner-container{position:relative;width:100%;max-width:320px;margin:0 auto}.scanner-container video{width:100%;border-radius:var(--radius-lg);border:1px solid var(--raven-border)}.scanner-canvas{display:none}.landing{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:var(--space-12);padding-bottom:var(--space-8)}.landing-logo{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6)}.landing-seal-img{width:108px;height:108px;border-radius:var(--radius-full)}.landing-logo .wordmark{height:56px;width:auto;display:block}.landing .hero-title{margin-bottom:var(--space-3)}.landing .subtitle{margin-bottom:var(--space-8)}.how-it-works{text-align:left;width:100%;max-width:380px}.how-it-works h3{font-size:var(--text-md);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-3)}.how-it-works ol{list-style:none;counter-reset:steps;padding:0}.how-it-works li{counter-increment:steps;padding-left:28px;position:relative;margin-bottom:var(--space-4);font-size:var(--text-sm);color:var(--raven-text-muted)}.how-it-works li:before{content:counter(steps);position:absolute;left:0;font-weight:600;color:var(--seal-core);font-size:var(--text-sm)}.how-it-works li strong{display:block;color:var(--raven-text);font-size:var(--text-sm);margin-bottom:2px}.how-it-works .step-desc{display:block;color:var(--raven-text-muted);font-size:var(--text-sm);font-weight:400;line-height:1.5}.trust-section{text-align:left;width:100%;max-width:420px}.trust-section h3{font-size:var(--text-md);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-4);text-align:center}.trust-grid{display:flex;flex-direction:column;gap:var(--space-4)}.trust-item{display:flex;flex-direction:column;gap:var(--space-1)}.trust-icon{margin-bottom:var(--space-1)}.trust-item strong{font-size:var(--text-base);font-weight:600;color:var(--raven-text)}.trust-item p{font-size:var(--text-sm);color:var(--raven-text-muted);line-height:1.5;margin:0}.get-raven-section{text-align:left;width:100%;max-width:420px}.get-raven-section h3{font-size:var(--text-md);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-4);text-align:center}.get-raven-cards{display:flex;flex-direction:column;gap:var(--space-3)}.get-raven-card{padding:var(--space-4);border:.5px solid var(--raven-border);border-radius:var(--radius-lg);background:var(--raven-bg);transition:background var(--transition-base),border-color var(--transition-base)}.get-raven-card:hover{background:var(--raven-surface-hover);border-color:var(--secret-border)}.get-raven-card-active{border-color:var(--seal-core);background:var(--secret-bg)}.get-raven-card-coming-soon{opacity:.55;cursor:default}.get-raven-card-coming-soon:hover{background:var(--raven-bg);border-color:var(--raven-border)}.get-raven-card-title{font-size:var(--text-base);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-1)}.get-raven-card-desc{font-size:var(--text-sm);color:var(--raven-text-secondary);margin-bottom:var(--space-2);line-height:1.5}.get-raven-card-meta{font-size:var(--text-xs);color:var(--raven-text-subtle)}.footer-links{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-8);padding-top:var(--space-6)}.footer-links a{font-size:var(--text-sm);color:var(--raven-text-muted);text-decoration:none;transition:color var(--transition-fast)}.footer-links a:hover{color:var(--raven-text)}.footer-dot{color:var(--raven-text-subtle);font-size:var(--text-xs)}.unlock-hint{font-size:var(--text-xs);color:var(--raven-text-subtle);text-align:center;margin-top:var(--space-4);line-height:1.5}.unlock-hint a{color:var(--raven-text-secondary);text-decoration:underline;text-decoration-color:var(--raven-text-subtle);text-underline-offset:2px;cursor:pointer;transition:color var(--transition-fast),text-decoration-color var(--transition-fast)}.unlock-hint a:hover{color:var(--raven-text);text-decoration-color:var(--raven-text)}.prose{max-width:440px;line-height:1.7}.prose p{font-size:var(--text-base);color:var(--raven-text-secondary);margin-bottom:var(--space-4)}.prose p:first-child{font-size:var(--text-md);color:var(--raven-text);font-weight:500}.prose p:last-child{margin-bottom:0;font-style:italic;color:var(--raven-text-muted)}.faq-list{display:flex;flex-direction:column;gap:var(--space-5)}.faq-item{padding-bottom:var(--space-5);border-bottom:.5px solid var(--raven-border-light)}.faq-item:last-child{border-bottom:none;padding-bottom:0}.faq-question{font-size:var(--text-base);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-2)}.faq-answer{font-size:var(--text-sm);color:var(--raven-text-secondary);line-height:1.6;margin:0}.faq-answer p{margin:0 0 var(--space-2) 0}.faq-answer p:last-child{margin-bottom:0}.faq-answer ul{margin:var(--space-2) 0;padding-left:var(--space-4)}.faq-answer li{margin-bottom:var(--space-2)}.faq-answer li:last-child{margin-bottom:0}.faq-answer .faq-q-lead{color:var(--raven-text);font-weight:500;margin-bottom:var(--space-2)}.faq-answer code{font-family:var(--font-mono, ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace);font-size:.92em;padding:1px 4px;background:var(--raven-surface);border:.5px solid var(--raven-border-light);border-radius:4px}.faq-footnote{margin-top:var(--space-6);padding-top:var(--space-4);border-top:.5px solid var(--raven-border-light);font-size:var(--text-sm);color:var(--raven-text-subtle);text-align:center}.screen-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.back-btn{background:none;border:none;color:var(--raven-text-muted);font-size:18px;cursor:pointer;padding:4px;display:flex;align-items:center;transition:color var(--transition-fast)}.back-btn:hover{color:var(--raven-text)}.screen-header .screen-title{margin-bottom:0}.screen-header .header-actions{display:flex;gap:var(--space-1);margin-left:auto}.scan-raven-card-web{background:var(--raven-bg);border-top:2px solid var(--seal-core);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);animation:cardSlideUp .4s cubic-bezier(.34,1.56,.64,1)}.scan-raven-header-web{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background:var(--secret-bg);border-bottom:.5px solid var(--raven-border-light)}.scan-raven-badge-web{font-size:10px;font-weight:500;color:var(--seal-core);background:var(--seal-light);padding:2px 8px;border-radius:var(--radius-pill)}.scan-raven-message-web{font-size:16px;font-style:italic;line-height:1.65;color:var(--raven-text-warm);padding:var(--space-5)}.raven-mark{display:inline-flex;align-items:center;margin-left:4px;vertical-align:middle;cursor:help}.raven-mark svg{width:18px;height:18px}.raven-mark-verified{color:var(--seal-core)}.raven-mark-unverified{color:var(--raven-text-muted);opacity:.5}.scan-raven-footer-web{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-top:.5px solid var(--raven-border-light)}.scan-nav-web{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.scan-nav-btn-web{flex:1;padding:10px 16px;border:.5px solid var(--raven-border);border-radius:var(--radius-md);background:var(--raven-bg);color:var(--raven-text-muted);font-family:var(--font-primary);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-base);text-align:center}.scan-nav-btn-web:hover:not(:disabled){background:var(--raven-surface-hover);border-color:var(--secret-border);color:var(--raven-text)}.scan-nav-btn-web:disabled{opacity:.4;cursor:not-allowed}.scan-nav-btn-active{background:var(--seal-core)!important;color:var(--seal-text)!important;border-color:var(--seal-core)!important}.scan-nav-btn-active:hover:not(:disabled){background:var(--seal-dark)!important;border-color:var(--seal-dark)!important}.no-results{text-align:center;padding:var(--space-8) var(--space-4);color:var(--raven-text-muted);font-size:var(--text-sm)}.carrier-highlight{text-decoration:underline;text-decoration-color:var(--seal-core);text-decoration-thickness:2px;text-underline-offset:3px}.import-section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:.5px solid var(--raven-border)}.import-section h3{font-size:var(--text-md);font-weight:600;color:var(--raven-text);margin-bottom:var(--space-3)}.key-type-selector-web{display:flex;gap:var(--space-2)}.key-type-btn-web{flex:1;padding:8px 12px;border:.5px solid var(--raven-border);border-radius:var(--radius-sm);background:var(--raven-bg);color:var(--raven-text-muted);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-base);text-align:center}.key-type-btn-web.active{background:var(--raven-surface);border-color:var(--seal-core);color:var(--seal-core)}.key-type-btn-web:hover:not(.active){background:var(--raven-surface-hover)}.key-type-btn-web[disabled],.key-type-btn-web.disabled{opacity:.4;cursor:not-allowed}.key-type-btn-web[disabled]:hover,.key-type-btn-web.disabled:hover{background:var(--raven-bg)}.key-type-coming-soon-web{margin-top:var(--space-1, 4px);font-family:var(--font-primary);font-size:var(--text-xs);color:var(--raven-text-muted)}.shared-badge{display:inline-block;font-size:10px;font-weight:500;padding:1px 6px;border-radius:var(--radius-pill)}.tune-untuned{max-width:380px;margin:0 auto;padding:var(--space-6) 0;display:flex;flex-direction:column;gap:var(--space-5)}.tune-headline{font-family:var(--font-primary);font-size:var(--text-xl);font-weight:600;color:var(--raven-text);text-align:center;letter-spacing:-.01em;line-height:1.3;margin:0 0 var(--space-2)}.tune-paragraph{font-family:var(--font-primary);font-size:var(--text-base);color:var(--raven-text-secondary);line-height:1.55;margin:0}.tune-privacy{background:var(--raven-surface);border-left:2px solid var(--raven-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.tune-privacy p{font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text-secondary);line-height:1.55;margin:0}.tune-in-btn{align-self:center;padding:12px 32px;margin-top:var(--space-2)}.tune-learn-more{align-self:center;font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text-muted);text-decoration:none;margin-top:var(--space-1)}.tune-learn-more:hover{color:var(--raven-text-secondary)}.flock-sent-card{margin-top:var(--space-3);padding:14px;background:var(--raven-surface);border:.5px solid var(--raven-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;font-family:var(--font-primary)}.flock-sent-card-header{display:flex;align-items:center;gap:6px}.flock-sent-card-check{font-size:16px;font-weight:600;color:var(--seal-core);line-height:1}.flock-sent-card-headline{font-size:var(--text-base);font-weight:500;color:var(--raven-text)}.flock-sent-card-timestamp{font-size:var(--text-sm);color:var(--raven-text-muted)}.flock-sent-card-cta{align-self:flex-start;margin-top:6px;padding:4px 0;background:transparent;border:none;font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;color:var(--seal-core);cursor:pointer}.flock-sent-card-cta:hover{text-decoration:underline}.tune-tuned-header{display:flex;align-items:center;justify-content:space-between;max-width:380px;margin:0 auto;padding:12px 4px 0}.tune-tuned-indicator{font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;color:var(--seal-core)}.tune-gear-wrap{position:relative}.tune-gear-btn{background:transparent;border:none;cursor:pointer;padding:8px;color:var(--raven-text-muted);border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.tune-gear-btn:hover{color:var(--raven-text-secondary);background:var(--raven-surface-hover)}.tune-gear-btn svg{stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tune-gear-menu{position:absolute;top:100%;right:0;margin-top:4px;min-width:140px;background:var(--raven-bg);border:.5px solid var(--raven-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);z-index:50;padding:4px}.tune-gear-menu-item{display:block;width:100%;text-align:left;background:transparent;border:none;padding:8px 12px;font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text);cursor:pointer;border-radius:var(--radius-sm)}.tune-gear-menu-item:hover{background:var(--raven-surface-hover)}.tune-tuned{max-width:380px;margin:0 auto;padding:var(--space-12) var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.tune-tuned-line1{font-family:var(--font-primary);font-size:var(--text-xl);font-weight:600;color:var(--raven-text);letter-spacing:-.01em}.tune-tuned-line2{font-family:var(--font-primary);font-size:var(--text-base);color:var(--raven-text-secondary);line-height:1.55}.send-via-pill.disabled{opacity:.5;cursor:not-allowed}.send-via-pill.disabled:hover{background:var(--raven-bg);border-color:var(--raven-border);color:var(--raven-text-muted)}.send-via-consequence.disabled-flock{opacity:.5}.mode-popover-cta-divider{margin:var(--space-3, 12px) 0;border:0;border-top:.5px solid var(--raven-border)}.mode-popover-cta-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:8px 16px;border:.5px solid var(--secret-border);border-radius:var(--radius-md);background:var(--raven-bg);color:var(--raven-text);font-family:var(--font-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all var(--transition-base)}.mode-popover-cta-btn:hover{background:var(--raven-surface-hover);border-color:var(--seal-core)}.shared-badge-private{color:var(--seal-core);background:var(--seal-light)}.shared-badge-public{color:var(--success);background:var(--success-bg)}.shared-badge-group{color:#4a7fb5;background:#4a7fb514}.shared-detail-textarea{width:100%;padding:10px 12px;border:1px solid var(--raven-border);border-radius:var(--radius-sm);font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text);background:var(--raven-bg);resize:vertical;min-height:50px}.shared-detail-textarea:focus{border-color:var(--seal-core);outline:none;box-shadow:0 0 0 3px var(--seal-light)}.shared-detail-input{width:100%;padding:10px 12px;border:1px solid var(--raven-border);border-radius:var(--radius-sm);font-family:var(--font-primary);font-size:var(--text-sm);color:var(--raven-text);background:var(--raven-bg)}.shared-detail-input:focus{border-color:var(--seal-core);outline:none;box-shadow:0 0 0 3px var(--seal-light)}.contacts-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.contact-row{display:flex;align-items:center;gap:8px}.contact-row span{flex:1;font-size:var(--text-sm);color:var(--raven-text)}.contact-remove-btn{background:none;border:none;color:var(--error);cursor:pointer;font-size:18px;padding:0 4px;line-height:1}.contact-add-row{display:flex;gap:8px}.contact-add-row input{flex:1}.send-row{display:flex;justify-content:flex-end;margin-top:var(--space-4);overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes revealSlideUp{0%{opacity:0;transform:translate(-50%,-50%) translateY(16px) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) translateY(0) scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){#app{padding:var(--space-4) var(--space-3)}.hero-title{font-size:26px}.btn-row{flex-direction:column}.btn-row .btn-primary,.btn-row .btn-secondary{width:100%}.raven-reveal{width:calc(100% - 24px)}.logo .seal-icon{width:52px;height:52px}.logo .wordmark{font-size:var(--text-xl)}.trust-section,.get-raven-section,.how-it-works{max-width:100%}}
