.tw-pointer-events-none{pointer-events:none}.tw-fixed{position:fixed}.tw-absolute{position:absolute}.tw-relative{position:relative}.tw-inset-0{top:0;right:0;bottom:0;left:0}.tw-z-\[1000\]{z-index:1000}.tw-z-\[9999\]{z-index:9999}.tw-col-span-2{grid-column:span 2 / span 2}.tw-col-span-full{grid-column:1 / -1}.tw-m-auto{margin:auto}.tw-mx-auto{margin-left:auto;margin-right:auto}.tw-my-2{margin-top:.5rem;margin-bottom:.5rem}.tw-my-4{margin-top:1rem;margin-bottom:1rem}.tw-mb-1{margin-bottom:.25rem}.tw-mb-2\.5{margin-bottom:.625rem}.tw-mb-3{margin-bottom:.75rem}.tw-mb-3\.5{margin-bottom:.875rem}.tw-mb-4{margin-bottom:1rem}.tw-mb-5{margin-bottom:1.25rem}.tw-mb-6{margin-bottom:1.5rem}.tw-mt-0\.5{margin-top:.125rem}.tw-mt-1{margin-top:.25rem}.tw-mt-1\.5{margin-top:.375rem}.tw-mt-2{margin-top:.5rem}.tw-mt-3{margin-top:.75rem}.tw-mt-4{margin-top:1rem}.tw-mt-8{margin-top:2rem}.tw-block{display:block}.tw-flex{display:flex}.tw-inline-flex{display:inline-flex}.tw-grid{display:grid}.tw-h-1\.5{height:.375rem}.tw-h-12{height:3rem}.tw-h-2{height:.5rem}.tw-h-2\.5{height:.625rem}.tw-h-3{height:.75rem}.tw-h-8{height:2rem}.tw-h-9{height:2.25rem}.tw-h-\[250px\]{height:250px}.tw-h-\[310px\]{height:310px}.tw-h-\[42px\]{height:42px}.tw-h-full{height:100%}.tw-h-px{height:1px}.tw-max-h-\[92vh\]{max-height:92vh}.tw-max-h-\[calc\(100vh-210px\)\]{max-height:calc(100vh - 210px)}.tw-min-h-10{min-height:2.5rem}.tw-min-h-20{min-height:5rem}.tw-min-h-\[105px\]{min-height:105px}.tw-min-h-\[220px\]{min-height:220px}.tw-min-h-\[34px\]{min-height:34px}.tw-min-h-\[42px\]{min-height:42px}.tw-min-h-\[90px\]{min-height:90px}.tw-min-h-\[calc\(100vh-40px\)\]{min-height:calc(100vh - 40px)}.tw-w-12{width:3rem}.tw-w-2{width:.5rem}.tw-w-2\.5{width:.625rem}.tw-w-3{width:.75rem}.tw-w-8{width:2rem}.tw-w-9{width:2.25rem}.tw-w-\[42px\]{width:42px}.tw-w-\[70px\]{width:70px}.tw-w-\[min\(100\%\,650px\)\]{width:min(100%,650px)}.tw-w-\[min\(1050px\,96vw\)\]{width:min(1050px,96vw)}.tw-w-\[min\(560px\,100\%\)\]{width:min(560px,100%)}.tw-w-full{width:100%}.tw-min-w-0{min-width:0px}.tw-min-w-10{min-width:2.5rem}.tw-max-w-\[750px\]{max-width:750px}.tw-flex-1{flex:1 1 0%}.tw-shrink-0{flex-shrink:0}.tw-cursor-pointer{cursor:pointer}.tw-resize-y{resize:vertical}.tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tw-grid-cols-\[12px_1fr_auto\]{grid-template-columns:12px 1fr auto}.tw-grid-cols-\[1fr_1fr_36px\]{grid-template-columns:1fr 1fr 36px}.tw-grid-cols-\[32px_1fr\]{grid-template-columns:32px 1fr}.tw-grid-cols-\[36px_1fr\]{grid-template-columns:36px 1fr}.tw-grid-cols-\[minmax\(220px\,0\.9fr\)_minmax\(220px\,1fr\)\]{grid-template-columns:minmax(220px,.9fr) minmax(220px,1fr)}.tw-flex-col{flex-direction:column}.tw-flex-wrap{flex-wrap:wrap}.tw-place-items-center{place-items:center}.tw-items-start{align-items:flex-start}.tw-items-center{align-items:center}.tw-justify-end{justify-content:flex-end}.tw-justify-center{justify-content:center}.tw-justify-between{justify-content:space-between}.tw-justify-items-center{justify-items:center}.tw-gap-1{gap:.25rem}.tw-gap-1\.5{gap:.375rem}.tw-gap-2{gap:.5rem}.tw-gap-2\.5{gap:.625rem}.tw-gap-3{gap:.75rem}.tw-gap-3\.5{gap:.875rem}.tw-gap-4{gap:1rem}.tw-gap-x-2\.5{-moz-column-gap:.625rem;column-gap:.625rem}.tw-gap-y-1\.5{row-gap:.375rem}.tw-overflow-auto{overflow:auto}.tw-overflow-hidden{overflow:hidden}.tw-overflow-y-auto{overflow-y:auto}.tw-whitespace-nowrap{white-space:nowrap}.tw-break-words{overflow-wrap:break-word}.tw-rounded-\[10px\]{border-radius:10px}.tw-rounded-\[11px\]{border-radius:11px}.tw-rounded-\[12px\]{border-radius:12px}.tw-rounded-\[14px\]{border-radius:14px}.tw-rounded-\[16px\]{border-radius:16px}.tw-rounded-app{border-radius:8px}.tw-rounded-full{border-radius:9999px}.tw-border{border-width:1px}.tw-border-0{border-width:0px}.tw-border-2{border-width:2px}.tw-border-b{border-bottom-width:1px}.tw-border-t{border-top-width:1px}.tw-border-dashed{border-style:dashed}.tw-border-\[\#64ccc9\]{--tw-border-opacity: 1;border-color:rgb(100 204 201 / var(--tw-border-opacity, 1))}.tw-border-\[\#cfdade\]{--tw-border-opacity: 1;border-color:rgb(207 218 222 / var(--tw-border-opacity, 1))}.tw-border-\[\#dce4e7\]{--tw-border-opacity: 1;border-color:rgb(220 228 231 / var(--tw-border-opacity, 1))}.tw-border-\[\#e2e8f0\]{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.tw-border-\[\#e6edef\]{--tw-border-opacity: 1;border-color:rgb(230 237 239 / var(--tw-border-opacity, 1))}.tw-border-\[\#edf3f4\]{--tw-border-opacity: 1;border-color:rgb(237 243 244 / var(--tw-border-opacity, 1))}.tw-border-\[\#ee8cad\]{--tw-border-opacity: 1;border-color:rgb(238 140 173 / var(--tw-border-opacity, 1))}.tw-border-\[\#efa7c0\]{--tw-border-opacity: 1;border-color:rgb(239 167 192 / var(--tw-border-opacity, 1))}.tw-border-\[\#ffb2a6\]{--tw-border-opacity: 1;border-color:rgb(255 178 166 / var(--tw-border-opacity, 1))}.tw-border-brand{--tw-border-opacity: 1;border-color:rgb(27 54 65 / var(--tw-border-opacity, 1))}.tw-border-transparent{border-color:transparent}.tw-bg-\[\#0f172a8c\]{background-color:#0f172a8c}.tw-bg-\[\#d30b4f\]{--tw-bg-opacity: 1;background-color:rgb(211 11 79 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#e3f8f7\]{--tw-bg-opacity: 1;background-color:rgb(227 248 247 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#e6edef\]{--tw-bg-opacity: 1;background-color:rgb(230 237 239 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#e6f3ff\]{--tw-bg-opacity: 1;background-color:rgb(230 243 255 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#eef4f5\]{--tw-bg-opacity: 1;background-color:rgb(238 244 245 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#f3f7f8\]{--tw-bg-opacity: 1;background-color:rgb(243 247 248 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#f6f8f9\]{--tw-bg-opacity: 1;background-color:rgb(246 248 249 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#f8fbfb\]{--tw-bg-opacity: 1;background-color:rgb(248 251 251 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#f9fbff\]{--tw-bg-opacity: 1;background-color:rgb(249 251 255 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#fbfcff\]{--tw-bg-opacity: 1;background-color:rgb(251 252 255 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#fde7ef\]{--tw-bg-opacity: 1;background-color:rgb(253 231 239 / var(--tw-bg-opacity, 1))}.tw-bg-\[\#fff0ee\]{--tw-bg-opacity: 1;background-color:rgb(255 240 238 / var(--tw-bg-opacity, 1))}.tw-bg-black\/50{background-color:#00000080}.tw-bg-brand{--tw-bg-opacity: 1;background-color:rgb(27 54 65 / var(--tw-bg-opacity, 1))}.tw-bg-brand-soft{--tw-bg-opacity: 1;background-color:rgb(238 244 245 / var(--tw-bg-opacity, 1))}.tw-bg-danger-soft{--tw-bg-opacity: 1;background-color:rgb(253 231 239 / var(--tw-bg-opacity, 1))}.tw-bg-success{--tw-bg-opacity: 1;background-color:rgb(15 143 139 / var(--tw-bg-opacity, 1))}.tw-bg-success-soft{--tw-bg-opacity: 1;background-color:rgb(227 248 247 / var(--tw-bg-opacity, 1))}.tw-bg-transparent{background-color:transparent}.tw-bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.tw-p-0{padding:0}.tw-p-2\.5{padding:.625rem}.tw-p-3{padding:.75rem}.tw-p-3\.5{padding:.875rem}.tw-p-4{padding:1rem}.tw-p-5{padding:1.25rem}.tw-p-6{padding:1.5rem}.tw-px-2{padding-left:.5rem;padding-right:.5rem}.tw-px-2\.5{padding-left:.625rem;padding-right:.625rem}.tw-px-3{padding-left:.75rem;padding-right:.75rem}.tw-px-3\.5{padding-left:.875rem;padding-right:.875rem}.tw-px-4{padding-left:1rem;padding-right:1rem}.tw-px-5{padding-left:1.25rem;padding-right:1.25rem}.tw-px-6{padding-left:1.5rem;padding-right:1.5rem}.tw-py-0{padding-top:0;padding-bottom:0}.tw-py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.tw-py-1{padding-top:.25rem;padding-bottom:.25rem}.tw-py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.tw-py-2{padding-top:.5rem;padding-bottom:.5rem}.tw-py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.tw-py-3{padding-top:.75rem;padding-bottom:.75rem}.tw-py-4{padding-top:1rem;padding-bottom:1rem}.tw-py-6{padding-top:1.5rem;padding-bottom:1.5rem}.tw-py-\[22px\]{padding-top:22px;padding-bottom:22px}.tw-pb-2{padding-bottom:.5rem}.tw-pb-4{padding-bottom:1rem}.tw-pt-1{padding-top:.25rem}.tw-pt-4{padding-top:1rem}.tw-text-center{text-align:center}.tw-text-right{text-align:right}.tw-text-2xl{font-size:1.5rem;line-height:2rem}.tw-text-\[10px\]{font-size:10px}.tw-text-\[11px\]{font-size:11px}.tw-text-\[21px\]{font-size:21px}.tw-text-base{font-size:1rem;line-height:1.5rem}.tw-text-lg{font-size:1.125rem;line-height:1.75rem}.tw-text-sm{font-size:.875rem;line-height:1.25rem}.tw-text-xl{font-size:1.25rem;line-height:1.75rem}.tw-text-xs{font-size:.75rem;line-height:1rem}.tw-font-bold{font-weight:700}.tw-font-semibold{font-weight:600}.tw-uppercase{text-transform:uppercase}.tw-italic{font-style:italic}.tw-leading-5{line-height:1.25rem}.tw-text-\[\#0072ce\]{--tw-text-opacity: 1;color:rgb(0 114 206 / var(--tw-text-opacity, 1))}.tw-text-\[\#0a6d68\]{--tw-text-opacity: 1;color:rgb(10 109 104 / var(--tw-text-opacity, 1))}.tw-text-\[\#1b3641\]{--tw-text-opacity: 1;color:rgb(27 54 65 / var(--tw-text-opacity, 1))}.tw-text-\[\#40545d\]{--tw-text-opacity: 1;color:rgb(64 84 93 / var(--tw-text-opacity, 1))}.tw-text-\[\#87979e\]{--tw-text-opacity: 1;color:rgb(135 151 158 / var(--tw-text-opacity, 1))}.tw-text-\[\#9cb8c1\]{--tw-text-opacity: 1;color:rgb(156 184 193 / var(--tw-text-opacity, 1))}.tw-text-\[\#a44900\]{--tw-text-opacity: 1;color:rgb(164 73 0 / var(--tw-text-opacity, 1))}.tw-text-\[\#b30942\]{--tw-text-opacity: 1;color:rgb(179 9 66 / var(--tw-text-opacity, 1))}.tw-text-\[\#d30b4f\]{--tw-text-opacity: 1;color:rgb(211 11 79 / var(--tw-text-opacity, 1))}.tw-text-brand{--tw-text-opacity: 1;color:rgb(27 54 65 / var(--tw-text-opacity, 1))}.tw-text-brand-muted{--tw-text-opacity: 1;color:rgb(96 113 122 / var(--tw-text-opacity, 1))}.tw-text-danger{--tw-text-opacity: 1;color:rgb(179 9 66 / var(--tw-text-opacity, 1))}.tw-text-success{--tw-text-opacity: 1;color:rgb(15 143 139 / var(--tw-text-opacity, 1))}.tw-text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.tw-no-underline{text-decoration-line:none}.tw-shadow-\[0_10px_28px_rgba\(27\,54\,65\,0\.16\)\]{--tw-shadow: 0 10px 28px rgba(27,54,65,.16);--tw-shadow-colored: 0 10px 28px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tw-shadow-\[0_18px_48px_rgba\(27\,54\,65\,0\.12\)\]{--tw-shadow: 0 18px 48px rgba(27,54,65,.12);--tw-shadow-colored: 0 18px 48px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tw-shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.25\)\]{--tw-shadow: 0 20px 60px rgba(0,0,0,.25);--tw-shadow-colored: 0 20px 60px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tw-shadow-\[0_2px_8px_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow: 0 2px 8px rgba(0,0,0,.04);--tw-shadow-colored: 0 2px 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tw-shadow-\[0_4px_18px_rgba\(27\,54\,65\,0\.08\)\]{--tw-shadow: 0 4px 18px rgba(27,54,65,.08);--tw-shadow-colored: 0 4px 18px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tw-outline-none{outline:2px solid transparent;outline-offset:2px}.tw-transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.tw-transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--iisan-ink: #1b3641;--iisan-red: #d30b4f;--iisan-red-dark: #b30942;--iisan-gray: #cccccc;--iisan-muted: #60717a;--iisan-line: #dce4e7;--iisan-soft: #eef4f5;--iisan-aqua: #64ccc9;--iisan-aqua-dark: #0a6d68;--iisan-blue: #0072ce;--iisan-orange: #ff8674;--iisan-orange-dark: #a44900;--iisan-surface: #ffffff;--iisan-bg: #f6f8f9;--font-heading: "Vastine", "Clash Grotesk", "Segoe UI", Arial, sans-serif;--font-body: "Clash Grotesk", "Segoe UI", Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;padding:20px 16px;background:linear-gradient(180deg,#ffffffeb,#f6f8f9f5 36%,#eef4f5f5),radial-gradient(circle at top left,rgba(211,11,79,.08),transparent 30%),radial-gradient(circle at top right,rgba(100,204,201,.12),transparent 28%);color:var(--iisan-ink);font-family:var(--font-body)}html,#root{min-height:100%}h1,h2,h3,h4,.page-head,.sidebar-brand strong{font-family:var(--font-heading)}button,input,select,textarea{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:6px}button svg,a svg{flex-shrink:0}:focus-visible{outline:3px solid rgba(211,11,79,.22);outline-offset:2px}.brand-logo-frame{position:relative;display:inline-flex;flex-shrink:0;overflow:visible;align-items:center;justify-content:center;border-radius:8px;background:#fff}.brand-logo-frame img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.brand-logo-frame-header{width:190px;height:74px;border:1px solid rgba(220,228,231,.8)}.brand-logo-frame-auth{width:236px;height:106px}.brand-logo-frame-compact{width:140px;height:62px}.container{max-width:1180px;margin:0 auto}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;width:min(1440px,100%);min-height:calc(100vh - 40px);margin:0 auto}.app-sidebar{position:sticky;top:20px;display:flex;flex-direction:column;height:calc(100vh - 40px);min-height:620px;padding:16px;overflow:hidden;border:1px solid var(--iisan-line);border-radius:8px;background:#fff;box-shadow:0 18px 48px #1b36411a}.sidebar-close,.menu-toggle,.sidebar-scrim{display:none}.sidebar-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid #dce4e7;border-radius:8px;background:#fff;color:var(--iisan-ink);cursor:pointer}.sidebar-brand{display:grid;gap:10px;padding-bottom:14px;border-bottom:1px solid #e6edef}.sidebar-brand .brand-logo-frame-compact{width:180px;height:78px}.sidebar-brand strong{display:block;color:var(--iisan-ink);font-size:18px;font-weight:700;line-height:1.15}.sidebar-brand span{display:block;margin-top:3px;color:var(--iisan-muted);font-size:12px;line-height:1.35}.sidebar-nav{display:grid;gap:6px;margin-top:18px;padding-right:2px;overflow-y:auto}.sidebar-link{width:100%;min-height:44px;justify-content:flex-start;padding:0 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#40545d;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.sidebar-link:hover{border-color:#dce4e7;background:#f8fbfb;color:var(--iisan-ink)}.sidebar-link.on{border-color:var(--iisan-ink);background:var(--iisan-ink);color:#fff;box-shadow:0 10px 24px #1b36412e}.sidebar-link.on svg{color:var(--iisan-aqua)}.sidebar-profile{display:grid;grid-template-columns:42px minmax(0,1fr) 36px;gap:10px;align-items:center;margin-top:auto;padding:10px;border:1px solid #dce4e7;border-radius:8px;background:#f8fbfb}.profile-avatar{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:#fde7ef;color:#b30942;font-size:13px;font-weight:800}.profile-meta{min-width:0}.profile-meta strong,.profile-meta span,.profile-meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-meta strong{color:var(--iisan-ink);font-size:13px;font-weight:800}.profile-meta span{margin-top:2px;color:#b30942;font-size:11px;font-weight:700}.profile-meta small{margin-top:1px;color:var(--iisan-muted);font-size:10px}.logout-btn{width:36px;height:36px;border:1px solid #efa7c0;border-radius:8px;background:#fff;color:#b30942;cursor:pointer}.logout-btn:hover{background:#fde7ef}.app-main{min-width:0;padding-bottom:20px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:4px 0 14px;border-bottom:1px solid #dce4e7}.menu-toggle{width:42px;height:42px;flex-shrink:0;border:1px solid #dce4e7;border-radius:8px;background:#fff;color:var(--iisan-ink);cursor:pointer;box-shadow:0 8px 22px #1b364114}.page-head span{display:block;color:#60717a;font-size:12px;font-weight:700;text-transform:uppercase}.page-head h1{margin-top:4px;color:var(--iisan-ink);font-size:28px;font-weight:800;line-height:1.1}.page-head strong{flex-shrink:0;padding:7px 12px;border:1px solid #ee8cad;border-radius:8px;background:#fde7ef;color:#b30942;font-size:12px}.toast-wrap{position:fixed;top:18px;right:18px;z-index:10000;width:min(360px,calc(100vw - 32px));pointer-events:none}.app-toast{border:1px solid #dce4e7;border-left:4px solid var(--iisan-red);border-radius:8px;background:#fff;box-shadow:0 16px 42px #1b364129;color:var(--iisan-ink);font-size:13px;font-weight:700;line-height:1.4;padding:12px 14px}.view.on{display:block}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-bottom:1.25rem}.stat{position:relative;display:flex;min-height:104px;flex-direction:column;justify-content:space-between;overflow:hidden;border:1px solid #dce4e7;background:linear-gradient(135deg,#fff,#f8fbfb 58%,#eef4f5);border-radius:8px;padding:1rem 1.1rem;box-shadow:0 10px 26px #1b364112}.stat:before{position:absolute;top:0;right:0;left:0;height:3px;content:"";background:linear-gradient(90deg,var(--iisan-red),var(--iisan-ink),var(--iisan-aqua))}.stat-l{position:relative;font-size:12px;font-weight:700;color:#60717a;margin-bottom:3px}.stat-v{position:relative;font-size:27px;font-weight:800;color:#1b3641;line-height:1.05}.candidate-toolbar{display:flex;justify-content:flex-end;margin:-4px 0 12px}.candidate-toolbar .btn-add{border:0;border-radius:8px;background:var(--iisan-red);color:#fff;padding:9px 16px;font-size:12px;font-weight:700;cursor:pointer}.candidate-toolbar .btn-add:hover{background:var(--iisan-red-dark)}.filters{display:flex;gap:6px;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.fl{font-size:11px;color:#60717a}.fb{font-size:11px;padding:5px 12px;border:1px solid #cfdade;border-radius:8px;background:#fff;color:#60717a;cursor:pointer}.fb.on{background:#fde7ef;color:#b30942;border-color:#ee8cad;font-weight:600}.fb:hover:not(.on){background:#f3f7f8}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{background:#fff;border:1px solid #dce4e7;border-radius:12px;padding:1rem 1.1rem;transition:border-color .15s,box-shadow .15s,transform .15s}.candidate-search{max-width:720px}.search-field{display:flex;min-height:46px;align-items:center;gap:10px;border:1px solid #cfdade;border-radius:8px;background:#fff;padding:0 14px;color:#60717a;box-shadow:0 8px 22px #1b36410f}.search-field:focus-within{border-color:var(--iisan-red);box-shadow:0 0 0 3px #d30b4f1a}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--iisan-ink);font-size:14px}.admin-page{display:block}.admin-card{box-shadow:0 12px 34px #1b364114}.admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #e6edef}.admin-card-head h2,.admin-modal-head h2{color:var(--iisan-ink);font-size:19px;font-weight:800}.admin-card-head p,.admin-modal-head p{margin-top:4px;color:var(--iisan-muted);font-size:12px;line-height:1.45}.admin-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e6edef;border-radius:8px;background:#fbfcff;padding:12px}.admin-row-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;background:#fde7ef;color:#b30942}.admin-row-main{min-width:0}.admin-row-main strong,.admin-row-main span,.admin-row-main small{display:block;overflow-wrap:anywhere}.admin-row-main strong{color:var(--iisan-ink);font-size:14px;font-weight:800}.admin-row-main span{margin-top:2px;color:#40545d;font-size:12px}.admin-row-main small{margin-top:3px;color:var(--iisan-muted);font-size:11px}.admin-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10020;display:flex;align-items:center;justify-content:center;overflow-y:auto;background:#0f172a8c;padding:18px}.admin-modal{width:min(720px,100%);overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 24px 70px #0000003d}.admin-modal-head{display:flex;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #e6edef}.admin-modal-head button{width:36px;height:36px;flex-shrink:0;border:1px solid #dce4e7;border-radius:8px;background:#fff;color:var(--iisan-ink);cursor:pointer}.admin-modal-body{display:grid;gap:14px;padding:20px}.admin-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-modal-grid label:nth-child(3){grid-column:1 / -1}.admin-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px 20px;border-top:1px solid #f0f4f5}.card:hover{border-color:#d30b4f38;box-shadow:0 12px 28px #1b364114;transform:translateY(-1px)}.ch{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.av{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.card-heading{flex:1;min-width:0}.cn{font-size:14px;font-weight:600;color:#1b3641;overflow-wrap:anywhere}.cs{font-size:11px;color:#60717a;margin-top:2px}.pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.pill{font-size:10px;padding:2px 8px;border-radius:99px;font-weight:600;border:0}.pf{background:#fde7ef;color:#d30b4f}.po{background:#e6f3ff;color:#0072ce}.pp{background:#e3f8f7;color:#0a6d68}.sr{display:flex;align-items:center;gap:8px;margin:8px 0}.sl{font-size:11px;color:#60717a;width:36px;flex-shrink:0}.sw{flex:1;height:6px;background:#eef4f5;border-radius:99px;overflow:hidden}.sb{height:100%;border-radius:99px}.bh{background:#0f8f8b}.bm{background:#a44900}.bl{background:#b30942}.sn{font-size:13px;font-weight:700;min-width:40px;text-align:right}.dv{height:1px;background:#e6edef;margin:8px 0}.ig{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.ik{font-size:10px;color:#60717a}.iv{font-size:11px;color:#1b3641;font-weight:600;word-break:break-word}.full-cell{grid-column:1 / -1}.jb{font-size:10px;background:#fff0ee;color:#a44900;padding:2px 7px;border-radius:99px;font-weight:600}.cb{margin-top:8px;background:#f3f7f8;border-radius:8px;padding:8px 10px}.cl{font-size:10px;color:#60717a;margin-bottom:3px}.ct{font-size:11px;color:#40545d;line-height:1.5;font-style:italic}.cf{margin-top:8px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.di{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:#60717a}.card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.edit-btn,.del-btn,.grille-btn,.validate-btn{font-size:10px;padding:3px 9px;border-radius:99px;cursor:pointer}.edit-btn{border:1px solid #cfdade;background:#fff;color:#60717a}.del-btn{border:1px solid #efa7c0;background:#fff;color:#b30942}.grille-btn{border:1px solid #ee8cad;background:#fde7ef;color:#b30942;font-weight:600}.validate-btn{border:1px solid #64ccc9;background:#e3f8f7;color:#0a6d68;font-weight:700}.candidate-dossier-ok{background:#e3f8f7;color:#0a6d68}.candidate-dossier-pending{background:#fff0ee;color:#a44900}.statut-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;margin-top:4px;border-top:1px solid #e6edef}.statut-label{font-size:11px;color:#60717a}.statut-admis,.statut-non-admis,.statut-en-attente,.statut-attente{font-size:11px;padding:3px 10px;border-radius:99px;font-weight:700;white-space:nowrap}.statut-admis{background:#e3f8f7;color:#0a6d68;border:1px solid #64ccc9}.statut-non-admis{background:#fde7ef;color:#b30942;border:1px solid #efa7c0}.statut-en-attente,.statut-attente{background:#fff0ee;color:#a44900;border:1px solid #ffb2a6}.empty-msg{color:#60717a;font-size:13px;padding:1.5rem 0}.cal-wrap{background:#fff;border:1px solid #dce4e7;border-radius:12px;padding:1.25rem}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.cal-head h3{font-size:15px;font-weight:600;color:#1b3641;text-transform:capitalize}.cal-nav{display:flex;gap:4px}.cal-nav button{width:30px;height:30px;border-radius:8px;border:1px solid #cfdade;background:#fff;color:#60717a;cursor:pointer}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.month-grid{margin-top:4px}.cal-dow{font-size:10px;color:#87979e;text-align:center;padding:4px 0;font-weight:600}.cal-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;font-size:12px;color:#1b3641;border:1px solid transparent;background:transparent}.cal-day:hover{background:#f3f7f8}.cal-day.empty{cursor:default}.cal-day.empty:hover{background:none}.cal-day.today{border-color:#0072ce;font-weight:700}.cal-day.has-data{background:#e6f3ff}.cal-day.has-data .cal-num{color:#0072ce;font-weight:700}.cal-day.selected{background:#1b3641}.cal-day.selected .cal-num{color:#fff}.cal-day.selected .cal-dot{background:#fff}.cal-dot{width:4px;height:4px;border-radius:50%;background:#0072ce;margin-top:2px}.cal-legend{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:11px;color:#87979e}.legend-dot{width:6px;height:6px;border-radius:50%;background:#e6f3ff;border:1px solid #0072ce}.day-results{margin-top:1.25rem}.day-label{font-size:13px;color:#60717a;margin:1rem 0 .75rem}.calendar-workspace{display:grid;gap:14px}.cal-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #dce4e7;border-radius:8px;background:linear-gradient(135deg,#fff,#f8fbfb 68%,#eef4f5);padding:18px;box-shadow:0 12px 34px #1b364114}.cal-hero h2,.cal-agenda-head h3,.cal-no-date h3{display:flex;align-items:center;gap:8px;color:var(--iisan-ink);font-size:20px;font-weight:800}.cal-hero p,.cal-agenda-head p,.cal-no-date p{margin-top:5px;color:var(--iisan-muted);font-size:12px;line-height:1.45}.cal-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.cal-hero-actions button,.cal-filters-panel button{min-height:38px;border:1px solid #cfdade;border-radius:8px;background:#fff;color:var(--iisan-ink);padding:0 12px;cursor:pointer;font-size:12px;font-weight:800}.cal-hero-actions button:hover,.cal-filters-panel button:hover{background:#f3f7f8}.cal-insights{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.cal-insight{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;min-height:92px;overflow:hidden;border:1px solid #dce4e7;border-radius:8px;background:#fff;padding:12px;box-shadow:0 8px 22px #1b36410f}.cal-insight:before{position:absolute;top:0;right:0;left:0;height:3px;content:"";background:var(--iisan-ink)}.cal-insight>span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#eef4f5;color:var(--iisan-ink)}.cal-insight strong,.cal-insight small{display:block}.cal-insight strong{color:var(--iisan-ink);font-size:25px;font-weight:850;line-height:1}.cal-insight small{margin-top:5px;color:var(--iisan-muted);font-size:11px;font-weight:800}.cal-insight.blue:before{background:var(--iisan-blue)}.cal-insight.red:before{background:var(--iisan-red)}.cal-insight.orange:before{background:var(--iisan-orange-dark)}.cal-insight.muted:before{background:#87979e}.cal-insight.blue>span{background:#e6f3ff;color:var(--iisan-blue)}.cal-insight.red>span{background:#fde7ef;color:var(--iisan-red-dark)}.cal-insight.orange>span{background:#fff0ee;color:var(--iisan-orange-dark)}.cal-insight.muted>span{background:#f3f7f8;color:#60717a}.cal-filters-panel{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(3,minmax(140px,.8fr)) auto;gap:8px;align-items:center;border:1px solid #dce4e7;border-radius:8px;background:#fff;padding:10px}.cal-search{display:flex;min-height:42px;align-items:center;gap:9px;border:1px solid #cfdade;border-radius:8px;background:#f8fbfb;padding:0 12px;color:#60717a}.cal-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--iisan-ink);font-size:13px}.cal-filters-panel select{width:100%;min-height:42px;border:1px solid #cfdade;border-radius:8px;background:#fff;color:var(--iisan-ink);padding:0 10px;font-size:12px;font-weight:700}.cal-board{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:14px;align-items:start}.cal-month-panel{min-width:0}.cal-head h3{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:800}.cal-head p{margin-top:4px;color:var(--iisan-muted);font-size:12px}.cal-day-pro{position:relative;min-height:68px;justify-content:flex-start;gap:4px;border:1px solid #edf3f4;background:#fbfcff;padding:8px 5px 6px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease}.cal-day-pro:hover{border-color:#cfdade;background:#fff;box-shadow:0 6px 18px #1b364114;transform:translateY(-1px)}.cal-day-pro .cal-num{color:var(--iisan-ink);font-size:12px;font-weight:800}.cal-day-pro strong{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:19px;border-radius:99px;background:var(--iisan-ink);color:#fff;font-size:10px;line-height:1}.cal-day-pro.has-data{border-color:#cfdade;background:#fff}.cal-day-pro.needs-action{border-color:#ffb2a6;background:#fff8f6}.cal-day-pro.ready{border-color:#94dedb;background:#f1fbfa}.cal-day-pro.today{border-color:var(--iisan-blue);box-shadow:inset 0 0 0 1px #0072ce2e}.cal-day-pro.selected{border-color:var(--iisan-ink);background:var(--iisan-ink);color:#fff;box-shadow:0 12px 24px #1b36412e}.cal-day-pro.selected .cal-num{color:#fff}.cal-day-pro.selected strong{background:#fff;color:var(--iisan-ink)}.cal-mini-dots,.cal-legend span{display:inline-flex;align-items:center;justify-content:center;gap:4px}.cal-mini-dots i,.cal-legend i{display:inline-block;width:6px;height:6px;border-radius:99px}.dot-red{background:var(--iisan-red)}.dot-orange{background:var(--iisan-orange-dark)}.dot-green{background:var(--iisan-aqua-dark)}.cal-legend{flex-wrap:wrap;gap:12px;border-top:1px solid #eef4f5;padding-top:12px;color:#60717a;font-weight:700}.cal-day-panel,.cal-agenda-section,.cal-no-date{border:1px solid #dce4e7;border-radius:8px;background:#fff;padding:14px;box-shadow:0 8px 24px #1b36410f}.cal-day-panel{position:sticky;top:20px}.cal-day-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e6edef;padding-bottom:12px}.cal-day-panel-head span{display:block;color:var(--iisan-muted);font-size:11px;font-weight:800;text-transform:uppercase}.cal-day-panel-head h3{margin-top:3px;color:var(--iisan-ink);font-size:18px;font-weight:850}.cal-day-panel-head>strong{flex-shrink:0;border:1px solid #ee8cad;border-radius:99px;background:#fde7ef;color:#b30942;padding:5px 10px;font-size:11px}.agenda-list{display:grid;gap:10px;margin-top:12px}.agenda-item{display:grid;gap:10px;border:1px solid #e6edef;border-radius:8px;background:#fbfcff;padding:12px}.agenda-item-main{display:grid;gap:8px}.agenda-item-main strong{display:block;color:var(--iisan-ink);font-size:14px;font-weight:850}.agenda-item-main span,.agenda-meta span,.agenda-meta strong{display:block}.agenda-item-main span{margin-top:2px;color:var(--iisan-muted);font-size:12px}.agenda-badges{display:flex;flex-wrap:wrap;gap:5px}.agenda-badge{display:inline-flex;align-items:center;gap:4px;border-radius:99px;padding:3px 8px;font-size:10px;font-weight:800}.agenda-badge.online{background:#e6f3ff;color:var(--iisan-blue)}.agenda-badge.onsite,.agenda-badge.warning{background:#fff0ee;color:var(--iisan-orange-dark)}.agenda-badge.done,.agenda-badge.admis{background:#e3f8f7;color:var(--iisan-aqua-dark)}.agenda-badge.todo,.agenda-badge.recale{background:#fde7ef;color:var(--iisan-red-dark)}.agenda-badge.attente{background:#eef4f5;color:#40545d}.agenda-meta{border-top:1px solid #eef4f5;border-bottom:1px solid #eef4f5;padding:8px 0}.agenda-meta span{color:var(--iisan-muted);font-size:10px;font-weight:800;text-transform:uppercase}.agenda-meta strong{margin-top:2px;color:var(--iisan-ink);font-size:12px}.agenda-actions{display:flex;flex-wrap:wrap;gap:6px}.agenda-actions button{min-height:32px;border:1px solid #cfdade;border-radius:99px;background:#fff;color:#40545d;cursor:pointer;padding:0 10px;font-size:11px;font-weight:800}.agenda-actions button:hover{background:#f3f7f8}.agenda-actions .agenda-action-success{border-color:#64ccc9;background:#e3f8f7;color:var(--iisan-aqua-dark)}.agenda-actions .agenda-action-warn{border-color:#ffb2a6;background:#fff0ee;color:var(--iisan-orange-dark)}.cal-empty-state{display:grid;justify-items:center;gap:7px;padding:30px 12px;color:var(--iisan-muted);text-align:center}.cal-empty-state strong{color:var(--iisan-ink);font-size:14px}.cal-empty-state span{font-size:12px}.cal-agenda-section{display:grid;gap:12px}.cal-agenda-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cal-agenda-head h3{font-size:17px}.cal-upcoming-days,.cal-no-date-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.cal-upcoming-day,.cal-no-date-list button{align-items:flex-start;justify-content:flex-start;min-height:74px;flex-direction:column;border:1px solid #e6edef;border-radius:8px;background:#fbfcff;color:var(--iisan-ink);cursor:pointer;padding:10px;text-align:left}.cal-upcoming-day:hover,.cal-no-date-list button:hover{border-color:#cfdade;background:#fff}.cal-upcoming-day.on{border-color:var(--iisan-ink);background:var(--iisan-ink);color:#fff}.cal-upcoming-day span,.cal-upcoming-day small,.cal-no-date-list span{display:block}.cal-upcoming-day span{font-size:11px;font-weight:800}.cal-upcoming-day strong{margin-top:2px;font-size:24px;line-height:1}.cal-upcoming-day small{margin-top:4px;color:inherit;font-size:11px;opacity:.72}.cal-no-date{display:grid;gap:12px}.cal-no-date h3{font-size:17px}.cal-no-date-list button strong{color:var(--iisan-ink);font-size:13px}.cal-no-date-list button span{color:var(--iisan-muted);font-size:11px}.modal-overlay,.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto}.login-overlay{align-items:center;z-index:2000}.modal{background:#fff;border-radius:16px;padding:2rem;max-width:750px;width:100%;position:relative;margin:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #dce4e7}.modal-title{font-size:17px;font-weight:600;color:#1b3641}.modal-close,.modal-icon-close{background:none;border:none;cursor:pointer;color:#60717a;padding:4px 8px}.modal-icon-close{position:absolute;top:10px;right:10px}.grille-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:1.5rem;background:#f3f7f8;border-radius:8px;padding:1rem}.gi{display:flex;flex-direction:column;gap:3px}.gi label,.fg label,.fg span{font-size:11px;color:#60717a;font-weight:600}.gi span{font-size:13px;color:#1b3641;font-weight:500}.critere-section{margin-bottom:1.25rem}.critere-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#eef4f5;border-radius:8px;margin-bottom:6px}.critere-name{font-size:13px;font-weight:700;color:#1b3641;flex:1}.critere-input-wrap{display:flex;align-items:center;gap:8px;flex-shrink:0}.note-input{width:70px;font-size:18px;font-weight:700;padding:6px 8px;border:2px solid #cfdade;border-radius:8px;text-align:center;color:#1b3641;background:#fff;outline:none}.note-input:focus{border-color:#d30b4f}.note-max{font-size:14px;color:#60717a;font-weight:600;white-space:nowrap}.sous-list{font-size:11px;color:#87979e;padding:0 14px 8px;font-style:italic}.total-row{display:flex;align-items:center;justify-content:space-between;background:#1b3641;color:#fff;padding:12px 16px;border-radius:8px;margin:1rem 0}.total-label{font-size:14px;font-weight:600}.total-val{font-size:22px;font-weight:700}.comment-area{width:100%;min-height:80px;font-size:13px;padding:10px;border:1px solid #cfdade;border-radius:8px;background:#f6f8f9;resize:vertical;margin-bottom:1rem}.save-grille-btn{font-size:13px;padding:10px 24px;border-radius:8px;background:#0f8f8b;color:#fff;border:none;cursor:pointer;font-weight:600;width:100%}.save-grille-btn:hover{background:#0a6d68}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:1rem}.fg{display:flex;flex-direction:column;gap:4px}.fg input,.fg select,.fg textarea{font-size:13px;padding:8px 10px;border:1px solid #cfdade;border-radius:8px;background:#f6f8f9;color:#1b3641;width:100%;outline:none}.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:#d30b4f;background:#fff}.fg textarea{resize:vertical;min-height:64px}.err{font-size:12px;color:#b30942;margin-bottom:10px}.login-box{background:#fff;border-radius:16px;padding:2rem;max-width:380px;width:90%;text-align:center;position:relative}.login-main-icon{color:#1b3641;margin-bottom:8px}.login-box h2{font-size:17px;font-weight:600;color:#1b3641;margin-bottom:8px}.login-box p{font-size:13px;color:#60717a;margin-bottom:1.25rem}.login-input{width:100%;font-size:14px;padding:10px 14px;border:1px solid #cfdade;border-radius:8px;background:#f6f8f9;margin-bottom:10px;outline:none}.login-input:focus{border-color:#d30b4f}.login-btn{width:100%;font-size:14px;padding:10px;border-radius:8px;background:var(--iisan-red);color:#fff;border:1px solid var(--iisan-red);cursor:pointer;font-weight:700}.login-err{font-size:12px;color:#b30942;margin-top:6px}.login-skip{font-size:12px;color:#60717a;margin-top:10px;cursor:pointer;text-decoration:underline;border:0;background:transparent;width:100%}#view-dossiers>h2{font-size:20px;color:#1b3641;margin-bottom:14px}#dossiers-accueil{background:#fff;border:1px solid #dce4e7;border-radius:12px;padding:24px}#dossiers-liste{color:#60717a;font-size:13px;margin-top:14px;display:flex;flex-direction:column;gap:8px}.dossier-hint{color:#60717a;font-size:12px;line-height:1.45;margin-bottom:4px}#view-dossiers .btn{font-size:13px;padding:9px 20px;border-radius:8px;background:#1b3641;color:#fff;border:none;cursor:pointer;font-weight:600}.dossier-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #dce4e7;border-radius:10px;background:#fff}.dossier-item strong{color:#1b3641;font-size:13px}.dossier-item small{display:block;color:#60717a;margin-top:3px}.dossier-item-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.dossier-edit-btn,.dossier-delete-btn,.dossier-invalidate-btn{border:1px solid #cfdade;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer;font-size:12px;font-weight:600}.dossier-edit-btn{color:#d30b4f}.dossier-delete-btn{color:#b30942;border-color:#efa7c0}.dossier-invalidate-btn{color:#a44900;border-color:#ffb2a6}.action-pill{cursor:pointer}#dossier-form{margin-top:18px;background:#fff;border:1px solid #dce4e7;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px #1b364114}.dossier-modal-header{display:flex;align-items:center;justify-content:space-between;background:#1b3641;color:#fff;padding:18px 22px}.dossier-modal-header h2{font-size:18px;margin:0 0 4px}.dossier-modal-header p{font-size:12px;opacity:.85}.dossier-close-btn{background:transparent;border:0;color:#fff;cursor:pointer;padding:5px 8px}.dossier-modal-body{padding:22px;max-height:calc(100vh - 210px);overflow:auto}.dos-section{margin-bottom:20px;border:1px solid #dce4e7;border-radius:11px;overflow:hidden;background:#fff}.dos-section-title{background:#eef4f5;color:#1b3641;padding:12px 16px;font-size:14px;font-weight:700;border-bottom:1px solid #dce4e7}.dos-section-body{padding:18px}.dos-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.photo-upload-box{margin-top:2px}.profile-upload{min-height:105px;border:2px dashed #cfdade;border-radius:10px;background:#f8fbfb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;color:#1b3641;font-size:24px}.profile-upload img{width:90px;height:90px;-o-object-fit:cover;object-fit:cover;border-radius:50%;border:3px solid #eef4f5}.profile-upload span{font-size:13px;font-weight:600;color:#1b3641;max-width:100%;overflow-wrap:anywhere}.profile-upload small{font-size:11px;color:#60717a}.parcours-row,.langue-row{display:grid;grid-template-columns:1fr 1.3fr 1.3fr 1fr 36px;gap:8px;margin-bottom:10px}.langue-row{grid-template-columns:1fr 1fr 36px}.parcours-row input,.langue-row input,.langue-row select{width:100%;padding:8px 9px;border:1px solid #cfdade;border-radius:8px;background:#f6f8f9;color:#1b3641;font-size:12px}.remove-row,.langue-row button{border:1px solid #efa7c0;background:#fff;color:#b30942;border-radius:8px;cursor:pointer}.add-row-btn{margin-top:4px;border:1px dashed #ee8cad;background:#fff;color:#d30b4f;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:12px;font-weight:600}.bailleur-block{padding:14px 0 18px;border-bottom:1px solid #e6edef}.bailleur-block:first-child{padding-top:0}.bailleur-block:last-child{border-bottom:0;padding-bottom:0}.bailleur-block h3{font-size:14px;color:#1b3641;margin-bottom:12px}.documents-grid{display:grid;grid-template-columns:1fr;justify-items:center;gap:14px;margin-top:4px}.document-card{width:min(100%,650px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a}.document-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#eef4f5;border-radius:10px;font-size:24px}.document-info{width:100%}.document-info h4{margin:0 0 4px;font-size:15px;color:#1b3641}.document-info p{margin:0 0 5px;font-size:12px;color:#60717a}.document-status{font-size:12px;color:#87979e;overflow-wrap:anywhere}.document-status.ok{color:#0f8f8b;font-weight:600}.document-btn{padding:9px 18px;background:#1b3641;color:#fff;border-radius:8px;cursor:pointer;font-size:13px;white-space:nowrap}.dossier-actions{display:flex;gap:10px;margin-top:6px;padding-top:4px}.btn-save-dossier{flex:1;font-size:13px;padding:11px 18px;border-radius:8px;background:#0f8f8b;color:#fff;border:0;cursor:pointer;font-weight:600}.btn-cancel-dossier{font-size:13px;padding:11px 18px;border-radius:8px;background:#eef4f5;color:#60717a;border:1px solid #cfdade;cursor:pointer}.dossier-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px}.dossier-detail-modal{width:min(1050px,96vw);max-height:92vh;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column}.dossier-detail-head{background:#1b3641;color:#fff;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dossier-detail-head h2{margin:0;font-size:19px}.dossier-detail-head p{margin:4px 0 0;font-size:12px;opacity:.85}.dossier-detail-close{border:0;background:transparent;color:#fff;cursor:pointer;padding:4px 8px}.dossier-detail-body{overflow:auto;padding:20px;background:#f6f8f9}.detail-section{background:#fff;border:1px solid #dce4e7;border-radius:12px;margin-bottom:14px;overflow:hidden}.detail-section-title{background:#eef4f5;color:#1b3641;font-weight:700;padding:11px 15px;font-size:14px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px}.detail-field{min-width:0}.detail-field.full{grid-column:1 / -1}.detail-label{font-size:10px;color:#60717a;font-weight:700;margin-bottom:3px;text-transform:uppercase}.detail-value{font-size:13px;color:#1b3641;word-break:break-word}.detail-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:15px}.detail-doc{border:1px dashed #cfdade;border-radius:10px;padding:14px;text-align:center;background:#f8fbfb}.detail-doc-icon{font-size:24px}.detail-doc h4{margin:7px 0 4px;color:#1b3641;font-size:13px}.detail-doc p{margin:0;color:#60717a;font-size:11px;word-break:break-word}.detail-ok{color:#0f8f8b!important;font-weight:600}.document-preview-btn{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:11px;color:#d30b4f;text-decoration:none;font-weight:700}.detail-list{padding:15px}.detail-row{display:grid;grid-template-columns:80px 1fr 1fr 100px;gap:8px;padding:8px 0;border-bottom:1px solid #edf3f4;font-size:12px;color:#1b3641}.detail-row:last-child{border-bottom:0}.footer-info{margin-top:2rem;font-size:11px;color:#9cb8c1;text-align:center;padding-top:1rem;border-top:1px solid #e6edef}.auth-page{min-height:calc(100vh - 40px);display:grid;place-items:center;padding:24px 0}.auth-panel{width:min(560px,100%);background:#fff;border:1px solid #dce4e7;border-radius:14px;box-shadow:0 24px 70px #1b364124;overflow:hidden}.auth-brand{position:relative;display:flex;gap:14px;align-items:center;padding:22px 24px;background:#fff;color:var(--iisan-ink);border-bottom:1px solid var(--iisan-line)}.auth-brand:after{position:absolute;right:0;bottom:0;left:0;height:4px;content:"";background:linear-gradient(90deg,var(--iisan-red),var(--iisan-ink),var(--iisan-aqua))}.auth-brand h1{font-family:var(--font-heading);font-size:20px;font-weight:700}.auth-brand p{margin-top:4px;color:var(--iisan-muted);font-size:12px}.auth-form{display:grid;gap:14px;padding:24px}.auth-form h2,.panel h2{color:#1b3641;font-size:16px;font-weight:700}.auth-help{color:#60717a;font-size:12px;line-height:1.5}.auth-form label{display:grid;gap:6px;color:#40545d;font-size:12px;font-weight:600}.auth-form label span{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;border:1px solid #cfdade;border-radius:8px;background:#f9fbff}.auth-form label span span{min-height:auto;padding:0;border:0;background:transparent}.auth-form input{width:100%;border:none;outline:none;background:transparent;color:#1b3641}.auth-form .password-toggle{width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:#60717a;cursor:pointer;flex-shrink:0}.auth-form .password-toggle:hover{background:#eef4f5}.login-btn{min-height:40px;border:1px solid var(--iisan-red);border-radius:8px;background:var(--iisan-red);color:#fff;cursor:pointer;font-weight:700}.login-btn:hover:not(:disabled){background:var(--iisan-red-dark);border-color:var(--iisan-red-dark)}.login-btn:disabled{cursor:wait;opacity:.68}.login-ok,.login-err{padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.45}.login-ok{background:#e3f8f7;color:#0a6d68;border:1px solid #64ccc9}.login-err{background:#fde7ef;color:#b30942;border:1px solid #efa7c0}.auth-switch{display:flex;flex-wrap:wrap;gap:8px;padding:0 24px 24px}.auth-switch button,.data-row button{min-height:34px;border:1px solid #cfdade;border-radius:8px;background:#fff;color:#1b3641;cursor:pointer;font-size:12px;font-weight:700;padding:0 12px}.auth-switch button:hover,.data-row button:hover:not(:disabled){background:#f3f7f8}.data-row button:disabled{cursor:not-allowed;opacity:.55}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.admin-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:12px;align-items:start}.panel{background:#fff;border:1px solid #dce4e7;border-radius:8px;padding:16px;box-shadow:0 6px 20px #1b36410a}.panel+.panel{margin-top:12px}.admin-form{display:grid;gap:10px;position:sticky;top:12px}.admin-form input,.admin-form select,.admin-form textarea{width:100%;border:1px solid #cfdade;border-radius:8px;background:#fff;color:#1b3641;padding:9px 10px;font-size:13px;outline:none}.admin-form textarea{min-height:90px;resize:vertical}.donut-lines,.activity-list,.data-table{display:grid;gap:8px;margin-top:12px}.bar-line{display:grid;grid-template-columns:minmax(70px,1fr) minmax(120px,2fr) 42px;gap:10px;align-items:center;font-size:12px;color:#40545d}.bar-line>div{height:8px;border-radius:99px;background:#eef4f5;overflow:hidden}.bar-line i{display:block;height:100%;border-radius:inherit;background:#1b3641}.recharts-wrapper,.recharts-surface{outline:none}.chart-empty{border:1px dashed #cfdade}.activity-card-pro{transition:border-color .15s,box-shadow .15s,transform .15s}.activity-card-pro:hover{border-color:#cfdade;box-shadow:0 2px 12px #1b36410f}.activity-row,.data-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e6edef;border-radius:8px;padding:10px 12px;background:#fbfcff}.activity-row strong,.data-row strong{display:block;color:#1b3641;font-size:13px}.activity-row span,.activity-row time,.data-row span{display:block;color:#60717a;font-size:11px;margin-top:3px}@media(max-width:1100px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-insights{grid-template-columns:repeat(3,minmax(0,1fr))}.cal-board{grid-template-columns:1fr}.cal-day-panel{position:static}.cal-filters-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-search{grid-column:1 / -1}.admin-layout{grid-template-columns:1fr}.admin-form{position:static}}@media(max-width:980px){.app-shell{grid-template-columns:1fr;gap:14px;min-height:auto}.app-sidebar{position:fixed;top:12px;bottom:12px;left:12px;z-index:10030;width:min(318px,calc(100vw - 24px));height:auto;min-height:0;transform:translate(calc(-100% - 28px));transition:transform .2s ease}.app-sidebar.open{transform:translate(0)}.sidebar-close,.menu-toggle{display:inline-flex}.sidebar-brand .brand-logo-frame-compact{width:160px;height:70px}.sidebar-nav{margin-top:14px;overflow-y:auto}.sidebar-link{justify-content:flex-start;min-height:42px}.sidebar-profile{margin-top:14px}.sidebar-scrim.open{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10010;display:block;border:0;background:#0f172a73;cursor:pointer}.page-head{grid-template-columns:auto minmax(0,1fr) auto}}@media(max-width:800px){.dashboard-grid,.chart-split,.dos-form-grid,.grille-info{grid-template-columns:1fr}.parcours-row{grid-template-columns:1fr 1fr}.langue-row{grid-template-columns:1fr 1fr 36px}.dossier-actions{flex-direction:column}.dossier-modal-body{padding:14px}.detail-grid,.detail-docs,.detail-row{grid-template-columns:1fr 1fr}}@media(max-width:720px){.grid{grid-template-columns:1fr}.cal-hero,.cal-head,.cal-day-panel-head{align-items:stretch;flex-direction:column}.cal-hero-actions,.cal-nav{justify-content:flex-start}.cal-insights{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-filters-panel{grid-template-columns:1fr}.cal-day-pro{min-height:58px;padding:6px 3px}.cal-day-pro strong{min-width:20px;height:18px}.page-head{align-items:center}.page-head h1{font-size:24px}.auth-brand{align-items:flex-start;flex-direction:column}.brand-logo-frame-auth{width:230px;height:92px}.dossier-item,.statut-row{align-items:flex-start;flex-direction:column}.modal{padding:1.25rem}}@media(max-width:520px){body{padding:14px 10px}.cal-hero,.cal-wrap,.cal-day-panel,.cal-agenda-section,.cal-no-date{padding:12px}.cal-hero h2{font-size:17px}.cal-insights{grid-template-columns:1fr}.cal-insight{min-height:78px}.cal-day-pro{min-height:50px;gap:2px}.cal-day-pro .cal-num{font-size:11px}.cal-mini-dots i,.cal-legend i{width:5px;height:5px}.agenda-actions button,.cal-hero-actions button,.cal-filters-panel button{width:100%}.app-sidebar{padding:12px}.sidebar-brand{align-items:flex-start;flex-direction:column}.sidebar-brand .brand-logo-frame-compact{width:192px;height:84px}.sidebar-link{padding:0 10px;font-size:12px}.sidebar-profile{grid-template-columns:38px minmax(0,1fr) 34px;padding:8px}.profile-avatar{width:38px;height:38px}.logout-btn{width:34px;height:34px}.toast-wrap{top:12px;right:10px;left:10px;width:auto}.page-head{gap:10px}.page-head strong{align-self:flex-start}.admin-card-head,.admin-row,.admin-modal-head,.admin-modal-actions{align-items:stretch;flex-direction:column}.admin-row{grid-template-columns:38px minmax(0,1fr)}.admin-row-actions{grid-column:1 / -1;justify-content:flex-start}.admin-modal-grid{grid-template-columns:1fr}.admin-modal-actions .tw-inline-flex{width:100%}.brand-logo-frame-auth{width:196px;height:82px}.candidate-toolbar{justify-content:stretch}.candidate-toolbar .btn-add{width:100%}.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fl{grid-column:1 / -1}.fb{width:100%;justify-content:center}.auth-brand,.auth-form,.auth-switch{padding-left:16px;padding-right:16px}.activity-row,.data-row{align-items:flex-start;flex-direction:column}.bar-line,.detail-grid,.detail-docs{grid-template-columns:1fr}.critere-row{flex-direction:column;align-items:stretch}}.first\:tw-pt-0:first-child{padding-top:0}.last\:tw-border-b-0:last-child{border-bottom-width:0px}.last\:tw-pb-0:last-child{padding-bottom:0}.focus-within\:tw-border-\[\#d30b4f\]:focus-within{--tw-border-opacity: 1;border-color:rgb(211 11 79 / var(--tw-border-opacity, 1))}.hover\:tw-bg-\[\#294c58\]:hover{--tw-bg-opacity: 1;background-color:rgb(41 76 88 / var(--tw-bg-opacity, 1))}.hover\:tw-bg-\[\#f3f7f8\]:hover{--tw-bg-opacity: 1;background-color:rgb(243 247 248 / var(--tw-bg-opacity, 1))}.hover\:tw-bg-brand-soft:hover{--tw-bg-opacity: 1;background-color:rgb(238 244 245 / var(--tw-bg-opacity, 1))}.hover\:tw-bg-white\/10:hover{background-color:#ffffff1a}.hover\:tw-shadow-\[0_2px_12px_rgba\(27\,54\,65\,0\.08\)\]:hover{--tw-shadow: 0 2px 12px rgba(27,54,65,.08);--tw-shadow-colored: 0 2px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:tw-border-\[\#d30b4f\]:focus{--tw-border-opacity: 1;border-color:rgb(211 11 79 / var(--tw-border-opacity, 1))}.focus\:tw-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:tw-ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:tw-ring-\[\#ee8cad\]:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(238 140 173 / var(--tw-ring-opacity, 1))}.disabled\:tw-cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:tw-cursor-wait:disabled{cursor:wait}.disabled\:tw-opacity-70:disabled{opacity:.7}@media(min-width:640px){.sm\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:tw-grid-cols-\[80px_1fr_1fr_100px\]{grid-template-columns:80px 1fr 1fr 100px}.sm\:tw-p-6{padding:1.5rem}.sm\:tw-px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:tw-pb-6{padding-bottom:1.5rem}}@media(min-width:768px){.md\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:tw-grid-cols-\[1fr_1\.3fr_1\.3fr_1fr_36px\]{grid-template-columns:1fr 1.3fr 1.3fr 1fr 36px}}@media(min-width:1024px){.lg\:tw-grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:1280px){.xl\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
