:root{--green:#203634;--green2:#315b55;--peach:#f3c0ab;--cream:#fffaf6;--ink:#203634;--muted:#6a7875;--line:#dfe8e5;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:"DM Sans",sans-serif;background:#f3f7f5;color:var(--ink)}a{text-decoration:none;color:inherit}.gestion-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:32px 22px;background:var(--green);color:#fff;display:flex;flex-direction:column}.gestion-brand{font-family:"Pacifico",cursive;color:var(--peach);font-size:1.8rem;line-height:1.1;margin:0 10px 38px}.gestion-brand span{display:block;font:700 .62rem "DM Sans";letter-spacing:.25em;color:#d8e6e3}.sidebar nav{display:grid;gap:7px}.sidebar nav a,.sidebar-bottom a,.sidebar-bottom button{padding:11px 13px;border-radius:10px;color:#e6efed;font:600 .95rem "DM Sans"}.sidebar nav a:hover{background:rgba(255,255,255,.09)}.sidebar-bottom{margin-top:auto;display:grid;gap:5px}.sidebar-bottom form{margin:0}.sidebar-bottom button{width:100%;text-align:left;border:0;background:none;cursor:pointer}.gestion-main{width:100%;margin-left:250px}.gestion-header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:flex-end;align-items:center;padding:0 38px}.gestion-header div{text-align:right}.gestion-header small,.gestion-header strong{display:block}.gestion-header small{color:var(--muted)}.content{padding:42px;max-width:1400px;margin:auto}.content.narrow{max-width:980px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading p,.confirm-card>p{font-size:.72rem;font-weight:800;letter-spacing:.2em;color:#62847e;margin:0}.page-heading h1,.confirm-card h1{font-size:2.2rem;margin:3px 0}.page-heading span,.confirm-card span{color:var(--muted)}.primary,.danger-button{display:inline-flex;border:0;border-radius:10px;padding:12px 19px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stat-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(32,54,52,.07);transition:.2s}.stat-card:hover{transform:translateY(-3px)}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card strong{font-size:2.8rem;margin:10px 0}.stat-card small{color:var(--muted)}.table-card,.form-card,.confirm-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 10px 30px rgba(32,54,52,.06);overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.actions{display:flex;gap:12px}.actions a{font-weight:700;color:var(--green2)}.actions .danger{color:#a63f3f}.status{padding:5px 9px;border-radius:99px;font-size:.78rem;font-weight:700}.status.yes{background:#e0f4e8;color:#23623c}.status.no{background:#f5e7e4;color:#8a4339}.empty{text-align:center;color:var(--muted);padding:40px}.form-card{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px;padding:32px;overflow:visible}.field{display:grid;align-content:start;gap:9px}.field:has(textarea),.field-descripcion,.field-comentarios,.form-actions{grid-column:1/-1}.field-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.field-label label{font-size:.94rem;font-weight:700}.field-label small{font-size:.75rem;color:var(--muted);text-align:right}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cbd9d6;border-radius:9px;background:#fff;font:inherit}.field input:not([type=checkbox]):not([type=file]),.field select{min-height:48px}.field input:not([type=checkbox]):not([type=file]):focus,.field select:focus,.field textarea:focus{outline:none;border-color:#5e8a82;box-shadow:0 0 0 4px rgba(49,91,85,.1)}.field textarea{min-height:128px;max-height:240px;resize:vertical}.field input[type=file]{min-height:48px;padding:6px;border-style:dashed;background:#f7faf9;color:var(--muted)}.field input[type=file]::file-selector-button{height:34px;margin-right:10px;padding:0 14px;border:0;border-radius:7px;background:#e4efec;color:var(--green);font-weight:700;cursor:pointer}.field-toggle{min-height:62px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#f8fbfa;display:flex;flex-direction:row-reverse;align-items:center;justify-content:flex-end;gap:12px}.field-toggle .field-label{display:block}.field-toggle input[type=checkbox]{appearance:none;width:42px;height:24px;margin:0;border-radius:99px;background:#bdcbc8;position:relative;cursor:pointer;transition:.2s}.field-toggle input[type=checkbox]::after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:.2s}.field-toggle input[type=checkbox]:checked{background:var(--green2)}.field-toggle input[type=checkbox]:checked::after{transform:translateX(18px)}.field small,.errorlist{font-size:.82rem;color:var(--muted)}.errorlist{color:#a63f3f;margin:0;padding-left:18px}.form-actions,.confirm-card form{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:10px}.form-actions{padding-top:22px;border-top:1px solid var(--line)}.secondary-button{display:inline-flex;padding:11px 18px;border:1px solid #b9cbc6;border-radius:10px;background:#fff;font-weight:700;color:var(--green)}.form-actions .primary{min-width:155px;justify-content:center}.danger-button{background:#a63f3f}.flash-wrap{padding:20px 42px 0}.flash{padding:13px 18px;border-radius:10px;background:#dff2e6;color:#245b38}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(90deg,rgba(10,31,29,.85),rgba(10,31,29,.42)),url("../img/portada-cafeteria-tu-momento.png") center/cover}.login-card{width:min(430px,100%);background:rgba(255,250,246,.97);padding:40px;border-radius:24px;box-shadow:0 25px 70px rgba(0,0,0,.25);display:grid;gap:16px}.login-brand strong{font:2rem "Pacifico";color:#e79d83}.login-brand small{display:block;letter-spacing:.25em}.login-card h1{margin:5px 0 0}.login-card p{margin:0;color:var(--muted)}.login-card label{display:grid;gap:6px;font-weight:700}.login-card input{padding:13px;border:1px solid #cbd9d6;border-radius:10px;font:inherit}.login-card>a{text-align:center;color:var(--muted)}@media(max-width:850px){.sidebar{position:static;width:100%}.gestion-shell{display:block}.gestion-main{margin:0}.sidebar nav{grid-template-columns:repeat(2,1fr)}.stat-grid{grid-template-columns:1fr}.content{padding:25px}.gestion-header{display:none}.form-card{grid-template-columns:1fr;padding:22px}.field,.field-descripcion,.field-comentarios,.form-actions{grid-column:1}.field-label{align-items:flex-start;flex-direction:column;gap:2px}.page-heading{align-items:flex-start;flex-direction:column}.form-actions{justify-content:stretch}.form-actions a,.form-actions button{flex:1;justify-content:center}}
