@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Anta&display=swap";.job-card{border-radius:var(--radius-lg);background:var(--color-surface-dark);width:100%;max-width:800px;height:auto;box-shadow:var(--shadow-card);color:#fff;transition:transform var(--t-normal), box-shadow var(--t-normal), background-color var(--t-normal);cursor:pointer;border:1px solid #ffffff0a;flex-direction:column;display:flex;overflow:hidden}.job-card:hover{box-shadow:var(--shadow-card-hover);background:var(--color-surface-dark-hover);transform:translateY(-3px)}.job-poster{text-align:left;background:#ffffff0d;border-bottom:1px solid #ffffff0f;align-items:center;gap:12px;height:96px;padding:16px 54px 16px 16px;display:flex;position:relative}.Icon{border-radius:var(--radius-md);color:#fff;background:#ffffff1a;border:1px solid #ffffff1a;padding:9px;font-size:36px}.job{font-size:.92rem;font-family:var(--font-body);color:#ffffffe6;text-align:left;letter-spacing:.04em;text-transform:uppercase;width:55%;font-weight:700}.briefcase-icon{-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;display:inline-flex}.job-poster img{border-radius:var(--radius-md);object-fit:cover;background:#fff;flex-shrink:0;width:42px;height:42px;padding:4px}.poster-placeholder{border-radius:var(--radius-md);background:var(--color-accent);color:#fff;opacity:.85;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:17px;font-weight:700;display:flex}.company{color:#ffffffe6;text-transform:uppercase;letter-spacing:.06em;font-size:.73rem;font-weight:700;line-height:1.3;font-family:var(--font-body);margin-bottom:0}.favorite-btn{border-radius:var(--radius-sm);letter-spacing:.04em;color:#ffffffbf;cursor:pointer;width:auto;height:auto;transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast), transform var(--t-fast);background:#ffffff14;border:1px solid #ffffff26;align-items:center;gap:5px;padding:8px 12px;font-size:.68rem;font-weight:700;display:flex;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.favorite-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#18aaae33}.favorite-btn.active{border-color:var(--color-accent);color:var(--color-accent);background:#18aaae26;animation:.3s bookmarkPop}.job-info{background:0 0;padding:4px 18px 18px}.job-info h3{font-size:clamp(1.05rem,1.8vw,1.35rem);font-family:var(--font-heading);color:#fff;letter-spacing:-.01em;margin-top:14px;margin-bottom:8px;font-weight:700;line-height:1.2}.job-category-badge{color:#ffffffbf;border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;font-size:.65rem;font-weight:600;font-family:var(--font-body);background:#ffffff14;border:1px solid #ffffff24;margin-bottom:12px;padding:3px 10px;display:inline-block}.job-meta{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:2px;display:grid}.job-meta div{border-left:1px solid #ffffff26;padding-left:10px}.job-meta div:first-child{border-left:none;padding-left:0}.job-meta strong{color:#ffffffe6;text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;font-weight:600;font-family:var(--font-body);margin-bottom:4px;display:block}.job-meta span{color:#ffffff8c;font-size:.72rem;font-weight:400;line-height:1.4;font-family:var(--font-body)}.detail-link{color:#ffffff80;-webkit-line-clamp:3;cursor:default;font-size:.8rem;line-height:1.6;font-family:var(--font-body);-webkit-box-orient:vertical;margin-bottom:16px;padding:0 18px;text-decoration:none;display:-webkit-box;overflow:hidden}.job-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:0 14px 16px;display:flex}.apply-btn{text-align:center;background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.02em;min-width:110px;font-size:.82rem;font-weight:700;font-family:var(--font-body);transition:background-color var(--t-fast), transform var(--t-fast);border:none;flex:1;justify-content:center;align-items:center;gap:4px;padding:9px 16px;display:flex}.apply-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.apply-btn:active{transform:translateY(0)}.details-btn{text-align:center;color:#ffffffd9;border-radius:var(--radius-sm);cursor:pointer;min-width:80px;font-size:.82rem;font-weight:600;font-family:var(--font-body);transition:background-color var(--t-fast), border-color var(--t-fast);background:#ffffff12;border:1px solid #ffffff26;flex:1;padding:9px 16px}.details-btn:hover{background:#ffffff21;border-color:#ffffff4d}.apply-btn .arrow-icon{vertical-align:middle;transition:transform var(--t-fast);margin-left:3px;font-size:1.1rem}.apply-btn:hover .arrow-icon{transform:translate(3px)}@media (width<=768px){.job-info h3{font-size:1.05rem}.job-poster{height:88px;padding:14px 50px 14px 14px}}.job-detail-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a14288c;justify-content:center;align-items:center;animation:.18s both fadeIn;display:flex;position:fixed;inset:0}.job-detail-modal{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:700px;height:90vh;box-shadow:var(--shadow-modal);flex-direction:column;animation:.22s cubic-bezier(.34,1.56,.64,1) both modalEnter;display:flex;overflow:hidden}@keyframes modalEnter{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.jd-header{border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.4rem;display:flex}.jd-company{align-items:center;gap:.75rem;display:flex}.jd-icon-container{border-radius:var(--radius-sm);background:var(--color-surface-dark);justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:flex}.jd-icon{color:var(--color-accent);font-size:1.3rem}.jd-company-name{color:var(--color-text);letter-spacing:.01em;font-size:1rem;font-weight:700;font-family:var(--font-heading)}.jd-category{color:var(--color-accent);font-size:.75rem;font-weight:600;font-family:var(--font-body);letter-spacing:.03em}.jd-close{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);width:32px;height:32px;transition:color var(--t-fast), border-color var(--t-fast), background var(--t-fast);justify-content:center;align-items:center;font-size:1rem;display:flex}.jd-close:hover{color:var(--color-text);background:var(--color-surface-muted);border-color:var(--color-border-strong)}.jd-body{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;flex:1;padding:1.6rem 1.5rem;overflow-y:auto}.jd-title{color:var(--color-text);font-size:1.65rem;font-weight:800;font-family:var(--font-heading);letter-spacing:-.02em;margin-bottom:1rem;line-height:1.2}.jd-meta-pills{flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem;display:flex}.jd-pill{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);cursor:default;font-size:.8rem;font-weight:500;font-family:var(--font-body);align-items:center;gap:5px;padding:.4rem 1rem;display:inline-flex}.jd-pill .jd-icon{color:var(--color-accent);margin-right:0;font-size:.9rem}.jd-divider{background:var(--color-border);height:1px;margin:1.2rem 0}.jd-two-col{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.jd-label{color:var(--color-text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:700;font-family:var(--font-body);margin-bottom:.3rem}.jd-value{color:var(--color-text);font-weight:700;font-family:var(--font-body);font-size:.9rem}.jd-text{color:var(--color-text-secondary);line-height:1.7;font-family:var(--font-body);margin-top:.5rem;font-size:.9rem}.jd-checklist{flex-direction:column;gap:.65rem;margin-top:.75rem;list-style:none;display:flex}.jd-checklist li{color:var(--color-text-secondary);font-size:.9rem;font-family:var(--font-body);align-items:flex-start;gap:.6rem;line-height:1.6;display:flex}.jd-check{color:var(--color-accent);flex-shrink:0;margin-top:2px;font-weight:700}.jd-benefits-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem;display:grid}.jd-benefit-card{border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.87rem;font-family:var(--font-body);background:var(--color-surface-muted);align-items:flex-start;gap:.6rem;padding:.9rem;display:flex}.jd-benefit-icon{font-size:1rem}.jd-skills{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.jd-skill-tag{background:var(--color-accent-dim);color:var(--color-accent-hover);border-radius:var(--radius-pill);font-size:.8rem;font-weight:600;font-family:var(--font-body);border:1px solid var(--color-accent-border);letter-spacing:.01em;padding:.35rem .85rem}.jd-footer{border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;gap:.75rem;padding:1rem 1.4rem;display:flex}.jd-save-btn{background:var(--color-surface-muted);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);font-size:.88rem;font-weight:600;font-family:var(--font-body);flex:1;justify-content:center;align-items:center;gap:6px;padding:.8rem;display:flex}.jd-save-btn:hover{background:var(--color-surface-dark);border-color:var(--color-surface-dark);color:#fff}.jd-save-btn .jd-bookmark-icon{transition:color var(--t-fast);font-size:1.05rem}.jd-save-btn.active,.jd-save-btn.active .jd-bookmark-icon{background:var(--color-surface-dark);border-color:var(--color-surface-dark);color:#fff}.jd-apply-btn{background:var(--color-accent);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--t-fast), transform var(--t-fast);font-size:.92rem;font-weight:700;font-family:var(--font-body);letter-spacing:.02em;border:none;flex:2;justify-content:center;align-items:center;gap:6px;padding:.8rem;display:flex}.jd-apply-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.jd-apply-btn:active{transform:translateY(0)}.jd-apply-btn .jd-arrow-icon{vertical-align:-2px;transition:transform var(--t-fast);font-size:1.1rem}.jd-apply-btn:hover .jd-arrow-icon{transform:translate(3px)}@media (width<=600px){.job-detail-modal{border-radius:0;height:100vh}.jd-two-col,.jd-benefits-grid{grid-template-columns:1fr}.jd-title{font-size:1.35rem}}.fsb-backdrop{z-index:998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a142880;animation:.2s both fadeIn;position:fixed;inset:0}.fsb-sidebar{color:#e5e7eb;z-index:999;width:300px;height:100vh;transition:left var(--t-slow);background:#0f1e38;border-right:1px solid #ffffff0f;flex-direction:column;display:flex;position:fixed;top:0;left:-340px;box-shadow:4px 0 32px #0000004d}.fsb-sidebar.open{left:0}.fsb-header{border-bottom:1px solid #ffffff12;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 18px 14px;display:flex}.fsb-header-left{align-items:center;gap:10px;display:flex}.fsb-title{color:#f3f4f6;font-size:.95rem;font-weight:700;font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase}.fsb-active-badge{background:var(--color-accent);color:#fff;border-radius:var(--radius-pill);text-align:center;min-width:22px;font-size:.68rem;font-weight:700;font-family:var(--font-body);padding:2px 8px}.fsb-header-right{align-items:center;gap:8px;display:flex}.fsb-clear-btn{color:#ffffff80;font-size:.75rem;font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--t-fast), color var(--t-fast);background:0 0;border:1px solid #ffffff26;padding:4px 10px}.fsb-clear-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.fsb-close-btn{color:#ffffff80;border-radius:var(--radius-sm);cursor:pointer;width:30px;height:30px;transition:background var(--t-fast), color var(--t-fast);background:#ffffff0f;border:1px solid #ffffff1a;justify-content:center;align-items:center;font-size:.9rem;display:flex}.fsb-close-btn:hover{color:#f3f4f6;background:#ffffff1f}.fsb-body{scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex:1;padding:16px 18px;overflow-y:auto}.fsb-body::-webkit-scrollbar{width:3px}.fsb-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.fsb-group{margin-bottom:24px}.fsb-group-label{letter-spacing:.14em;color:#ffffff59;text-transform:uppercase;font-size:.62rem;font-weight:700;font-family:var(--font-body);margin-bottom:10px}.fsb-pill-grid{flex-wrap:wrap;gap:6px;display:flex}.fsb-pill{color:#ffffffa6;border-radius:var(--radius-pill);font-size:.76rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast), color var(--t-fast);background:#ffffff0d;border:1px solid #ffffff17;padding:5px 12px}.fsb-pill:hover{color:#ffffffe6;background:#18aaae1f;border-color:#18aaae66}.fsb-pill.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;font-weight:600}.fsb-check-row{cursor:pointer;color:#ffffffa6;font-size:.85rem;font-family:var(--font-body);transition:color var(--t-fast);border-bottom:1px solid #ffffff0a;align-items:center;gap:10px;padding:8px 0;display:flex}.fsb-check-row:hover{color:#f3f4f6}.fsb-check-row:last-child{border-bottom:none}.fsb-checkbox{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.fsb-footer{border-top:1px solid #ffffff12;flex-shrink:0;padding:14px 18px}.fsb-apply-btn{background:var(--color-accent);color:#fff;border-radius:var(--radius-md);width:100%;font-size:.88rem;font-weight:700;font-family:var(--font-body);cursor:pointer;letter-spacing:.03em;transition:background-color var(--t-fast), transform var(--t-fast);border:none;padding:11px}.fsb-apply-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.fsb-apply-btn:active{transform:translateY(0)}@media (width<=480px){.fsb-sidebar{width:85%;max-width:300px;left:-100%}}.filter-backdrop{z-index:998;background:#00000080;position:fixed;inset:0}.dashboard-page{background-color:var(--color-bg);min-height:100vh;padding-top:64px;animation:.3s both fadeInUp}.dashboard-search-row{background-color:var(--color-bg);z-index:50;align-items:center;gap:10px;padding:14px 20px 0;display:flex;position:sticky;top:64px}.dashboard-search-wrap{flex:1;align-items:center;display:flex;position:relative}.dashboard-search-icon{color:var(--color-text-muted);pointer-events:none;font-size:1rem;position:absolute;left:13px}.dashboard-search-icon .search-icon{color:var(--color-text-muted);margin-top:6px;margin-right:6px;font-size:1.1rem}.dashboard-search-input{border-radius:var(--radius-md);border:1.5px solid var(--color-border-strong);background:var(--color-surface);width:100%;color:var(--color-text);font-size:.9rem;font-family:var(--font-body);transition:border-color var(--t-normal), box-shadow var(--t-normal), background var(--t-normal);outline:none;padding:10px 14px 10px 38px;font-weight:400}.dashboard-search-input::placeholder{color:var(--color-text-muted);font-weight:400}.dashboard-search-input:hover{border-color:#0e1e3c47}.dashboard-search-input:focus{border-color:var(--color-accent);background:var(--color-surface);box-shadow:0 0 0 3px #18aaae1a}.filter-trigger-btn{background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);font-size:.82rem;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;letter-spacing:.02em;transition:background-color var(--t-fast), transform var(--t-fast), box-shadow var(--t-fast);border:none;flex-shrink:0;align-items:center;gap:7px;padding:10px 16px;display:flex;position:relative}.filter-trigger-btn:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.filter-trigger-btn:active{box-shadow:none;transform:translateY(0)}.filter-trigger-badge{background:var(--color-accent);color:#fff;border-radius:var(--radius-pill);text-align:center;min-width:18px;padding:2px 6px;font-size:.63rem;font-weight:700}.category-pills-row{white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none;background-color:var(--color-bg);z-index:49;justify-content:center;padding:10px 20px 0;display:flex;position:sticky;top:118px;overflow-x:auto}.category-pills-row::-webkit-scrollbar{display:none}.category-pills-inner{gap:6px;padding-bottom:10px;display:inline-flex}.category-pill{background-color:var(--color-primary);color:#ffffffbf;border-radius:var(--radius-pill);font-size:.82rem;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast);white-space:nowrap;letter-spacing:.01em;border:1px solid #0000;flex-shrink:0;padding:5px 14px}.category-pill:hover{color:#fffffff2;background-color:#045a68;box-shadow:0 2px 6px #045a684d}.category-pill.active{background-color:var(--color-accent);color:#fff;border-color:#0000;font-weight:600;box-shadow:0 2px 8px #18aaae59}.dashboard-body{gap:0;min-height:calc(100vh - 160px);padding:14px 20px 40px;display:flex}.dashboard-left{border-right:1px solid var(--color-border);scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;flex-shrink:0;width:40%;max-height:calc(100vh - 162px);padding-right:14px;position:sticky;top:162px;overflow:hidden auto}.dashboard-left::-webkit-scrollbar{width:3px}.dashboard-left::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}.dashboard-right{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;flex:1;min-width:0;max-height:calc(100vh - 162px);padding-left:18px;position:sticky;top:162px;overflow-y:auto}.section-header{border-bottom:1.5px solid var(--color-border);align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;display:flex}.section-title{color:var(--color-text);font-size:.95rem;font-weight:700;font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase}.section-badge{background:var(--pill-active-color);color:#fff;border-radius:var(--radius-pill);font-size:.67rem;font-weight:700;font-family:var(--font-body);letter-spacing:.03em;padding:3px 9px}.section-badge.today{background:var(--color-accent)}.right-tabs{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.right-tab-btn{background:var(--color-surface);color:var(--color-text-secondary);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-pill);font-size:.8rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background var(--t-fast), color var(--t-fast), border-color var(--t-fast);letter-spacing:.01em;padding:5px 14px}.right-tab-btn:hover{background:var(--color-surface-muted);color:var(--color-text);border-color:var(--color-border-strong)}.right-tab-btn.active{background:var(--pill-active-color);color:#fff;border-color:var(--pill-active-color)}.right-tab-total{background:var(--color-surface);color:var(--color-text-secondary);border-radius:var(--radius-pill);font-size:.73rem;font-weight:600;font-family:var(--font-body);border:1px solid var(--color-border-strong);margin-left:auto;padding:4px 12px}.today-cards-list{flex-direction:column;gap:12px;display:flex}.today-job-card{background:var(--color-surface-dark);border-radius:var(--radius-lg);color:#fff;cursor:default;transition:transform var(--t-normal), box-shadow var(--t-normal), background-color var(--t-normal);box-shadow:var(--shadow-card);border:1px solid #ffffff0a;padding:14px 16px}.today-job-card:hover{box-shadow:var(--shadow-card-hover);background-color:var(--color-surface-dark-hover);cursor:pointer;transform:translateY(-3px)}.tjc-row1{align-items:center;gap:10px;margin-bottom:10px;display:flex}.tjc-company-icon{border-radius:var(--radius-sm);color:#fff;width:36px;height:36px;transition:background var(--t-fast);background:#ffffff14;border:1px solid #ffffff1f;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.today-job-card:hover .tjc-company-icon{background:#ffffff1f}.tjc-company-info{flex:1;min-width:0}.tjc-company-name{color:#ffffffe6;font-size:.75rem;font-weight:700;font-family:var(--font-body);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.04em;text-transform:uppercase;overflow:hidden}.tjc-channel-label{color:#ffffff73;font-size:.68rem;font-style:italic;font-family:var(--font-body)}.tjc-time-ago{color:#fff6;white-space:nowrap;font-size:.68rem;font-family:var(--font-body);flex-shrink:0}.tjc-row2{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.tjc-title{font-size:.98rem;font-weight:700;font-family:var(--font-heading);color:#fff;letter-spacing:-.01em;flex:1;min-width:0;line-height:1.25}.tjc-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.tjc-meta-item{color:#ffffff80;white-space:nowrap;font-size:.66rem;font-family:var(--font-body);align-items:center;gap:3px;display:flex}.tjc-description{color:#ffffff80;-webkit-line-clamp:3;font-size:.77rem;line-height:1.55;font-family:var(--font-body);-webkit-box-orient:vertical;margin-bottom:12px;display:-webkit-box;overflow:hidden}.tjc-actions{align-items:center;gap:7px;display:flex}.tjc-apply-btn{background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);font-size:.76rem;font-weight:700;font-family:var(--font-body);cursor:pointer;letter-spacing:.02em;transition:background-color var(--t-fast), transform var(--t-fast);border:none;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 13px;display:flex}.tjc-apply-btn:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.tjc-apply-btn:active{transform:translateY(0)}.tjc-apply-btn .arrow-icon{transition:transform var(--t-fast);font-size:.85rem}.tjc-apply-btn:hover .arrow-icon{transform:translate(3px)}.tjc-details-btn{color:#ffffffd9;border-radius:var(--radius-sm);font-size:.76rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background-color var(--t-fast), border-color var(--t-fast);background:#ffffff12;border:1px solid #ffffff26;flex:1;padding:7px 13px}.tjc-details-btn:hover{background:#ffffff21;border-color:#ffffff4d}.tjc-bookmark-btn{color:#ffffffb3;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast);background:#ffffff0f;border:1px solid #ffffff1f;flex-shrink:0;justify-content:center;align-items:center;padding:7px 9px;font-size:.95rem;display:flex}.tjc-bookmark-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#18aaae2e}.tjc-bookmark-btn.saved{border-color:var(--color-accent);color:var(--color-accent);background:#18aaae26;animation:.3s bookmarkPop}.right-cards-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.skeleton{border-radius:var(--radius-md);background-color:#0e1e3c12;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000 0%,#fff6 50%,#0000 100%) 0 0/200% 100%;animation:1.4s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{border-radius:var(--radius-lg);height:200px;overflow:hidden}.skeleton-today-card{border-radius:var(--radius-lg);height:170px;margin-bottom:12px}.empty-state{text-align:center;padding:40px 20px}.empty-state-icon{opacity:.35;margin-bottom:12px;font-size:2.2rem}.empty-state p{color:var(--color-text-muted);font-size:.88rem;font-family:var(--font-body)}.empty-state h4{color:var(--color-text-secondary);font-size:.95rem;font-family:var(--font-body);margin-bottom:6px;font-weight:600}.dashboard-error{border-radius:var(--radius-md);color:var(--color-error);font-size:.84rem;font-family:var(--font-body);background:#fff5f5;border:1px solid #fecaca;margin-bottom:14px;padding:11px 14px}@media (width<=1024px){.dashboard-body{flex-direction:column;gap:24px}.dashboard-left{border-right:none;border-bottom:1.5px solid var(--color-border);width:100%;max-height:none;padding-bottom:20px;padding-right:0;position:static;top:auto;overflow-y:visible}.dashboard-right{max-height:none;padding-left:0;position:static;top:auto;overflow-y:visible}.right-cards-grid{grid-template-columns:repeat(2,1fr)}.category-pills-row{top:110px}}@media (width>=769px){.mobile-section-body{display:block!important}.mobile-chevron{display:none!important}.section-header,.right-tabs{cursor:default}.right-tab-sub{color:var(--color-text-muted);align-self:center;margin-left:4px;font-size:.73rem}}@media (width<=768px){.dashboard-page{padding-top:58px}.dashboard-search-row{flex-wrap:nowrap;align-items:center;gap:8px;padding:10px 14px 8px;top:58px}.filter-trigger-btn{flex-shrink:0;order:1;justify-content:center;min-width:42px;padding:9px 12px}.filter-btn-text{display:none}.dashboard-search-wrap{flex:1;order:2;min-width:0}.dashboard-search-input{padding:9px 12px 9px 36px;font-size:.88rem}.category-pills-row{white-space:normal;justify-content:flex-start;padding:8px 14px 6px;display:block;top:100px;overflow-x:visible}.category-pills-inner{white-space:normal;flex-wrap:wrap;justify-content:flex-start;gap:5px;width:100%;padding-bottom:4px;display:flex}.category-pill{padding:4px 10px;font-size:.7rem}.dashboard-body{min-height:unset;flex-direction:column;gap:0;padding:0}.dashboard-left{border-bottom:none;border-right:none;width:100%;max-height:none;padding-bottom:0;padding-right:0;position:static;top:auto;overflow:visible}.dashboard-right{flex:none;width:100%;max-height:none;padding-left:0;position:static;top:auto;overflow-y:visible}.section-header{z-index:40;background:var(--color-bg);cursor:pointer;border-bottom:1.5px solid var(--color-border);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background var(--t-fast);border-radius:0;margin-bottom:0;padding:13px 14px 11px;position:sticky;top:164px}.section-header:active{background:#0e1e3c0a}.right-tabs{z-index:39;background:var(--color-bg);cursor:pointer;border-bottom:1.5px solid var(--color-border);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background var(--t-fast);flex-wrap:nowrap;align-items:center;gap:8px;margin-bottom:0;padding:13px 14px 11px;position:sticky;top:164px}.right-tabs:active{background:#0e1e3c0a}.right-tab-sub{display:none}.right-tab-btn.active{color:var(--color-text);font-size:.95rem;font-weight:700;font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;cursor:inherit;background:0 0;border:none;padding:0}.right-tab-total{margin-left:auto;font-size:.7rem}.mobile-chevron{color:var(--color-text-muted);flex-shrink:0;font-size:1.1rem;transition:transform .25s;display:block!important}.mobile-chevron.open{transform:rotate(180deg)}.mobile-section-body{display:none;overflow:hidden}.mobile-section-body.open{padding:12px 14px 20px;display:block}.right-cards-grid{grid-template-columns:1fr;gap:12px}.today-cards-list{flex-direction:column;gap:10px;display:flex}.right-cards-grid .skeleton-card{height:180px}.empty-state{padding:28px 12px}.section-header .section-badge.today{margin-left:4px}}@media (width<=480px){.dashboard-page{padding-top:56px}.dashboard-search-row{padding:9px 12px 7px;top:56px}.category-pills-row{padding:7px 12px 5px;top:96px}.section-header,.right-tabs{top:156px}.category-pill{padding:3px 9px;font-size:.67rem}.mobile-section-body.open{padding:10px 12px 16px}}@media (width<=360px){.category-pill{padding:3px 7px;font-size:.63rem}.filter-trigger-btn{min-width:38px;padding:9px 10px}}.movies-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;gap:1.25rem;width:100%;display:grid}.movies-grid>*{min-width:0;animation:.3s both fadeInUp}.favorite{background:var(--color-bg);box-sizing:border-box;width:100%;padding:2rem}.favorite h2{text-align:center;color:var(--color-text);font-size:2.4rem;font-family:var(--font-heading);letter-spacing:-.02em;margin-top:100px;margin-bottom:2rem;font-weight:800}.favorites-empty{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);max-width:520px;box-shadow:var(--shadow-sm);margin:2rem auto;padding:4rem 2rem}.favorites-empty p{color:var(--color-text-secondary);font-size:1.1rem;line-height:1.6;font-family:var(--font-body)}@media (width<=768px){.favorite h2{font-size:1.8rem}.favorites-empty{margin:1.5rem auto;padding:3rem 1.5rem}.favorites-empty p{font-size:1rem}}.navbar{background-color:var(--color-surface);z-index:1000;width:100%;height:64px;box-shadow:var(--shadow-navbar);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:2rem;padding:0 28px;display:flex;position:fixed;top:0;left:0}.navbar-brand{white-space:nowrap;align-items:center;gap:.6rem;text-decoration:none;display:flex}.navbar-brand-text{flex-direction:column;gap:1px;display:flex}.navbar-logo{object-fit:cover;border-radius:var(--radius-md);flex-shrink:0;width:40px;height:40px}.brand-text{color:var(--color-primary);font-size:1.5rem;font-weight:800;font-family:var(--font-logo);letter-spacing:-.01em;line-height:1}.navbar-subtitle{color:var(--color-text-muted);font-size:.68rem;font-weight:500;font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase}.navbar-links{align-items:center;gap:.75rem;display:flex}.nav-link{background-color:var(--color-primary);border-radius:var(--radius-md);color:var(--color-text-inverse);font-size:.82rem;font-weight:600;font-family:var(--font-body);letter-spacing:.02em;transition:background-color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast);align-items:center;gap:6px;padding:9px 16px;text-decoration:none;display:flex}.nav-link:hover{background-color:var(--color-primary-hover);color:var(--color-text-inverse);box-shadow:var(--shadow-md);transform:translateY(-1px)}.nav-link:active{box-shadow:none;transform:translateY(0)}.back-button{background-color:var(--pill-active-color);border-radius:var(--radius-md);color:var(--color-text-inverse);font-size:.82rem;font-weight:600;font-family:var(--font-body);transition:background-color var(--t-fast), transform var(--t-fast);align-items:center;gap:6px;padding:9px 16px;text-decoration:none;display:none}.back-button:hover{background-color:var(--color-accent);color:var(--color-text-inverse);transform:translateY(-1px)}.nav-icon{vertical-align:middle;font-size:1.1rem}@media (width<=768px){.navbar{gap:.75rem;height:58px;padding:0 14px}.navbar-subtitle{display:none}.brand-text{font-size:1.25rem}.nav-link{padding:9px 11px}.nav-link-text{display:none}.nav-icon{font-size:1.2rem}}@media (width<=480px){.navbar-logo{width:34px;height:34px}.brand-text{font-size:1.15rem}}.sync-pill{background:var(--color-accent-dim);border:1px solid var(--color-accent-border);border-radius:var(--radius-pill);font-size:.73rem;font-weight:500;font-family:var(--font-body);color:var(--color-text-secondary);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;letter-spacing:.01em;flex-shrink:0;align-items:center;gap:6px;padding:5px 11px;display:inline-flex}.sync-pill--never{color:var(--color-text-muted);background:#64748b0f;border-color:#64748b26}.sync-dot{background:var(--color-accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.4s ease-in-out infinite sync-pulse}.sync-pill--never .sync-dot{background:var(--color-text-muted);animation:none}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.25}}.sync-label-short{display:none}@media (width<=768px){.sync-label-long{display:none}.sync-label-short{display:inline}.sync-pill{gap:4px;padding:5px 8px;font-size:.7rem}.sync-pill--never{display:none}}@media (width<=360px){.sync-pill{display:none}}:root{--font-heading:"Syne", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-logo:"Anta", sans-serif;--headline-font:var(--font-heading);--body-font:var(--font-body);--logo-font:var(--font-logo);--color-bg:#eef1f6;--color-surface:#fff;--color-surface-muted:#f5f7fa;--color-surface-dark:#0f1e38;--color-surface-dark-hover:#0a1728;--background-color:var(--color-bg);--navBar-bgColor:var(--color-surface);--color-primary:#14243f;--color-primary-hover:#1a3060;--color-accent:#18aaae;--color-accent-hover:#0d9499;--color-accent-dim:#18aaae1a;--color-accent-border:#18aaae38;--cta-color:var(--color-accent);--cta-hover-color:var(--color-accent-hover);--pill-color:var(--color-primary);--pill-active-color:#045a68;--pill-hover-color:#02888dd9;--color-text:#0c1b33;--color-text-secondary:#4a5568;--color-text-muted:#8796a8;--color-text-inverse:#fff;--headline-color:var(--color-text);--logoText-color:var(--color-primary);--hamburger:var(--color-primary);--color-border:#0e1e3c17;--color-border-strong:#0e1e3c2e;--color-success:#16a34a;--color-warning:#d97706;--color-error:#dc2626;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:100px;--shadow-sm:0 1px 3px #0e1e3c12, 0 1px 2px #0e1e3c0a;--shadow-md:0 3px 10px #0e1e3c1a;--shadow-card:0 2px 8px #0e1e3c1a;--shadow-card-hover:0 6px 22px #0e1e3c2e;--shadow-navbar:0 1px 0 var(--color-border), 0 2px 8px #0e1e3c0d;--shadow-modal:0 10px 40px #0e1e3c2e, 0 2px 8px #0e1e3c1a;--t-fast:.15s ease;--t-normal:.22s ease;--t-slow:.35s cubic-bezier(.4, 0, .2, 1);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-body);color:var(--color-text);scrollbar-width:none;-ms-overflow-style:none;line-height:1.5;overflow-x:hidden}body{background-color:var(--color-bg);width:100%;min-height:100vh}#root{background-color:var(--color-bg);flex-direction:column;width:100%;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bookmarkPop{0%{transform:scale(1)}40%{transform:scale(1.22)}70%{transform:scale(.92)}to{transform:scale(1)}}
