:root{--ink: #12100d;--ink-2: #1a1713;--panel: #211d18;--panel-2: #2a251e;--line: rgba(232, 220, 196, .1);--cream: #efe6d6;--muted: #9c917f;--copper: #e07a3a;--copper-2: #f0a46a;--moss: #8fbf6a;--blood: #d45c4a;--shadow: 0 18px 40px rgba(0, 0, 0, .28);--font: "Bricolage Grotesque", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--radius: 14px}*{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-font-smoothing:antialiased}body{margin:0;font-family:var(--font);background:radial-gradient(1200px 600px at 10% -10%,rgba(224,122,58,.08),transparent 50%),linear-gradient(180deg,#16130f 0%,var(--ink) 40%);color:var(--cream)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M80 0H0V80' fill='none' stroke='%23efe6d6' stroke-opacity='0.03'/%3E%3C/svg%3E");z-index:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;color:inherit}h1,h2,h3{text-wrap:balance;margin:0;font-weight:600}p{text-wrap:pretty}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;position:relative;z-index:1}.side{position:sticky;top:0;height:100dvh;padding:22px 16px;border-right:1px solid var(--line);background:#12100db8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;gap:22px;overflow:hidden}.side .nav{flex:1;min-height:0;overflow-y:auto;padding-right:2px}.side .project-switcher,.side .side-footer{position:relative;z-index:2;flex-shrink:0}.brand{display:flex;align-items:baseline;gap:10px;padding:2px 10px 4px}.brand strong{font-size:28px;letter-spacing:-.05em;line-height:1}.brand span{font-family:var(--mono);font-size:11px;color:var(--copper)}.project-switcher{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;background:var(--panel);box-shadow:0 1px #ffffff0a inset}.project-switcher-label{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.project-select{width:100%}.project-meta{font-size:11px;padding:0 2px}.project-new{width:100%;justify-content:center}.project-create{gap:8px}.nav{display:flex;flex-direction:column;gap:2px}.nav-label{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:14px 10px 6px}.nav a,.nav-more-toggle{padding:8px 10px;border-radius:10px;color:var(--muted);transition:background-color .16s cubic-bezier(.2,0,0,1),color .16s cubic-bezier(.2,0,0,1)}.nav a:hover,.nav a.active,.nav-more-toggle:hover,.nav-more-toggle.active{background:var(--panel-2);color:var(--cream)}.nav-more-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:transparent;cursor:pointer;text-align:left;margin-top:8px;font:inherit}.nav-more-chevron{width:10px;height:6px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239c917f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;transition:transform .16s cubic-bezier(.2,0,0,1)}.nav-more-toggle.open .nav-more-chevron{transform:rotate(180deg)}.nav-more{display:flex;flex-direction:column;gap:2px;padding-left:6px;margin-left:4px;border-left:1px solid var(--line);animation:select-in .14s cubic-bezier(.2,0,0,1)}.main{padding:28px 32px 60px;min-width:0}.page-hub .hub-stats,.page-hub .hub-next{margin-bottom:16px}.page-list .table-card{padding:0;overflow:hidden}.page-analyze .analyze-canvas{min-height:320px}.page-analyze .analyze-toolbar{align-items:stretch}.page-analyze .insight-kind{width:160px}.page-analyze .insight-name{min-width:160px;flex:1}.page-analyze .analyze-chart{padding:8px 4px 4px;border-radius:12px;background:#00000029}.topbar{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px}.topbar-list h1{font-size:28px}.topbar-analyze h1{font-size:30px}.topbar h1{font-size:32px;letter-spacing:-.04em}.page-toolbar{justify-content:flex-end}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card+.card{margin-top:0}.stat{display:flex;flex-direction:column;gap:6px}.stat b{font-size:28px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:12px}.btn,.field,select,textarea{border:1px solid var(--line);background:var(--ink-2);border-radius:10px}.btn{padding:8px 14px;cursor:pointer;min-height:40px;transition:transform .12s cubic-bezier(.2,0,0,1),background-color .16s cubic-bezier(.2,0,0,1)}.btn:hover{background:var(--panel-2)}.btn:active{transform:scale(.96)}.btn.primary{background:var(--copper);color:#1a120c;border-color:transparent;font-weight:600}.btn.ghost{background:transparent}.field,select,textarea{padding:9px 12px;min-height:40px;outline:none}select.field,select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239c917f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}select option{background:var(--panel-2);color:var(--cream)}textarea{min-height:140px;resize:vertical;width:100%}.field:focus,select:focus,textarea:focus{border-color:#e07a3a99}.select{position:relative;min-width:0}.project-select,.lang-switch .select,.auth-card .select{width:100%}.select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;text-align:left;outline:none;transition:border-color .16s cubic-bezier(.2,0,0,1),background-color .16s cubic-bezier(.2,0,0,1)}.select-trigger:hover{background:var(--panel-2)}.select-trigger:focus-visible,.select.open .select-trigger{border-color:#e07a3a99}.select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-chevron{width:12px;height:8px;flex:0 0 auto;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239c917f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;transition:transform .16s cubic-bezier(.2,0,0,1)}.select.open .select-chevron{transform:rotate(180deg)}.select-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;margin:0;padding:6px;list-style:none;border-radius:12px;background:var(--panel-2);border:1px solid var(--line);box-shadow:var(--shadow);max-height:240px;overflow-y:auto;animation:select-in .14s cubic-bezier(.2,0,0,1)}.select.drop-up .select-menu{top:auto;bottom:calc(100% + 6px);animation-name:select-in-up}.select-option{width:100%;display:block;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background-color .14s cubic-bezier(.2,0,0,1)}.select-option:hover{background:#efe6d60f}.select-option.active{background:#e07a3a29;color:var(--copper-2)}@keyframes select-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes select-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;letter-spacing:.04em}th,td{padding:10px 8px;border-bottom:1px solid var(--line)}tr:hover td{background:#ffffff05}.pill{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#e07a3a24;color:var(--copper-2);font-size:12px;font-family:var(--mono);white-space:nowrap}.pill-danger{background:#d45c4a29;color:#f0a39a}.errors-table .error-row{cursor:pointer}.errors-table .error-row.open td{background:#ffffff08}.errors-table .error-main{min-width:0}.errors-table .error-title-row{display:flex;align-items:baseline;gap:10px;min-width:0}.errors-table .error-message{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.errors-table .error-meta{margin-top:4px;font-size:12px}.errors-table .error-metric{width:1%;white-space:nowrap;vertical-align:middle}.errors-table .error-metric-value{display:block;font-size:16px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.errors-table .error-metric-label{display:block;font-size:11px;text-transform:lowercase}.errors-table .error-chevron{width:28px;vertical-align:middle}.errors-table .error-row .select-chevron{display:block;margin-left:auto;transition:transform .16s cubic-bezier(.2,0,0,1)}.errors-table .error-row.open .select-chevron{transform:rotate(180deg)}.errors-table .error-detail-row td{padding:0 12px 14px;border-bottom:1px solid var(--line);background:#0000002e}.errors-table .error-detail-head{justify-content:space-between;margin-bottom:8px}.errors-table .error-stack{margin:0;padding:12px 14px;border-radius:10px;background:var(--ink-2);border:1px solid var(--line);color:var(--cream);font-family:var(--mono);font-size:12px;line-height:1.45;white-space:pre-wrap;overflow:auto;max-height:280px}.auth{min-height:100vh;display:grid;place-items:center;position:relative;z-index:1}.auth-card{width:min(420px,calc(100% - 32px));background:var(--panel);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.chart{width:100%;height:220px}.empty{padding:40px 12px;color:var(--muted);text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:36px 20px 40px;text-align:center}.empty-state-copy{display:flex;flex-direction:column;gap:6px;max-width:420px}.empty-state-copy strong{font-size:18px;letter-spacing:-.03em}.empty-state-copy p{margin:0}.empty-state-actions{justify-content:center}.empty-sketch{width:min(280px,100%);padding:16px;border-radius:14px;background:#00000038;border:1px solid var(--line);color:#e07a3abf}.empty-sketch-events,.empty-sketch-pulse{display:flex;flex-direction:column;gap:8px}.sketch-row{height:10px;border-radius:999px;background:#efe6d61f}.sketch-row.short{width:55%}.sketch-row.mid{width:72%}.sketch-chart{width:100%;height:64px;display:block}.sketch-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:4px}.sketch-kpis span{height:28px;border-radius:8px;background:#e07a3a24}.table-scroll{overflow:auto;max-height:min(70vh,720px)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead th{position:sticky;top:0;z-index:1;background:var(--panel);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.data-table th,.data-table td{padding:10px 12px;border-bottom:1px solid var(--line)}.data-table th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;letter-spacing:.04em}.data-table tbody tr{transition:background-color .14s cubic-bezier(.2,0,0,1)}.data-table tbody tr:hover td{background:#ffffff08}.data-table tbody tr.click-row{cursor:pointer}.data-table tbody tr.click-row:focus-visible{outline:none}.data-table tbody tr.click-row:focus-visible td{background:#e07a3a1a}.truncate{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-onboarding .empty-state{padding-bottom:8px}.danger{color:var(--blood)}.ok{color:var(--moss)}.danger-btn{color:var(--blood)}.danger-btn:hover{background:#d45c4a1f}.btn.danger-solid{background:var(--blood);color:#1a120c;border-color:transparent;font-weight:600}.btn.danger-solid:hover{filter:brightness(1.05)}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:#0a08069e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:select-in .14s cubic-bezier(.2,0,0,1)}.confirm-dialog{width:min(420px,100%);display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow)}.confirm-dialog h3{font-size:20px;letter-spacing:-.03em}.confirm-dialog p{margin:0}.confirm-actions{justify-content:flex-end;margin-top:8px}.replay-page{display:flex;flex-direction:column;min-height:0;gap:12px}.player-shell{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:#12100c;outline:1px solid var(--line);height:min(74vh,calc(100vh - 150px));min-height:380px}.player-shell.hidden{display:none}.player{flex:1 1 auto;min-height:0;width:100%;position:relative;overflow:hidden;background:#0f0d0b}.player .replayer-wrapper{position:absolute;top:0;left:0}.player iframe{border:0;background:#fff}.player-chrome{position:relative;flex:0 0 auto;z-index:5;padding:8px 10px;background:var(--panel);border-top:1px solid var(--line);isolation:isolate}.player-chrome.dim{opacity:.5}.player-chrome.dim .player-icon-btn,.player-chrome.dim .player-scrub{pointer-events:none}.player-bar{display:flex;align-items:center;gap:8px}.player-icon-btn{position:relative;z-index:2;flex:0 0 auto;width:32px;height:32px;border:0;border-radius:8px;display:inline-grid;place-items:center;background:transparent;color:var(--cream);cursor:pointer;transition-property:background,color,transform;transition-duration:.14s;transition-timing-function:cubic-bezier(.2,0,0,1)}.player-icon-btn:hover:not(:disabled){background:#ffffff0f;color:var(--copper-2)}.player-icon-btn:active:not(:disabled){transform:scale(.96)}.player-icon-btn:disabled{opacity:.4;cursor:not-allowed}.player-icon-btn svg{display:block;pointer-events:none}.player-scrub{position:relative;z-index:1;flex:1;min-width:0;height:32px;display:flex;align-items:center;cursor:pointer;touch-action:none}.player-scrub-track{position:relative;width:100%;height:3px;border-radius:999px;background:#efe6d61f}.player-scrub-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--copper);transition-property:width;transition-duration:80ms;transition-timing-function:linear;pointer-events:none}.player-scrub.scrubbing .player-scrub-fill{transition-duration:0ms}.player-scrub:focus-visible{outline:none}.player-scrub:focus-visible .player-scrub-track{outline:1px solid rgba(224,122,58,.45);outline-offset:3px}.player-time{position:relative;z-index:2;flex:0 0 auto;display:inline-flex;align-items:baseline;gap:4px;min-width:4.8rem;justify-content:flex-end;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.player-time-sep{opacity:.55}.logout-btn{width:100%;justify-content:center}.side-footer{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding-top:12px}.lang-switch{display:flex;flex-direction:column;gap:6px;font-size:12px}.lang-switch .field{width:100%}.toast-host{position:fixed;right:20px;bottom:20px;z-index:50;display:flex;flex-direction:column;gap:8px;max-width:min(360px,calc(100vw - 32px))}.toast{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--panel-2);box-shadow:var(--shadow);border:1px solid var(--line);font-size:14px}.toast-success{border-color:#8fbf6a59}.toast-error{border-color:#d45c4a73;color:var(--blood)}.toast-link{color:var(--copper-2);font-family:var(--mono);font-size:12px;white-space:nowrap}.toast-dismiss{margin-left:auto;background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:18px;line-height:1;padding:0 2px}.loading-block{display:flex;flex-direction:column;align-items:center;gap:10px}.loading-stats,.loading-table{align-items:stretch}.skeleton-line{width:min(240px,70%);height:10px;border-radius:99px;background:linear-gradient(90deg,var(--ink-2),var(--panel-2),var(--ink-2));background-size:200% 100%;animation:shimmer 1.2s linear infinite}.skeleton-line.short{width:min(140px,40%)}.skeleton-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%}.skeleton-card{height:88px;border-radius:14px;background:linear-gradient(90deg,var(--ink-2),var(--panel-2),var(--ink-2));background-size:200% 100%;animation:shimmer 1.2s linear infinite}.skeleton-table{display:flex;flex-direction:column;gap:12px;width:100%;padding:16px}.skeleton-table .skeleton-line{width:100%}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.checklist{gap:14px}.checklist-item{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:start;padding:12px;border-radius:12px;background:var(--ink-2);border:1px solid var(--line)}.checklist-item.done{border-color:#8fbf6a59}.check-mark{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:var(--panel-2);color:var(--muted);font-family:var(--mono);font-size:12px}.checklist-item.done .check-mark{background:#8fbf6a33;color:var(--moss)}.tile-chart{min-height:160px}.tile-chart .chart{height:160px}@media(max-width:960px){.shell{grid-template-columns:1fr}.side{flex-direction:row;overflow:auto}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
