.custom-invite{padding:46px var(--gutter);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:28px}.custom-invite p{max-width:620px}.custom-invite a{flex-shrink:0}.custom-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(30px,5vw,90px);padding:20px var(--gutter) 80px;align-items:start}.custom-preview-column{position:sticky;top:120px;min-width:0}.personalized-sheet{background:#fff;border:1px solid var(--line);padding:clamp(16px,3vw,38px);color:var(--ink);overflow-wrap:anywhere}.personalized-sheet>img.photo{width:100%;height:auto;max-height:450px;object-fit:contain}.personalized-sheet blockquote{font-family:var(--heading);font-size:clamp(23px,2.5vw,38px);line-height:1.35;margin:28px auto;max-width:22em;white-space:pre-wrap}.personalized-sheet.charcoal{background:var(--ink);color:var(--paper)}.personalized-signature{filter:brightness(0);width:155px;height:auto;margin:24px auto 0}.charcoal .personalized-signature{filter:none}.custom-photo-caption{margin:12px 0 22px;font-size:14px}.custom-controls{min-width:0}.custom-controls fieldset{padding:0;border:0;margin:0 0 24px;min-width:0}.custom-controls legend{margin-bottom:12px}.custom-modes{display:flex;flex-wrap:wrap;gap:8px}.custom-modes label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:10px 14px;cursor:pointer}.custom-controls label{font-size:16px}.custom-controls input:not([type=radio]):not([type=checkbox]),.custom-controls select,.custom-controls textarea,.custom-review textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);background:transparent;padding:12px;margin:6px 0 18px;border-radius:0;font:inherit}.custom-controls textarea{resize:vertical}.custom-controls select{font-size:16px;text-overflow:ellipsis}.custom-controls .small{margin:-8px 0 22px}.custom-controls .outline-button{width:100%;margin:12px 0 18px}.custom-month-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}.custom-month-nav button{min-height:44px;border:1px solid var(--line)}.custom-month-nav select{margin:6px 0!important}.month-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:20px 0}.month-index button{border:1px solid var(--line);text-align:left;padding:9px;font-size:14px;min-height:56px}.month-index button[aria-pressed=true]{border-color:var(--ink);background:var(--soft)}.month-index small{display:block;color:var(--muted)}.calendar-heading{display:flex;justify-content:space-between;gap:14px;margin:20px 0 12px;align-items:baseline}.calendar-heading h2{font-size:clamp(25px,3vw,38px)}.calendar-heading span{font-size:22px}.calendar-grid{width:100%;table-layout:fixed;border-collapse:collapse;text-align:center;font-size:clamp(13px,1.5vw,17px)}.calendar-grid th{font-weight:400;font-size:.8em;color:var(--muted);padding:6px 0;border-bottom:1px solid var(--line)}.calendar-grid td{padding:6px 0}.calendar-message{font-family:var(--heading);font-size:21px;margin:20px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.custom-review{max-width:860px;margin:30px auto 80px;padding:0 var(--gutter)}.custom-review h2{font-size:40px;margin:15px 0}.custom-review textarea{line-height:1.55;resize:vertical;min-height:280px}.custom-review .channel-buttons{flex-wrap:wrap}.custom-review label{display:block}.custom-review .check-row{display:flex;align-items:flex-start;gap:12px;margin:20px 0}.custom-review .check-row input{margin-top:7px}.custom-history{margin-top:28px}.custom-history textarea{min-height:150px}.custom-alert{margin:14px 0;color:var(--ink);border-left:2px solid var(--accent);padding-left:14px}.custom-notes{padding:0 var(--gutter) 35px}.custom-notes p{max-width:900px}
@media(max-width:800px){.custom-layout{grid-template-columns:minmax(0,1fr);gap:30px}.custom-preview-column{position:static}.custom-invite{display:block}.custom-invite a{display:inline-block;margin-top:20px}.personalized-sheet>img.photo{max-height:360px}.custom-review{padding:0 var(--gutter)}.custom-modes label{font-size:15px}.custom-review .channel-buttons{display:flex}}
@media(prefers-reduced-motion:reduce){}

.custom-mobile-jump{display:none}@media(max-width:800px){.custom-mobile-jump{display:inline-block;margin:0 0 24px;min-height:44px}.personalized-sheet{scroll-margin-top:110px}#quote-preview,#calendar-preview,#custom-form{scroll-margin-top:110px}}

#personalization .custom-modes input[type=radio]{width:18px;min-width:18px;height:18px;margin:0;padding:0;accent-color:var(--accent);flex-shrink:0}
