/* Craft Basket — static local-first collection, no login or backend */
.basket-hero{padding:76px 0 79px;background:radial-gradient(circle at 87% 15%,#f2e3cd 0,transparent 31%),#fbf7ef;overflow:hidden}
.basket-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);align-items:center;gap:clamp(36px,6vw,90px)}
.basket-eyebrow{display:block;color:#b06a50;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:21px}
.basket-hero h1{font-size:clamp(3.5rem,6.2vw,6.25rem);max-width:720px;margin:0 0 22px}
.basket-hero p{color:#647369;max-width:580px;font-size:1.06rem}
.basket-art{position:relative;min-height:330px;display:grid;place-items:center}
.basket-art::before{content:"";position:absolute;inset:4%;background:#e2eadf;border-radius:50% 50% 44% 56%/47% 54% 46% 53%;transform:rotate(11deg)}
.basket-art::after{content:"✳";color:#bf795b;position:absolute;top:0;right:7%;font-size:3.5rem}
.basket-art .large{position:relative;font-size:9rem;transform:rotate(-9deg);filter:drop-shadow(0 16px 13px #314e322c)}
.basket-art .spark{position:absolute;left:7%;bottom:13%;font-size:2.6rem;color:#b17b57}
.basket-art .art-note{position:absolute;z-index:2;bottom:3%;right:1%;padding:15px 20px;background:#fffaf0;border:1px solid #e0d0b7;box-shadow:0 8px 22px #58433120;transform:rotate(6deg);font:italic 1.05rem "DM Serif Display",Georgia,serif;color:#375946}
.basket-stats{background:#e8efe5;padding:22px 0}
.basket-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.basket-stat{border-right:1px solid #cbd9cd;padding:4px 20px}
.basket-stat:last-child{border:0}
.basket-stat strong{display:block;font:normal 2rem "DM Serif Display",Georgia,serif;color:#2e624f}
.basket-stat span{color:#5f7163;font-size:.78rem;font-weight:700}
.basket-section{padding:91px 0;background:#fffdf8}
.basket-section.alt{background:#f7f3ea}
.basket-section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:31px}
.basket-section-head h2{font-size:clamp(2.5rem,4vw,4rem);margin:0}
.basket-section-head p{color:#68776b;max-width:340px;margin:0;font-size:.94rem}
.basket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.basket-card{border:1px solid #e6e6db;background:#fbf8f1;border-radius:20px;padding:26px;display:flex;flex-direction:column;min-height:275px}
.basket-card .card-emoji{font-size:2.8rem;margin-bottom:13px}
.basket-card .card-type{font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;color:#b06c51;font-weight:700}
.basket-card h3{font:normal 1.85rem/1.12 "DM Serif Display",Georgia,serif;margin:11px 0 12px}
.basket-card p{color:#64736a;font-size:.88rem;margin:0 0 20px}
.basket-card-actions{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.basket-primary-link{color:#2f6954;font-weight:700;font-size:.86rem}
.basket-primary-link:hover{text-decoration:underline}
.basket-remove{border:1px solid #ddd8ce;border-radius:99px;background:#fffdf8;color:#7d6154;padding:8px 12px;font:600 .78rem "DM Sans",sans-serif;cursor:pointer}
.basket-remove:hover{background:#f9eae1}
.basket-empty{display:flex;flex-direction:column;align-items:flex-start;gap:15px;max-width:690px;border:1px dashed #bfcfc0;border-radius:22px;background:#f7faf4;padding:38px}
.basket-empty[hidden]{display:none}
.basket-empty .empty-icon{font-size:3rem}
.basket-empty h3{font:normal 2rem "DM Serif Display",Georgia,serif;margin:0}
.basket-empty p{margin:0 0 3px;color:#64746a}
.basket-guide{min-height:300px}
.basket-guide-status{display:inline-flex;align-items:center;gap:7px;border-radius:99px;background:#e8eee5;color:#416b54;padding:7px 11px;font-size:.74rem;font-weight:700;align-self:flex-start;margin-bottom:16px}
.basket-guide-status.started{background:#dce9d8}
.basket-guide-status.complete{background:#d8e9d7}
.basket-guide .mini-progress{width:100%;height:9px;background:#e1e5dc;border-radius:99px;overflow:hidden;margin:5px 0 10px}
.basket-guide .mini-progress>span{display:block;height:100%;background:#346a52;transition:width .2s}
.basket-progress-copy{font-size:.79rem;color:#657369;margin-bottom:15px}
.basket-notes{border-top:1px solid #e6e6db;padding:13px 0 17px;color:#607067;font-size:.85rem;line-height:1.55;overflow-wrap:anywhere}
.basket-notes strong{display:block;color:#395a49;margin-bottom:4px}
.basket-summary{padding:55px 0;background:#e8efe6}
.basket-summary .shell{display:flex;justify-content:space-between;align-items:center;gap:25px}
.basket-summary h2{font-size:clamp(2rem,3vw,2.7rem);margin:0 0 8px}
.basket-summary p{color:#5c7061;margin:0}
.basket-summary .button{white-space:nowrap}
.basket-private{background:#fbf7ef;padding:36px 0;border-top:1px solid #e5e1d6}
.basket-private p{color:#6c776e;font-size:.83rem;margin:0;max-width:930px}
.basket-notice{color:#975439;font-size:.86rem;font-weight:600;margin:13px 0 0;min-height:1em}
.basket-notice:empty{display:none}
@media(max-width:980px){.basket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.basket-hero-grid{grid-template-columns:1fr}.basket-art{min-height:245px;max-width:400px;width:100%;margin:auto}.basket-art .large{font-size:7rem}.basket-hero{padding:57px 0}.basket-section{padding:65px 0}.basket-section-head{display:block}.basket-section-head p{margin-top:13px}.basket-summary .shell{flex-direction:column;align-items:flex-start}}
@media(max-width:520px){.basket-grid{grid-template-columns:1fr}.basket-stat{padding:3px 7px}.basket-stat strong{font-size:1.5rem}.basket-stat span{font-size:.71rem}.basket-art .art-note{right:5%}.basket-empty{padding:28px}.basket-summary .button{white-space:normal}}
@media(prefers-reduced-motion:reduce){.basket-guide .mini-progress>span{transition:none}}
/* Videos saved from the Featured Video Library */
.basket-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.basket-video-card{overflow:hidden;padding-top:0}
.basket-video-thumb{height:auto;aspect-ratio:16/9;object-fit:cover;width:calc(100% + 52px);max-width:none;margin:0 -26px 24px;background:#e7eee5}
.basket-video-card .card-type{text-transform:capitalize;letter-spacing:.06em}
.basket-video-card h3{font-size:1.55rem}
@media(max-width:740px){.basket-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.basket-stat:nth-child(2){border:0}.basket-stat:nth-child(3),.basket-stat:nth-child(4){border-top:1px solid #cbd9cd;padding-top:12px}}
