/* Scoped sample previews on existing quotation cards. */
.r77-price-card:has(.r111-price-sample){display:flex;flex-direction:column}
.r77-price-card .r111-price-sample{display:flex;align-items:center;gap:12px;margin-top:auto;padding:16px 0 0;text-decoration:none;color:#332451;min-width:0}
.r111-price-sample .r111-price-thumbnail{position:relative;display:flex;flex:0 0 76px;height:66px;overflow:hidden;border-radius:8px;background:#eee9f5}
.r111-price-thumbnail img{width:100%;height:100%;object-fit:cover;min-width:0}
.r111-price-thumbnail:has(img+img) img{width:50%}
.r111-price-thumbnail i{position:absolute;inset:auto 5px 5px auto;border-radius:50%;width:24px;height:24px;background:#fff;color:#614193;font-style:normal;display:grid;place-items:center;font-size:10px}
.r111-price-thumbnail .r111-paper-mark{width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eee8ff,#f7f4ff);font-size:24px;font-weight:650;letter-spacing:-1px;color:#7651b1}
.r111-price-sample>span:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.r111-price-sample strong{font-size:14px;line-height:1.45;color:#634392}
.r111-price-sample small{font-size:11px;line-height:1.5;color:#82728f}
.r111-price-sample:hover strong{text-decoration:underline;text-underline-offset:4px}
.r111-price-sample:focus-visible,.r111-samples button:focus-visible,.r111-samples a:focus-visible{outline:3px solid #8b6acf;outline-offset:3px}
.r77-price-card:has(.r111-price-sample)>p{margin-bottom:16px}
body.r111-samples-open{overflow:hidden}
dialog.r111-samples{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(1080px,calc(100vw - 40px));height:min(840px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;border:1px solid #ddd3e9;border-radius:18px;background:#fff;color:#252035;box-shadow:0 24px 100px #21173755;overflow:hidden}
dialog.r111-samples[open]{display:flex;flex-direction:column}
dialog.r111-samples::backdrop{background:#181025a8;backdrop-filter:blur(4px)}
.r111-samples-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:20px;padding:20px 26px;border-bottom:1px solid #e7deee;background:#faf8fd}
.r111-samples-header>div{min-width:0}.r111-samples-header p{margin:0 0 4px;font-size:11px;letter-spacing:1.5px;color:#7a6393}.r111-samples-header h2{font-size:21px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.r111-samples button{font:inherit;cursor:pointer}.r111-samples-header button{flex:0 0 auto;border:1px solid #d9cde9;background:white;color:#5b3f7c;border-radius:9px;padding:10px 16px;min-height:44px}
.r111-samples-body{padding:22px 26px 28px;overflow-y:auto;overscroll-behavior:contain;min-height:0}
.r111-sample-intro{font-size:14px;line-height:1.8;color:#756783;margin:0 0 20px;max-width:900px}
.r111-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.r111-sample-grid>button{min-width:0;padding:0;border:1px solid #e3dbea;border-radius:12px;background:#fff;overflow:hidden;text-align:left;color:inherit;transition:border-color .15s,box-shadow .15s}
.r111-sample-grid>button:hover{border-color:#9774b8;box-shadow:0 6px 20px #54406412}
.r111-sample-cover{position:relative;display:block;aspect-ratio:16/10;background:#f1edf6;overflow:hidden}
.r111-sample-cover>img{width:100%;height:100%;object-fit:contain;display:block}
.r111-play{position:absolute;inset:0;margin:auto;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#fffffff0;color:#61418a;font-size:15px}
.r111-sample-caption{display:flex;flex-direction:column;gap:7px;padding:14px}.r111-sample-caption strong{font-size:15px;line-height:1.6;font-weight:650}.r111-sample-caption small{font-size:12px;line-height:1.6;color:#86758f}
.r111-paper-cover{box-sizing:border-box;height:100%;display:flex;flex-direction:column;gap:12px;padding:22px 20px;background:linear-gradient(140deg,#f6f0ff,#ece9f8);color:#47355f}.r111-paper-cover small{font-size:11px;letter-spacing:1px}.r111-paper-cover b{font-size:17px;line-height:1.5}.r111-paper-cover i{margin-top:auto;font-style:normal;font-size:10px;letter-spacing:3px;color:#8f7caa}
.r111-back{min-height:44px;padding:8px 14px;border:1px solid #dbceea;border-radius:8px;color:#67438e;background:#faf7fe;margin:0 0 18px}
.r111-sample-detail>video{display:block;width:100%;max-height:calc(100dvh - 260px);min-height:160px;background:#151321;object-fit:contain;border-radius:10px}
.r111-playback-note,.r111-sample-detail>[data-r111-playback-error]{font-size:12px;line-height:1.8;color:#877a91}
.r111-image-gallery{display:grid;gap:28px}.r111-image-gallery figure{margin:0}.r111-image-gallery img{display:block;width:auto;max-width:100%;height:auto;max-height:none;margin:auto;object-fit:contain}.r111-image-gallery figcaption{text-align:center;font-size:13px;line-height:1.8;color:#81738c;margin-top:12px}
.r111-sample-detail .r69-full-writing{display:block;max-width:760px;margin:0 auto;padding:18px 4px;font-size:16px;line-height:2.05;color:#4b415a}.r111-sample-detail .r69-full-writing h3{font-size:27px;line-height:1.5;color:#2b203e}.r111-sample-detail .r69-full-writing h4{font-size:19px;color:#463259}.r111-sample-detail .r69-sample-disclosure{font-size:13px;color:#83748e;background:#f6f2fa;padding:12px 16px;border-radius:8px}
@media(max-width:760px){.r111-sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r111-price-sample .r111-price-thumbnail{flex-basis:58px;height:54px}.r77-price-card .r111-price-sample{gap:9px}.r111-price-sample strong{font-size:13px}}
@media(max-width:480px){dialog.r111-samples{width:calc(100vw - 16px);height:calc(100dvh - 24px);border-radius:13px}.r111-samples-header{padding:15px;gap:10px}.r111-samples-header h2{font-size:17px}.r111-samples-header button{padding:8px 10px;font-size:13px}.r111-samples-body{padding:16px}.r111-sample-grid{grid-template-columns:1fr;gap:14px}.r111-price-sample .r111-price-thumbnail{flex-basis:44px;height:50px}.r111-price-sample small{font-size:10px}.r111-price-thumbnail .r111-paper-mark{font-size:18px}.r111-paper-cover{padding:24px}.r111-paper-cover b{font-size:20px}.r111-sample-detail .r69-full-writing{font-size:15px}.r111-sample-detail .r69-full-writing h3{font-size:23px}.r111-sample-detail>video{min-height:160px;max-height:calc(100dvh - 240px)}}
