:root{--surface-0:#f5f5f7;--surface-1:#ffffffc7;--surface-1-solid:#fff;--surface-2:#f2f2f7b8;--surface-2-solid:#f2f2f7;--surface-3:#e5e5eabf;--surface-3-solid:#e5e5ea;--text-primary:#1d1d1f;--text-secondary:#515154;--text-tertiary:#86868b;--text-inverse:#fff;--accent:#0071e3;--accent-hover:#0077ed;--accent-gradient:linear-gradient(135deg, #0071e3, #00c7be);--accent-glow:#0071e30f;--accent-surface:#0071e30d;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 2px 8px #0000000a, 0 4px 16px #00000005;--shadow-md:0 4px 12px #0000000a, 0 12px 32px #0000000f;--shadow-lg:0 8px 24px #0000000a, 0 24px 64px #00000014;--shadow-xl:0 12px 32px #0000000d, 0 32px 96px #0000001f;--positive:#34c759;--positive-surface:#34c75914;--positive-text:#248a3d;--negative:#ff3b30;--negative-surface:#ff3b3014;--negative-text:#d70015;--warning:#ff9500;--warning-surface:#ff950014;--info:#5856d6;--info-surface:#5856d614;--border:#0000000f;--border-hover:#0000001f;--border-focus:#0071e366;--overlay:#fff6;--header-bg:#ffffffbf;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:980px;--header-height:60px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"SF Mono", SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace;--ease-out:cubic-bezier(.25, 1, .5, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark]{--surface-0:#000;--surface-1:#1c1c1eb8;--surface-1-solid:#1c1c1e;--surface-2:#2c2c2ea6;--surface-2-solid:#2c2c2e;--surface-3:#3a3a3cb3;--surface-3-solid:#3a3a3c;--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#6e6e73;--text-inverse:#1d1d1f;--accent-glow:#0071e326;--accent-surface:#0071e31a;--positive-text:#30d158;--negative-text:#ff453a;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 2px 8px #0003, 0 4px 16px #00000026;--shadow-md:0 4px 12px #00000040, 0 12px 32px #0000004d;--shadow-lg:0 8px 24px #0000004d, 0 24px 64px #0006;--shadow-xl:0 12px 32px #00000059, 0 32px 96px #00000080;--border:#ffffff14;--border-hover:#ffffff26;--border-focus:#0071e380;--overlay:#0009;--header-bg:#141414b8}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body{background:var(--surface-0);background-image:radial-gradient(var(--border) 1px, transparent 1px), radial-gradient(at 0% 0%, var(--accent-glow) 0, transparent 40%), radial-gradient(at 100% 100%, #34c7590a 0, transparent 45%);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:28px 28px,100% 100%,100% 100%;background-attachment:scroll,fixed,fixed;min-height:100vh;font-weight:400;transition:background-color .35s,color .35s;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--text-primary);font-weight:600;line-height:1.2}h1{letter-spacing:-.025em;font-size:2rem;font-weight:700}h2{letter-spacing:-.02em;font-size:1.5rem}h3{font-size:1.15rem;font-weight:600}p{color:var(--text-secondary);font-weight:400;line-height:1.6}a{color:var(--accent);text-decoration:none}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent)}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.text-warning{color:var(--warning)}.app-shell{flex-direction:column;width:100%;min-height:100vh;display:flex}.main-content{width:100%;max-width:1440px;margin:0 auto;margin-top:var(--header-height);animation:pageEnter .5s var(--ease-out) both;flex-direction:column;flex:1;gap:28px;padding:32px 48px 60px;display:flex}@media (max-width:1024px){.main-content{padding:24px 24px 48px}}@media (max-width:768px){.main-content{gap:20px;padding:20px 16px 48px}}.card{background:var(--surface-1);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .3s var(--ease-out);padding:24px;position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover);transform:translateY(-2px)}.card-static{background:var(--surface-1);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.card-glass{background:var(--surface-1);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:28px 32px;position:relative;overflow:hidden}.card-glass:after{content:"";background:var(--accent-gradient);height:3px;position:absolute;top:0;left:0;right:0}.card-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:.72rem;font-weight:600;display:flex}.card-heading{color:var(--text-primary);margin-bottom:4px;font-size:1.1rem;font-weight:600}.btn{font-family:var(--font-sans);border-radius:var(--radius-pill);cursor:pointer;transition:all .2s var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:500;display:inline-flex}.btn:active{transform:scale(.97)}.btn:focus-visible{box-shadow:0 0 0 3px var(--border-focus)}.btn-primary{background:var(--text-primary);color:var(--text-inverse)}.btn-primary:hover{opacity:.85}.btn-secondary{background:var(--surface-2);color:var(--text-primary);border-color:var(--border)}.btn-secondary:hover{background:var(--surface-3);border-color:var(--border-hover)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-hover);box-shadow:0 4px 12px #0071e340}.btn-danger{background:var(--negative-surface);color:var(--negative);border-color:#ff3b301f}.btn-danger:hover{background:var(--negative);color:#fff}.btn-ghost{color:var(--text-secondary);background:0 0;padding:8px 12px}.btn-ghost:hover{color:var(--text-primary);background:var(--surface-2)}.btn-icon{background:var(--surface-2);width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border);border-radius:50%;padding:0}.btn-icon:hover{background:var(--surface-3);color:var(--text-primary)}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);letter-spacing:.01em;font-size:.8rem;font-weight:500}.form-input{font-family:var(--font-sans);color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);outline:none;width:100%;padding:10px 14px;font-size:.9rem;transition:all .2s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .form-input{background:var(--surface-2)}select.form-input{cursor:pointer;appearance:none}.segmented-control{background:var(--surface-2);border-radius:var(--radius-md);gap:2px;padding:3px;display:inline-flex}.segmented-btn{font-family:var(--font-sans);color:var(--text-secondary);border-radius:calc(var(--radius-md) - 2px);cursor:pointer;transition:all .2s var(--ease-out);white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-size:.8rem;font-weight:500}.segmented-btn:hover{color:var(--text-primary)}.segmented-btn.active{background:var(--surface-1);color:var(--text-primary);box-shadow:var(--shadow-xs);font-weight:600}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}@media (max-width:1200px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.metrics-grid{grid-template-columns:1fr}}.metric-value{font-family:var(--font-sans);letter-spacing:-.025em;color:var(--text-primary);margin:8px 0 6px;font-size:2rem;font-weight:700;line-height:1.1}.metric-value.positive{color:var(--positive)}.metric-value.negative{color:var(--negative)}.metric-sub{color:var(--text-tertiary);font-size:.78rem;font-weight:400}.metric-sub.positive{color:var(--positive)}.metric-sub.negative{color:var(--negative)}.table-wrap{border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;overflow-x:auto}.table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.table th{background:var(--surface-2);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);white-space:nowrap;z-index:1;padding:12px 16px;font-size:.75rem;font-weight:500;position:sticky;top:0}.table td{border-bottom:1px solid var(--border);color:var(--text-primary);background:var(--surface-1);vertical-align:middle;padding:14px 16px;transition:background .15s}.table tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--accent-surface)}.badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em;align-items:center;padding:3px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.badge-win{background:var(--positive-surface);color:var(--positive)}.badge-loss{background:var(--negative-surface);color:var(--negative)}.badge-be{background:var(--warning-surface);color:var(--warning)}.badge-buy{background:var(--accent-surface);color:var(--accent)}.badge-sell{background:var(--info-surface);color:var(--info)}.modal-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(24px);z-index:1000;justify-content:center;align-items:center;padding:24px;animation:.25s both overlayFadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface-1-solid);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:640px;max-height:90vh;box-shadow:var(--shadow-xl);animation:modalSlideUp .4s var(--ease-out) both;padding:32px;position:relative;overflow-y:auto}.heatmap-grid{grid-template-columns:repeat(6,1fr);gap:8px;margin-top:12px;display:grid}.heatmap-cell{cursor:default;font-size:.72rem;font-family:var(--font-mono);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:52px;padding:10px 6px;transition:all .2s;display:flex}.heatmap-cell:hover{box-shadow:var(--shadow-sm);z-index:10;transform:scale(1.06)}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-day-header{color:var(--text-tertiary);text-align:center;padding:6px 0;font-size:.7rem;font-weight:500}.calendar-day-cell{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);flex-direction:column;justify-content:space-between;padding:5px;font-size:.7rem;font-weight:500;transition:transform .2s;display:flex}.calendar-day-cell:hover{box-shadow:var(--shadow-sm);z-index:2;transform:scale(1.08)}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-spin{animation:1s linear infinite spin}.stagger-enter>*{animation:fadeInUp .4s var(--ease-out) both}.stagger-enter>:first-child{animation-delay:0s}.stagger-enter>:nth-child(2){animation-delay:60ms}.stagger-enter>:nth-child(3){animation-delay:.12s}.stagger-enter>:nth-child(4){animation-delay:.18s}.stagger-enter>:nth-child(5){animation-delay:.24s}.stagger-enter>:nth-child(6){animation-delay:.3s}.stagger-enter>:nth-child(7){animation-delay:.36s}.stagger-enter>:nth-child(8){animation-delay:.42s}.font-mono{font-family:var(--font-mono);font-weight:500}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.page-header h1{font-size:1.75rem}.page-header p{margin-top:2px;font-size:.9rem}.page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.empty-state{text-align:center;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-state p{color:var(--text-tertiary);font-size:.9rem}.progress-track{background:var(--surface-3);border-radius:99px;height:8px;position:relative;overflow:hidden}.progress-fill{height:100%;transition:width .8s var(--ease-out);border-radius:99px;position:relative}.progress-fill.glow{box-shadow:0 0 10px}.progress-fill.accent{background:var(--accent-gradient)}.progress-fill.positive{background:var(--positive)}.progress-fill.negative{background:var(--negative)}.progress-fill.warning{background:var(--warning)}.progress-fill.shimmer:after{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000) 0 0/200% 100%;animation:2s infinite shimmer;position:absolute;inset:0}.pulse-dot{background:var(--positive);border-radius:50%;width:8px;height:8px;position:relative}.pulse-dot:after{content:"";border:2px solid var(--positive);animation:pulse-ring 1.5s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-3px}@keyframes pulse-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.stat-tile{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:2px;padding:14px 16px;display:flex}.stat-tile-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:500}.stat-tile-value{color:var(--text-primary);letter-spacing:-.01em;font-size:1.1rem;font-weight:700}.wp-editor-table,.wp-table{border-collapse:collapse;border-radius:var(--radius-md);border:1px solid var(--border);width:100%;margin:20px 0;font-size:.92rem;overflow:hidden}.wp-editor-table th,.wp-table th{background:var(--surface-2-solid);color:var(--text-primary);text-align:left;border-bottom:2px solid var(--border);border-right:1px solid var(--border);padding:12px 16px;font-weight:600}.wp-editor-table td,.wp-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--text-secondary);background:var(--surface-1-solid);padding:12px 16px}.wp-editor-table th:last-child,.wp-editor-table td:last-child,.wp-table th:last-child,.wp-table td:last-child{border-right:none}.wp-editor-table tr:last-child td,.wp-table tr:last-child td{border-bottom:none}.workspace-textbox table{border:1px dashed var(--border-hover);border-collapse:collapse;width:100%;margin:20px 0}.workspace-textbox td,.workspace-textbox th{border:1px dashed var(--border);min-width:50px;padding:10px 14px}.workspace-textbox td:focus,.workspace-textbox th:focus{outline:2px solid var(--border-focus);background:var(--accent-surface)}.workspace-textbox p,.preview-content-rendered .wp-p{margin-bottom:14px;line-height:1.7}.workspace-textbox ul,.workspace-textbox ol,.preview-content-rendered .wp-ul{margin-bottom:16px;margin-left:24px}.workspace-textbox li,.preview-content-rendered li{margin-bottom:6px;line-height:1.6}.workspace-textbox blockquote,.preview-content-rendered blockquote{border-left:4px solid var(--border-focus);color:var(--text-secondary);margin:16px 0;padding-left:16px;font-style:italic}
