/* All selectors scoped to the shortcode output. Compatible with theme CSS. */
.klap{--klap-pink:#d8597b;--klap-ink:#44384a;--klap-muted:#6c6571;--klap-bg:#fffafd;--klap-pale:#fff0f5;--klap-border:#f0d9e1;--klap-teal:#337a70;max-width:1000px;margin:28px auto 42px;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.8;color:var(--klap-ink);background:#fff;border:1px solid #f0dbe2;border-radius:24px;box-shadow:0 8px 34px rgba(114,56,87,.055);overflow:hidden;box-sizing:border-box}
.klap *,.klap *::before,.klap *::after{box-sizing:border-box}
.klap .klap-hero{padding:36px 38px 30px;background:linear-gradient(123deg,#fff0f5 0%,#fff8fc 65%,#f3f8ff 100%);border-bottom:1px solid var(--klap-border)}
.klap .klap-eyebrow{font-size:11px;letter-spacing:.13em;font-weight:750;color:#af5272;text-transform:uppercase}
.klap .klap-hero h2{font-size:30px;line-height:1.4;letter-spacing:.03em;color:#a34262;padding:0;margin:7px 0 10px;border:0;background:none}
.klap .klap-hero p{max-width:710px;font-size:14px;line-height:1.85;margin:0 0 16px;color:#55465a}
.klap .klap-tags,.klap .klap-pills{display:flex;flex-wrap:wrap;gap:8px}
.klap .klap-tags span,.klap .klap-pills span{font-size:12px;padding:3px 11px;border-radius:40px;background:#fff;border:1px solid #f0d7e1;color:#8e586e}
.klap .klap-body{padding:28px 38px 34px}
.klap .klap-notice{border-left:4px solid #e0a1b2;background:#fff8f9;border-radius:6px;margin:0 0 26px;padding:10px 15px;font-size:13px;color:#735469}
.klap .klap-form{margin:0 0 24px;padding:0;border:0}
.klap h3,.klap h4{color:#6d3853;padding:0;border:0;background:none}
.klap .klap-form h3{display:flex;align-items:center;gap:9px;margin:0 0 18px;font-size:20px;line-height:1.5}
.klap .klap-step{flex:none;width:27px;height:27px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--klap-pink);color:#fff;font-size:13px;font-weight:700}
.klap .klap-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
.klap label{display:block;font-weight:inherit;margin:0}
.klap .klap-fields label>span,.klap .klap-review>span,.klap .klap-reflectfields label>span,.klap .klap-saved label>span{display:block;font-size:13px;font-weight:700;color:#654658;margin:0 0 6px}
.klap small{font-size:11px;color:var(--klap-muted)}
.klap input[type="date"],.klap textarea,.klap select{display:block;width:100%;max-width:100%;border:1px solid #dfcbd3;border-radius:9px;color:var(--klap-ink);background:#fff;padding:10px 12px;font-family:inherit;font-size:14px;line-height:1.5;min-height:44px;box-shadow:none;margin:0}
.klap select{cursor:pointer}
.klap textarea{resize:vertical;min-height:74px}
.klap input:focus,.klap select:focus,.klap textarea:focus,.klap button:focus-visible{outline:3px solid #cda6ee;outline-offset:2px}
.klap .klap-fieldhint{font-size:12px;margin:13px 0 17px;color:#786c79;line-height:1.8}
.klap button.klap-btn{appearance:none;border:1px solid transparent;border-radius:10px;padding:10px 15px;font-size:13px;font-weight:700;font-family:inherit;min-height:42px;line-height:1.5;cursor:pointer;transition:background-color .15s ease,transform .15s ease}
.klap button.klap-btn:hover{transform:translateY(-1px)}
.klap .klap-btn-primary{background:#cf5579;color:#fff;box-shadow:0 4px 12px rgba(207,85,121,.17)}
.klap .klap-btn-primary:hover{background:#b84468}
.klap .klap-btn-light{border-color:#ebccd8!important;color:#8b4662;background:#fff}
.klap .klap-btn-quiet{border-color:#ddd!important;background:#fff;color:#69606a}
.klap .klap-feedback{min-height:1px;font-size:13px;color:#347469;margin:5px 0}
.klap .klap-feedback:not(:empty){margin:12px 0;padding:9px 13px;background:#f0f9f6;border-radius:8px}
.klap .klap-feedback.klap-error{background:#fff0f0;color:#9d3442}
.klap .klap-saved{border:1px solid #e7d8e8;background:#faf8fe;padding:14px 17px;margin:20px 0 18px;border-radius:12px}
.klap .klap-saved-top{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;justify-content:space-between}
.klap .klap-saved label{flex:1;min-width:220px}
.klap .klap-saved label>span{font-size:12px}
.klap .klap-toolbar{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.klap .klap-toolbar button.klap-btn{font-size:12px;padding:8px 10px;min-height:40px}
.klap .klap-results{scroll-margin-top:30px;margin-top:22px}
.klap .klap-planhead{padding:22px 24px;background:#fffbfc;border:1px solid var(--klap-border);border-radius:16px}
.klap .klap-planhead h3{font-size:23px;margin:4px 0 7px;line-height:1.5;color:#a0476e}
.klap .klap-planhead p{margin:0 0 14px;font-size:13px;color:#605362}
.klap .klap-pills span{background:#fff7fb}
.klap .klap-progress-section{margin:20px 0 23px}
.klap .klap-progress-label{display:flex;gap:8px;align-items:baseline;justify-content:space-between;flex-wrap:wrap;font-size:13px}
.klap .klap-progress-label strong{color:#98516e}
.klap .klap-progress-label span{color:#766977}
.klap .klap-progress-track{height:12px;width:100%;overflow:hidden;background:#f4e8ee;border-radius:40px;margin:8px 0 5px}
.klap .klap-progress-track>div{height:100%;background:linear-gradient(90deg,#d66e90,#8cbbaf);border-radius:40px;transition:width .2s ease}
.klap .klap-progress-section small{display:block}
.klap .klap-planbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.klap .klap-planbar h4{margin:0;font-size:17px}
.klap .klap-filter{display:flex;flex-wrap:wrap;gap:5px}
.klap .klap-filter button{border:1px solid #ead7df;background:#fff;padding:5px 12px;border-radius:20px;font-size:12px;color:#806276;cursor:pointer}
.klap .klap-filter button[aria-pressed="true"]{background:#c75b7c;border-color:#c75b7c;color:#fff}
.klap .klap-day{margin:9px 0;border:1px solid #e9e0e5;border-radius:12px;background:#fff;overflow:hidden}
.klap .klap-day-done{border-color:#c7e6dc;background:#fcfffd}
.klap .klap-day-skip{border-color:#e4dfe5;background:#fbfafc}
.klap .klap-day summary{display:flex;align-items:center;gap:10px;padding:13px 14px;cursor:pointer;list-style:none}
.klap .klap-day summary::-webkit-details-marker{display:none}
.klap .klap-day summary::after{content:'+';font-size:19px;line-height:1;font-weight:400;color:#a46b83;margin-left:1px}
.klap .klap-day details[open] summary::after{content:'−'}
.klap .klap-day-num{flex:none;min-width:63px;text-align:center;padding:4px 8px;border-radius:7px;background:#fbedf3;color:#af587b;font-weight:800;font-size:11px;letter-spacing:.035em}
.klap .klap-day-main{flex:1;min-width:0;line-height:1.5}
.klap .klap-day-date{display:block;font-size:11px;color:#756a73}
.klap .klap-day-main strong{font-size:14px;font-weight:700;display:block;margin-top:3px;color:#594151}
.klap .klap-today{background:#f1e6fd;color:#714ba3;border-radius:4px;padding:1px 5px;margin-left:7px}
.klap .klap-status{flex:none;font-size:11px;color:#8e7e88;background:#f3f0f3;padding:3px 7px;border-radius:12px}
.klap .klap-day-done .klap-status{color:#327b6c;background:#e1f3ee}
.klap .klap-day-detail{padding:4px 18px 18px 87px;border-top:1px solid #f3ebef}
.klap .klap-day-detail .klap-task{font-size:14px;margin:15px 0 7px;font-weight:500;line-height:1.9}
.klap .klap-why{font-size:12px;margin:0 0 7px;color:#716573}
.klap .klap-minutes{font-size:11px;color:#8c7d8a;margin:5px 0 14px}
.klap .klap-status-buttons{margin:0 0 13px;padding:0;border:none;display:flex;flex-wrap:wrap;gap:7px}
.klap .klap-status-buttons legend{font-size:12px;color:#695966;font-weight:700;margin-bottom:5px;padding:0}
.klap .klap-status-buttons button{font-family:inherit;border:1px solid #e2d6e1;border-radius:7px;background:#fff;color:#745c6e;padding:6px 12px;font-size:12px;cursor:pointer;line-height:1.4}
.klap .klap-status-buttons button[aria-pressed="true"]{background:#f2e4ef;border-color:#c46f98;color:#743c62;font-weight:750}
.klap .klap-reflectfields{display:grid;grid-template-columns:2fr 1fr;gap:13px;align-items:start}
.klap .klap-reflectfields label>small{display:block;margin-top:5px;line-height:1.5}
.klap .klap-reviews{margin:23px 0 0;padding:22px 24px;background:#fffafd;border:1px solid #f0e0e8;border-radius:14px}
.klap .klap-reviews h4{margin:0 0 6px;font-size:18px}
.klap .klap-reviews>p{font-size:13px;color:#71636e;margin:0 0 15px}
.klap .klap-review{display:block;margin:0 0 15px}
.klap .klap-review>span{margin-bottom:6px}
.klap .klap-final{padding-top:12px;border-top:1px solid #f0e2ec}
.klap .klap-empty{padding:22px;text-align:center;border:1px dashed #e9d4df;border-radius:10px;font-size:13px;color:#716475}
.klap .klap-footer{border-top:1px solid #f0e3e9;margin-top:24px;padding-top:17px;font-size:12px;color:#83747d}
@media(max-width:650px){.klap{border-radius:15px;margin:12px auto 30px}.klap .klap-hero{padding:23px 18px}.klap .klap-hero h2{font-size:25px}.klap .klap-body{padding:20px 15px 23px}.klap .klap-fields,.klap .klap-reflectfields{grid-template-columns:1fr}.klap .klap-day summary{padding:11px 9px;gap:7px}.klap .klap-day-num{min-width:53px;padding:3px}.klap .klap-day-detail{padding:8px 12px 14px}.klap .klap-status{font-size:10px;padding:2px 4px}.klap .klap-planhead,.klap .klap-reviews{padding:16px}.klap .klap-saved{padding:12px}.klap .klap-toolbar{width:100%}.klap .klap-toolbar button.klap-btn{flex:1}.klap .klap-day-main strong{font-size:13px}}
@media print{.klap{box-shadow:none;max-width:100%;border:0}.klap .klap-form,.klap .klap-saved,.klap .klap-toolbar,.klap .klap-filter,.klap .klap-status-buttons,.klap .klap-reflectfields,.klap .klap-footer{display:none!important}.klap .klap-day details{display:block}.klap .klap-day details:not([open])>div{display:block!important}.klap .klap-day{page-break-inside:avoid}}
