.planning{color:#193b35;background:#f7f8f3;max-width:1600px;min-height:100vh;margin:auto;padding:32px}.planning header,.planning-head,.planning .section-head,.planning .toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.planning header{border-bottom:1px solid #d8dfd4;padding-bottom:24px;font-size:12px}.planning-head{padding:36px 0}.planning h1{margin:8px 0;font:48px Georgia}.planning .eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px}.planning button{color:#25483d;font:inherit;cursor:pointer;background:#fff;border:1px solid #cad6cd;border-radius:8px;padding:10px 15px}.planning button:disabled{opacity:.5;cursor:wait}.planning-head>button,.planning .dialog>button:last-child{color:#fff;background:#254f42}.planning .tabs{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.planning .selected{background:#e1eccf;border-color:#739361}.planning .toolbar{justify-content:start;margin:20px 0}.planning input:not([type=checkbox]):not([type=color]),.planning select,.planning textarea{font:inherit;color:#183b32;background:#fff;border:1px solid #c6d3c7;border-radius:6px;max-width:100%;padding:10px}.planning .calendar{background:#d7dfd4;border:1px solid #d7dfd4;border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.planning .calendar.day{grid-template-columns:1fr}.planning .calendar>section{background:#fff;min-height:180px;padding:12px}.planning .calendar h3{border-bottom:1px solid #dce3d7;padding-bottom:10px;font-size:13px}.planning .calendar .muted{background:#f2f4ee}.planning .appointment{text-align:left;overflow-wrap:anywhere;background:#f7f9f4;border-left:5px solid;gap:6px;width:100%;margin:8px 0;padding:12px 9px;display:grid}.planning .appointment strong{font-size:12px}.planning .appointment small{font-size:11px}.planning .state{color:#536a5c;font-size:10px}.planning .panel,.planning .welcome{background:#fff;border:1px solid #d8e1d3;border-radius:12px;margin:20px 0;padding:26px}.planning .welcome{background:#eaf0e0}.planning .panel>label{margin:12px 0;display:block}.planning .entity-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.planning .entity-grid article{border:1px solid #d3dfd0;border-radius:10px;padding:20px}.planning .dot{border-radius:4px;width:24px;height:7px;display:block}.planning .dialog{background:#fff;border-radius:12px;gap:16px;width:100%;max-width:780px;max-height:90vh;margin:auto;padding:28px;display:grid;position:relative;overflow:auto}.planning .overlay{z-index:200;background:#0e241d88;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:auto}.planning .dialog label{gap:8px;display:grid}.planning .dialog label:has(input[type=checkbox]){align-items:center;display:flex}.planning .dialog input[type=checkbox]{width:18px;height:18px}.planning .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.planning fieldset{border:1px solid #d8dfd5;border-radius:8px;padding:16px}.planning .hours>div{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.planning .hours>div>strong{width:85px}.planning .hours span{gap:4px;display:flex}.planning .slot-grid{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.planning .slot-grid span{background:#e7eee0;border-radius:6px;padding:14px}.planning .error{color:#7f3629;background:#f6e6dd;border-radius:8px;padding:16px}.planning .close{justify-self:end}@media (max-width:850px){.planning{padding:18px}.planning h1{font-size:36px}.planning .calendar.week,.planning .calendar.staff{grid-template-columns:1fr}.planning .calendar.month{grid-template-columns:repeat(7,minmax(0,1fr))}.planning .calendar.month>section{min-height:110px;padding:3px}.planning .calendar.month h3{font-size:9px}.planning .calendar.month .appointment{border-left-width:3px;padding:4px;font-size:9px}.planning .calendar.month .appointment small,.planning .calendar.month .state{display:none}.planning .calendar.month .appointment strong{font-size:8px}.planning .form-grid{grid-template-columns:1fr}.planning .overlay{padding:10px}.planning .dialog{padding:20px}.planning .hours span{flex-wrap:wrap}.planning .toolbar{gap:8px}}.planning-login{max-width:700px}.planning-login label,.team-access label{gap:8px;margin:12px 0;display:grid}.team-access{border:1px solid #d8dfd5;border-radius:10px;margin:18px 0;padding:20px}.planning-independent .planning{max-width:1800px}.planning-independent .planning header{gap:12px}.planning-independent .planning header button{margin-right:10px}
