:root{color:#17211d;background:#f5f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.feed-link{align-items:center;background:#17634a;border:0;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:42px;padding:0 14px;text-decoration:none}button:hover,.feed-link:hover{background:#0f4f3a}label{color:#405047;display:grid;font-size:13px;font-weight:700;gap:7px}input,select,textarea{background:#fff;border:1px solid #cbd7d0;border-radius:6px;color:#17211d;min-height:40px;padding:9px 11px;width:100%}textarea{min-height:82px;resize:vertical}.login-shell,.loading{display:grid;min-height:100vh;place-items:center;padding:24px}.login-panel{background:#fff;border:1px solid #d9e2de;border-radius:8px;box-shadow:0 18px 55px #1a2d251f;display:grid;gap:16px;max-width:430px;padding:32px;width:100%}.login-panel h1{font-size:30px;line-height:1.05;margin:0 0 6px}.hint,.error,.success{font-size:13px;margin:0}.hint{color:#66746c}.error{color:#b42318}.success{color:#17634a}.app-shell{margin:0 auto;max-width:1480px;padding:26px}.topbar,.toolbar,.section-heading,.event-heading,.panel-title{align-items:center;display:flex;gap:12px}.topbar,.section-heading{justify-content:space-between}.topbar{margin-bottom:18px}.topbar p{color:#66746c;font-weight:700;margin:0 0 4px}.topbar h1,.section-heading h2,.panel-title h2,.event-heading h3{margin:0}.topbar h1{font-size:34px}.ghost-button{background:#fff;border:1px solid #cbd7d0;color:#17211d}.ghost-button:hover{background:#edf3ef}.toolbar{background:#e8f0ec;border:1px solid #d6e2dc;border-radius:8px;flex-wrap:wrap;margin-bottom:18px;padding:14px}.toolbar label{min-width:min(320px,100%)}.content-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 410px}.calendar-panel,.form-panel,.account-panel{background:#fff;border:1px solid #d9e2de;border-radius:8px;padding:18px}.section-heading{border-bottom:1px solid #edf1ef;margin-bottom:14px;padding-bottom:12px}.section-heading span{color:#66746c;font-size:13px;font-weight:800}.event-list,.event-form,.user-form,.password-form{display:grid;gap:14px}.account-panel{margin-bottom:18px}.account-panel .panel-title{margin-bottom:14px}.password-form{align-items:end;grid-template-columns:repeat(3,minmax(0,1fr)) auto}.account-panel .error,.account-panel .success{font-size:13px;font-weight:800;margin:10px 0 0}.side-panel-stack{display:grid;gap:18px}.user-form{border-bottom:1px solid #edf1ef;padding-bottom:18px}.user-management{border-bottom:1px solid #edf1ef;display:grid;gap:12px;padding-bottom:18px}.user-list{display:grid;gap:8px}.managed-user{background:#f7faf8;border:1px solid #d9e2de;border-radius:6px;padding:10px}.managed-user-summary,.user-actions{align-items:center;display:flex;gap:8px}.managed-user-summary{justify-content:space-between}.managed-user-summary strong,.managed-user-summary span{display:block}.managed-user-summary span{color:#66746c;font-size:12px;margin-top:3px}.reset-password-form{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.reset-password-form button{min-height:38px}.event-card{border:1px solid #d9e2de;border-radius:8px;display:grid;grid-template-columns:190px 1fr;overflow:hidden}.event-time{background:#f2f5f3;display:grid;gap:7px;padding:16px}.event-time span{color:#66746c;font-size:13px}.event-body{display:grid;gap:10px;padding:16px}.event-heading{justify-content:space-between}.icon-button{min-height:34px;padding:0 9px}.danger{background:#b42318}.danger:hover{background:#8f1c14}.location,.notes{margin:0}.location{color:#405047;font-weight:800}dl{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}dt{color:#66746c;font-size:12px;font-weight:800;text-transform:uppercase}dd{margin:2px 0 0;overflow-wrap:anywhere}.attachments{display:grid;gap:8px}.attachment-item{align-items:center;background:#edf3ef;border-radius:6px;color:#174f3d;display:grid;font-size:13px;font-weight:800;gap:6px;grid-template-columns:minmax(0,1fr) auto auto auto;min-height:34px;padding:5px 6px 5px 9px}.attachment-item>span{align-items:center;display:flex;gap:6px;min-width:0;overflow-wrap:anywhere}.attachment-action{min-height:30px;padding:5px 7px}.attachment-action .attachment-item>span>span{display:grid;gap:2px}.attachment-action .attachment-item>span small{color:#66746c;font-size:11px;font-weight:700}.grid-2{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.event-date-time{border:1px solid #cbd7d0;border-radius:6px;margin:0;padding:10px}.event-date-time legend{color:#405047;font-size:13px;font-weight:800;padding:0 5px}.event-date-range{grid-template-columns:minmax(0,1fr)}.date-hour-fields{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.date-hour-fields select:disabled{background:#edf1ef;cursor:not-allowed}.empty-state{background:#f7faf8;border:1px dashed #cbd7d0;border-radius:8px;color:#66746c;padding:28px;text-align:center}.manager-overview{background:#fff;border:1px solid #d9e2de;border-radius:8px;margin-bottom:18px;padding:18px}.overview-header,.calendar-nav,.segmented-control,.weekday-row,.cell-date{align-items:center;display:flex}.overview-header,.calendar-nav{justify-content:space-between;gap:12px}.overview-header{border-bottom:1px solid #edf1ef;margin-bottom:12px;padding-bottom:12px}.segmented-control{background:#edf3ef;border:1px solid #d6e2dc;border-radius:8px;padding:3px}.segmented-control button{background:transparent;color:#405047;min-height:34px;padding:0 12px;text-transform:capitalize}.segmented-control button.active{background:#17634a;color:#fff}.calendar-nav{margin-bottom:12px}.calendar-nav h3{font-size:18px;margin:0;text-align:center}.weekday-row{color:#66746c;display:grid;font-size:12px;font-weight:800;gap:8px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:8px;text-transform:uppercase}.calendar-grid{display:grid;gap:8px}.calendar-grid.day{grid-template-columns:1fr}.calendar-grid.week,.calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-cell{background:#f8faf9;border:1px solid #d9e2de;border-radius:8px;display:grid;gap:10px;min-height:154px;padding:10px}.calendar-grid.day .calendar-cell{min-height:320px}.calendar-grid.month .calendar-cell{min-height:132px}.calendar-cell.today{border-color:#17634a;box-shadow:inset 0 0 0 1px #17634a}.cell-date{justify-content:space-between;min-height:22px}.cell-date span{font-weight:900}.cell-date small{color:#66746c;font-size:12px;font-weight:800}.cell-events{display:grid;gap:7px;align-content:start}.calendar-entry{background:#fff;border-left:4px solid #17634a;border-radius:6px;box-shadow:0 1px #1a2d250f;display:grid;gap:3px;padding:8px}.calendar-entry strong,.calendar-entry span,.calendar-entry small{overflow-wrap:anywhere}.calendar-entry strong{font-size:13px;line-height:1.25}.calendar-entry span{color:#405047;font-size:12px;font-weight:800}.calendar-entry small{color:#66746c;font-size:12px}@media (max-width: 980px){.content-grid,.password-form,.calendar-grid.week,.calendar-grid.month,.weekday-row{grid-template-columns:1fr}.weekday-row{display:none}.calendar-cell,.calendar-grid.month .calendar-cell{min-height:116px}}@media (max-width: 680px){.app-shell{padding:14px}.topbar,.overview-header,.calendar-nav{align-items:flex-start;flex-direction:column}.segmented-control{width:100%}.segmented-control button{flex:1}.topbar h1{font-size:27px}.event-card,.grid-2,dl,.reset-password-form{grid-template-columns:1fr}}.app-nav{border-bottom:1px solid #d9e2de;display:flex;gap:6px;margin-bottom:18px}.app-nav button{background:transparent;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;color:#405047;padding:0 16px}.app-nav button:hover{background:#edf3ef}.app-nav button.active{border-bottom-color:#17634a;color:#17634a}.content-grid.single{grid-template-columns:1fr}.calendar-entry{border:0;border-left:4px solid var(--user-color, #17634a);color:#17211d;cursor:pointer;min-height:0;text-align:left;width:100%}.calendar-entry:hover{background:#edf3ef}.event-card{border-left:5px solid var(--user-color, #17634a);scroll-margin-top:16px}.event-card.selected-event{box-shadow:0 0 0 3px #17634a3d}.event-actions,.form-actions,.modal-heading,.page-heading,.color-field{align-items:center;display:flex;gap:8px}.event-actions{flex-shrink:0}.assignee{align-items:center;display:flex;font-weight:800;gap:7px}.assignee i{border-radius:50%;height:10px;width:10px}.modal-backdrop{align-items:center;background:#0c18138a;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;overflow-y:auto;padding:24px;position:fixed;z-index:50}.modal-card{background:#fff;border-radius:10px;box-shadow:0 24px 80px #0c18134d;max-height:calc(100vh - 48px);max-width:720px;overflow-y:auto;padding:22px;width:100%}.modal-heading,.page-heading{justify-content:space-between}.form-actions{justify-content:flex-end}.page-heading{margin-bottom:18px}.page-heading p{color:#66746c;font-size:13px;font-weight:800;margin:0 0 4px}.page-heading h2{margin:0}.page-heading>span{color:#66746c;font-size:13px;font-weight:800}.users-page>.user-form{border:1px solid #d9e2de;margin-bottom:18px;padding:18px}.user-management-list{display:grid;gap:12px}.managed-user{background:#fff;border:1px solid #d9e2de;display:grid;gap:14px;overflow:hidden;padding:0 16px 16px}.user-color-bar{background:var(--user-color, #17634a);height:6px;margin:0 -16px}.managed-user-fields{align-items:end;display:grid;gap:12px;grid-template-columns:1.2fr 1fr 1.8fr 82px}.managed-user .user-actions{flex-wrap:wrap}.color-picker{display:grid;gap:7px;min-width:0}.color-picker-label{color:#405047;font-size:13px;font-weight:800}.color-picker-trigger{align-items:center;background:#fff;border:1px solid #cbd7d0;color:#17211d;display:flex;justify-content:flex-start;min-height:40px;padding:6px 10px;width:100%}.color-picker-trigger i{border:1px solid rgba(0,0,0,.18);border-radius:50%;height:24px;width:24px}.color-picker-trigger span:nth-of-type(1){color:#66746c;font-family:ui-monospace,monospace;font-size:13px}.color-picker-trigger span:last-child{color:#17634a;margin-left:auto}.color-palette{background:#f7faf8;border:1px solid #cbd7d0;border-radius:8px;display:grid;gap:4px;grid-template-columns:repeat(10,minmax(20px,1fr));max-width:380px;padding:8px;width:100%}.color-palette button{aspect-ratio:1;border:1px solid rgba(0,0,0,.18);border-radius:4px;min-height:0;padding:0;width:100%}.color-palette button:hover{box-shadow:0 0 0 2px #fff,0 0 0 4px #17634a;transform:scale(1.08)}.color-palette button.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #17211d}.reset-password-form{border-top:1px solid #edf1ef;padding-top:12px}.assignee-picker{border:1px solid #cbd7d0;border-radius:6px;display:grid;gap:8px;margin:0;padding:10px}.assignee-picker legend{color:#405047;font-size:13px;font-weight:800;padding:0 5px}.assignee-picker label{align-items:center;display:flex;gap:8px}.assignee-picker input{min-height:17px;width:17px}.assignee-picker i{border-radius:50%;height:10px;width:10px}.user-directory{background:#fff;border:1px solid #d9e2de;border-radius:8px;overflow:hidden}.user-directory-head,.user-directory-row{display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr 1fr 1fr;padding:12px 16px;text-align:left;width:100%}.user-directory-head{background:#e8f0ec;color:#405047;font-size:12px;font-weight:800;text-transform:uppercase}.user-directory-row{background:#fff;border-bottom:1px solid #edf1ef;border-radius:0;color:#17211d}.user-directory-row:last-child{border-bottom:0}.user-directory-row:hover{background:#f7faf8}.user-directory-row span{overflow-wrap:anywhere}.customer-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 420px}.customer-form{display:grid;gap:14px}.customer-search{align-items:center;display:grid;gap:9px;grid-template-columns:auto minmax(0,1fr);margin-bottom:14px}.customer-directory{border:1px solid #d9e2de;border-radius:8px;overflow:hidden}.customer-directory-head,.customer-directory-row{display:grid;gap:12px;grid-template-columns:1.1fr 1fr .8fr 1fr 1.2fr;padding:12px 14px;text-align:left;width:100%}.customer-directory-head{background:#e8f0ec;color:#405047;font-size:12px;font-weight:800;text-transform:uppercase}.customer-directory-row{background:#fff;border-bottom:1px solid #edf1ef;border-radius:0;color:#17211d}.customer-directory-row:last-child{border-bottom:0}.customer-directory-row:hover{background:#f7faf8}.customer-directory-row span{overflow-wrap:anywhere}.customer-modal{max-width:1050px}.customer-modal>.customer-form{border-bottom:1px solid #d9e2de;padding-bottom:18px}.customer-history{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.customer-history-group:last-child{grid-column:1 / -1}.customer-history-group .section-heading h3{margin:0}.customer-event-list{display:grid;gap:8px}.customer-event-row{background:#f7faf8;border:1px solid #d9e2de;color:#17211d;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;padding:10px 12px;text-align:left;width:100%}.customer-event-row:hover{background:#edf3ef}.customer-event-row span{display:grid;gap:3px}.customer-event-row span:last-child{text-align:right}.customer-event-row small{color:#66746c;font-size:12px}@media (max-width: 980px){.managed-user-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-layout{grid-template-columns:1fr}}@media (max-width: 680px){.app-nav{overflow-x:auto}.app-nav button{flex:0 0 auto}.managed-user-fields{grid-template-columns:1fr}.modal-backdrop{padding:10px}.modal-card{max-height:calc(100vh - 20px)}.user-directory-head,.customer-directory-head{display:none}.customer-directory-row{grid-template-columns:1fr}.customer-directory-row span:before{color:#66746c;display:block;font-size:11px;font-weight:800;text-transform:uppercase}.customer-directory-row span:nth-child(1):before{content:"Client"}.customer-directory-row span:nth-child(2):before{content:"Entreprise"}.customer-directory-row span:nth-child(3):before{content:"Localité"}.customer-directory-row span:nth-child(4):before{content:"Téléphones"}.customer-directory-row span:nth-child(5):before{content:"Email"}.customer-history{grid-template-columns:1fr}.customer-history-group:last-child{grid-column:auto}.customer-event-row,.user-directory-row{grid-template-columns:1fr}.user-directory-row span:before{color:#66746c;display:block;font-size:11px;font-weight:800;text-transform:uppercase}.user-directory-row span:nth-child(1):before{content:"Prénom"}.user-directory-row span:nth-child(2):before{content:"Nom"}.user-directory-row span:nth-child(3):before{content:"Identifiant"}.user-directory-row span:nth-child(4):before{content:"Téléphone"}.user-directory-row span:nth-child(5):before{content:"Permission"}.page-heading{align-items:flex-start;flex-direction:column}}.invoice-check{align-items:center;color:#405047;display:flex;font-size:12px;font-weight:800;gap:7px;width:fit-content}.invoice-check input{accent-color:#17634a;cursor:pointer;min-height:17px;padding:0;width:17px}.invoice-check input:disabled{cursor:default;opacity:.7}.attachment-group{display:grid;gap:7px}.attachment-group>strong{color:#66746c;font-size:12px;text-transform:uppercase}.feedback-form{background:#f7faf8;border-top:1px solid #d9e2de;display:grid;gap:10px;margin:4px -16px -16px;padding:14px 16px 16px}.feedback-form button{justify-self:start}.archive-panel{max-width:960px}.archive-search{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.archive-search input{flex:1 1 280px;min-width:0}.archive-card{grid-template-columns:1fr}.archive-card p{margin:0}.archive-files{display:grid;gap:8px}.archive-files .attachment-item{grid-template-columns:minmax(0,1fr) auto auto}.attachment-preview{display:grid;gap:12px;max-width:min(1100px,100%)}.attachment-preview .modal-heading strong{overflow-wrap:anywhere}.attachment-preview iframe{border:0;height:min(75vh,900px);width:100%}.attachment-preview img{display:block;max-height:75vh;max-width:100%;object-fit:contain;margin:auto}.receipts-page{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(280px,380px) minmax(0,1fr)}.receipt-form,.receipt-list{display:grid;gap:14px}.receipt-form .panel-title{margin-bottom:2px}.receipt-item{align-items:center;background:#f7faf8;border:1px solid #d9e2de;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px}.receipt-details{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}.receipt-details>span{color:#66746c;font-size:13px}.receipt-details .receipt-status{color:#74500a;font-weight:800}.receipt-details .receipt-status.paid,.receipt-details .receipt-status.reimbursed,.receipt-details .receipt-status.actioned{color:#17634a}.receipt-actions{align-items:end;display:flex;flex-wrap:wrap;gap:8px}.receipt-actions label{min-width:130px}@media (max-width: 900px){.receipts-page{grid-template-columns:1fr}}.receipt-list-heading{align-items:center;display:flex;gap:10px}
