:root{--void: #040408;--surface-1: #08080F;--surface-2: #0F0F1A;--surface-3: #161622;--surface-4: #1C1C2A;--border: rgba(255, 255, 255, .06);--border-strong: rgba(255, 255, 255, .1);--border-accent: rgba(139, 92, 246, .35);--violet: #8B5CF6;--violet-light: #A78BFA;--violet-dim: rgba(139, 92, 246, .12);--violet-glow: rgba(139, 92, 246, .3);--violet-glow-strong: rgba(139, 92, 246, .5);--emerald: #10B981;--emerald-dim: rgba(16, 185, 129, .12);--emerald-glow: rgba(16, 185, 129, .3);--amber: #F59E0B;--amber-dim: rgba(245, 158, 11, .12);--red: #EF4444;--red-dim: rgba(239, 68, 68, .12);--text-1: #F1F5F9;--text-2: #94A3B8;--text-3: #475569;--sidebar-w: 224px;--topbar-h: 56px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-card: 0 1px 3px rgba(0, 0, 0, .6), 0 12px 32px rgba(0, 0, 0, .5);--shadow-modal: 0 0 0 1px rgba(255,255,255,.06), 0 32px 80px rgba(0, 0, 0, .9);--ease: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-text-size-adjust:100%}body{height:100%;background:var(--void);color:var(--text-1);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{height:100%}h1,h2,h3,h4{font-family:Syne,sans-serif;letter-spacing:-.02em;line-height:1.2}button{font-family:"Inter",inherit}a{color:var(--violet-light);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--violet);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes float-orb-1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(60px,-80px) scale(1.08)}66%{transform:translate(-30px,40px) scale(.94)}}@keyframes float-orb-2{0%,to{transform:translate(0) scale(1)}40%{transform:translate(-70px,60px) scale(1.06)}70%{transform:translate(40px,-30px) scale(.96)}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.25}}@keyframes pulse-ring{0%,to{box-shadow:0 0 0 0 var(--violet-glow),0 0 12px var(--violet-glow)}50%{box-shadow:0 0 0 6px #8b5cf614,0 0 20px var(--violet-glow)}}@keyframes pulse-ring-emerald{0%,to{box-shadow:0 0 0 0 var(--emerald-glow)}50%{box-shadow:0 0 0 5px #10b9810f}}@keyframes flow-beam{0%{left:-35%;opacity:0}10%{opacity:1}90%{opacity:1}to{left:120%;opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.spin{animation:spin .8s linear infinite}.login-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--void);overflow:hidden;z-index:100}.login-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.login-orb--1{width:640px;height:640px;top:-180px;right:-120px;background:radial-gradient(circle,rgba(139,92,246,.28) 0%,rgba(59,130,246,.12) 50%,transparent 70%);animation:float-orb-1 22s ease-in-out infinite}.login-orb--2{width:500px;height:500px;bottom:-140px;left:-80px;background:radial-gradient(circle,rgba(16,185,129,.18) 0%,rgba(139,92,246,.1) 40%,transparent 65%);animation:float-orb-2 28s ease-in-out infinite}.login-card{position:relative;z-index:10;width:min(400px,calc(100vw - 40px));padding:40px 36px;background:#08080fcc;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-xl);box-shadow:0 0 0 1px #8b5cf614,0 40px 100px #000000d9,inset 0 1px #ffffff0d;display:flex;flex-direction:column;gap:24px;animation:scale-in .5s var(--ease) both}.login-logo{display:flex;align-items:center;gap:12px}.login-logo-mark{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,var(--violet) 0%,#6D28D9 100%);box-shadow:0 0 20px var(--violet-glow),inset 0 1px #fff3;display:flex;align-items:center;justify-content:center;font-family:Syne,sans-serif;font-weight:800;font-size:15px;color:#fff;letter-spacing:-.02em;flex-shrink:0}.login-logo-text{font-family:Syne,sans-serif;font-weight:700;font-size:18px;color:var(--text-1);letter-spacing:-.02em}.login-subtitle{font-size:13px;color:var(--text-3);font-family:JetBrains Mono,monospace;letter-spacing:.01em;margin-top:-12px}.login-field{display:flex;flex-direction:column;gap:8px}.login-label{font-size:12px;font-weight:600;color:var(--text-2);letter-spacing:.05em;text-transform:uppercase}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input{width:100%;padding:13px 44px 13px 16px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text-1);font-size:16px;font-family:JetBrains Mono,monospace;transition:border-color .18s var(--ease),box-shadow .18s var(--ease);outline:none}.login-input::placeholder{color:var(--text-3)}.login-input:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-dim),0 0 12px var(--violet-glow)}.login-eye{position:absolute;right:14px;background:none;border:none;color:var(--text-3);cursor:pointer;display:flex;align-items:center;padding:4px;border-radius:4px;transition:color .15s}.login-eye:hover{color:var(--text-2)}.login-error{font-size:13px;color:var(--red);background:var(--red-dim);border-radius:var(--radius-sm);padding:8px 12px}.login-btn{width:100%;padding:14px 24px;background:linear-gradient(135deg,var(--violet) 0%,#6D28D9 100%);border:none;border-radius:var(--radius-md);color:#fff;font-size:15px;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 24px var(--violet-glow),inset 0 1px #ffffff26;transition:opacity .18s var(--ease),transform .14s var(--ease),box-shadow .18s var(--ease)}.login-btn:hover:not(:disabled){box-shadow:0 0 32px var(--violet-glow-strong),inset 0 1px #ffffff26}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn:disabled{opacity:.45;cursor:not-allowed}.app-shell{display:flex;height:100%;overflow:hidden}.sidebar{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;background:var(--surface-1);border-right:1px solid var(--border);overflow:hidden;animation:slide-in-left .4s var(--ease) both}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:20px 18px 16px;border-bottom:1px solid var(--border)}.sidebar-logo-mark{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--violet) 0%,#6D28D9 100%);box-shadow:0 0 14px var(--violet-glow);display:flex;align-items:center;justify-content:center;font-family:Syne,sans-serif;font-weight:800;font-size:12px;color:#fff;flex-shrink:0}.sidebar-logo-text{font-family:Syne,sans-serif;font-weight:700;font-size:14px;color:var(--text-1);letter-spacing:-.02em}.sidebar-nav{flex:1;padding:12px 10px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-nav-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:8px 8px 4px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-2);font-size:13.5px;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;text-align:left;width:100%;transition:background .15s var(--ease),color .15s var(--ease);position:relative}.sidebar-item:hover{background:var(--surface-3);color:var(--text-1)}.sidebar-item--active{background:var(--violet-dim);color:var(--violet-light);border:1px solid var(--border-accent)}.sidebar-item--active svg{color:var(--violet-light)}.sidebar-item svg{flex-shrink:0;color:var(--text-3);transition:color .15s}.sidebar-item:hover svg{color:var(--text-2)}.sidebar-item--active:hover{background:var(--violet-dim);color:var(--violet-light)}.sidebar-item--active:hover svg{color:var(--violet-light)}.sidebar-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--surface-3);color:var(--text-3);font-size:11px;font-family:JetBrains Mono,monospace;font-weight:500;display:flex;align-items:center;justify-content:center}.sidebar-footer{padding:12px 10px;border-top:1px solid var(--border)}.sidebar-logout{display:flex;align-items:center;gap:10px;padding:9px 12px;width:100%;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-3);font-size:13px;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;transition:background .15s,color .15s;text-align:left}.sidebar-logout:hover{background:var(--red-dim);color:var(--red)}.app-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.topbar{height:var(--topbar-h);display:flex;align-items:center;padding:0 28px;border-bottom:1px solid var(--border);background:var(--surface-1);flex-shrink:0;gap:12px}.topbar-title{font-family:Syne,sans-serif;font-size:16px;font-weight:700;color:var(--text-1);letter-spacing:-.02em}.topbar-dot{width:6px;height:6px;border-radius:50%;background:var(--text-3);flex-shrink:0}.topbar-subtitle{font-size:13px;color:var(--text-3)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.content-area{flex:1;overflow-y:auto;padding:28px}.content-area::-webkit-scrollbar{width:6px}.content-area::-webkit-scrollbar-track{background:transparent}.content-area::-webkit-scrollbar-thumb{background:var(--surface-4);border-radius:3px}.view-enter{animation:fade-up .35s var(--ease) both}.card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.card--accent{border-color:var(--border-accent);background:linear-gradient(135deg,var(--surface-2) 0%,rgba(139,92,246,.04) 100%)}.card-header{padding:20px 24px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.card-title{font-family:Syne,sans-serif;font-size:15px;font-weight:700;color:var(--text-1)}.card-body{padding:24px}.stack{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.field-label{font-size:12px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em}.field-hint{font-size:12px;color:var(--text-3);margin-top:4px}.input-row{position:relative;display:flex;align-items:center}.input-row svg{position:absolute;left:14px;color:var(--text-3);pointer-events:none;flex-shrink:0}.input-row input{width:100%;padding:12px 14px 12px 42px;font-size:14px;font-family:JetBrains Mono,monospace;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-1);transition:border-color .18s var(--ease),box-shadow .18s var(--ease);outline:none}.input-row input::placeholder{color:var(--text-3)}.input-row input:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-dim)}.field input,.field select,.field textarea{width:100%;padding:11px 14px;font-size:14px;font-family:Inter,sans-serif;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-1);outline:none;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}.field input::placeholder,.field select::placeholder{color:var(--text-3)}.field input:focus,.field select:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-dim)}.field input[type=file]{padding:10px 14px;font-size:13px;color:var(--text-2);cursor:pointer}.field input[type=number]{font-family:JetBrains Mono,monospace}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;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='%2364748B' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.segmented{display:inline-flex;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:3px;gap:2px}.segmented button{border:none;background:transparent;padding:8px 18px;font-size:13.5px;font-weight:600;color:var(--text-2);border-radius:5px;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.segmented button:hover{color:var(--text-1)}.segmented button[aria-pressed=true]{background:var(--violet-dim);color:var(--violet-light);border:1px solid var(--border-accent)}.form-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px;flex-wrap:wrap}.form-error{margin-top:12px;padding:10px 14px;background:var(--red-dim);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);color:var(--red);font-size:13px;font-weight:500;animation:fade-in .2s ease}.btn{display:inline-flex;align-items:center;gap:7px;justify-content:center;font-family:Inter,sans-serif;font-size:13.5px;font-weight:600;border-radius:var(--radius-sm);padding:10px 20px;border:1px solid transparent;cursor:pointer;min-height:40px;transition:transform .13s var(--ease),background .15s var(--ease),box-shadow .15s var(--ease),border-color .15s var(--ease),opacity .15s;white-space:nowrap}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--violet);color:#fff;box-shadow:0 0 16px var(--violet-glow),inset 0 1px #ffffff1f;border-color:#8b5cf680}.btn-primary:hover:not(:disabled){background:#9d6bfa;box-shadow:0 0 24px var(--violet-glow-strong),inset 0 1px #ffffff1f}.btn-ghost{background:var(--surface-3);border-color:var(--border-strong);color:var(--text-2);box-shadow:var(--shadow-sm)}.btn-ghost:hover:not(:disabled){border-color:var(--border-accent);color:var(--text-1)}.btn-danger{background:var(--red-dim);border-color:#ef444440;color:var(--red)}.btn-danger:hover:not(:disabled){background:#ef444433}.btn-sm{padding:7px 14px;font-size:12.5px;min-height:34px}.btn-xs{padding:5px 10px;font-size:12px;min-height:28px}.icon-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-strong);background:var(--surface-3);color:var(--text-2);border-radius:var(--radius-sm);padding:6px 10px;font-size:12px;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.icon-btn:hover{border-color:var(--border-accent);color:var(--violet-light);background:var(--violet-dim)}.link-out{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:600;color:var(--violet-light);transition:color .15s}.link-out:hover{color:var(--text-1);text-decoration:none}.persona-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}@media (max-width: 860px){.persona-grid{grid-template-columns:repeat(3,1fr)}}.persona-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 8px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s var(--ease),background .15s,transform .15s var(--ease)}.persona-option:hover{border-color:var(--border-accent);transform:translateY(-2px)}.persona-option img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--border-strong);transition:border-color .15s}.persona-option span{font-size:11.5px;font-weight:600;color:var(--text-2);text-align:center;transition:color .15s}.persona-option--selected{border-color:var(--violet);background:var(--violet-dim);box-shadow:0 0 14px var(--violet-glow)}.persona-option--selected img{border-color:var(--violet)}.persona-option--selected span{color:var(--violet-light)}.persona-option--add{justify-content:center;border-style:dashed;min-height:88px;color:var(--text-3)}.persona-option--add:hover{color:var(--violet-light);transform:translateY(-2px)}.add-tile-icon{color:var(--text-3);transition:color .15s}.persona-option--add:hover .add-tile-icon{color:var(--violet-light)}.add-tile-label{font-size:11.5px;font-weight:600;color:var(--text-3);transition:color .15s}.persona-option--add:hover .add-tile-label{color:var(--violet-light)}.background-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}@media (max-width: 860px){.background-grid{grid-template-columns:repeat(3,1fr)}}.background-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;padding:6px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s var(--ease),background .15s,transform .15s var(--ease)}.background-option:hover{border-color:var(--border-accent);transform:translateY(-2px)}.background-option img{width:100%;aspect-ratio:2 / 3;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border)}.background-option span{font-size:11px;font-weight:600;color:var(--text-2);text-align:center;padding:0 2px}.background-option--selected{border-color:var(--violet);background:var(--violet-dim);box-shadow:0 0 14px var(--violet-glow)}.background-option--selected span{color:var(--violet-light)}.background-option--add{justify-content:center;min-height:100px;border-style:dashed;color:var(--text-3)}.background-option--add:hover{color:var(--violet-light);transform:translateY(-2px)}.option-delete{position:absolute;top:5px;right:5px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#000000b3;border:1px solid rgba(255,255,255,.1);color:var(--text-2);font-size:13px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s;z-index:5}.persona-option:hover .option-delete,.background-option:hover .option-delete{opacity:1}.option-delete:hover{background:var(--red);color:#fff;border-color:transparent}.tracker{margin-top:24px;padding-top:24px;border-top:1px solid var(--border)}.tracker-rail-wrap{position:relative;height:2px;background:var(--surface-4);border-radius:2px;margin:0 7px 20px;overflow:hidden}.tracker-rail-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--violet),var(--violet-light));border-radius:2px;box-shadow:0 0 8px var(--violet-glow);transition:width .5s var(--ease)}.tracker-beam{position:absolute;top:-1px;left:0;width:30%;height:4px;background:linear-gradient(90deg,transparent,rgba(167,139,250,.8),transparent);border-radius:2px;animation:flow-beam 1.8s ease-in-out infinite;pointer-events:none}.tracker-nodes{display:flex;justify-content:space-between;position:relative}.tracker-node{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.tracker-dot{width:14px;height:14px;border-radius:50%;background:var(--surface-2);border:2px solid var(--surface-4);z-index:1;transition:border-color .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease);flex-shrink:0}.tracker-node--done .tracker-dot{background:var(--violet);border-color:var(--violet);box-shadow:0 0 8px var(--violet-glow)}.tracker-node--active .tracker-dot{border-color:var(--violet);background:var(--surface-2);animation:pulse-ring 1.8s ease-in-out infinite}.tracker-node--complete .tracker-dot{background:var(--emerald);border-color:var(--emerald);box-shadow:0 0 10px var(--emerald-glow);animation:pulse-ring-emerald 2.2s ease-in-out infinite}.tracker-label{font-size:10.5px;font-weight:600;color:var(--text-3);text-align:center;white-space:nowrap;transition:color .25s}.tracker-node--done .tracker-label,.tracker-node--active .tracker-label,.tracker-node--complete .tracker-label{color:var(--text-2)}.tracker-result{margin-top:16px;font-size:13.5px}.confirm-card{margin-top:16px;padding:20px 22px;background:var(--amber-dim);border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:6px;animation:fade-up .3s var(--ease) both}.confirm-card--neutral{background:var(--surface-3);border-color:var(--border-strong)}.confirm-card--success{background:var(--emerald-dim);border-color:#10b98140}.confirm-title{font-size:13.5px;font-weight:600;color:var(--text-2)}.confirm-cost{font-family:Syne,sans-serif;font-size:28px;font-weight:700;color:var(--amber);letter-spacing:-.02em}.confirm-cost--emerald{color:var(--emerald)}.confirm-detail{font-size:13px;color:var(--text-2)}.error-card{margin-top:20px;padding:16px 20px;background:var(--red-dim);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);display:flex;gap:14px;align-items:flex-start;animation:fade-up .3s var(--ease) both}.error-card svg{color:var(--red);flex-shrink:0;margin-top:1px}.error-card-title{font-weight:700;font-size:13.5px;color:var(--red);margin-bottom:3px}.error-card-message{font-size:13px;color:var(--text-2)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.02em}.pill-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.pill--pending{background:var(--surface-4);color:var(--text-3);border:1px solid var(--border)}.pill--pending .pill-dot{background:var(--text-3)}.pill--progress{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(245,158,11,.2)}.pill--progress .pill-dot{background:var(--amber);animation:blink 1.2s ease infinite}.pill--completed{background:var(--emerald-dim);color:var(--emerald);border:1px solid rgba(16,185,129,.2)}.pill--completed .pill-dot{background:var(--emerald)}.pill--failed{background:var(--red-dim);color:var(--red);border:1px solid rgba(239,68,68,.2)}.pill--failed .pill-dot{background:var(--red)}.history-list{list-style:none;display:flex;flex-direction:column;gap:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.history-row{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);transition:background .15s;animation:fade-in .25s ease both}.history-row:last-child{border-bottom:none}.history-row:hover{background:var(--surface-3)}.history-url{flex:1;min-width:0;font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-date{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-3);flex-shrink:0}.history-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.history-empty{padding:48px 24px;text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--text-3);font-size:14px}.history-empty svg{color:var(--text-3);margin-bottom:12px;opacity:.5}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.settings-grid{grid-template-columns:1fr}}.drop-zone{position:relative;border:2px dashed var(--border-strong);border-radius:var(--radius-md);padding:32px 24px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--surface-3);overflow:hidden}.drop-zone:hover,.drop-zone--active{border-color:var(--violet);background:var(--violet-dim)}.drop-zone-icon{color:var(--text-3);margin-bottom:10px}.drop-zone-text{font-size:14px;color:var(--text-2);font-weight:500}.drop-zone-hint{font-size:12px;color:var(--text-3);margin-top:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#040408b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:20px;animation:fade-in .18s ease both}.modal-card{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);padding:28px;width:min(440px,100%);display:flex;flex-direction:column;gap:16px;animation:scale-in .25s var(--ease) both}.modal-title{font-family:Syne,sans-serif;font-size:18px;font-weight:700;color:var(--text-1);letter-spacing:-.02em}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:8px;border-top:1px solid var(--border)}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}@media (max-width: 700px){.stat-row{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;gap:4px}.stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3)}.stat-value{font-family:Syne,sans-serif;font-size:22px;font-weight:700;color:var(--text-1);letter-spacing:-.02em}.stat-sub{font-size:11.5px;color:var(--text-3)}.section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:10px}.divider{height:1px;background:var(--border);margin:20px 0}.mono{font-family:JetBrains Mono,monospace}@media (max-width: 720px){.sidebar{width:100%;height:60px;flex-direction:row;border-right:none;border-top:1px solid var(--border);order:2;padding:0;overflow:visible;animation:none;position:fixed;bottom:0;left:0;right:0;z-index:50}.app-shell{flex-direction:column}.app-main{padding-bottom:60px;order:1}.sidebar-logo,.sidebar-footer{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;padding:0;gap:0;align-items:center;width:100%;height:100%;overflow:visible}.sidebar-nav-label{display:none}.sidebar-item{flex-direction:column;gap:3px;padding:8px 12px;font-size:10px;border-radius:8px;flex:1;align-items:center;justify-content:center}.sidebar-badge{display:none}.content-area{padding:16px}.topbar{padding:0 16px}.persona-grid,.background-grid{grid-template-columns:repeat(3,1fr)}.stat-row{grid-template-columns:repeat(2,1fr)}}
