:root{--ink:#172033;--muted:#657188;--line:#dce3ed;--surface:#fff;--surface-soft:#f5f7fb;--brand:#0b5cab;--brand-dark:#063967;--accent:#12a884;--warning:#d58a00;--danger:#c93434;--shadow:0 18px 60px rgba(17,31,54,.12)}*{box-sizing:border-box}body{background:radial-gradient(circle at top left,rgba(18,168,132,.12),transparent 34rem),linear-gradient(180deg,#eef3f8,#f8fafc 48%,#eef3f8);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;min-height:100vh}body.login-screen{height:100vh;overflow:hidden;overscroll-behavior:none}a{color:var(--brand);text-decoration:none}.app-main,.app-shell{margin:0 auto;width:min(1180px,calc(100% - 32px))}.app-navbar{backdrop-filter:blur(18px);background:rgba(7,25,49,.94);border-bottom:1px solid hsla(0,0%,100%,.18);min-height:76px;position:sticky;top:0;z-index:20}.navbar-brand{align-items:center;color:#fff;display:inline-flex;font-weight:800;gap:12px}.app-navbar .nav-link,.navbar-brand:hover{color:#fff}.app-navbar .nav-link{font-weight:650;opacity:.82}.app-navbar .nav-link:hover{opacity:1}.brand-mark{background:linear-gradient(135deg,var(--accent),#62c7f2);border-radius:8px;color:#071931;display:inline-grid;font-size:.9rem;height:40px;letter-spacing:0;place-items:center;width:40px}.user-menu-toggle{align-items:center;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.16);border-radius:8px;color:#fff;display:inline-flex;gap:10px;min-height:44px;padding:5px 10px 5px 6px}.user-menu-toggle:focus,.user-menu-toggle:hover{background:hsla(0,0%,100%,.14);color:#fff}.user-avatar{background:#fff;border-radius:8px;color:var(--brand-dark);display:inline-grid;font-weight:900;height:32px;place-items:center;width:32px}.user-menu-label{display:grid;line-height:1.1;text-align:left}.user-menu-label strong{font-size:.86rem;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-label small{color:hsla(0,0%,100%,.68);font-size:.72rem;font-weight:650}.app-main{padding:34px 0 54px}body.login-screen .app-main{height:100vh;overflow:hidden;padding:0;width:100%}.detail-hero,.page-hero{align-items:flex-end;background:linear-gradient(135deg,rgba(8,45,86,.94),rgba(9,76,124,.88)),url(https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1800&q=80) 50%/cover;border-radius:8px;box-shadow:var(--shadow);color:#fff;display:flex;gap:28px;justify-content:space-between;margin-bottom:26px;padding:clamp(28px,5vw,54px)}.detail-hero{background:linear-gradient(135deg,rgba(8,45,86,.97),rgba(18,79,99,.9)),url(https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=1800&q=80) 50%/cover}.detail-hero h1,.login-panel h1,.page-hero h1,.page-title-row h1{font-weight:850;letter-spacing:0;line-height:1.03;margin:0;max-width:780px}.detail-hero h1,.page-hero h1{font-size:clamp(2.15rem,4vw,4.4rem)}.login-panel h1,.page-title-row h1{font-size:clamp(2rem,3vw,3.4rem)}.detail-hero p,.hero-copy,.login-panel p,.page-title-row p{color:hsla(0,0%,100%,.82);font-size:1.02rem;margin:14px 0 0;max-width:720px}.page-title-row p{color:var(--muted)}.eyebrow{color:var(--accent);font-size:.74rem;font-weight:850;letter-spacing:.08em;margin:0 0 8px;text-transform:uppercase}.detail-actions,.filter-actions,.form-footer,.hero-actions,.title-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.btn{border-radius:8px;font-weight:750}.btn-primary{background:var(--brand);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.page-title-row{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:22px}.metrics-grid{display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.danger-zone,.filter-bar,.form-card,.login-card,.metric-card,.panel{background:hsla(0,0%,100%,.92);border:1px solid rgba(220,227,237,.86);border-radius:8px;box-shadow:0 10px 40px rgba(17,31,54,.07)}.metric-card{min-height:154px;padding:22px}.alert-row small,.app-table small,.compact-row small,.metric-card small,.metric-card span{color:var(--muted);display:block}.metric-card strong{display:block;font-size:clamp(2rem,4vw,3rem);line-height:1;margin:12px 0 4px}.metric-card.success{border-top:4px solid var(--accent)}.metric-card.warning{border-top:4px solid var(--warning)}.metric-card.danger{border-top:4px solid var(--danger)}.content-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.danger-zone,.form-card,.login-card,.panel{padding:22px}.panel-large{grid-column:span 2}.panel-heading{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.danger-zone h2,.form-section h2,.login-card h2,.panel-heading h2{font-size:1.15rem;font-weight:850;margin:0}.panel-count{background:#eef5ff;border-radius:8px;color:var(--brand);display:inline-grid;font-weight:850;height:34px;min-width:34px;place-items:center}.alert-list,.amount-stack,.compact-table,.ranking-list{display:grid;gap:10px}.alert-row,.amount-stack div,.compact-row,.ranking-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:12px;padding:13px 0}.alert-row{color:var(--ink);grid-template-columns:14px 1fr auto}.compact-row{color:var(--ink);grid-template-columns:1.4fr 1fr auto}.amount-stack div,.ranking-row{grid-template-columns:1fr auto}.status-dot{background:var(--accent);border-radius:50%;height:10px;width:10px}.status-dot.warning{background:var(--warning)}.status-dot.danger{background:var(--danger)}.alert-meta{color:var(--muted);font-weight:750}.empty-state{background:var(--surface-soft);border:1px dashed var(--line);border-radius:8px;color:var(--muted);padding:22px;text-align:center}.filter-bar{align-items:end;display:grid;gap:16px;grid-template-columns:1.5fr .7fr auto;margin-bottom:18px;padding:18px}label{color:#364258;font-weight:750;margin-bottom:7px}.form-control,.form-select{border-color:var(--line);border-radius:8px;min-height:46px}.form-control:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 .2rem rgba(11,92,171,.12)}.app-table{margin:0}.app-table thead th{border-bottom:1px solid var(--line);color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.app-table tbody td{border-color:#edf1f6;padding:18px 12px}.status-badge{border-radius:999px;color:#fff;padding:.48rem .72rem}.status-active{background:var(--accent)}.status-expiree{background:var(--danger)}.status-en_attente{background:var(--warning)}.status-renouvelee{background:var(--brand)}.action-group{display:inline-flex;gap:8px}.form-card{max-width:980px}.form-section{border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:22px}.form-grid{gap:16px}.detail-list,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-list{gap:14px;margin:0}.detail-list div{background:var(--surface-soft);border-radius:8px;padding:14px}.detail-list dt{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.detail-list dd{font-weight:750;margin:6px 0 0}.notes-block{color:#38445a;line-height:1.7;margin:0;white-space:pre-wrap}.danger-zone{align-items:center;border-color:rgba(201,52,52,.24);display:flex;gap:18px;justify-content:space-between}.danger-zone p{color:var(--muted);margin:6px 0 0}.login-page{justify-content:center;min-height:calc(100vh - 88px);padding:28px 0;text-align:center}.login-brand,.login-page{align-items:center;display:flex;flex-direction:column}.login-brand{gap:12px;margin-bottom:clamp(10px,2vh,18px)}.login-logo{background:linear-gradient(135deg,#fff,#eaf4ff);border:4px solid #d8e5f4;border-radius:50%;box-shadow:0 18px 48px rgba(7,25,49,.16);color:var(--brand-dark);display:grid;font-size:1.45rem;font-weight:900;height:clamp(70px,11vh,96px);place-items:center;width:clamp(70px,11vh,96px)}.login-brand strong{display:block;font-size:1.18rem;font-weight:900}.login-brand span{color:var(--muted);display:block;font-weight:650}.login-card{padding:clamp(22px,3.4vh,32px);text-align:left;width:min(100%,470px)}.login-card-header{margin-bottom:clamp(14px,2.6vh,24px);text-align:center}.login-card-header h1{color:#243044;font-size:1.28rem;font-weight:850;margin:0}.login-card-header p{color:var(--muted);line-height:1.55;margin:10px auto 0}.login-field{margin-bottom:clamp(10px,1.7vh,16px)}.login-field label{display:block}.login-field .form-control{background:#fbfcff;min-height:clamp(42px,5.7vh,50px)}.login-remember{align-items:center;color:var(--muted);display:inline-flex;font-weight:650;gap:8px;margin:2px 0 clamp(10px,2vh,18px)}.login-card .btn{border-radius:6px;min-height:clamp(42px,5.7vh,50px);width:100%}.login-register{color:var(--muted);margin:clamp(10px,1.8vh,18px) 0 0;text-align:center}.login-footer{color:var(--muted);display:grid;font-size:.9rem;gap:6px;margin-top:clamp(12px,2vh,22px)}.login-page{background:linear-gradient(135deg,rgba(4,31,61,.84),rgba(10,78,107,.62)),url(https://images.unsplash.com/photo-1563986768609-322da13575f3?auto=format&fit=crop&w=1900&q=85) 50%/cover no-repeat;height:100vh;margin:0;min-height:100vh;overflow:hidden;padding:clamp(18px,3vh,34px) 18px;position:relative;width:100vw}.login-page:before{background:linear-gradient(180deg,hsla(0,0%,100%,.12),transparent 34%),radial-gradient(circle at 50% 18%,hsla(0,0%,100%,.18),transparent 24rem);content:"";inset:0;pointer-events:none;position:absolute}.login-brand,.login-card,.login-footer{position:relative;z-index:1}.login-brand strong{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.22)}.login-brand span,.login-footer{color:hsla(0,0%,100%,.78)}.login-card{backdrop-filter:blur(18px);background:hsla(0,0%,100%,.96);border:1px solid hsla(0,0%,100%,.7);box-shadow:0 26px 80px rgba(0,0,0,.26)}.login-card:before{background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:999px;content:"";display:block;height:4px;margin:-6px auto 22px;width:66px}.login-field .form-control{background:linear-gradient(180deg,#fff,#f7faff);border:1px solid #cfdae8;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.9)}.login-field .form-control:focus{background:#fff}body.login-screen .login-page{height:auto;inset:0;margin:0;min-height:0;padding:clamp(12px,2.4vh,28px) 18px;position:fixed;width:auto}body.login-screen .login-brand{margin-bottom:clamp(8px,1.6vh,14px)}body.login-screen .login-card{max-height:calc(100vh - 190px);overflow:hidden;padding:clamp(18px,2.8vh,28px)}body.login-screen .login-footer{margin-top:clamp(8px,1.4vh,16px);max-width:min(92vw,720px)}.metric-card{background:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(246,250,255,.9));border:1px solid hsla(0,0%,100%,.72);overflow:hidden;position:relative}.metric-card:after{background:rgba(11,92,171,.08);border-radius:50%;bottom:-42px;content:"";height:124px;position:absolute;right:-38px;width:124px}.metric-icon{background:#eaf4ff;border-radius:8px;color:var(--brand);display:inline-grid;font-weight:900;height:38px;margin-bottom:14px;place-items:center;width:38px}.metric-card.success .metric-icon{background:rgba(18,168,132,.13);color:#08765f}.metric-card.warning .metric-icon{background:rgba(213,138,0,.14);color:#9a6400}.metric-card.danger .metric-icon{background:rgba(201,52,52,.12);color:var(--danger)}.filter-bar,.form-card,.panel{background:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(248,251,255,.93));border-color:hsla(0,0%,100%,.74);box-shadow:0 18px 60px rgba(17,31,54,.1)}.panel-heading{border-bottom:1px solid #edf2f8;padding-bottom:14px}.ranking-row-chart{grid-template-columns:minmax(0,1fr) auto}.mini-bar{background:#e7edf5;border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.mini-bar i{background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:inherit;display:block;height:100%;min-width:8px}.form-card{max-width:1040px;overflow:hidden;padding:0;position:relative}.form-card form{padding:28px}.form-card:before{background:linear-gradient(90deg,var(--brand),var(--accent),#62c7f2);content:"";display:block;height:8px}.form-section{background:#fff;border:1px solid #e3ebf4;border-radius:8px;box-shadow:0 8px 28px rgba(17,31,54,.05);padding:22px}.form-section>div:first-child{margin-bottom:16px}.form-grid>div,.form-section>div:not(.form-grid):not(:first-child){min-width:0}.form-card label{color:#223047;font-size:.9rem}.filter-bar .form-control,.filter-bar .form-select,.form-card .form-control,.form-card .form-select{background-color:#fbfdff;border-color:#cfdbea;box-shadow:0 1px 0 hsla(0,0%,100%,.85)}.form-card textarea.form-control{min-height:150px}.form-footer{padding-top:6px}.form-page-title{background:linear-gradient(135deg,hsla(0,0%,100%,.96),rgba(239,247,255,.9)),radial-gradient(circle at top right,rgba(18,168,132,.14),transparent 24rem);border:1px solid hsla(0,0%,100%,.72);border-radius:8px;box-shadow:0 18px 55px rgba(17,31,54,.08);padding:26px}.guarantee-form-layout{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) 300px}.form-card-hero{align-items:flex-start;background:linear-gradient(135deg,rgba(5,54,100,.96),rgba(9,94,124,.9)),url(https://images.unsplash.com/photo-1554224155-8d04cb21cd6c?auto=format&fit=crop&w=1400&q=80) 50%/cover;color:#fff;display:flex;gap:18px;justify-content:space-between;padding:28px}.form-card-hero h2{font-size:clamp(1.45rem,2vw,2.1rem);font-weight:900;margin:0}.form-card-hero p{color:hsla(0,0%,100%,.82);margin:8px 0 0;max-width:620px}.form-card-hero .eyebrow{color:#7ee0c7}.form-card-badge{background:hsla(0,0%,100%,.14);border:1px solid hsla(0,0%,100%,.28);border-radius:999px;color:#fff;flex:0 0 auto;font-size:.82rem;font-weight:800;padding:8px 12px}.form-card form{display:grid;gap:18px}.form-section{margin:0}.form-section-heading{align-items:start;display:grid;gap:14px;grid-template-columns:48px 1fr;margin-bottom:18px}.form-section-heading p:last-child{color:var(--muted);margin:5px 0 0}.form-section-icon{background:linear-gradient(135deg,var(--brand),var(--accent));border-radius:8px;box-shadow:0 12px 24px rgba(11,92,171,.2);color:#fff;display:grid;font-weight:900;height:48px;place-items:center;width:48px}.form-grid{gap:18px}.form-grid-finance{grid-template-columns:1.2fr .8fr repeat(2,minmax(0,1fr))}.form-grid-finance>div:nth-child(5),.form-grid-finance>div:nth-child(6){grid-column:span 2}.form-card .form-control,.form-card .form-select{border-radius:8px;min-height:52px;padding:12px 14px}.form-card .form-control:hover,.form-card .form-select:hover{border-color:#9fb5cf}.form-card .form-control:focus,.form-card .form-select:focus{background:#fff;box-shadow:0 0 0 .22rem rgba(11,92,171,.12),0 10px 24px rgba(17,31,54,.08)}.form-footer{background:linear-gradient(180deg,rgba(248,251,255,.86),rgba(248,251,255,.98));border-top:1px solid #e5edf6;bottom:0;justify-content:flex-end;padding:18px 0 0;position:sticky}.form-footer .btn{min-height:46px;padding-inline:18px}.form-assist-panel{display:grid;gap:14px;position:sticky;top:96px}.assist-card{background:hsla(0,0%,100%,.94);border:1px solid rgba(220,227,237,.86);border-radius:8px;box-shadow:0 12px 38px rgba(17,31,54,.08);padding:18px}.assist-card-primary{background:linear-gradient(135deg,var(--brand-dark),#0f7766);color:#fff}.assist-card span{color:inherit;display:block;font-size:.76rem;font-weight:850;letter-spacing:.08em;margin-bottom:8px;opacity:.78;text-transform:uppercase}.assist-card strong{display:block;line-height:1.35}.assist-card h3{font-size:1rem;font-weight:850;margin:0 0 12px}.assist-card ul{display:grid;gap:10px;list-style:none;margin:0;padding:0}.assist-card li{color:#364258;font-weight:650;padding-left:22px;position:relative}.assist-card li:before{background:var(--accent);border-radius:50%;content:"";height:12px;left:0;position:absolute;top:.25em;width:12px}.assist-card p{color:var(--muted);line-height:1.6;margin:0}.swal2-popup{border-radius:8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.swal2-title{color:var(--ink);font-weight:850}@media (max-width:980px){.content-grid,.guarantee-form-layout,.metrics-grid{grid-template-columns:1fr 1fr}.guarantee-form-layout{grid-template-columns:1fr}.panel-large{grid-column:span 2}.form-assist-panel{grid-template-columns:repeat(3,minmax(0,1fr));position:static}.filter-bar{grid-template-columns:1fr}}@media (max-width:720px){.app-main,.app-shell{width:min(100% - 22px,1180px)}.danger-zone,.detail-hero,.page-hero,.page-title-row{align-items:stretch;flex-direction:column}.content-grid,.detail-list,.form-grid,.form-grid-finance,.metrics-grid{grid-template-columns:1fr}.form-grid-finance>div:nth-child(5),.form-grid-finance>div:nth-child(6){grid-column:auto}.form-card-hero,.form-page-title,.form-section-heading{grid-template-columns:1fr}.form-card-hero{flex-direction:column}.form-card form,.form-section{padding:18px}.form-assist-panel{grid-template-columns:1fr}.panel-large{grid-column:auto}.alert-row,.compact-row{grid-template-columns:1fr}.login-card{padding:24px 18px}.login-logo{height:82px;width:82px}}