.weekly-shell{width:min(100%,1600px);min-height:100vh;margin:auto;padding:0 clamp(18px,3vw,42px) 42px}.weekly-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 calc(clamp(18px,3vw,42px)*-1) 18px;padding:15px clamp(18px,3vw,42px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 96%,transparent);backdrop-filter:blur(12px)}.weekly-header h1{margin:2px 0;font-size:clamp(22px,3vw,34px)}.weekly-dialog{width:min(760px,calc(100% - 24px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);box-shadow:var(--shadow)}.weekly-dialog::backdrop{background:color-mix(in srgb,var(--text) 45%,transparent)}.weekly-dialog form{padding:18px}.weekly-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 0}.weekly-form-grid textarea{min-height:90px}.weekly-status{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:10px;font-weight:850;white-space:nowrap}.weekly-status.pending{border-style:dashed}.weekly-status.done{font-weight:900}.weekly-status.cancelled{text-decoration:line-through}.weekly-empty{padding:48px 18px;text-align:center;color:var(--muted)}
@media(max-width:620px){.weekly-header{align-items:stretch;flex-direction:column}.weekly-form-grid{grid-template-columns:1fr}}

/* Modal de planificación: jerarquía clara, formulario compacto y acciones siempre visibles. */
.weekly-header{background:color-mix(in srgb,var(--panel) 92%,transparent);box-shadow:0 8px 28px color-mix(in srgb,var(--text) 7%,transparent);backdrop-filter:blur(16px)}
.weekly-dialog{width:min(820px,calc(100% - 24px));max-height:min(90vh,780px);padding:0;overflow:hidden;border-color:color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:22px;box-shadow:0 26px 80px color-mix(in srgb,var(--text) 30%,transparent)}
.weekly-dialog::backdrop{background:color-mix(in srgb,var(--text) 55%,transparent);backdrop-filter:blur(5px)}
.weekly-dialog form{display:flex;max-height:min(90vh,780px);padding:0;flex-direction:column}
.weekly-dialog .panel-head{position:relative;flex:0 0 auto;margin:0;padding:20px 24px;border:0;background:linear-gradient(115deg,var(--gradient-from),var(--gradient-to));color:var(--on-gradient)}
.weekly-dialog .panel-head::after{position:absolute;right:76px;top:-70px;width:160px;height:160px;border-radius:50%;background:color-mix(in srgb,var(--on-gradient) 12%,transparent);content:''}
.weekly-dialog .panel-head h2{position:relative;z-index:1;margin:0;font-size:22px}.weekly-dialog .panel-head .pill{position:relative;z-index:1;border-color:color-mix(in srgb,var(--on-gradient) 35%,transparent);background:color-mix(in srgb,var(--on-gradient) 14%,transparent);color:var(--on-gradient)}
.weekly-dialog .weekly-form-grid{gap:15px 18px;margin:0;padding:20px 24px;overflow:auto;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--panel)),color-mix(in srgb,var(--brand) 4%,var(--panel)))}
.weekly-dialog .weekly-form-grid label{gap:7px}.weekly-dialog .weekly-form-grid input,.weekly-dialog .weekly-form-grid select,.weekly-dialog .weekly-form-grid textarea{border-color:color-mix(in srgb,var(--accent) 23%,var(--line));background:color-mix(in srgb,var(--panel-2) 78%,var(--panel));transition:border-color .16s,box-shadow .16s,background .16s}
.weekly-dialog .weekly-form-grid input:focus,.weekly-dialog .weekly-form-grid select:focus,.weekly-dialog .weekly-form-grid textarea:focus{border-color:var(--accent);background:var(--panel);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent);outline:none}.weekly-dialog .weekly-form-grid textarea{min-height:82px}
.weekly-dialog form>.actions{flex:0 0 auto;justify-content:flex-end;margin:0;padding:14px 24px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,var(--accent) 6%)}.weekly-dialog form>.actions .btn{min-width:112px}
@media(max-width:620px){.weekly-dialog{width:calc(100% - 14px);border-radius:17px}.weekly-dialog .panel-head{padding:16px 17px}.weekly-dialog .weekly-form-grid{padding:16px 17px}.weekly-dialog form>.actions{padding:12px 17px}.weekly-dialog form>.actions .btn{min-width:0;flex:1}}
