*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0f1117;color:#e2e8f0;font-size:15px;line-height:1.5}*{scrollbar-width:thin;scrollbar-color:#2a3548 transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2a3548;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3d4f6a}::-webkit-scrollbar-corner{background:transparent}.app{display:flex;flex-direction:row;height:100vh}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#060810}.auth-card{width:100%;max-width:400px;background:#0d111d;border:1px solid #1e2535;border-radius:12px;padding:40px 36px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.auth-brand{font-size:13px;font-weight:600;color:#64748b;letter-spacing:.08em;text-transform:uppercase}.auth-heading{font-size:22px;font-weight:700;color:#f1f5f9;margin:0}.auth-heading--error{color:#f87171}.auth-subtext{font-size:14px;color:#64748b;line-height:1.6;margin:0}.auth-google-btn{display:flex;align-items:center;gap:10px;padding:10px 20px;background:#1e2535;border:1px solid #334155;border-radius:8px;color:#f1f5f9;font-size:14px;font-weight:500;cursor:pointer;margin-top:8px;transition:background .15s,border-color .15s}.auth-google-btn:hover{background:#263348;border-color:#4a6fa5}.sidebar{width:200px;flex-shrink:0;background:#0a0d14;border-right:1px solid #1e2535;display:flex;flex-direction:column;height:100vh;position:sticky;top:0}.sidebar-brand{padding:18px 16px 14px;border-bottom:1px solid #1e2535;flex-shrink:0}.sidebar-brand-name{font-size:15px;font-weight:700;color:#f8fafc;letter-spacing:-.01em}.sidebar-desktop-nav{display:flex;flex-direction:column;padding:10px 8px;gap:6px}.sidebar-group{display:flex;flex-direction:column;gap:2px;margin-top:4px}.sidebar-group-label{display:flex;align-items:center;justify-content:space-between;color:#334155;font-size:11px;font-weight:600;letter-spacing:.06em;padding:6px 10px 2px;text-transform:uppercase;-webkit-user-select:none;user-select:none}.sidebar-group-chevron{font-size:10px}.sidebar-group-children{display:flex;flex-direction:column;gap:2px}.sidebar-mobile-tabs,.mobile-job-sheet{display:none}.sidebar-link{border-radius:6px;color:#64748b;display:block;font-size:14px;font-weight:500;padding:8px 10px;text-decoration:none;transition:background .15s,color .15s}.sidebar-link:hover{background:#161b27;color:#cbd5e1}.sidebar-link--active{background:#1e2535;color:#f8fafc}.sidebar-link--sub{padding-left:18px}.app-main{flex:1;overflow:hidden;display:flex;flex-direction:column}.generate-page-container{display:flex;flex-direction:column;flex:1;overflow:hidden}.generate-page-toolbar{display:flex;align-items:center;justify-content:flex-end;padding:6px 16px;border-bottom:1px solid #1e2535;flex-shrink:0}.start-over-btn{background:none;border:1px solid #334155;border-radius:6px;color:#64748b;cursor:pointer;font-size:12px;font-weight:500;padding:4px 12px;transition:border-color .15s,color .15s}.start-over-btn:hover{border-color:#f87171;color:#f87171}.generate-page{display:flex;flex:1;overflow:hidden}.page{padding:28px 32px;overflow-y:auto;flex:1}.page-title{font-size:18px;font-weight:600;color:#f8fafc;margin-bottom:24px}.page-stub{color:#475569;font-size:14px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}.stat-card{background:#161b27;border:1px solid #1e2535;border-radius:8px;padding:16px 20px;display:flex;flex-direction:column;gap:4px}.stat-value{font-size:28px;font-weight:700;color:#f8fafc}.stat-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#475569}.dashboard-placeholder{color:#475569;font-size:14px;display:flex;flex-direction:column;gap:6px}.dashboard-placeholder a{color:#3b82f6;text-decoration:none}.dashboard-placeholder a:hover{text-decoration:underline}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.calendar-header-actions{display:flex;gap:10px;align-items:center}.calendar-signin{display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:420px}.calendar-signin-text{color:#64748b;font-size:14px;line-height:1.6}.google-signin-btn{display:flex;align-items:center;gap:10px;background:#fff;border:none;border-radius:6px;color:#1f2937;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background .15s}.google-signin-btn:hover{background:#f1f5f9}.google-icon{width:18px;height:18px;flex-shrink:0}.add-event-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:background .15s}.add-event-btn:hover{background:#2563eb}.signout-btn{background:none;border:1px solid #1e2535;border-radius:6px;color:#64748b;cursor:pointer;font-size:13px;padding:7px 14px;transition:all .15s}.signout-btn:hover{border-color:#334155;color:#cbd5e1}.calendar-error{color:#f87171;font-size:14px;margin-top:8px}.event-groups{display:flex;flex-direction:column;gap:24px}.event-group-date{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b;border-bottom:1px solid #1e2535;padding-bottom:6px;margin-bottom:8px}.event-item{display:flex;align-items:baseline;gap:14px;padding:6px 0}.event-time{font-size:12px;color:#475569;flex-shrink:0;width:72px}.event-title{font-size:14px;color:#cbd5e1}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#161b27;border:1px solid #1e2535;border-radius:10px;padding:28px;width:440px;max-width:calc(100vw - 48px)}.modal-title{font-size:16px;font-weight:600;color:#f8fafc;margin-bottom:20px}.modal-form{display:flex;flex-direction:column;gap:14px}.modal-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-form .field input{background:#0f1117;border:1px solid #1e2535;border-radius:6px;color:#e2e8f0;font-family:inherit;font-size:14px;padding:9px 12px;width:100%;transition:border-color .15s}.modal-form .field input:focus{outline:none;border-color:#3b82f6}.modal-error{color:#f87171;font-size:13px}.modal-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:4px}.modal-actions-right{display:flex;gap:10px;margin-left:auto}.modal-cancel-btn{background:none;border:1px solid #1e2535;border-radius:6px;color:#64748b;cursor:pointer;font-size:14px;padding:9px 16px;transition:all .15s}.modal-cancel-btn:hover{border-color:#334155;color:#cbd5e1}.panel{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:20px}.input-panel{border-right:1px solid #1e2535}.input-panel form{display:flex;flex-direction:column;gap:14px;height:100%}.field{display:flex;flex-direction:column;gap:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field input[type=text]{background:#161b27;border:1px solid #1e2535;border-radius:6px;color:#e2e8f0;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .15s;width:100%;box-sizing:border-box}.field input[type=text]:focus{outline:none;border-color:#3b82f6}.field input[type=text]::placeholder{color:#334155}.field label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}.optional{font-weight:400;text-transform:none;letter-spacing:0;color:#475569}.field textarea{background:#161b27;border:1px solid #1e2535;border-radius:6px;color:#e2e8f0;font-family:inherit;font-size:14px;line-height:1.6;padding:10px 12px;resize:vertical;transition:border-color .15s}.field textarea:focus{outline:none;border-color:#3b82f6}.field textarea::placeholder{color:#334155}.input-panel form>.field-row{flex:1}.input-panel form>.field:nth-child(2){flex:4;min-height:0}.input-panel form>.field:nth-child(2) textarea{flex:1;resize:none}.input-panel form>.field:nth-child(3){flex:4;min-height:0}.input-panel form>.field:nth-child(3) textarea{flex:1;resize:none}.generate-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .15s;flex-shrink:0}.generate-btn:hover:not(:disabled){background:#2563eb}.generate-btn:disabled{background:#1e3a5f;color:#475569;cursor:not-allowed}.tabs{display:flex;flex-shrink:0;gap:6px}.tabs-field{display:flex;flex-direction:column;flex-shrink:0;gap:6px;padding-bottom:16px}.tabs-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tab{background:#161b27;border:1px solid #1e2535;border-radius:6px;color:#64748b;cursor:pointer;flex:1;font-size:14px;font-weight:500;padding:10px 12px;text-align:center;transition:all .15s}.tab:hover{color:#e2e8f0;border-color:#334155}.tab.active{background:#1e2535;border-color:#3b82f6;color:#f8fafc}.tab-content{flex:1;overflow-y:auto;position:relative}.status{color:#475569;font-size:14px;padding-top:8px}@keyframes spin{to{transform:rotate(360deg)}}.loading-state{display:flex;flex-direction:column;align-items:center;padding-top:60px;gap:14px}.loading-state p{color:#475569;font-size:13px}.spinner{width:28px;height:28px;border:3px solid #1e2535;border-top-color:#3b82f6;border-radius:50%;animation:spin .75s linear infinite}.status.error{color:#f87171}.placeholder{padding-top:40px;text-align:center;color:#334155}.tab-panel--hidden{display:none}.copy-btn{background:#1e2535;border:1px solid #334155;border-radius:5px;color:#94a3b8;cursor:pointer;float:right;font-size:12px;margin-bottom:8px;padding:4px 10px;transition:all .15s}.copy-btn:hover{background:#263448;color:#e2e8f0}.output-text{font-family:inherit;font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word;color:#cbd5e1;clear:both}.keyword-list{list-style:none;display:flex;flex-direction:column;gap:8px;padding-top:4px}.sections-output{clear:both;display:flex;flex-direction:column;gap:16px}.section-group-header{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;border-bottom:1px solid #1e2535;padding-bottom:5px}.section-wrapper{display:flex;align-items:flex-start;gap:0}.section-wrapper--role{margin-left:8px}.flag-btn{background:none;border:none;color:#475569;cursor:pointer;font-size:14px;line-height:1;opacity:0;padding:3px 6px 0 0;flex-shrink:0;width:22px;transition:color .15s,opacity .15s}.section-wrapper:hover .flag-btn,.flag-btn--active{opacity:1}.flag-btn:hover{color:#f59e0b}.flag-btn--active{color:#f59e0b;animation:flag-bounce .35s ease}@keyframes flag-bounce{0%{transform:scale(1)}35%{transform:scale(1.45) rotate(-10deg)}65%{transform:scale(.9) rotate(6deg)}to{transform:scale(1) rotate(0)}}.section-inner{flex:1;border:1px solid transparent;border-left:3px solid transparent;padding:4px 8px;transition:border-color .15s,border-left-width .1s;display:flex;flex-direction:column;gap:6px;cursor:pointer}.section-wrapper:hover .section-inner{border-left-color:#64748b}.section-wrapper--flagged .section-inner{border-left-color:#f59e0b}.section-wrapper--flagged:hover .section-inner{border-color:#f59e0b;border-left-width:5px;padding-left:6px;border-radius:3px}.section-heading{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0}.section-heading--role{font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;color:#cbd5e1}.section-body{display:flex;flex-direction:column;gap:4px}.section-paragraph{font-size:14px;line-height:1.7;color:#cbd5e1;margin:0}.section-bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.section-bullets li{font-size:14px;line-height:1.65;color:#cbd5e1;padding-left:14px;position:relative}.section-bullets li:before{content:"–";position:absolute;left:0;color:#475569}.keyword-list li{background:#161b27;border:1px solid #1e2535;border-radius:5px;color:#93c5fd;font-size:13px;padding:6px 12px}.gap-item{background:#161b27;border:1px solid #1e2535;border-radius:5px;display:flex;flex-direction:column;gap:4px;padding:8px 12px}.gap-item-header{align-items:center;display:flex;justify-content:space-between;gap:8px}.gap-term{color:#93c5fd;font-size:13px;font-weight:600}.gap-priority{border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase;white-space:nowrap}.gap-priority--required{background:#7f1d1d40;border:1px solid rgba(239,68,68,.35);color:#f87171}.gap-priority--preferred{background:#1e3a5f40;border:1px solid rgba(59,130,246,.35);color:#60a5fa}.gap-placement{color:#64748b;font-size:12px;line-height:1.5;margin:0}.gap-badges{display:flex;align-items:center;gap:6px;flex-shrink:0}.gap-missing-in{border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.04em;padding:2px 8px;text-transform:capitalize;white-space:nowrap}.gap-missing-in--resume{background:#10554040;border:1px solid rgba(52,211,153,.35);color:#6ee7b7}.gap-missing-in--cover-letter{background:#4c1d9540;border:1px solid rgba(167,139,250,.35);color:#c4b5fd}.gap-missing-in--both{background:#78350f40;border:1px solid rgba(251,191,36,.35);color:#fcd34d}.keyword-gaps-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.keyword-gaps-count{color:#64748b;font-size:12px}.recheck-btn{background:none;border:1px solid #334155;border-radius:6px;color:#93c5fd;cursor:pointer;font-size:12px;font-weight:500;padding:4px 12px;transition:background .15s,border-color .15s}.recheck-btn:hover:not(:disabled){background:#1e2535;border-color:#3b82f6}.recheck-btn:disabled{color:#475569;cursor:default}.detail-gap-item--rich{background:#1e2535;border:1px solid #334155;border-radius:5px;display:flex;flex-direction:column;gap:4px;padding:8px 12px;width:100%}.section-inner--editing{cursor:default}.section-edit-textarea{background:#161b27;border:1px solid #334155;border-radius:4px;box-sizing:border-box;color:#e2e8f0;font-family:inherit;font-size:14px;line-height:1.65;overflow:hidden;padding:8px 10px;resize:none;width:100%}.section-edit-textarea:focus{outline:none;border-color:#3b82f6}.section-edit-actions{display:flex;gap:8px}.section-save-btn{background:#3b82f6;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:5px 14px;transition:background .15s}.section-save-btn:hover{background:#2563eb}.section-cancel-btn{background:none;border:1px solid #334155;border-radius:5px;color:#94a3b8;cursor:pointer;font-size:12px;padding:5px 14px;transition:all .15s}.section-cancel-btn:hover{border-color:#475569;color:#e2e8f0}.section-rerun-btn{background:none;border:1px solid #7c3aed;border-radius:5px;color:#a78bfa;cursor:pointer;font-size:12px;font-weight:600;padding:5px 14px;transition:all .15s}.section-rerun-btn:hover:not(:disabled){background:#7c3aed;color:#fff}.section-rerun-btn:disabled{opacity:.6;cursor:not-allowed}.section-rerun-error{color:#f87171;font-size:12px;margin:6px 0 0}.section-wrapper--edited .flag-btn--edited{color:#4ade80;opacity:1}.section-wrapper--edited:hover .flag-btn--edited{color:#86efac}.section-wrapper--edited .section-inner{border-left-color:#16a34a}.section-wrapper--edited:hover .section-inner{border-color:#16a34a;border-left-color:#16a34a;border-left-width:5px;border-radius:3px;padding-left:6px}.export-btn{background:none;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:12px;font-weight:500;margin-left:auto;padding:5px 12px;transition:all .15s}.export-btn:hover{background:#1e2535;border-color:#475569;color:#e2e8f0}.tabs-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.export-menu-wrap{outline:none;position:relative}.export-menu-btn{background:none;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:12px;font-weight:500;padding:5px 12px;transition:all .15s}.export-menu-btn:hover,.export-menu-btn--open{background:#1e2535;border-color:#475569;color:#e2e8f0}.export-dropdown{background:#141926;border:1px solid #1e2535;border-radius:6px;box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;gap:2px;min-width:190px;padding:4px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.export-dropdown-btn{background:none;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;font-size:13px;padding:7px 12px;text-align:left;transition:background .1s;white-space:nowrap;width:100%}.export-dropdown-btn:hover{background:#1e2535;color:#f1f5f9}.dataset-btn{align-items:center;background:none;border:1px solid #334155;border-radius:6px;color:#64748b;cursor:pointer;display:flex;padding:5px 8px;transition:all .15s}.dataset-btn:hover{background:#1e2535;border-color:#475569;color:#94a3b8}.section-history{border-bottom:1px solid #1e2535;margin-bottom:10px;padding-bottom:8px}.section-history-header{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;gap:6px;justify-content:space-between;margin-bottom:5px;padding:0;width:100%}.section-history-label{color:#334155;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:color .2s;-webkit-user-select:none;user-select:none}.section-history-chevron{color:#334155;font-size:10px;transition:color .2s}.section-history-header:hover .section-history-label,.section-history-header:hover .section-history-chevron{color:#64748b}.section-old-content-wrap{cursor:pointer;max-height:1.8em;overflow:hidden;position:relative}.section-old-gradient{animation:gradient-fade-in .2s ease-out .05s both;background:linear-gradient(transparent,#0f1117);bottom:0;height:1.5em;left:0;pointer-events:none;position:absolute;right:0}@keyframes gradient-fade-in{0%{opacity:0}to{opacity:1}}.section-old-content-wrap--expanded{max-height:60em;transition:max-height .3s ease}.section-old-content-wrap--expanded:after{opacity:0}.section-old-content{opacity:.3;transition:opacity .25s}.section-history:hover .section-old-content{opacity:.55}.section-old-content-wrap--expanded .section-old-content{opacity:.7}.section-old-content .section-paragraph,.section-old-content .section-bullets li{color:#94a3b8;font-size:13px;text-decoration:line-through;text-decoration-color:#334155}.section-old-content-wrap--expanded .section-old-content .section-paragraph,.section-old-content-wrap--expanded .section-old-content .section-bullets li{text-decoration:none}mark.diff-added{background:#4ade8038;color:inherit;border-radius:3px;padding:0 2px;outline:1px solid rgba(74,222,128,.35)}.diff-indicator{display:flex;align-items:center;gap:8px;padding:4px 8px;margin-bottom:6px;border-radius:4px;background:#4ade8014;border:1px solid rgba(74,222,128,.2)}.diff-indicator-label{font-size:11px;color:#4ade80;letter-spacing:.03em;flex:1}.diff-dismiss-btn{font-size:11px;color:#64748b;background:none;border:none;cursor:pointer;padding:0 2px}.diff-dismiss-btn:hover{color:#94a3b8}.dashboard-cal-page{display:flex;flex-direction:column;height:100%;overflow:hidden}display: flex; flex-direction: column; height: 100%; overflow: hidden; } .cal-controls{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid #1e2535;flex-shrink:0;gap:12px}.cal-controls-left{display:flex;align-items:center;gap:8px}.cal-controls-right{display:flex;align-items:center;gap:10px}.cal-nav-btn{background:none;border:1px solid #1e2535;border-radius:5px;color:#94a3b8;cursor:pointer;font-size:18px;line-height:1;padding:3px 10px 5px;transition:all .15s}.cal-nav-btn:hover{background:#1e2535;color:#f8fafc}.cal-month-label{font-size:15px;font-weight:600;color:#f8fafc;min-width:140px;text-align:center}.cal-today-btn{background:none;border:1px solid #1e2535;border-radius:5px;color:#64748b;cursor:pointer;font-size:13px;padding:4px 12px;transition:all .15s}.cal-today-btn:hover{border-color:#334155;color:#cbd5e1}.cal-status{font-size:13px;color:#475569}.cal-status--error{color:#f87171}.google-signin-btn--compact{font-size:13px;padding:7px 14px}.cal-content{display:flex;flex:1;overflow:hidden}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:36px repeat(6,1fr);flex:1;overflow:hidden;border-top:1px solid #1e2535;border-left:1px solid #1e2535}.cal-grid-header{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#475569;border-right:1px solid #1e2535;border-bottom:1px solid #1e2535}.cal-day{border-right:1px solid #1e2535;border-bottom:1px solid #1e2535;padding:5px 6px;overflow:hidden;cursor:default;transition:background .1s}.cal-day:hover{background:#0d1020}.cal-day--other-month{opacity:.35}.cal-day-number{font-size:12px;font-weight:500;color:#64748b;width:22px;height:22px;display:flex;align-items:center;justify-content:center;margin-bottom:3px;border-radius:50%;flex-shrink:0}.cal-day-number--today{background:#3b82f6;color:#fff;font-weight:700}.cal-day--today{background:#0d1624}.cal-event-chip{display:flex;align-items:center;gap:4px;width:100%;background:#1e3a5f;border:none;border-radius:3px;color:#93c5fd;cursor:pointer;font-size:11px;font-weight:500;margin-bottom:2px;padding:2px 5px;text-align:left;transition:background .1s;overflow:hidden}.cal-event-chip:hover{background:#2563eb;color:#fff}.cal-event-time{color:#60a5fa;flex-shrink:0;font-weight:600}.cal-event-chip:hover .cal-event-time{color:#bfdbfe}.cal-event-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event-overflow{color:#475569;font-size:11px;padding:1px 5px;display:block}.event-detail-panel{width:280px;flex-shrink:0;background:#0a0d14;border-left:1px solid #1e2535;border-top:1px solid #1e2535;display:flex;flex-direction:column;overflow-y:auto;padding:0 0 24px}.event-detail-header{display:flex;justify-content:flex-end;padding:10px 12px 0;flex-shrink:0}.event-detail-close{background:none;border:none;color:#475569;cursor:pointer;font-size:20px;line-height:1;padding:4px 6px;transition:color .15s}.event-detail-close:hover{color:#f8fafc}.event-detail-title{font-size:15px;font-weight:600;color:#f8fafc;padding:4px 20px 16px;line-height:1.4}.event-detail-meta{display:flex;flex-direction:column;gap:12px;padding:0 20px}.event-detail-row{display:flex;gap:12px}.event-detail-row--col{flex-direction:column;gap:4px}.event-detail-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#475569;flex-shrink:0;width:60px;padding-top:1px}.event-detail-row--col .event-detail-label{width:auto}.event-detail-value{font-size:13px;color:#cbd5e1;line-height:1.5}.event-detail-desc{color:#94a3b8;white-space:pre-wrap}.event-detail-link{display:block;color:#3b82f6;font-size:13px;margin:20px 20px 0;text-decoration:none;transition:color .15s}.event-detail-link:hover{color:#60a5fa;text-decoration:underline}.dashboard-page{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:0}.dash-connect-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0d1624;border-bottom:1px solid #1e3a5f;color:#93c5fd;font-size:13px;padding:12px 24px;flex-shrink:0}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header .page-title{margin-bottom:0}.add-app-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:background .15s}.add-app-btn:hover{background:#2563eb}.app-table-wrap{overflow-x:auto}.app-table{border-collapse:collapse;font-size:14px;min-width:700px;width:100%}.app-table th{border-bottom:1px solid #1e2535;color:#475569;font-size:11px;font-weight:600;letter-spacing:.06em;padding:0 12px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.app-table th:first-child,.app-table td:first-child{padding-left:0}.app-table td{border-bottom:1px solid #1e2535;color:#cbd5e1;padding:12px;vertical-align:middle}.app-table tr:last-child td{border-bottom:none}.td-company{color:#f8fafc!important;font-weight:500;white-space:nowrap}.td-role{color:#94a3b8!important;white-space:nowrap}.td-date{color:#64748b!important;font-size:13px;white-space:nowrap}.td-notes{color:#64748b!important;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:20px;cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px;transition:border-color .15s}.status-select:focus{outline:none}.status-select--applied{background:#1e3a5f;color:#93c5fd}.status-select--followed-up{background:#2e1a47;color:#c4b5fd}.status-select--interviewing{background:#3b2900;color:#fcd34d}.status-select--offer{background:#052e16;color:#86efac}.status-select--rejected{background:#3b0c0c;color:#fca5a5}.status-select--closed{background:#1e2535;color:#64748b}.edit-btn{background:none;border:1px solid #1e2535;border-radius:5px;color:#64748b;cursor:pointer;font-size:12px;padding:5px 10px;transition:all .15s;white-space:nowrap}.edit-btn:hover{border-color:#334155;color:#cbd5e1}.modal--wide{width:560px}.modal-input{background:#0f1117;border:1px solid #1e2535;border-radius:6px;color:#e2e8f0;font-family:inherit;font-size:14px;padding:9px 12px;width:100%;transition:border-color .15s}.modal-input:focus{outline:none;border-color:#3b82f6}.modal-input::placeholder{color:#334155}.modal-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.modal-textarea{resize:vertical;min-height:64px}.modal-save-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px;transition:background .15s}.modal-save-btn:hover:not(:disabled){background:#2563eb}.modal-save-btn:disabled{opacity:.5;cursor:not-allowed}.field-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.log-app-btn{background:#052e16;border:1px solid #166534;border-radius:6px;color:#86efac;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .15s;white-space:nowrap}.log-app-btn:hover{background:#14532d;border-color:#22c55e}.applied-badge{background:#052e16;border:1px solid #166534;border-radius:6px;color:#86efac;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.dash-section{padding:20px 24px;border-bottom:1px solid #1e2535;flex-shrink:0}.dash-section--cal{display:flex;flex-direction:column;flex:1;min-height:520px}.dash-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.dash-section-title{font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#475569;margin:0}.dash-range-filter{display:flex;gap:4px}.dash-range-btn{background:none;border:1px solid #1e2535;border-radius:5px;color:#64748b;cursor:pointer;font-size:12px;padding:4px 10px;transition:all .15s}.dash-range-btn:hover{border-color:#334155;color:#cbd5e1}.dash-range-btn--active{background:#1e3a5f;border-color:#2563eb;color:#93c5fd}.dash-stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}@media (max-width: 1100px){.dash-stats-grid{grid-template-columns:repeat(3,1fr)}}.dash-stat-card{background:#161b27;border:1px solid #1e2535;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:16px}.dash-stat-card--muted{opacity:.55}.dash-stat-value{font-size:28px;font-weight:700;color:#f8fafc;line-height:1}.dash-stat-label{font-size:12px;color:#64748b}.dash-stat-soon{font-size:10px;color:#334155;margin-top:2px;text-transform:uppercase;letter-spacing:.06em}.dash-week-range{font-size:12px;color:#475569}.dash-stats-grid--3{grid-template-columns:repeat(3,1fr)}.dash-today-row{display:flex;gap:16px;align-items:flex-start}.dash-today-left{flex:0 0 42%;min-width:0}.dash-today-right{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.dash-today-date{margin-bottom:14px}.dash-today-dayname{display:block;font-size:22px;font-weight:700;color:#f8fafc;line-height:1.2}.dash-today-monthday{display:block;font-size:13px;color:#64748b;margin-top:3px}.dash-today-events{display:flex;flex-direction:column;gap:4px}.dash-today-label{font-size:12px;font-weight:600;color:#475569;letter-spacing:.04em;text-transform:uppercase}.dash-today-textarea{background:#161b27;border:1px solid #1e2535;border-radius:8px;color:#cbd5e1;font-family:inherit;font-size:14px;line-height:1.6;min-height:120px;padding:12px;resize:vertical;width:100%;box-sizing:border-box;transition:border-color .15s}.dash-today-textarea:focus{border-color:#2563eb;outline:none}.dash-today-textarea::placeholder{color:#334155}.dash-empty-msg{color:#475569;font-size:13px;margin:0}.dash-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.dash-week-col{background:#161b27;border:1px solid #1e2535;border-radius:8px;display:flex;flex-direction:column;min-height:90px;overflow:hidden}.dash-week-col--today{border-color:#2563eb;background:#0d1624}.dash-week-col--past{opacity:.45}.dash-week-col-header{display:flex;align-items:center;gap:6px;padding:8px 10px 6px;border-bottom:1px solid #1e2535}.dash-week-col--today .dash-week-col-header{border-bottom-color:#1e3a5f}.dash-week-col-day{font-size:11px;font-weight:700;text-transform:uppercase;color:#475569;letter-spacing:.05em}.dash-week-col-num{font-size:13px;font-weight:600;color:#94a3b8;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-left:auto}.dash-week-col-num--today{background:#3b82f6;color:#fff;font-weight:700}.dash-week-col-events{display:flex;flex-direction:column;gap:3px;padding:6px 6px 8px;flex:1}.dash-week-col-empty{color:#2d3748;font-size:13px;padding:2px 4px}.dash-week-event{background:#1e3a5f;border:none;border-radius:4px;color:#93c5fd;cursor:pointer;display:flex;flex-direction:column;font-size:11px;padding:4px 6px;text-align:left;transition:background .1s;width:100%}.dash-week-event:hover{background:#2563eb;color:#fff}.dash-week-event-time{color:#60a5fa;font-size:10px;font-weight:700}.dash-week-event:hover .dash-week-event-time{color:#bfdbfe}.dash-week-event-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-cal-body{display:flex;flex:1;overflow:hidden}.gp-input-wrap{display:flex;overflow:hidden;width:50%;flex-shrink:0;transition:width .45s cubic-bezier(.4,0,.2,1),opacity .3s ease;opacity:1}.gp-input-wrap--hidden{width:0;opacity:0}.gp-output-wrap{flex:1;display:flex;overflow:hidden;min-width:0}.gp-exports-wrap{display:flex;overflow:hidden;width:0;flex-shrink:0;opacity:0;transition:width .45s cubic-bezier(.4,0,.2,1),opacity .3s ease .15s}.gp-exports-wrap--visible{width:260px;opacity:1}.output-panel-footer{flex-shrink:0;display:flex;align-items:center;padding:12px 0 0;border-top:1px solid #1e2535}.op-next-btn{background:#166534;border:1px solid #16a34a;border-radius:6px;color:#86efac;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;text-align:center;transition:background .15s,border-color .15s;width:100%}.op-next-btn:hover{background:#14532d;border-color:#22c55e}.op-back-btn{background:transparent;border:1px solid #1e2535;border-radius:6px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;text-align:center;transition:all .15s;width:100%}.op-back-btn:hover{border-color:#334155;color:#94a3b8}.exports-panel{display:flex;flex-direction:column;height:100%;padding:20px 16px;border-left:1px solid #1e2535;overflow:hidden}.exports-panel-title{color:#f8fafc;font-size:14px;font-weight:600;letter-spacing:.04em;margin:0 0 16px;text-transform:uppercase}.exports-list{display:flex;flex-direction:column;gap:8px}.export-row-btn{align-items:center;background:#161b27;border:1px solid #1e2535;border-radius:8px;color:#cbd5e1;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;padding:12px 14px;text-align:left;transition:background .15s,border-color .15s,color .15s;width:100%}.export-row-btn:hover:not(:disabled){background:#1e2535;border-color:#334155;color:#f8fafc}.export-row-btn:disabled{cursor:not-allowed;opacity:.35}.exports-panel-footer{border-top:1px solid #1e2535;margin-top:auto;padding-top:16px}.applied-btn{background:#166534;border:1px solid #16a34a;border-radius:6px;color:#86efac;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;text-align:center;transition:background .15s,border-color .15s;width:100%}.applied-btn:hover:not(:disabled){background:#14532d;border-color:#22c55e}.applied-btn:disabled{cursor:not-allowed;opacity:.35}.applied-success{background:#052e16;border:1px solid #166534;border-radius:6px;color:#86efac;font-size:14px;font-weight:600;padding:10px 20px;text-align:center}.applied-confirm{display:flex;flex-direction:column;gap:8px}.cal-create-status{color:#64748b;font-size:12px;text-align:center}.cal-create-status--ok{color:#4ade80}.cal-create-status--err{color:#f87171}.cal-connect-btn{background:none;border:1px solid #1e3a5f;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:12px;padding:7px 12px;transition:all .15s;width:100%}.cal-connect-btn:hover{background:#1e3a5f;color:#93c5fd}.pdf-preview-modal{background:#0f1117;border:1px solid #1e2535;border-radius:12px;display:flex;flex-direction:column;height:88vh;overflow:hidden;width:820px;max-width:95vw}.pdf-preview-header{align-items:center;border-bottom:1px solid #1e2535;display:flex;flex-shrink:0;justify-content:space-between;padding:14px 20px}.pdf-preview-title{color:#e2e8f0;font-size:15px;font-weight:600}.pdf-preview-actions{align-items:center;display:flex;gap:10px}.pdf-download-btn{background:#1e3a5f;border:1px solid #2563eb;border-radius:6px;color:#93c5fd;cursor:pointer;font-size:13px;font-weight:600;padding:7px 16px;transition:background .15s}.pdf-download-btn:hover:not(:disabled){background:#1d4ed8;color:#eff6ff}.pdf-download-btn:disabled{cursor:not-allowed;opacity:.5}.pdf-close-btn{background:transparent;border:1px solid #1e2535;border-radius:6px;color:#64748b;cursor:pointer;font-size:16px;line-height:1;padding:6px 10px;transition:border-color .15s,color .15s}.pdf-close-btn:hover{border-color:#475569;color:#94a3b8}.pdf-preview-body{flex:1;overflow:hidden}.pdf-preview-body iframe{border:none;display:block}.pdf-loading{align-items:center;color:#64748b;display:flex;font-size:14px;height:100%;justify-content:center}.modal--detail{display:flex;flex-direction:column;height:80vh;max-height:80vh;width:780px;max-width:95vw;padding:0;overflow:hidden}.detail-header{align-items:flex-start;display:flex;justify-content:space-between;padding:20px 20px 12px;border-bottom:1px solid #1e2535;flex-shrink:0}.detail-tabs{display:flex;gap:4px;padding:10px 20px;border-bottom:1px solid #1e2535;flex-shrink:0;flex-wrap:wrap}.detail-tab-btn{background:none;border:1px solid transparent;border-radius:5px;color:#64748b;cursor:pointer;font-size:13px;padding:5px 12px;transition:all .15s}.detail-tab-btn:hover{color:#cbd5e1;border-color:#334155}.detail-tab-btn--active{background:#1e2535;border-color:#334155;color:#e2e8f0}.detail-body{flex:1;overflow-y:auto;padding:16px 20px}.detail-pre{color:#cbd5e1;font-family:Geist Mono,Fira Code,monospace;font-size:13px;line-height:1.7;margin:0;white-space:pre-wrap;word-break:break-word}.detail-gaps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.detail-gap-item{background:#1e2535;border:1px solid #334155;border-radius:5px;color:#94a3b8;font-size:13px;padding:5px 12px}.detail-empty{color:#475569;font-size:14px}.td-actions{display:flex;gap:6px;align-items:center}.view-btn{background:none;border:1px solid #1e3a5f;border-radius:5px;color:#3b82f6;cursor:pointer;font-size:12px;padding:5px 10px;transition:all .15s;white-space:nowrap}.view-btn:hover{background:#1e3a5f;color:#93c5fd}.cal-row-btn{background:none;border:1px solid transparent;border-radius:5px;cursor:pointer;font-size:14px;line-height:1;padding:4px 6px;transition:background .15s}.cal-row-btn:hover:not(:disabled){background:#1e2535}.cal-row-btn:disabled{cursor:wait;opacity:.5}.modal-delete-btn{background:none;border:1px solid #3b0c0c;border-radius:6px;color:#f87171;cursor:pointer;font-size:14px;padding:9px 16px;transition:all .15s}.modal-delete-btn:hover{background:#3b0c0c;border-color:#ef4444}.modal-delete-confirm-btn{background:#7f1d1d;border:1px solid #ef4444;border-radius:6px;color:#fecaca;cursor:pointer;font-size:14px;font-weight:600;padding:9px 16px;transition:all .15s}.modal-delete-confirm-btn:hover:not(:disabled){background:#991b1b}.modal-delete-confirm-btn:disabled{cursor:wait;opacity:.6}.delete-confirm-text{color:#fca5a5;font-size:13px}.section-heading-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.gap-indicator-btn{align-items:center;background:#ef444426;border:1px solid rgba(239,68,68,.4);border-radius:50%;color:#f87171;cursor:pointer;display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:20px;justify-content:center;transition:background .15s,border-color .15s;width:20px}.gap-indicator-btn:hover,.gap-indicator-btn--open{background:#ef44444d;border-color:#f87171}.gap-indicator-btn--inline{margin-left:auto}.section-gap-panel{background:#0d111d;border:1px solid #334155;border-radius:6px;display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:10px 12px}.section-gap-panel-header{align-items:center;color:#64748b;display:flex;font-size:11px;font-weight:600;justify-content:space-between;letter-spacing:.06em;text-transform:uppercase}.section-gap-close{background:none;border:none;color:#475569;cursor:pointer;font-size:16px;line-height:1;padding:0;transition:color .15s}.section-gap-close:hover{color:#94a3b8}.section-gap-entry{border-top:1px solid #1e2535;display:flex;flex-direction:column;gap:3px;padding-top:6px}.gap-jump-btn{background:none;border:1px solid #334155;border-radius:4px;color:#60a5fa;cursor:pointer;font-size:11px;padding:2px 6px;transition:background .15s}.gap-jump-btn:hover{background:#1e2535}.gap-rerun-btn{background:#6366f126;border:1px solid rgba(99,102,241,.4);border-radius:4px;color:#a5b4fc;cursor:pointer;font-size:11px;font-weight:600;padding:2px 7px;transition:background .15s,border-color .15s;white-space:nowrap}.gap-rerun-btn:hover:not(:disabled){background:#6366f14d;border-color:#818cf8}.gap-rerun-btn:disabled{cursor:wait;opacity:.5}.dot-bounce{align-items:center;display:inline-flex;gap:3px}.dot-bounce span{animation:bounce-dot .9s ease-in-out infinite;background:currentColor;border-radius:50%;display:inline-block;height:4px;width:4px}.dot-bounce span:nth-child(2){animation-delay:.15s}.dot-bounce span:nth-child(3){animation-delay:.3s}@keyframes bounce-dot{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}}.gap-resolved-badge{background:#22c55e26;border:1px solid rgba(34,197,94,.4);border-radius:4px;color:#4ade80;font-size:11px;font-weight:600;padding:2px 7px;white-space:nowrap}.section-gap-entry--resolved .gap-term,.gap-item--resolved .gap-term{color:#4ade80;text-decoration:line-through;text-decoration-color:#4ade8080}.gaps-divider{list-style:none;display:flex;align-items:center;gap:8px;margin:10px 0 6px;padding:0}.gaps-divider:before,.gaps-divider:after{content:"";flex:1;height:1px;background:#1e2d3d}.gaps-divider-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#475569;white-space:nowrap}.gap-item--addressed .gap-term,.detail-gap-item--addressed .gap-term{color:#475569}.gap-item--addressed .gap-placement,.detail-gap-item--addressed .gap-placement{color:#334155}.gap-item--addressed .gap-priority,.detail-gap-item--addressed .gap-priority{opacity:.45}.recheck-inline-error{color:#f87171;font-size:12px;margin:4px 0 8px}.log-feed{display:flex;flex-direction:column;gap:28px;max-width:720px}.log-group{display:flex;flex-direction:column;gap:2px}.log-group-date{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#475569;border-bottom:1px solid #1e2535;padding-bottom:6px;margin-bottom:6px}.log-event{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #0f1117}.log-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.log-dot--applied{background:#3b82f6}.log-dot--follow_up{background:#64748b}.log-dot--generate{background:#8b5cf6}.log-dot--regenerate{background:#f59e0b}.log-dot--recheck{background:#14b8a6}.log-dot--follow_up_scheduled{background:#0ea5e9;opacity:.55}.log-event-type{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;width:90px;flex-shrink:0}.log-event-time{font-size:12px;color:#334155;width:74px;flex-shrink:0;text-align:right}.log-event-title{font-size:14px;color:#cbd5e1;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-event-detail{color:#475569;font-size:13px}.log-status{border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.log-status--applied{background:#1e3a5f;color:#93c5fd}.log-status--followed-up{background:#2e1a47;color:#c4b5fd}.log-status--interviewing{background:#3b2900;color:#fcd34d}.log-status--offer{background:#052e16;color:#86efac}.log-status--rejected{background:#3b0c0c;color:#fca5a5}.log-status--closed{background:#1e2535;color:#64748b}.log-error{color:#f87171;font-size:14px}@media (max-width: 768px){.app{flex-direction:column;height:100vh;height:100svh}.app-main{flex:1;min-height:0;overflow:hidden}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:52px;min-height:52px;flex-direction:row;align-items:stretch;flex-shrink:0;border-right:none;border-top:1px solid #1e2535;z-index:50;overflow:visible}.sidebar-brand,.sidebar-desktop-nav{display:none}.sidebar-mobile-tabs{display:flex;flex:1;flex-direction:row;align-items:stretch}.mobile-tab{flex:1;display:flex;align-items:center;justify-content:center;padding:4px 2px;font-size:11px;font-weight:500;color:#475569;text-decoration:none;border-radius:0;text-align:center;background:none;border:none;cursor:pointer;font-family:inherit;transition:color .15s,background .15s}.mobile-tab--active{color:#f8fafc;background:#ffffff0a}.mobile-job-sheet{position:absolute;bottom:100%;left:0;right:0;background:#0a0d14;border-top:1px solid #1e2535;display:flex;flex-direction:row;height:0;overflow:hidden;transition:height .15s ease;z-index:49}.mobile-job-sheet--open{height:52px}.mobile-job-item{flex:1;display:flex;align-items:center;justify-content:center;padding:4px;font-size:12px;font-weight:500;color:#64748b;text-decoration:none;text-align:center;transition:color .15s,background .15s}.mobile-job-item--active,.mobile-job-item:hover{color:#f8fafc;background:#ffffff0a}.page{padding:16px 16px 68px}.generate-page-container{overflow:auto;padding-bottom:52px}.generate-page{flex-direction:column;overflow:visible}.gp-input-wrap{width:100%;height:auto;overflow:visible;transition:none}.gp-input-wrap--hidden{display:none;width:100%}.gp-output-wrap{overflow:visible;min-height:50vh}.panel{overflow:visible}.input-panel{border-right:none;border-bottom:1px solid #1e2535}.input-panel form{height:auto}.input-panel form>.field:nth-child(2),.input-panel form>.field:nth-child(3){flex:none}.input-panel form>.field:nth-child(2) textarea,.input-panel form>.field:nth-child(3) textarea{height:160px;flex:none}.field-row,.modal-row{grid-template-columns:1fr}.dash-stats-grid{grid-template-columns:repeat(2,1fr)}.modal,.modal--wide{width:calc(100vw - 24px);max-width:100%}.modal--detail{width:calc(100vw - 16px);height:92vh;max-height:92vh}.detail-tabs{overflow-x:auto;flex-wrap:nowrap}.log-event-time{display:none}.log-event-type{width:72px}}
