:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box;margin:0;padding:0}body{color:#e0e0e0;background:#0f0f1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-layout{min-height:100vh;display:flex}.sidebar{background:#1a1a2e;border-right:1px solid #2a2a4a;width:280px;height:100vh;padding:1rem;position:sticky;top:0;overflow-y:auto}.sidebar h2{color:#8b8bff;margin-bottom:1rem;font-size:1rem}.search-btn{text-align:left;color:#c0c0d0;cursor:pointer;background:0 0;border:1px solid #2a2a4a;border-radius:6px;width:100%;margin-bottom:.4rem;padding:.6rem .8rem;font-size:.85rem;display:block}.search-btn:hover,.search-btn.active{background:#2a2a4a;border-color:#6366f1}.search-date{font-weight:600;display:block}.search-stats{color:#888;font-size:.75rem}.main-content{flex:1;max-width:900px;padding:1.5rem 2rem}.search-header{margin-bottom:1.5rem}.search-header h1{margin-bottom:.5rem;font-size:1.3rem}.stats{gap:1rem;font-size:.9rem;display:flex}.stats .postuler{color:#4ade80}.stats .peut-etre{color:#fbbf24}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem;display:flex}.tab{color:#aaa;cursor:pointer;background:0 0;border:1px solid #333;border-radius:20px;padding:.5rem 1rem;font-size:.85rem}.tab:hover{color:#fff;border-color:#6366f1}.tab.active{color:#fff;background:#6366f1;border-color:#6366f1}.badge{background:#333;border-radius:10px;margin-left:.4rem;padding:.1rem .4rem;font-size:.7rem}.job-list{flex-direction:column;gap:.8rem;display:flex}.job-card{background:#1a1a2e;border:1px solid #2a2a4a;border-left:3px solid #6366f1;border-radius:8px;padding:1rem 1.2rem}.job-card.postuler{border-left-color:#4ade80}.job-card.passer{opacity:.7;border-left-color:#ef4444}.job-header{justify-content:space-between;align-items:start;gap:.5rem;display:flex}.job-header h3{font-size:.95rem;font-weight:600}.badge-postuler,.badge-peut-etre,.badge-passer{white-space:nowrap;border-radius:10px;padding:.2rem .5rem;font-size:.7rem}.badge-postuler{color:#4ade80;background:#14532d}.badge-peut-etre{color:#fbbf24;background:#78350f}.badge-passer{color:#ef4444;background:#3f0a0a}.job-meta{color:#999;flex-wrap:wrap;gap:.8rem;margin:.5rem 0;font-size:.8rem;display:flex}.job-analysis{color:#bbb;margin:.5rem 0;font-size:.85rem;font-style:italic}.job-points{margin:.4rem 0;font-size:.8rem}.job-points strong{color:#888}.job-points ul{margin:.2rem 0 0 1.2rem}.job-points li{color:#aaa;margin-bottom:.1rem}.job-points.warning strong{color:#fbbf24}.job-points.warning li{color:#d4a017}.job-link{color:#818cf8;margin-top:.5rem;font-size:.8rem;text-decoration:none;display:inline-block}.job-link:hover{text-decoration:underline}.prepare-actions{align-items:center;gap:.5rem;margin-top:.7rem;display:flex}.prepare-btn{color:#c7d2fe;cursor:pointer;background:#312e81;border:1px solid #4f46e5;border-radius:6px;padding:.45rem .9rem;font-size:.82rem;font-weight:700;transition:background .15s,border-color .15s}.prepare-btn:hover{background:#3730a3;border-color:#6366f1}.prepare-btn:disabled{opacity:.6;cursor:default}.prepare-message{border-radius:6px;margin-top:.8rem;padding:.55rem .8rem;font-size:.82rem}.prepare-message.success{color:#4ade80;background:#102a1a;border:1px solid #166534}.prepare-message.error{color:#f87171;background:#3f0a0a;border:1px solid #7f1d1d}.loading,.empty-state{text-align:center;color:#666;padding:3rem}.mode-btn{margin-bottom:.3rem}.candidatures-list h1,.candidature-detail h1{margin-bottom:1rem;font-size:1.2rem}.candidature-detail h2{color:#8b8bff;margin:1.5rem 0 .5rem;font-size:1rem}.candidature-meta{color:#999;gap:1rem;margin-bottom:1rem;font-size:.85rem;display:flex}.copy-btn{color:#818cf8;cursor:pointer;background:#2a2a4a;border:1px solid #444;border-radius:6px;margin-bottom:.8rem;padding:.4rem .8rem;font-size:.8rem}.copy-btn:hover{background:#3a3a5a}.cv-actions{flex-wrap:wrap;align-items:center;gap:.55rem;margin:.4rem 0 .8rem;display:flex}.cv-generator-panel{background:#151526;border:1px solid #353560;border-radius:10px;margin-top:1.5rem;padding:1rem 1.1rem}.cv-generator-heading{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.candidature-detail .cv-generator-heading h2{margin:0}.optional-badge{color:#a5b4fc;background:#24224a;border:1px solid #4f46e5;border-radius:999px;padding:.18rem .5rem;font-size:.7rem;font-weight:700}.cv-generator-help{color:#a8a8bc;margin:.55rem 0 .8rem;font-size:.83rem;line-height:1.5}.cv-generator-note{color:#fbbf24;font-size:.78rem}.cv-feedback{border-radius:7px;justify-content:space-between;align-items:center;gap:.75rem;margin:.8rem 0;padding:.65rem .8rem;font-size:.82rem;display:flex}.cv-feedback.success{color:#4ade80;background:#102a1a;border:1px solid #166534}.cv-feedback.error{color:#f87171;background:#3f0a0a;border:1px solid #7f1d1d}.cv-feedback a{color:inherit;white-space:nowrap;font-weight:700}.cv-generator-panel .cv-review{margin-top:.8rem}.cv-generator-panel h3{color:#c7d2fe;margin:1rem 0 .65rem;font-size:.9rem}.download-btn{color:#93c5fd;background:#0f172a;border:1px solid #334155;border-radius:6px;padding:.42rem .75rem;font-size:.8rem;text-decoration:none;display:inline-block}.download-btn:hover{background:#1e293b;border-color:#3b82f6}.cv-review{color:#c0c0d0;flex-wrap:wrap;gap:.55rem;margin-bottom:1rem;font-size:.82rem;display:flex}.cv-review span{background:#10101d;border:1px solid #2a2a4a;border-radius:999px;padding:.25rem .6rem}.lettre-content{white-space:pre-wrap;color:#ccc;background:#0f0f1a;border:1px solid #2a2a4a;border-radius:8px;max-height:70vh;padding:1.2rem 1.5rem;font-family:inherit;font-size:.85rem;line-height:1.7;overflow-y:auto}.back-btn{margin-bottom:1rem}.postule-btn{color:#4ade80;cursor:pointer;background:#14532d;border:1px solid #166534;border-radius:6px;padding:.4rem .9rem;font-size:.82rem;font-weight:600;transition:background .15s}.postule-btn:hover{background:#166534}.postule-btn:disabled{opacity:.6;cursor:default}.badge-applied{color:#4ade80;background:#14532d;border-radius:20px;padding:.3rem .8rem;font-size:.82rem;font-weight:600;display:inline-block}.badge-applied-small{white-space:nowrap;color:#4ade80;background:#14532d;border-radius:10px;padding:.2rem .5rem;font-size:.7rem}.annuler-btn{color:#888;cursor:pointer;background:0 0;border:1px solid #444;border-radius:6px;margin-left:.5rem;padding:.2rem .6rem;font-size:.75rem}.annuler-btn:hover{color:#ccc;border-color:#666}.annuler-btn:disabled{opacity:.5;cursor:default}.postule-actions{margin-top:.6rem}.postule-zone{flex-wrap:wrap;align-items:center;gap:.7rem;margin-bottom:1rem;display:flex}.postule-applied{align-items:center;gap:.5rem;display:flex}.postule-error{color:#f87171;font-size:.78rem}.postule-offline{color:#888;font-size:.78rem;font-style:italic}.backend-warning{color:#fbbf24;background:#2d1a0a;border:1px solid #78350f;border-radius:6px;margin-bottom:1rem;padding:.6rem 1rem;font-size:.82rem}.backend-warning code{background:#1a0f00;border-radius:4px;padding:.1rem .4rem;font-size:.8rem}.job-card.is-applied{border-left-color:#22c55e}.meta-applied{color:#4ade80;font-weight:600}.badge-relance-due{white-space:nowrap;color:#fb923c;background:#7c2d12;border-radius:10px;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.agency-card{border-left-color:#38bdf8}.badge-agency{white-space:nowrap;color:#7dd3fc;background:#0c4a6e;border-radius:10px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.agency-actions{flex-wrap:wrap;gap:1rem;margin-top:.7rem;display:flex}.weather-view h2{color:#8b8bff;margin:1.4rem 0 .7rem;font-size:1rem}.weather-search{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.weather-search input{color:#e0e0e0;background:#10101d;border:1px solid #2a2a4a;border-radius:8px;flex:1;min-width:240px;padding:.55rem .75rem;font-size:.9rem}.weather-search input:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 2px #6366f12e}.weather-location-btn{margin-bottom:0}.weather-current{background:linear-gradient(135deg,#1a1a2e 0%,#18203a 100%);border:1px solid #2a2a4a;border-radius:14px;gap:1rem;padding:1.2rem;display:grid;box-shadow:0 18px 40px #0000002e}.weather-place{color:#fff;font-size:1.05rem;font-weight:700}.weather-place span,.weather-updated{color:#999;font-size:.82rem;font-weight:400}.weather-updated{margin-top:.2rem}.weather-main{align-items:center;gap:1rem;display:flex}.weather-icon{font-size:4rem;line-height:1}.weather-temp{color:#fff;font-size:3.2rem;font-weight:800;line-height:1}.weather-desc{color:#c7d2fe;margin-top:.3rem}.weather-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.weather-metrics span,.weather-mini-card,.weather-day-card{background:#10101d;border:1px solid #2a2a4a;border-radius:10px;padding:.75rem}.weather-metrics span{color:#c0c0d0;font-size:.85rem}.weather-hourly{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.6rem;display:grid}.weather-mini-card{flex-direction:column;gap:.35rem;min-height:126px;display:flex}.weather-mini-card span,.weather-mini-card small,.weather-day-card span{color:#999;font-size:.78rem}.weather-mini-card strong{color:#fff;font-size:.95rem}.weather-daily{gap:.6rem;display:grid}.weather-day-card{grid-template-columns:90px 1fr 90px 80px;align-items:center;gap:.7rem;display:grid}.weather-day-card strong{color:#ddd;font-size:.9rem}@media (width<=720px){.app-layout{flex-direction:column}.sidebar{width:100%;height:auto;position:static}.main-content{padding:1rem}.weather-metrics{grid-template-columns:1fr}.weather-day-card{grid-template-columns:1fr;gap:.35rem}}
