:root{color:#213c35;background:#f4f3ee;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}.calendar-photo-edit-trigger{z-index:4;color:#fff;cursor:pointer;background:#111;border:0;border-radius:50%;width:30px;height:30px;font-size:16px;position:absolute;bottom:12px;right:12px}.calendar-photo-dialog-backdrop{z-index:100;background:#0008;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.calendar-photo-dialog{color:#111;background:#fff;border:1px solid #d8d8d8;border-radius:16px;width:min(480px,100%);max-height:calc(100dvh - 32px);padding:18px;overflow:auto;box-shadow:0 20px 60px #0005}.calendar-dialog-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-dialog-heading h2{margin:0;font-size:19px}.calendar-dialog-heading button{color:#555;cursor:pointer;background:0 0;border:0;font-size:26px}.calendar-photo-modes{grid-template-columns:1fr 1fr;gap:8px;margin:16px 0 10px;display:grid}.calendar-photo-modes button,.calendar-photo-actions button{color:#222;font:inherit;cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:8px;padding:9px 10px}.calendar-photo-modes button.active{color:#fff;background:#111;border-color:#111}.calendar-photo-stage{background:#f5f5f5;border:1px solid #cfcfcf;place-items:center;min-height:220px;display:grid;overflow:hidden}.calendar-photo-stage img{object-fit:cover;transform-origin:50%;pointer-events:none;width:100%;height:220px}.calendar-photo-stage.layout-mode{outline:2px solid #111}.calendar-zoom{color:#444;margin:14px 0;font-size:13px;display:block}.calendar-zoom input{accent-color:#111;width:100%;margin-top:8px;display:block}.calendar-photo-actions{gap:8px;margin:12px 0;display:flex}.calendar-photo-actions .danger{color:#a22;border-color:#e0baba}.calendar-photo-dialog>.calendar-primary{width:100%;min-height:42px}*{box-sizing:border-box}body{touch-action:manipulation;margin:0}button,input,select{font:inherit}button,.upload{cursor:pointer;color:inherit;touch-action:manipulation;background:#fff;border:1px solid #bfcac3;border-radius:9px;padding:.65rem 1rem}button:active{transform:scale(.985)}button:disabled{opacity:.45;cursor:wait}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible){outline-offset:3px;outline:3px solid #23806a}a{color:inherit}.toolbar{background:#fff;border-bottom:1px solid #dae0db;align-items:center;gap:1rem;padding:1rem 2rem;display:flex}.toolbar div{flex:1}h1{margin:0 0 .2rem;font-size:1.25rem}.toolbar span,.hint,small{color:#586b62;font-size:.875rem;line-height:1.5}.primary{color:#fff;background:#245b48;border-color:#245b48}main{justify-content:center;align-items:flex-start;gap:2rem;padding:1rem 2rem 3rem;display:flex}.workspace{width:min(100%,610px);min-width:0}.month-nav{justify-content:center;align-items:center;gap:1rem;display:flex}.month-nav h2{text-align:center;min-width:12rem;font-size:1.2rem}.status{text-align:center;min-height:1.3rem;font-size:.875rem}.status.error{color:#a52727}#preview{container-type:inline-size}.calendar-sheet{aspect-ratio:297/420;width:100%;padding:var(--margin,3.367%);padding-top:var(--top-margin,5.05051%);color:#172a24;background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 26px #1b382319}.month-photo{height:var(--ratio,30%);cursor:pointer;background:#f3f5f2;flex-shrink:0;position:relative;overflow:hidden}.photo-frame img{object-fit:cover;transform-origin:50%;width:100%;height:100%;display:block}.photo-placeholder{text-align:center;color:#63756b;place-content:center;gap:.4rem;font-size:2.6cqw;display:grid;position:absolute;inset:0}.photo-placeholder strong{font-size:4cqw;font-weight:400}.month-calendar{flex-direction:column;flex:1;min-height:0;display:flex}.sheet-heading{justify-content:space-between;align-items:baseline;padding:3% 0 2%;display:flex}.sheet-heading h2{letter-spacing:-.035em;margin:0;font-size:5cqw;font-weight:500}.sheet-heading span{color:#69736d;font-size:3cqw}.weekdays{text-align:center;grid-template-columns:repeat(7,1fr);padding-bottom:1.5%;font-size:1.8cqw;display:grid}.weekdays span:nth-last-child(-n+2){color:#93634b}.days{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(var(--rows), minmax(0, 1fr));border-top:1px solid #b9c0ba;border-left:1px solid #b9c0ba;flex:1;min-height:0;display:grid}.day{background:#fff;border:1px solid #b9c0ba;border-top:0;border-left:0;border-radius:0;min-width:0;padding:0;position:relative}.day[tabindex]:hover{background:#f7faf7}.day-number{font-size:2.3cqw;line-height:1;position:absolute;top:5%;right:8%}.weekend .day-number{color:#93634b}.day-photo{border-radius:12%;width:54%;height:42%;position:absolute;top:5%;left:7%;overflow:hidden}.day[aria-pressed=true]{outline-offset:-2px;outline:2px solid #245b48}aside{background:#fff;border:1px solid #dae0db;border-radius:14px;flex-shrink:0;width:310px;padding:1.5rem}aside h2{margin:0 0 1rem;font-size:1.2rem}aside h3{font-size:1rem}fieldset{border:0;min-width:0;margin:0;padding:0}label{margin:0 0 1rem;font-size:.875rem;display:block}input:not([type=range]):not([type=file]),select{width:100%;color:inherit;background:#fff;border:1px solid #bcc7bf;border-radius:7px;margin-top:.35rem;padding:.55rem}input[type=range]{accent-color:#245b48;width:100%;margin-top:.65rem;display:block}input[type=file]{width:100%;margin-top:.6rem;font-size:.8rem}output{float:right}.pair{gap:.65rem;display:flex}.pair label{flex:1;min-width:0}hr{border:0;border-top:1px solid #e0e5df;margin:1.4rem 0}.danger{color:#a52727}#save{width:100%;margin-bottom:1rem}[hidden],#print-pages{display:none!important}@media (max-width:850px){main{flex-direction:column;align-items:center;padding:.5rem .75rem 2rem}aside{width:min(100%,610px)}.toolbar{flex-wrap:wrap;gap:.5rem;padding:.8rem}.toolbar a{font-size:.875rem}}@page{size:A3 portrait;margin:0}#print-pages{display:none}.calendar-page .cp-calendar-actions{flex-wrap:wrap}@media print{.cp-calendar-header,.calendar-photo-dialog-backdrop{display:none!important}html,body{background:#fff;margin:0!important;padding:0!important}.no-print,main,noscript{display:none!important}#print-pages{display:block!important}.calendar-sheet{width:var(--page-width,297mm);height:var(--page-height,420mm);aspect-ratio:auto;padding:var(--print-margin,10mm);padding-top:max(var(--print-margin,10mm), 15mm);box-shadow:none;break-after:page;break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}.calendar-sheet:last-child{break-after:auto}#print-pages .calendar-sheet{padding-top:8%;container-type:inline-size}.sheet-heading h2{font-size:calc(25pt * var(--font-scale,1))}.sheet-heading span{font-size:calc(16pt * var(--font-scale,1))}.weekdays{font-size:calc(11pt * var(--font-scale,1))}.day-number{font-size:calc(13pt * var(--font-scale,1))}.photo-placeholder{display:none}.month-photo{background:#fff}.day[aria-pressed=true]{outline:none}}.binding-holes{pointer-events:none}.binding-hole{top:var(--hole-top,1.90476%);width:var(--hole-width,2.0202%);height:var(--hole-height,1.42857%);background:#fff;border:1px dashed #a5aaa7;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}@media print{.binding-hole{border-width:.2mm;width:6mm;height:6mm;top:8mm}}.calendar-controls{margin:16px 32px 0}@media (max-width:850px){.calendar-controls{margin:12px 12px 0}}#photo-editor{scroll-margin-top:1rem}#crop-controls{margin-top:1rem}#crop-controls label{margin-bottom:.25rem;font-weight:600}.crop-row{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.crop-row button{flex:0 0 48px;height:48px;padding:0;font-size:1.4rem}.crop-row input[type=range]{flex:1;min-width:0;height:44px;margin:0}.crop-row input[type=range]::-webkit-slider-thumb{width:26px;height:26px}.crop-row input[type=range]::-moz-range-thumb{width:26px;height:26px}#reset-crop{width:100%;min-height:44px}.editable-photo{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.editable-photo.dragging{cursor:grabbing}.editable-photo img{pointer-events:none;-webkit-user-drag:none}.crop-fine{margin-bottom:1rem}.crop-fine summary{cursor:pointer;min-height:44px;padding:.75rem 0}.settings-section>summary{cursor:pointer;min-height:48px;padding:1rem 0;font-size:1.15rem;font-weight:600}.settings-section+.settings-section{border-top:1px solid #dae0db}.settings-content{padding:.5rem 0 1rem}.settings-section>summary:focus-visible{outline-offset:3px;outline:3px solid #23806a}#print{width:100%}#design{z-index:5;width:100%;max-height:48vh;max-height:48dvh;margin-bottom:.75rem;padding:0 .8rem;scroll-margin-top:.5rem;position:sticky;top:0;overflow-y:auto}#design .settings-section>summary{min-height:40px;padding:.55rem 0;font-size:1rem}#design .settings-content{padding:.25rem 0 .5rem}#design label{margin-bottom:.5rem}#design hr{margin:.4rem 0}#design #save{min-height:40px;margin-bottom:.5rem;padding:.4rem}#design .hint{margin:.3rem 0}#design .upload{margin:.4rem 0}.design-mode .editable-photo{touch-action:pan-y;cursor:default}.design-mode .month-photo,.design-mode .day{cursor:default}.photo-remove{z-index:2;color:#c52222;touch-action:manipulation;width:32px;height:32px;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;padding:0;font-size:18px;line-height:1;display:grid;position:absolute;bottom:6px;right:6px}.day .photo-remove{width:24px;height:24px;font-size:15px;bottom:2px;right:2px}.photo-remove:hover{color:#a91818;background:0 0}.design-mode .photo-remove{display:none}:is(.day[tabindex]:focus-visible,.month-photo[tabindex]:focus-visible){outline-offset:-3px;outline:3px solid #23806a}#design-bar{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}#design-bar small{display:block}#design-done{min-height:44px;padding:.5rem}.global-year{margin:0;padding:.65rem .8rem}#save{min-height:44px;margin-top:1rem}#print-dialog{color:#213c35;border:1px solid #bfcac3;border-radius:14px;width:min(420px,100% - 24px);max-height:85dvh;padding:1.25rem;overflow:auto}#print-dialog::backdrop{background:#172a2470}.dialog-heading{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.dialog-heading h2{margin:0;font-size:1.2rem}#print-close{padding:.3rem .8rem;font-size:1.5rem}.design-overlay{pointer-events:none;z-index:3;position:absolute;inset:0}.margin-guide{border:2px dashed #287758;position:absolute}.ratio-guide{border-top:2px solid #2268ae;position:absolute}.design-handle{pointer-events:auto;touch-action:none;color:#fff;-webkit-user-select:none;user-select:none;cursor:ns-resize;isolation:isolate;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:20px;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)}.design-handle:before{content:"";z-index:-1;background:#287758;border:2px solid #fff;border-radius:50%;position:absolute;inset:7px;box-shadow:0 1px 5px #0003}.handle-ratio{top:0;left:50%}.handle-ratio:before{background:#2268ae}.handle-left{cursor:ew-resize;top:65%;left:0}.handle-right{cursor:ew-resize;top:65%;left:100%}.handle-top{top:0;left:50%}.handle-bottom{top:100%;left:50%}.calendar-page .margin-guide,.calendar-page .ratio-guide{border-color:#333}.calendar-page .design-handle:before{background:#111}.design-mode .photo-placeholder{pointer-events:none}#photos-bar{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}#photos-done{min-height:44px;padding:.5rem .75rem}#preview:not(.photo-edit-mode) .editable-photo{touch-action:manipulation;cursor:default}#preview:not(.photo-edit-mode) .month-photo,#preview:not(.photo-edit-mode) .day{cursor:default}#preview:not(.photo-edit-mode) .photo-remove{display:none}body.modal-open{touch-action:none;overscroll-behavior:none!important;overflow:hidden!important}html:has(dialog[open]){touch-action:none;overscroll-behavior:none!important;overflow:hidden!important}body:has(dialog[open]){touch-action:none;overscroll-behavior:none!important;overflow:hidden!important}dialog{overscroll-behavior:contain}dialog::backdrop{touch-action:none;overscroll-behavior:none}#day-photo-dialog{width:min(480px,100% - 24px);max-height:90vh;overscroll-behavior:contain;color:#213c35;border:1px solid #bfcac3;border-radius:14px;max-height:90dvh;padding:1rem 1.15rem;overflow:auto}#day-photo-dialog::backdrop{touch-action:none;background:#172a2470}#day-photo-preview{touch-action:none;justify-content:center;display:flex}.day-editor-photo{touch-action:none;background:#f3f5f2;border-radius:12%;width:100%;height:100%;overflow:hidden}.day-editor-photo img{object-fit:cover;width:100%;height:100%;display:block}.month-photo-actions{right:var(--margin,3.367%);top:calc(8% + var(--ratio,30%) - 44px);z-index:3;position:absolute}.month-photo-actions button{color:#111;cursor:pointer;font:inherit;background:#fff;border:1px solid #ccc;border-radius:6px;padding:7px 10px;font-size:12px}.day-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.day-photo-actions+.day-photo-actions{margin-top:.5rem}.day-photo-actions button{border-radius:8px;min-height:38px;padding:.5rem .75rem;font-size:.875rem;font-weight:550}#day-photo-done{border-radius:8px;width:100%;min-height:38px;margin-top:.4rem;font-size:.9rem;font-weight:600}#preview.photo-edit-mode .day-photo{cursor:pointer}.day-editor-stage{width:100%;max-width:calc(34vh * var(--day-aspect,1));max-width:calc(34dvh * var(--day-aspect,1));aspect-ratio:var(--day-aspect,1);touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;outline:1px solid #b9c0ba;margin:8px auto;position:relative}.day-editor-box{touch-action:none;position:absolute}.day-editor-number{color:#172a24;pointer-events:none;background:#fff;font-size:1.2rem;position:absolute;top:5%;right:8%}.day-photo-modes{background:#eaeee9;border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:.6rem;padding:3px;display:grid}.day-photo-modes button{color:#374a42;background:0 0;border:0;border-radius:7px;min-height:36px;padding:.45rem;font-size:.85rem;font-weight:600}.day-photo-modes button[aria-pressed=true]{color:#fff;background:#245b48;box-shadow:0 1px 3px #00000024}.day-resize{color:#fff;touch-action:none;cursor:nwse-resize;z-index:2;background:#245b48;border:2px solid #fff;border-radius:50%;width:38px;height:38px;padding:0;font-size:1.3rem;display:none;position:absolute;bottom:-10px;right:-10px}.layout-mode .day-resize{display:block}.layout-mode .day-editor-box{touch-action:none;cursor:move;outline:2px solid #245b48}.layout-mode .day-editor-photo{cursor:move}.day.has-photo .day-number,.day-editor-number{z-index:1;background:#fff;border-radius:50%;place-items:center;width:1.7em;height:1.7em;padding:0;line-height:1;display:grid}@media screen and (max-width:600px){#day-photo-dialog,#print-dialog{border-radius:12px;width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:10px 12px}.dialog-heading{gap:8px;margin-bottom:6px}.dialog-heading h2{min-width:0;font-size:.95rem}#day-photo-dialog button:not(.day-resize),#print-dialog button,#save,#undo-removals,#design-done,#photos-done{border-radius:7px;min-width:0;min-height:34px;padding:5px 8px;font-size:12.5px;line-height:1.2}#day-photo-close,#print-close{border-radius:6px;flex:0 0 30px;place-items:center;width:30px;height:30px;min-height:30px;padding:0;font-size:1.25rem;display:grid}.day-photo-modes{border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;margin-bottom:5px;padding:2px;display:grid}.day-photo-modes button{border-radius:6px;min-height:32px;padding:4px 6px;font-size:12px;font-weight:600}.day-editor-stage{max-width:min(100%, calc(28dvh * var(--day-aspect,1)));max-height:28dvh;margin:4px auto}.day-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.day-photo-actions+.day-photo-actions{margin-top:5px}.day-photo-actions button{white-space:nowrap;min-height:34px;padding:5px 6px;font-size:12px;font-weight:550}#day-photo-dialog .hint{text-align:center;margin:4px 0 5px;font-size:11px;line-height:1.35}#print-dialog .hint{margin:6px 0;font-size:12px;line-height:1.4}#day-photo-done{width:100%;min-height:34px;margin-top:2px;padding:6px 10px;font-size:13px;font-weight:600}#design-bar,#photos-bar{gap:8px}#design-bar>div{min-width:0}#design-bar strong,#photos-bar strong{font-size:13.5px}#design-done{max-width:44%;min-height:32px;padding:4px 6px;font-size:12px}#photos-done{flex-shrink:0;min-height:32px;padding:4px 8px;font-size:12px}#design-bar small{font-size:11.5px}.month-nav{gap:8px;margin:4px 0 8px}.month-nav h2{min-width:0;font-size:1rem}.month-nav button{border-radius:7px;min-width:34px;min-height:34px;padding:4px 8px;font-size:14px}#save,#undo-removals{min-height:36px;margin-top:8px;font-size:13.5px}}@media screen and (max-height:660px) and (max-width:600px){#day-photo-dialog{padding:8px 10px}.day-editor-stage{max-height:24dvh;max-width:min(100%, calc(24dvh * var(--day-aspect,1)))}.day-photo-modes button{min-height:30px}.day-photo-actions button{min-height:32px;font-size:11.5px}}.calendar-page{min-height:100dvh}.calendar-toolbar-main{background:#fff;border-bottom:1px solid #dae0db;align-items:center;gap:22px;margin:-18px -24px 20px;padding:14px 22px;display:flex}.calendar-toolbar-main>div{flex:1}.calendar-toolbar-main h1{margin:0 0 3px;font-size:1.25rem}.calendar-toolbar-main p{color:#586b62;margin:0;font-size:.875rem}.calendar-back{color:#586b62;align-items:center;gap:6px;text-decoration:none;display:flex}.calendar-year-badge{color:#245b48;font-weight:600}.calendar-error{color:#a52727;background:#fff0ef;border-radius:9px;max-width:1160px;margin:10px auto;padding:10px}.calendar-start-layout{grid-template-columns:minmax(0,1fr) 340px;gap:20px;max-width:1160px;margin:auto;display:grid}.calendar-panel{background:#fff;border:1px solid #dae0db;border-radius:14px;padding:24px}.calendar-panel h2{margin:0 0 12px}.calendar-first-options{flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;display:flex}.calendar-year-select select{width:auto;margin-left:8px}.calendar-months{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:20px 0;display:grid}.calendar-month{border:1px solid #dfe4de;border-radius:9px;align-items:center;gap:8px;padding:12px;display:flex}.calendar-month input{width:17px;height:17px}.calendar-month:has(input:checked){background:#eaf2eb;border-color:#719477}.calendar-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-primary,.calendar-secondary{font:inherit;cursor:pointer;border:1px solid #bfcac3;border-radius:9px;align-items:center;gap:7px;padding:.65rem 1rem;display:inline-flex}.calendar-primary{color:#fff;background:#245b48;border-color:#245b48}.calendar-secondary{color:#213c35;background:#fff}.calendar-primary:disabled{opacity:.45}.calendar-price small,.calendar-project small,.calendar-design-bar small{color:#69756f;margin-top:4px;font-size:.8rem;display:block}.calendar-project{border:1px solid #e0e5df;border-radius:10px;justify-content:space-between;align-items:center;margin-top:9px;padding:11px;display:flex}.calendar-project-actions{gap:6px;display:flex}.calendar-danger{color:#a03d37}.calendar-editor-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:28px;max-width:1160px;margin:auto;display:grid}.calendar-workspace{width:min(100%,610px);margin:auto}.calendar-status{text-align:center;min-height:21px;font-size:.875rem}.calendar-editor-aside{background:#fff;border:1px solid #dae0db;border-radius:14px;width:310px;padding:1.5rem}.calendar-design-bar{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-design-bar button{font:inherit;background:#fff;border:1px solid #bfcac3;border-radius:8px;align-items:center;gap:5px;padding:8px;display:flex}.calendar-design-bar button.active{color:#fff;background:#245b48}.calendar-hint{color:#586b62;font-size:.85rem}.calendar-save{width:100%;margin:12px 0}.calendar-sheet-photo{height:var(--ratio,30%);cursor:pointer;background:#f3f5f2;flex-shrink:0;position:relative;overflow:hidden}.calendar-sheet-photo img{object-fit:cover;width:100%;height:100%;display:block}.calendar-sheet-photo span{text-align:center;color:#63756b;place-content:center;font-size:2.6cqw;display:grid;position:absolute;inset:0}.calendar-sheet-photo input{opacity:0;cursor:pointer;position:absolute;inset:0}.month-calendar header{justify-content:space-between;align-items:baseline;padding:3% 0 2%;display:flex}.month-calendar header h2{margin:0;font-size:5cqw;font-weight:500}.day-upload{color:#fff;cursor:pointer;z-index:2;background:#245b48;border-radius:50%;place-items:center;width:20px;height:20px;margin:0;display:grid;position:absolute;bottom:5%;left:5%}.day-upload input{opacity:0;position:absolute;inset:0}.binding-holes{pointer-events:none;justify-content:space-evenly;display:flex;position:absolute;top:1.9%;left:0;right:0}.binding-holes i{aspect-ratio:1;background:#fff;border:1px dashed #a5aaa7;border-radius:50%;width:2%}@media (max-width:850px){.calendar-start-layout,.calendar-editor-layout{flex-direction:column;display:flex}.calendar-editor-aside{order:-1;width:100%}.calendar-months{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:480px){.calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-project{flex-direction:column;align-items:flex-start}.calendar-project-actions{width:100%}}.cp-calendar-header{background:#fff;border-bottom:1px solid #e7e5e0;grid-template-columns:145px minmax(0,1fr) auto;align-items:center;gap:20px;padding:10px 28px;display:grid}.cp-calendar-brand{pointer-events:none;justify-content:flex-start;align-items:center;display:flex}.cp-calendar-brand img{object-fit:contain;width:145px;height:74px;display:block}.cp-calendar-title{text-align:center;color:#20201f}.cp-calendar-title strong{letter-spacing:-.02em;font-size:16px;font-weight:650;display:block}.cp-calendar-title span{color:#77756f;margin-top:3px;font-size:12px;display:block}.cp-calendar-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.cp-calendar-back,.cp-calendar-cancel{color:#20201f;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d8d5cf;border-radius:999px;padding:10px 14px;font-size:14px;text-decoration:none}.cp-calendar-back:hover,.cp-calendar-cancel:hover{background:#f5f3ef}.cp-calendar-back[hidden]{display:none}@media (max-width:700px){.cp-calendar-header{grid-template-columns:1fr auto;gap:10px;padding:8px 14px}.cp-calendar-brand img{width:108px;height:55px}.cp-calendar-title{display:none}.cp-calendar-actions{gap:5px}.cp-calendar-back,.cp-calendar-cancel{padding:9px 10px;font-size:12px}}.calendar-start-layout{background:#f7f6f2;justify-content:center;align-items:flex-start;min-height:calc(100dvh - 96px);padding:44px 24px 72px;display:flex}.calendar-start-panel{border:1px solid #e2dfd8;border-radius:18px;width:min(100%,900px);padding:34px 38px 30px;box-shadow:0 12px 34px #2d30201a}.calendar-start-panel h2{color:#242522;letter-spacing:-.035em;margin:0;font-size:25px;font-weight:650}.calendar-start-panel h2:after{content:"Elige el año y las hojas que quieres preparar.";color:#77756f;letter-spacing:0;margin-top:8px;font-size:14px;font-weight:400;display:block}.calendar-first-options{border-bottom:1px solid #e7e4de;grid-template-columns:180px minmax(0,1fr);gap:14px;margin:28px 0 20px;padding-bottom:22px;display:grid}.calendar-year-select{color:#5d5b55;margin:0;font-size:13px;font-weight:600}.calendar-year-select select{color:#272824;background:#fff;border:1px solid #cbc8c0;border-radius:9px;width:100%;height:44px;margin:7px 0 0;padding:0 12px;font-size:15px;display:block}.calendar-all-year{color:#353631;background:#fbfaf7;border:1px solid #d9d5cb;border-radius:10px;align-items:center;gap:11px;margin:0;padding:0 16px;font-weight:600;display:flex}.calendar-all-year input{height:18px;flex:none!important;width:18px!important}.calendar-start-panel .calendar-months{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.calendar-start-panel .calendar-month{color:#4d4b46;background:#fff;border:1px solid #e1ded7;border-radius:10px;min-height:52px;margin:0;padding:12px 13px;font-size:14px}.calendar-start-panel .calendar-month:hover{background:#fbfaf7;border-color:#9a968c}.calendar-start-panel .calendar-month:has(input:checked){color:#244b35;background:#eef4ed;border-color:#6d9274;box-shadow:inset 0 0 0 1px #6d9274}.calendar-start-panel .calendar-month input{accent-color:#245b48;flex:none;width:17px;height:17px}.calendar-start-panel .calendar-actions{border-top:1px solid #e7e4de;margin-top:28px;padding-top:22px}.calendar-start-panel .calendar-price b{color:#2c302c;font-size:15px;display:block}.calendar-start-panel .calendar-price small{font-size:13px}.calendar-start-panel .calendar-primary{min-height:44px;padding:0 18px;font-size:14px}@media (max-width:700px){.calendar-start-layout{padding:24px 12px 48px}.calendar-start-panel{padding:24px 18px}.calendar-start-panel h2{font-size:21px}.calendar-first-options{grid-template-columns:1fr;margin-top:22px}.calendar-all-year{min-height:46px;padding:0 12px}.calendar-start-panel .calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-start-panel .calendar-actions{flex-direction:column;align-items:stretch}.calendar-start-panel .calendar-primary{justify-content:center;width:100%}}.calendar-page{color:#161616;background:#fff}.calendar-page .calendar-start-layout{background:#fff}.calendar-page .calendar-panel{border-color:#dedede;box-shadow:0 12px 34px #00000012}.calendar-page .calendar-start-panel h2{color:#111}.calendar-page .calendar-start-panel h2:after,.calendar-page .calendar-price small{color:#707070}.calendar-page .calendar-year-select{color:#333}.calendar-page .calendar-year-select select{color:#111;border-color:#bdbdbd}.calendar-page .calendar-all-year{color:#222;background:#fafafa;border-color:#d2d2d2}.calendar-page .calendar-start-panel .calendar-month{color:#222;border-color:#d8d8d8}.calendar-page .calendar-start-panel .calendar-month:hover{background:#fafafa;border-color:#777}.calendar-page .calendar-start-panel .calendar-month:has(input:checked){color:#111;background:#f0f0f0;border-color:#111;box-shadow:inset 0 0 0 1px #111}.calendar-page .calendar-start-panel .calendar-month input{accent-color:#111}.calendar-page .calendar-primary,.calendar-page .primary{color:#fff;background:#111;border-color:#111}.calendar-page .calendar-primary:hover,.calendar-page .primary:hover{background:#333;border-color:#333}.calendar-page .calendar-sheet{color:#111;box-shadow:0 4px 26px #00000018}.calendar-page .month-photo{background:#f4f4f4}.calendar-page .photo-placeholder{color:#707070}.calendar-page .weekdays span:nth-last-child(-n+2),.calendar-page .weekend .day-number{color:#555}.calendar-page .days,.calendar-page .day{border-color:#bdbdbd}.calendar-page .binding-holes i{border-color:#999}.calendar-page .status,.calendar-page .hint{color:#666}.calendar-mode-actions{align-items:center;gap:7px;display:flex}.calendar-mode-actions button{color:#222;font:inherit;cursor:pointer;background:#fff;border:1px solid #cfcfcf;border-radius:8px;padding:8px 10px;font-size:13px}.calendar-mode-actions button.active{color:#fff;background:#111;border-color:#111}.calendar-design-controls{background:#fafafa;border:1px solid #ddd;border-radius:10px;grid-template-columns:150px 1fr 1fr;gap:14px;margin:0 0 12px;padding:14px;display:grid}.calendar-design-controls label{color:#555;margin:0;font-size:12px}.calendar-design-controls select{color:#111;background:#fff;border:1px solid #bbb;border-radius:7px;width:100%;margin-top:5px;padding:7px;display:block}.calendar-design-controls input[type=range]{accent-color:#111;width:100%;margin-top:12px;display:block}.calendar-paper-A4{aspect-ratio:210/297}.calendar-paper-A4 .month-photo{height:var(--ratio,30%)}@media (max-width:700px){.calendar-mode-actions{flex-wrap:wrap;justify-content:flex-end}.calendar-design-controls{grid-template-columns:1fr}.calendar-design-controls label:first-child{max-width:none}}.calendar-photo-upload{z-index:3;color:#999;cursor:pointer;background:0 0;justify-content:center;align-items:center;margin:0;padding:2px 8px;font-size:28px;font-weight:300;line-height:1;display:inline-flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.calendar-photo-upload:hover{color:#555}.calendar-photo-upload input{opacity:0;cursor:pointer;inset:0;width:100%!important;height:100%!important;margin:0!important;position:absolute!important}.day-upload-center{z-index:3;color:#9b9b9b;cursor:pointer;background:0 0;place-items:center;margin:0;font-size:22px;font-weight:300;line-height:1;display:grid;position:absolute;inset:0}.day-upload-center span{background:0 0;width:auto;height:auto;display:block}.day-upload-center:hover{color:#555;background:#00000008}.day-upload-center input{opacity:0;cursor:pointer;inset:0;width:100%!important;height:100%!important;margin:0!important;position:absolute!important}.calendar-page .day-upload{background:#111}.calendar-page .day-upload input{cursor:pointer}.calendar-page .binding-holes{display:block}.calendar-page .binding-holes i{flex:0 0 2%;width:2%;position:absolute;top:0}.calendar-page .binding-holes i:first-child{left:16.666%;transform:translate(-50%)}.calendar-page .binding-holes i:nth-child(2){left:50%;transform:translate(-50%)}.calendar-page .binding-holes i:nth-child(3){left:83.333%;transform:translate(-50%)}.calendar-page .binding-holes{z-index:20}.calendar-page .month-photo{z-index:1}.cp-calendar-tool{color:#222;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d0d0d0;border-radius:999px;padding:10px 14px;font-size:14px}.cp-calendar-tool:hover{background:#f3f3f3}.cp-calendar-tool:disabled{opacity:.55;cursor:wait}.cp-calendar-tool[hidden]{display:none}.cp-calendar-save{color:#fff;font:inherit;white-space:nowrap;cursor:pointer;background:#111;border:1px solid #111;border-radius:999px;padding:10px 14px;font-size:14px}.cp-calendar-save:hover{background:#333;border-color:#333}.cp-calendar-save:disabled{opacity:.55;cursor:wait}.cp-calendar-save[hidden]{display:none}@media (max-width:700px){.cp-calendar-tool,.cp-calendar-save{padding:9px 10px;font-size:12px}}.control-bar{z-index:10;color:#1d1d1f;background:#fff;border:1px solid #dedee3;border-radius:16px;margin-bottom:18px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative}.control-heading{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:8px;display:grid}.control-title{text-align:center;min-width:0}.control-title h1{margin:0;font-size:17px}.control-title p{color:#6e6e73;margin:2px 0;font-size:11px}.family-menu summary{color:#06c;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:44px;min-height:44px;padding:10px;list-style:none;display:flex}.family-menu summary::-webkit-details-marker{display:none}.family-menu svg{width:24px;height:24px}.family-menu[open] summary,.family-menu summary:hover{background:#f0f0f4}.family-panel{background:#fff;border:1px solid #dedee3;border-radius:14px;width:250px;max-width:calc(100% - 16px);padding:6px;position:absolute;top:calc(100% + 6px);box-shadow:0 12px 36px #00000024}.action-menu .family-panel{left:8px}.member-menu .family-panel{right:8px}.family-panel a,.family-panel button{color:#1d1d1f;width:100%;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:14px;text-decoration:none;display:flex}.family-panel .activo{color:#06c;background:#f0f6ff}.family-panel .activo:after{content:"✓";margin-left:8px}.family-panel a:hover,.family-panel button:hover{background:#f0f0f4}.control-bar :is(a,button,summary):focus-visible{outline-offset:2px;outline:3px solid #007aff}.calendar-page .calendar-start-panel h2:after{content:"Elige el año, el formato y los meses que quieres imprimir."}.calendar-page .calendar-first-options{grid-template-columns:130px minmax(0,1fr);align-items:start}.calendar-page .calendar-format-options{border:0;min-width:0;margin:0;padding:0}.calendar-format-options legend{margin-bottom:7px;font-size:13px;font-weight:600}.calendar-format-cards{grid-template-columns:1fr 1fr;gap:10px;display:grid}.calendar-page .calendar-format-card{cursor:pointer;border:1px solid #d2d2d2;border-radius:10px;align-items:center;gap:10px;margin:0;padding:12px;display:flex;position:relative}.calendar-page .calendar-format-card:has(input:checked){background:#f5f5f5;border-color:#111;box-shadow:inset 0 0 0 1px #111}.calendar-page .calendar-format-card:focus-within{outline-offset:3px;outline:2px solid #555}.calendar-page .calendar-format-card input{accent-color:#111;flex:none;width:16px;height:16px}.calendar-format-picture{flex:none;justify-content:center;align-items:end;width:60px;height:84px;display:flex}.calendar-mini-paper{box-sizing:border-box;background:#fff;border:1px solid #777;flex-direction:column;justify-content:space-between;align-items:center;padding:5px;display:flex;box-shadow:2px 3px #00000012}.calendar-mini-A4{width:42px;height:59.4px}.calendar-mini-A3{width:59.4px;height:84px}.calendar-mini-paper>span{background:#ddd;width:100%;height:30%}.calendar-mini-paper>b{font-size:11px}.calendar-mini-paper>i{background:repeating-linear-gradient(#ddd 0 1px,#0000 1px 5px);width:100%;height:24%}.calendar-format-copy strong,.calendar-format-copy small{display:block}.calendar-format-copy small{color:#666;font-size:11px;line-height:1.5}.calendar-format-copy strong{font-size:15px}.calendar-page .calendar-all-year{grid-column:1/-1;min-height:46px}.calendar-tariff-note{color:#555;margin:0 0 18px;font-size:13px;line-height:1.7}@media (max-width:700px){.calendar-page .calendar-first-options{grid-template-columns:1fr}.calendar-format-card{flex-wrap:wrap}.calendar-format-copy{flex-basis:100%}}@media screen{.calendar-editor-active{flex-direction:column;height:100dvh;min-height:0;display:flex}.calendar-editor-active .cp-calendar-header{z-index:20;flex:none;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:6px 14px;position:relative}.calendar-editor-active .cp-calendar-brand img{width:76px;height:38px}.calendar-editor-active .cp-calendar-title{display:none}.calendar-editor-active .cp-calendar-actions{gap:6px}.calendar-editor-active .cp-calendar-actions>button,.calendar-more>summary{min-height:34px;padding:7px 11px;font-size:12px}.calendar-editor-active>main{flex-direction:row;flex:1;align-items:stretch;min-height:0;padding:8px 16px 10px;overflow:auto}.calendar-editor-active .workspace{flex-direction:column;align-self:stretch;gap:6px;width:100%;min-height:0;display:flex}.calendar-editor-active .month-nav{flex:none;gap:12px}.calendar-editor-active .month-nav h2{min-width:145px;margin:0;font-size:15px}.calendar-editor-active .month-nav button{min-height:32px;padding:5px 10px}.calendar-editor-active .status{min-height:0;margin:0;font-size:12px}.calendar-editor-active #design-bar{flex:none;justify-content:center;margin:0}.calendar-editor-active #design-bar>div{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.calendar-editor-active #design-bar strong{font-size:13px}.calendar-editor-active #design-bar small{font-size:11px}.calendar-preview-stage{flex:1;justify-content:center;align-items:center;min-height:120px;padding:0;display:flex;container-type:size}.calendar-fit-view #preview{flex:none;width:min(100cqw,70.7143cqh);max-width:100%}.calendar-editor-active .calendar-editor-total{text-align:center;flex:none;margin:0;font-size:11px;line-height:1.4}.calendar-expanded-view.calendar-editor-active{height:auto;min-height:100dvh}.calendar-expanded-view .calendar-preview-stage{flex:none;min-height:0;container-type:normal}.calendar-expanded-view #preview{width:min(100%,610px)}.calendar-more{flex:none;position:relative}.calendar-more>summary{cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d0d0d0;border-radius:999px;list-style:none}.calendar-more>summary::-webkit-details-marker{display:none}.calendar-more>summary:focus-visible{outline-offset:2px;outline:3px solid #23806a}.calendar-more-menu{z-index:30;background:#fff;border:1px solid #ddd;border-radius:12px;flex-direction:column;gap:6px;width:260px;max-width:calc(100vw - 28px);max-height:70dvh;padding:10px;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 8px 28px #0002}.calendar-more-menu>button,.calendar-more-menu>a{text-align:left;white-space:normal;border-radius:7px;padding:9px 10px;font-size:13px}@media (max-width:600px){.calendar-editor-active .cp-calendar-header{grid-template-columns:1fr;gap:0;padding:6px 8px}.calendar-editor-active .cp-calendar-brand{display:none}.calendar-editor-active .cp-calendar-actions{justify-content:center;gap:5px}.calendar-editor-active .cp-calendar-actions>button,.calendar-more>summary{min-height:36px;padding:7px 9px}.calendar-editor-active>main{padding:6px 8px 8px}}.calendar-editor-active .cp-calendar-header{grid-template-columns:auto minmax(0,1fr) auto}.calendar-editor-active .cp-calendar-title{text-align:left;display:block}.calendar-editor-active .cp-calendar-title strong{font-size:14px}.calendar-editor-active .cp-calendar-title span{display:none}.calendar-more>summary{letter-spacing:2px;place-items:center;width:38px;height:34px;padding:0;font-size:24px;line-height:1;display:grid}.calendar-more>summary:after{content:none}.calendar-more-menu .cp-calendar-save{color:#fff;background:#111}@media (max-width:600px){.calendar-editor-active .cp-calendar-header{grid-template-columns:minmax(0,1fr) auto;padding:6px 10px}.calendar-editor-active .cp-calendar-actions{justify-content:flex-end}}.calendar-editor-active>.cp-site-shell{flex:none}.calendar-page .cp-context-actions button{text-align:left;color:#1d1d1f;white-space:normal;background:0 0;border:0;border-radius:0;width:100%;min-height:44px;padding:12px 4px;font-size:15px;line-height:1.35;display:block}.calendar-page .cp-context-actions a{border:0;border-radius:0;min-height:44px;padding:12px 4px;font-size:15px;display:block}.calendar-page .cp-context-actions button:hover{background:#f2f2f5}.calendar-page .cp-context-actions button:disabled{opacity:.45}.calendar-page .cp-context-actions button[hidden]{display:none!important}}@media print{.calendar-page>.cp-site-shell{display:none!important}}.calendar-page .month-photo-change{z-index:5;color:#111;cursor:pointer;background:#fff;border:1px solid #d0d0d0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;font-size:23px;line-height:1;display:grid;position:absolute;bottom:8px;right:8px;box-shadow:0 2px 8px #0003}.calendar-page .month-photo-change:hover{background:#f5f5f5}@media screen and (min-width:721px){.calendar-page .cp-calendar-desktop-buttons button,.calendar-page .cp-calendar-desktop-buttons a{color:#222;white-space:nowrap;background:#fff;border:1px solid #ddd;border-radius:999px;justify-content:center;align-items:center;width:auto;min-height:36px;padding:8px 11px;font-size:12px;line-height:1.3;text-decoration:none;display:inline-flex}.calendar-page .cp-calendar-desktop-buttons .cp-calendar-save{color:#fff;background:#111;border-color:#111}}.calendar-upload-overlay{z-index:15;color:#111;cursor:wait;background:#ffffffe0;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;inset:0}.calendar-upload-spinner{border:3px solid #d7d7d7;border-top-color:#111;border-radius:50%;flex:none;width:24px;height:24px;animation:.8s linear infinite calendar-upload-spin;display:inline-block}.calendar-upload-day .calendar-upload-spinner{border-width:2px;width:18px;height:18px}.calendar-upload-status{bottom:max(18px,env(safe-area-inset-bottom));z-index:150;color:#111;white-space:nowrap;background:#fff;border:1px solid #ddd;border-radius:999px;align-items:center;gap:10px;padding:12px 18px;font-size:14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0003}@keyframes calendar-upload-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.calendar-upload-spinner{animation:none}}@media print{.calendar-upload-status,.calendar-upload-overlay{display:none!important}}.calendar-design-group{border:0;margin:0;padding:0}.calendar-design-group legend{color:#777;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:600}.calendar-design-group>div,.calendar-project-group,.calendar-purchase-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.calendar-page .calendar-design-group button[aria-pressed=true]{color:#fff;background:#111;border-color:#111}@media screen and (min-width:721px){.calendar-page .cp-calendar-desktop-buttons>div{justify-content:flex-start;gap:18px}.calendar-project-group{margin-left:auto}.calendar-purchase-group:empty{display:none}.calendar-design-group>div{background:#f3f3f5;border-radius:12px;gap:2px;padding:3px}.calendar-page .calendar-design-group button{background:0 0;border:0;border-radius:9px;font-size:13px}.calendar-page .calendar-design-group button[aria-pressed=true]{color:#111;background:#fff;box-shadow:0 1px 4px #0002}.calendar-page .calendar-project-group button,.calendar-page .calendar-project-group a{color:#222;background:#fff;border-color:#ddd}}@media (max-width:720px){.calendar-design-group>div,.calendar-project-group,.calendar-purchase-group{display:block}.calendar-project-group,.calendar-purchase-group:not(:empty){border-top:1px solid #eee;margin-top:8px;padding-top:8px}.calendar-design-group legend{margin-top:6px;font-size:12px}}@media screen and (max-width:720px){.calendar-page .cp-calendar-desktop-buttons{display:none!important}}.calendar-day-photo-dialog{border:0;border-radius:24px;width:min(460px,100%);padding:22px;box-shadow:0 24px 80px #0004}.calendar-day-photo-dialog .calendar-dialog-heading h2{letter-spacing:-.03em;font-size:20px;font-weight:650}.calendar-photo-subtitle{color:#777;margin:3px 0 0;font-size:12px}.calendar-day-photo-dialog .calendar-photo-close{color:#555;background:#f3f3f5;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid}.calendar-day-photo-dialog .calendar-photo-modes{background:#f1f1f3;border-radius:12px;grid-template-columns:1fr 1fr;gap:3px;margin:18px 0 14px;padding:4px;display:grid}.calendar-day-photo-dialog .calendar-photo-modes button{color:#666;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.calendar-day-photo-dialog .calendar-photo-modes button.active{color:#111;background:#fff;box-shadow:0 1px 5px #00000012}.calendar-photo-canvas{background:#f6f6f7;border-radius:16px;padding:18px}.calendar-day-photo-dialog .day-editor-stage{max-width:min(100%,calc(31dvh * var(--day-aspect,1)));outline:0;max-height:31dvh;margin:0 auto;box-shadow:0 2px 12px #00000012}.calendar-day-photo-dialog .layout-mode .day-editor-box{outline-color:#222}.calendar-photo-guidance{text-align:center;color:#777;margin:10px 0;font-size:11px;line-height:1.5}.calendar-photo-presets{flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 14px;display:flex}.calendar-photo-presets button{color:#555;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:8px 10px;font-size:12px;display:inline-flex}.calendar-photo-presets button:hover{color:#111;background:#f1f1f3}.calendar-photo-footer{border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:8px;padding-top:14px;display:flex}.calendar-photo-utilities{align-items:center;gap:3px;display:flex}.calendar-photo-utilities button{color:#555;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:8px 10px;font-size:12px;display:flex}.calendar-photo-utilities button:hover{background:#f4f4f5}.calendar-photo-utilities .calendar-photo-remove{color:#a23d3d}.calendar-photo-done{color:#fff;background:#111;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:10px 18px;font-size:13px;font-weight:600;display:inline-flex}.calendar-photo-save-note{color:#888;text-align:center;margin:10px 0 0;font-size:11px;line-height:1.4}@media (max-width:600px){.calendar-photo-dialog-backdrop{padding:12px}.calendar-day-photo-dialog{border-radius:22px;max-height:calc(100dvh - 24px);padding:18px}.calendar-photo-canvas{padding:14px}.calendar-photo-utilities button{padding:8px}.calendar-day-photo-dialog .calendar-photo-modes button,.calendar-photo-utilities button,.calendar-photo-done{min-height:44px}.calendar-photo-presets button{min-height:40px}}@media (max-height:660px){.calendar-day-photo-dialog{padding:14px}.calendar-day-photo-dialog .calendar-photo-modes{margin:10px 0}.calendar-photo-canvas{padding:10px}.calendar-day-photo-dialog .day-editor-stage{max-width:min(100%,calc(25dvh * var(--day-aspect,1)));max-height:25dvh}.calendar-photo-presets{margin-bottom:8px}.calendar-photo-footer{padding-top:8px}}.calendar-page .cp-calendar-exit{color:#222;background:#fff;border:1px solid #ddd;border-radius:999px;justify-content:center;justify-self:start;align-items:center;min-height:44px;padding:8px 18px;font-size:14px;text-decoration:none;display:inline-flex}.calendar-page .cp-calendar-exit:hover{background:#f3f3f5}@media (max-width:720px){.calendar-page .cp-calendar-exit{grid-area:1/1;padding:8px 14px}}.calendar-page .cp-calendar-mobile-done{display:none}.calendar-page .cp-calendar-desktop-buttons .calendar-finish-edit{color:#fff;background:#111}@media screen and (max-width:720px){.calendar-page .cp-calendar-mobile-done{color:#fff;background:#111;border:0;border-radius:999px;grid-area:1/3;justify-content:center;justify-self:end;align-items:center;min-height:44px;padding:8px 12px;font-size:13px;font-weight:500;display:inline-flex}}@media screen and (min-width:721px){.calendar-page .cp-calendar-shell .cp-site-header,.calendar-page .cp-calendar-shell .cp-site-header.cp-has-calendar-back{grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);gap:16px;padding-inline:24px}.calendar-page .cp-calendar-shell .cp-site-brand{grid-area:1/2;justify-self:center;width:110px}.calendar-page .cp-calendar-step-back{grid-area:1/1;justify-self:start}.calendar-page .cp-calendar-step-back svg{display:none}.calendar-page .cp-calendar-desktop-buttons{grid-area:1/3;min-width:0}.calendar-page .cp-calendar-exit{grid-area:1/1;min-width:0}.calendar-page .cp-calendar-desktop-buttons>div{justify-content:flex-end;gap:6px}.calendar-page .calendar-design-group legend{display:none}.calendar-page .calendar-design-group>div{background:0 0;gap:6px;padding:0}.calendar-page .calendar-project-group{margin-left:0}.calendar-page .calendar-design-group button{background:#fff;border:1px solid #ddd;border-radius:999px;font-size:12px}.calendar-page .calendar-design-group .calendar-finish-edit{color:#fff;background:#111;border-color:#111}}@media screen and (max-width:720px){.calendar-page .cp-mobile-panel .calendar-project-group,.calendar-page .cp-mobile-panel .calendar-purchase-group{border:0;margin-top:0;padding-top:0}.calendar-page .cp-mobile-panel .calendar-project-group:empty,.calendar-page .cp-mobile-panel .calendar-purchase-group:empty{display:none}.calendar-page .cp-mobile-panel .cp-context-actions,.calendar-page .cp-mobile-panel fieldset{box-shadow:none;border:0}}
