:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#132e43;background:#f5f7fa;font-size:16px;font-synthesis:none;--ink:#132e43;--muted:#536578;--line:#dce3ea;--green:#b9ed79;--blue:#e8f1fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}button,input{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #1683ca;outline-offset:3px}button:disabled{opacity:.35;cursor:default}.masthead{max-width:1440px;margin:auto;padding:26px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:1.45rem;font-weight:750;letter-spacing:-.04em;display:flex;align-items:center;gap:9px}.brand-icon{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--ink);color:var(--green);border-radius:8px;font-size:1.6rem}.brand-note{font-size:.7rem;letter-spacing:.13em;margin-left:10px;font-weight:600;color:var(--muted)}nav{display:flex;gap:28px;align-items:center;font-size:.9rem}.text-button{border:0;background:none;padding:8px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;font-size:.875rem}main{max-width:1440px;margin:auto;padding:0 48px}.intro{padding:49px 0 37px;display:flex;justify-content:space-between;align-items:center;gap:24px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;margin:0 0 16px;color:var(--muted)}h1{font-size:clamp(2.5rem,4vw,3.85rem);letter-spacing:-.055em;line-height:1.04;margin:0 0 20px;font-weight:720}.intro p:not(.eyebrow){font-size:1rem;line-height:1.6;color:var(--muted);margin-bottom:0}.intro-note{padding:24px 30px;border-left:1px solid var(--line);min-width:270px}.intro-note strong{font-size:1.05rem}.intro-note p{font-size:.875rem!important}.mini-line{display:block;width:43px;height:5px;background:var(--green);margin-bottom:18px}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);align-items:start;gap:28px}.settings{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:25px}.section-title{display:flex;align-items:center;gap:10px;margin-bottom:24px}.number{border:1px solid var(--line);border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:.75rem;color:var(--muted)}h2{font-size:1.25rem;letter-spacing:-.025em;margin:0}.section-title h2{font-size:1rem}.settings label{display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}input{width:100%;padding:10px;border:1px solid #bdcbd7;border-radius:6px;background:#fff;color:var(--ink);min-height:42px}input[type=date]{font-size:.875rem;min-width:0}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.help{font-size:.8rem;line-height:1.5;color:var(--muted);margin:9px 0 0}fieldset{border:0;padding:0;margin:25px 0}legend{font-size:.875rem;font-weight:650;padding:0}.week-inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:11px 8px;margin-top:16px}.week-inputs input{padding:8px 5px;text-align:center}.week-inputs label{text-align:center;font-size:.75rem;color:var(--muted)}.primary{width:100%;background:var(--ink);color:#fff;padding:14px;border:0;border-radius:7px;font-weight:600;display:flex;justify-content:space-between;font-size:.9rem}.primary:hover{background:#234b65}.primary span{color:var(--green)}.form-error{color:#a33b28;font-size:.875rem;line-height:1.5}.form-error:empty{display:none}.setting-footer{display:flex;gap:12px;border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.setting-footer p{font-size:.8rem;color:var(--muted);line-height:1.5;margin:0}.small-square{height:11px;width:11px;flex-shrink:0;margin-top:5px;background:var(--green);transform:rotate(12deg)}.planner{min-width:0}.planner-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:3px 0 20px}.planner-top h2{font-size:1.6rem;overflow-wrap:anywhere}.planner-top .eyebrow{margin-bottom:9px}.pill{background:#e9edf2;padding:7px 10px;border-radius:30px;font-size:.75rem;white-space:nowrap;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{padding:19px;background:white;border:1px solid var(--line);border-radius:10px}.stat strong{display:block;font-size:1.9rem;letter-spacing:-.04em;font-weight:650;margin-bottom:7px}.stat span{font-size:.8rem;color:var(--muted)}.stat.accent{background:var(--ink);color:white;border-color:var(--ink)}.stat.accent span{color:#d8e6f0}.capacity-note{margin:15px 0 24px;padding:14px 16px;border-radius:8px;background:#e9f3df;font-size:.875rem;line-height:1.5;color:#315226}.capacity-note.warning{background:#fff0d9;color:#775019}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px}h3{font-size:1.05rem;margin:0 0 7px}.calendar-toolbar p{font-size:.875rem;color:var(--muted);margin:0}.week-nav{display:flex;gap:6px}.week-nav button{border:1px solid var(--line);background:white;border-radius:6px;width:36px;height:36px;color:var(--ink)}.legend{display:flex;gap:17px;flex-wrap:wrap;margin:22px 0 12px;font-size:.75rem;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend span:last-child{margin-left:auto}.legend i{width:9px;height:9px;border-radius:2px}.study-dot{background:#b9d8f7}.review-dot{background:#cae5a4}.calendar{border:1px solid var(--line);border-radius:10px;background:white;overflow:hidden}.day-row{display:grid;grid-template-columns:105px minmax(0,1fr);min-height:100px;border-bottom:1px solid var(--line)}.day-row:last-child{border-bottom:0}.day-info{padding:17px 13px;border-right:1px solid var(--line);background:#fafbfd}.day-info strong{display:block;font-size:.875rem;margin-bottom:5px}.day-info time{color:var(--muted);font-size:.8rem}.day-info label{display:block;font-size:.75rem;margin-top:10px;color:var(--muted)}.day-info input{width:64px;min-height:30px;padding:4px;margin-top:4px;font-size:.8rem}.day-tasks{padding:12px;display:flex;align-content:center;align-items:flex-start;flex-wrap:wrap;gap:7px}.session{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid #cbdfee;border-radius:5px;background:var(--blue);font-size:.8rem;line-height:1.4;cursor:pointer}.session.review{background:#edf5e3;border-color:#d8e7c5}.session input{width:16px;min-height:16px;height:16px;margin:0;accent-color:var(--ink);flex-shrink:0}.session.done{opacity:.6}.session.done span{text-decoration:line-through}.free-day{font-size:.875rem;color:var(--muted);padding:12px 0}.calendar-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px}.calendar-bottom p{font-size:.75rem;color:var(--muted);line-height:1.5}.method{display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px;margin:65px 0 45px;padding-top:32px;border-top:1px solid var(--line)}.method h2{font-size:1.65rem;line-height:1.3}.method details{border-bottom:1px solid var(--line);padding:0 0 17px;margin-bottom:18px}.method summary{font-weight:600;font-size:.95rem;cursor:pointer}.method p:not(.eyebrow){font-size:.9rem;color:var(--muted);line-height:1.65}footer{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}footer .brand{font-size:1.1rem}footer p,footer a{font-size:.75rem;color:var(--muted)}#print-area{display:none}@media(min-width:1450px){.workspace,.method{grid-template-columns:350px minmax(0,1fr)}}@media(max-width:1050px){main{padding:0 24px}.masthead{padding:22px 24px}.workspace,.method{grid-template-columns:290px minmax(0,1fr);gap:20px}.settings{padding:19px}.intro-note{min-width:220px;padding-right:0}.stat{padding:15px}.stat strong{font-size:1.5rem}.brand-note{display:none}.day-row{grid-template-columns:91px minmax(0,1fr)}}@media(max-width:760px){main{padding:0 18px}.masthead{padding:18px;flex-wrap:wrap}nav{gap:16px;flex-wrap:wrap}.brand{font-size:1.25rem}.intro{padding:30px 0}.intro-note{display:none}.intro h1{font-size:2.75rem}.workspace,.method{grid-template-columns:1fr}.settings{padding:22px}.week-inputs{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.week-inputs input{font-size:.875rem}.planner{margin-top:15px}.stats{gap:7px}.stat{padding:13px 10px}.stat strong{font-size:1.45rem}.stat span{font-size:.75rem}.method{margin-top:40px}.method h2 br{display:none}footer{flex-wrap:wrap;gap:8px}footer p{width:100%;order:3}.calendar-bottom{align-items:flex-start}.calendar-bottom button{flex-shrink:0}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{background:white;color:black}main{max-width:none;padding:0}.masthead,.intro,.workspace,.method,footer{display:none!important}#print-area{display:block}#print-area h1{font-size:24px}#print-area p,#print-area td,#print-area th{font-size:11px;line-height:1.5}#print-area table{width:100%;border-collapse:collapse}#print-area td,#print-area th{border:1px solid #aaa;padding:6px;text-align:left}#print-area tr{break-inside:avoid}#print-area th{background:#eee}}
.form-pair>div{min-width:0} input[type=date]{max-width:100%}
/* Personalización, guardado y agenda */
[hidden]{display:none!important}select{font:inherit;width:100%;padding:10px 8px;border:1px solid #bdcbd7;border-radius:6px;background:white;color:var(--ink);min-height:42px}select:focus-visible{outline:3px solid #1683ca;outline-offset:3px}.intro.compact{padding:30px 0 26px}.intro.compact h1{font-size:clamp(1.9rem,3vw,2.8rem);margin-bottom:10px}.intro.compact .eyebrow{margin-bottom:10px}.workspace{grid-template-columns:minmax(340px,390px) minmax(0,1fr)}.help,.week-inputs label,.stat span,.legend,.session,.day-info label,.day-info time{font-size:.875rem}.notice{padding:15px 18px;margin:0 0 20px;border-left:4px solid #2874a3;background:#e8f1fb;line-height:1.5;overflow-wrap:anywhere}.empty-state{padding:32px;background:#e9f1f8;border-radius:12px;border:1px solid #d0dfeb;min-height:260px}.empty-mark{display:block;color:#426b88;font-size:.875rem;letter-spacing:.15em;margin-bottom:32px}.empty-state h3{font-size:1.5rem;letter-spacing:-.03em}.empty-state p{max-width:550px;color:var(--muted);line-height:1.65}.secondary{padding:10px 13px;border:1px solid #b8c9d5;background:#fff;color:var(--ink);border-radius:6px;font-size:.875rem;font-weight:600;min-height:42px}.secondary:hover{background:#edf4f9}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.utility{border-top:1px solid var(--line);margin-top:28px;padding-top:23px}.utility p,.utility li{font-size:.9375rem;line-height:1.65;color:var(--muted)}.utility h3{font-size:1.15rem}.utility details{margin:18px 0}.utility summary{font-size:.9375rem;cursor:pointer}.utility label{font-size:.875rem;line-height:1.5;display:block;margin:18px 0 8px}.utility .file-label{display:inline;margin:0;cursor:pointer}.utility input[readonly]{margin-top:8px;background:#fff;font-size:.875rem}#recovery-box{border-left:3px solid #c5a561;padding-left:15px;margin-top:18px}#calendar-link-box{border-left:3px solid #84b648;padding-left:15px;margin-top:18px}.topic-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,1.3fr) 32px;gap:8px;margin:14px 0;padding:12px;background:#f5f7fa;border:1px solid var(--line);border-radius:7px}.topic-name{grid-column:1/4}.topic-editor input,.topic-editor select{font-size:.875rem;min-width:0}.remove-topic{border:0;background:transparent;font-size:1.45rem;color:#865142;padding:0;min-height:42px}.submit-plan{margin-top:24px}.session{max-width:100%;overflow-wrap:anywhere}.planner-top{align-items:start}.planner-top h2{line-height:1.2}.pill{font-size:.8125rem}.guide{max-width:820px;padding-top:38px;padding-bottom:40px}.guide h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15}.guide h2{margin:32px 0 12px;font-size:1.45rem}.guide p,.guide li{line-height:1.8}.guide a{text-decoration:underline;text-underline-offset:3px}.guide .callout{padding:20px;background:#e9f3df;border-left:4px solid #7eab45;margin:25px 0}.guide table{width:100%;border-collapse:collapse}.guide td,.guide th{text-align:left;padding:12px;border-bottom:1px solid var(--line)}
@media(max-width:1100px){.workspace{grid-template-columns:340px minmax(0,1fr);gap:20px}.planner-top{flex-wrap:wrap}.day-row{grid-template-columns:95px minmax(0,1fr)}.stat strong{font-size:1.5rem}.stats{gap:8px}.stat{padding:14px 10px}}
@media(max-width:860px){.workspace{grid-template-columns:1fr}.settings{max-width:none}.week-inputs{grid-template-columns:repeat(7,minmax(0,1fr))}.topic-editor{grid-template-columns:minmax(0,1fr) 85px 105px 32px}.topic-name{grid-column:auto}.planner{margin-top:16px}.brand-note{display:none}}
@media(max-width:480px){.topic-editor{grid-template-columns:minmax(0,1fr) minmax(100px,1.3fr) 32px}.topic-name{grid-column:1/4}.settings{padding:18px}.week-inputs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stats{grid-template-columns:1fr 1fr}.stats .accent{grid-column:1/3;display:flex;align-items:center;justify-content:space-between}.stat.accent strong{margin:0}.calendar-toolbar{gap:8px}.empty-state{padding:24px}.brand-note{display:none}nav{font-size:.875rem;gap:12px}.day-row{grid-template-columns:85px minmax(0,1fr)}.day-info{padding:14px 9px}.day-tasks{padding:9px}.pill{white-space:normal}}
@media print{@page{size:A4 portrait;margin:12mm}body{background:white;color:#183247;-webkit-print-color-adjust:exact;print-color-adjust:exact}.notice,.utility,noscript{display:none!important}#print-area{display:block!important}.print-sheet{break-after:page;padding:0}.print-sheet:last-child{break-after:auto}.print-heading{border-top:8px solid #17384e;padding:15px 0 12px;border-bottom:1px solid #b4c5cf}.print-brand{font-size:9pt;font-weight:700;letter-spacing:.12em;color:#4b6a7d}#print-area h1{font-size:23pt;line-height:1.2;margin:10px 0 6px;letter-spacing:-.035em;overflow-wrap:anywhere}#print-area .print-heading p{font-size:11pt;margin:0;color:#436277}.print-summary{display:flex;justify-content:space-between;gap:10px;background:#e9f3df;padding:12px;margin:14px 0;font-size:10pt}.print-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.print-day,.print-notes{border:1px solid #c4d0d7;border-radius:6px;padding:12px;min-height:120px;break-inside:avoid;overflow:hidden}#print-area h2{font-size:11pt;text-transform:capitalize;margin:0 0 6px}#print-area p{font-size:9pt;line-height:1.45}#print-area .print-availability{color:#577082;font-size:8pt;margin:0 0 10px}.print-task{padding:5px 0;margin:0;border-bottom:1px solid #e5eaed;overflow-wrap:anywhere}.print-notes{background:#f3f6f8}.print-notes p{color:#c4d0d7;white-space:nowrap;margin-top:22px}.print-muted{color:#6d808c}.print-foot{border-top:1px solid #b4c5cf;margin-top:15px;padding-top:10px;color:#4b6576}}
