:root{--cw-emerald-50: #ECFDF5;--cw-emerald-100: #D1FAE5;--cw-emerald-200: #A7F3D0;--cw-emerald-300: #6EE7B7;--cw-emerald-400: #34D399;--cw-emerald-500: #10B981;--cw-emerald-600: #059669;--cw-emerald-700: #047857;--cw-emerald-800: #065F46;--cw-emerald-900: #064E3B;--cw-indigo-50: #EEF0FF;--cw-indigo-100: #DFE3FF;--cw-indigo-200: #C2C9FF;--cw-indigo-300: #9BA4FF;--cw-indigo-400: #7679FF;--cw-indigo-500: #5B5BF0;--cw-indigo-600: #4F46E5;--cw-indigo-700: #4338CA;--cw-indigo-800: #3730A3;--cw-indigo-900: #312E81;--cw-success: #047857;--cw-success-bg: #ECFDF5;--cw-warning: #B45309;--cw-warning-bg: #FFFBEB;--cw-error: #DC2626;--cw-error-bg: #FEF2F2;--cw-info: #1D4ED8;--ff-sans: "Plus Jakarta Sans", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ff-display: "Plus Jakarta Sans", "Inter", ui-sans-serif, system-ui, sans-serif;--ff-serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-16: 64px;--s-20: 80px;--t-fast: .1s ease;--t-base: .15s ease;--t-slow: .25s ease-out}:root,[data-theme=light]{--bg: #FAFAFA;--bg-elev: #FFFFFF;--bg-soft: #F4F4F5;--bg-sunken: #F0F0F2;--fg: #0A0A0F;--fg-strong: #000000;--fg-muted: #57575F;--fg-subtle: #8A8A92;--fg-on-brand: #FFFFFF;--border: #E5E5EA;--border-strong: #D4D4D8;--border-soft: #EFEFF2;--accent: var(--cw-emerald-700);--accent-hover: var(--cw-emerald-800);--accent-soft: var(--cw-emerald-50);--accent-soft-2: var(--cw-emerald-100);--accent-deep: #0891B2;--on-accent: #FFFFFF;--shadow-sm: 0 1px 2px rgba(15,15,25,.04), 0 1px 1px rgba(15,15,25,.03);--shadow-md: 0 4px 12px rgba(15,15,25,.06), 0 2px 4px rgba(15,15,25,.04);--shadow-lg: 0 16px 40px rgba(15,15,25,.08), 0 4px 12px rgba(15,15,25,.04);--shadow-pop: 0 24px 60px rgba(4,120,87,.12), 0 6px 18px rgba(15,15,25,.06)}[data-theme=dark]{--bg: #0B0B12;--bg-elev: #15151E;--bg-soft: #1A1A24;--bg-sunken: #07070C;--fg: #F4F4F7;--fg-strong: #FFFFFF;--fg-muted: #A0A0AD;--fg-subtle: #66667A;--fg-on-brand: #FFFFFF;--border: #25252F;--border-strong: #34344A;--border-soft: #1E1E28;--accent: #10B981;--accent-hover: #34D399;--accent-soft: rgba(16,185,129,.12);--accent-soft-2: rgba(16,185,129,.22);--accent-deep: #06B6D4;--on-accent: #0A0A0F;--shadow-sm: 0 1px 2px rgba(0,0,0,.4);--shadow-md: 0 4px 14px rgba(0,0,0,.5);--shadow-lg: 0 16px 40px rgba(0,0,0,.55), 0 4px 12px rgba(0,0,0,.35);--shadow-pop: 0 24px 60px rgba(0,0,0,.7), 0 6px 18px rgba(0,0,0,.5)}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--ff-sans);background:var(--bg-sunken);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01","ss03"}html,body,#root{height:100%}body{overflow-x:hidden}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}a{color:inherit;text-decoration:none}.cw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--r-lg);font-weight:600;font-size:14px;letter-spacing:-.01em;border:1px solid transparent;transition:var(--t-base);cursor:pointer;white-space:nowrap;text-decoration:none}.cw-btn:disabled{opacity:.5;cursor:not-allowed}.cw-btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 1px #ffffff26 inset,0 1px 2px #0f0f1914}.cw-btn-primary:hover{background:var(--accent-hover)}.cw-btn-secondary{background:var(--bg-elev);color:var(--fg);border-color:var(--border-strong)}.cw-btn-secondary:hover{background:var(--bg-soft)}.cw-btn-ghost{background:transparent;color:var(--fg)}.cw-btn-ghost:hover{background:var(--bg-soft)}.cw-btn-lg{height:48px;padding:0 22px;font-size:15px;border-radius:var(--r-lg)}.cw-btn-sm{height:32px;padding:0 12px;font-size:13px;border-radius:var(--r-md)}.cw-input{display:block;width:100%;height:44px;padding:0 14px;background:var(--bg-elev);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--r-lg);font-size:14px;transition:var(--t-base);outline:none}.cw-input::-moz-placeholder{color:var(--fg-subtle)}.cw-input::placeholder{color:var(--fg-subtle)}.cw-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}textarea.cw-input{height:auto;padding:12px 14px;line-height:1.5;resize:vertical}.cw-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-xl);padding:24px;min-width:0}.cw-tag{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:var(--r-pill);font-size:12px;font-weight:500;background:var(--bg-soft);color:var(--fg-muted);border:1px solid var(--border-soft)}.cw-tag-accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}.cw-tag-success{background:var(--cw-success-bg);color:var(--cw-success);border-color:transparent}.cw-divider{height:1px;background:var(--border);border:0}.cw-link{color:var(--accent);font-weight:500}.cw-link:hover{text-decoration:underline}::-moz-selection{background:var(--accent-soft-2);color:var(--fg-strong)}::selection{background:var(--accent-soft-2);color:var(--fg-strong)}.cw-scroll::-webkit-scrollbar{width:10px;height:10px}.cw-scroll::-webkit-scrollbar-track{background:transparent}.cw-scroll::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid var(--bg)}.cw-row{display:flex;align-items:center}.cw-col{display:flex;flex-direction:column}.cw-grow{flex:1}.cw-muted{color:var(--fg-muted)}.cw-subtle{color:var(--fg-subtle)}.cw-strong{color:var(--fg-strong)}.cw-mono{font-variant-numeric:tabular-nums}@keyframes cw-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cw-fade{animation:cw-fade-in var(--t-slow) both}@keyframes cw-cv-added{0%{opacity:0;transform:translateY(-10px);box-shadow:0 0 0 3px var(--accent-soft)}55%{opacity:1;transform:translateY(0);box-shadow:0 0 0 4px var(--accent-soft)}to{box-shadow:0 0 0 0 transparent}}.cw-cv-added{animation:cw-cv-added .9s ease-out both}.cw-toast-viewport{position:fixed;bottom:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px;align-items:flex-end;pointer-events:none;max-width:calc(100vw - 32px)}@keyframes cw-toast-in{0%{opacity:0;transform:translate(16px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}.cw-toast-in{animation:cw-toast-in var(--t-slow) both}@media (max-width: 560px){.cw-toast-viewport{left:16px;right:16px;bottom:16px;align-items:stretch}.cw-toast{width:100%!important}}@keyframes cw-pulse{0%,to{opacity:1}50%{opacity:.4}}.cw-pulse{animation:cw-pulse 1.8s ease-in-out infinite}@keyframes cw-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.cw-shimmer{background:linear-gradient(90deg,var(--bg-soft) 0%,var(--bg-sunken) 50%,var(--bg-soft) 100%);background-size:200% 100%;animation:cw-shimmer 1.6s ease-in-out infinite}@keyframes cw-ptr-spin{to{transform:rotate(360deg)}}.cw-ptr-spin{animation:cw-ptr-spin .7s linear infinite}@media (prefers-reduced-motion: reduce){.cw-pulse,.cw-shimmer{animation:none}.cw-shimmer{background:var(--bg-soft)}}.cv-thumb{position:relative;border-radius:var(--r-xl);overflow:hidden;cursor:pointer;border:1px solid var(--border);background:var(--bg);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s ease}.cv-thumb:hover{transform:translateY(-8px);border-color:var(--thumb-accent, var(--accent));box-shadow:0 36px 70px -18px var(--thumb-shadow, rgba(15,23,42,.28)),0 0 0 1px var(--thumb-accent, var(--accent))}.cv-thumb-page{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1)}.cv-thumb:hover .cv-thumb-page{transform:translateY(-5px)}.cv-thumb-stack{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:3px;background:#fff;transition:transform .4s cubic-bezier(.16,1,.3,1)}.cv-thumb:hover .cv-thumb-stack-1{transform:rotate(-5deg) translateY(2px)}.cv-thumb:hover .cv-thumb-stack-2{transform:rotate(4deg) translateY(4px)}.cv-thumb-arrow{transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s ease,color .3s ease}.cv-thumb:hover .cv-thumb-arrow{transform:translate(3px,-3px);background:var(--thumb-accent, var(--accent));color:#fff}.cw-ai-text{background:linear-gradient(90deg,var(--accent) 0%,var(--accent-deep) 50%,var(--accent) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:cw-shimmer 4s linear infinite}.cw-wordmark{font-family:Plus Jakarta Sans,Inter,ui-sans-serif,system-ui,sans-serif;font-weight:700;letter-spacing:-.035em;color:var(--fg-strong)}.cw-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--fg-subtle)}.pf-avatar-edit{position:absolute;right:-3px;bottom:-3px;width:30px;height:30px;padding:0;border-radius:50%;background:var(--accent);color:var(--on-accent);border:3px solid var(--bg-elev);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-md);transition:transform var(--t-base),background var(--t-base)}.pf-avatar-edit:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.08)}.pf-avatar-edit:active:not(:disabled){transform:scale(.94)}.pf-avatar-edit:focus-visible{outline:none;box-shadow:0 0 0 4px var(--accent-soft)}.pf-avatar-edit:disabled{cursor:default}.pf-photo{position:relative;padding:0;overflow:hidden;cursor:pointer;border:1px solid var(--border);border-radius:14px;background:var(--bg-sunken);aspect-ratio:1 / 1;transition:transform var(--t-slow),box-shadow var(--t-slow),border-color var(--t-slow)}.pf-photo:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:var(--shadow-md)}.pf-photo:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pf-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform var(--t-slow)}.pf-photo:hover img{transform:scale(1.06)}.pf-photo-tag{position:absolute;left:6px;bottom:6px;padding:2px 7px;border-radius:999px;background:#0f172a9e;color:#fff;font-size:10.5px;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pf-photo-zoom{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:8px;background:#0f172a8c;color:#fff;display:grid;place-items:center;opacity:0;transition:opacity var(--t-base);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pf-photo:hover .pf-photo-zoom,.pf-photo:focus-visible .pf-photo-zoom{opacity:1}.pf-add-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;aspect-ratio:1 / 1;padding:8px;cursor:pointer;text-align:center;border:1.5px dashed var(--border-strong);border-radius:14px;background:var(--bg-soft);color:var(--fg-muted);font-size:12px;font-weight:600;line-height:1.3;transition:border-color var(--t-base),background var(--t-base),color var(--t-base),transform var(--t-base)}.pf-add-tile:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-2px)}.pf-add-tile:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pf-add-tile:disabled{opacity:.6;cursor:default}.pf-add-empty{display:flex;align-items:center;gap:14px;width:100%;text-align:left;cursor:pointer;margin-top:16px;padding:16px 18px;border-radius:16px;border:1.5px dashed var(--border-strong);background:var(--bg-soft);color:var(--fg);transition:border-color var(--t-base),background var(--t-base),transform var(--t-base)}.pf-add-empty:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.pf-add-empty:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pf-add-empty:disabled{opacity:.6;cursor:default}.pf-add-empty-icon{width:46px;height:46px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;background:var(--bg-elev);color:var(--accent);border:1px solid var(--border)}.pf-add-empty .pf-t{font-size:14.5px;font-weight:650;color:var(--fg-strong)}.pf-add-empty .pf-s{margin-top:2px;font-size:12.5px;color:var(--fg-muted);line-height:1.45}
