:root{--bg-primary: #f0f4ff;--bg-secondary: #fff;--bg-card: #fff;--bg-table-header: #f8faff;--bg-row-hover: #eef2ff;--border-color: #dde3f0;--text-primary: #1e2540;--text-secondary: #4a5578;--text-muted: #8896b3;--accent: #6366f1;--accent-hover: #4f46e5;--green: #059669;--red: #dc2626;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text-primary);background:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box;margin:0;padding:0}body{min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}.navbar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 55%,#a855f7);box-shadow:0 2px 16px #6366f140;display:flex;height:60px;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:100}.navbar-brand{align-items:center;display:flex;gap:10px}.navbar-logo{font-size:1.3rem}.navbar-title{color:#fff;font-size:1rem;font-weight:700}.navbar-links{display:flex}.navbar-link{border-radius:6px;color:#ffffffd1;font-size:.84rem;font-weight:600;padding:8px 18px;text-decoration:none}.navbar-link:hover{background:rgba(255,255,255,.15);color:#fff}.navbar-link.active{background:#fff;color:var(--accent)}.app-container{margin:0 auto;max-width:1440px;padding:28px 32px}.app-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.app-header h1{font-size:1.75rem;letter-spacing:-.02em}.app-header h1 span{color:var(--accent)}.header-meta{color:var(--text-muted);font-size:.8rem;margin-top:4px}.refresh-btn,.jrnl-btn-primary{background:var(--accent);border:0;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 20px}.refresh-btn:hover,.jrnl-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.info-banner{align-items:center;border:1px solid;border-radius:10px;display:flex;gap:12px;margin-bottom:20px;padding:12px 16px}.retry-inline-btn{background:transparent;border:0;color:inherit;cursor:pointer;font-weight:700;text-decoration:underline}.loading-container,.jrnl-loading{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:12px;padding:48px}.loading-spinner{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent);height:30px;width:30px}.loading-text{color:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.jrnl-stats-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-bottom:24px}.jrnl-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:16px 18px}.jrnl-stat-label{color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.jrnl-stat-value{font-size:1.25rem;font-weight:700}.jrnl-stat-sub{color:var(--text-muted);font-size:.72rem}.jrnl-stat-green{border-color:#10b9814d}.jrnl-stat-green .jrnl-stat-value,.jrnl-profit-pos{color:var(--green);font-weight:600}.jrnl-stat-red{border-color:#ef44444d}.jrnl-stat-red .jrnl-stat-value,.jrnl-profit-neg{color:var(--red);font-weight:600}.jrnl-stat-blue{border-color:#6366f14d}.jrnl-stat-blue .jrnl-stat-value{color:var(--accent)}.jrnl-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;overflow:hidden}.jrnl-toolbar{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}.jrnl-search{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);flex:1;font-size:.875rem;min-width:220px;padding:8px 14px}.jrnl-search:focus{border-color:var(--accent);outline:0}.jrnl-count,.jrnl-page-info{color:var(--text-muted);font-size:.8rem}.jrnl-table-scroll{overflow-x:auto}.jrnl-table{border-collapse:collapse;font-size:.875rem;width:100%}.jrnl-table thead tr{background:var(--bg-table-header)}.jrnl-table th{border-bottom:1px solid var(--border-color);color:var(--text-muted);font-size:.72rem;letter-spacing:.05em;padding:12px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.jrnl-table td{border-bottom:1px solid var(--border-color);padding:12px 14px;white-space:nowrap}.jrnl-row{cursor:pointer}.jrnl-row:hover{background:var(--bg-row-hover)}.jrnl-row-win{background:rgba(16,185,129,.06)}.jrnl-row-loss{background:rgba(239,68,68,.06)}.jrnl-type-badge{border-radius:999px;display:inline-block;font-size:.72rem;font-weight:700;padding:3px 9px}.jrnl-type-ce{background:rgba(59,130,246,.14);color:#2563eb}.jrnl-type-pe{background:rgba(245,158,11,.16);color:#b45309}.jrnl-empty{color:var(--text-muted);padding:48px 24px;text-align:center}.jrnl-pagination{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:14px;justify-content:center;padding:14px}.jrnl-page-btn,.jrnl-btn-ghost,.jrnl-btn-danger{background:transparent;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:600;padding:9px 17px}.jrnl-page-btn:hover:not(:disabled),.jrnl-btn-ghost:hover:not(:disabled){background:var(--bg-row-hover);color:var(--text-primary)}button:disabled{cursor:not-allowed;opacity:.45}.jrnl-btn-danger{background:rgba(239,68,68,.1);border-color:#ef44444d;color:var(--red)}.jrnl-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(15,23,42,.62);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:16px;position:fixed;z-index:999}.jrnl-modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 24px 60px #0000004d;max-height:90vh;max-width:760px;overflow-y:auto;width:100%}.jrnl-modal-header{align-items:center;display:flex;justify-content:space-between;padding:20px 24px 0}.jrnl-modal-header h2{font-size:1.2rem}.jrnl-modal-close{background:transparent;border:0;color:var(--text-muted);cursor:pointer;font-size:1.1rem;padding:5px}.jrnl-form{padding:20px 24px 24px}.jrnl-form-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:16px}.jrnl-field{display:flex;flex-direction:column;gap:6px}.jrnl-field-full{grid-column:1 / -1}.jrnl-field label{align-items:center;color:var(--text-secondary);display:flex;font-size:.78rem;font-weight:600;gap:6px}.req,.jrnl-err{color:var(--red)}.jrnl-field input,.jrnl-field select,.jrnl-field textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);padding:9px 12px;width:100%}.jrnl-field input:focus,.jrnl-field select:focus,.jrnl-field textarea:focus{border-color:var(--accent);outline:0}.jrnl-field textarea{resize:vertical}.jrnl-readonly{background:#f8fafc!important;border-style:dashed!important;cursor:not-allowed;font-weight:700}.jrnl-ro-green{color:var(--green)!important}.jrnl-ro-red{color:var(--red)!important}.jrnl-readonly-badge{background:rgba(99,102,241,.12);border-radius:4px;color:var(--accent);font-size:.65rem;padding:1px 6px}.jrnl-err{font-size:.75rem}.jrnl-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.jrnl-back-btn{background:transparent;border:0;color:var(--accent);cursor:pointer;font-size:.875rem;font-weight:600}.jrnl-detail-profit-chip{background:var(--bg-secondary);border-radius:999px;color:var(--text-muted);display:inline-block;font-size:.85rem;font-weight:700;margin-top:6px;padding:4px 12px}.jrnl-detail-profit-chip.jrnl-profit-pos{background:rgba(16,185,129,.12)}.jrnl-detail-profit-chip.jrnl-profit-neg{background:rgba(239,68,68,.1)}.jrnl-detail-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:28px}.jrnl-detail-win{border-color:#10b9814d}.jrnl-detail-loss{border-color:#ef44444d}.jrnl-detail-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:24px}.jrnl-detail-field{display:flex;flex-direction:column;gap:4px}.jrnl-detail-label,.jrnl-reason-label{color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.jrnl-detail-value{font-weight:600}.jrnl-reason-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:18px;padding:16px 20px}.jrnl-reason-label{margin-bottom:8px}.jrnl-reason-text{color:var(--text-secondary);line-height:1.7;white-space:pre-wrap}.jrnl-detail-meta{color:var(--text-muted);font-size:.75rem}.jrnl-confirm-dialog{background:var(--bg-card);border:1px solid rgba(239,68,68,.3);border-radius:14px;max-width:400px;padding:32px;text-align:center;width:100%}.jrnl-confirm-dialog p{color:var(--text-muted);margin:8px 0 24px}.jrnl-confirm-actions{display:flex;gap:12px;justify-content:center}.jrnl-toast{animation:toast-in .25s ease;background:var(--bg-card);border:1px solid rgba(16,185,129,.4);border-radius:10px;bottom:28px;box-shadow:0 8px 24px #0003;color:var(--green);font-size:.875rem;font-weight:600;padding:14px 20px;position:fixed;right:28px;z-index:1100}.jrnl-toast-err{border-color:#ef444466;color:var(--red)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}}@media (max-width: 640px){.navbar{padding:0 16px}.app-container{padding:20px 16px}.jrnl-stats-grid,.jrnl-detail-grid{grid-template-columns:repeat(2,1fr)}.jrnl-form-grid{grid-template-columns:1fr}}
