/* DropFolks app language: quiet surfaces, clear hierarchy, room to tap. */
:root{--df-bg:#fcf9f4;--df-surface:#fffefa;--df-raised:#f3eee6;--df-text:#302821;--df-muted:#776e65;--df-line:#e7e0d6;--df-accent:#a33827;--df-accent-soft:#f8e8df;--df-on-accent:#fff;--df-shadow:0 8px 32px #3c2a1910;--navy:var(--df-text);--muted:var(--df-muted);--blue:var(--df-accent);--maple:var(--df-accent);--line:var(--df-line);--ivory:var(--df-bg);--light:var(--df-raised);color-scheme:light}
:root[data-theme=dark]{--df-bg:#191917;--df-surface:#232320;--df-raised:#2e2e29;--df-text:#f6f1e9;--df-muted:#b3ada3;--df-line:#41413b;--df-accent:#f19176;--df-accent-soft:#482f27;--df-on-accent:#271910;--df-shadow:0 8px 32px #0003;color-scheme:dark}
body{background:var(--df-bg);color:var(--df-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}
button{cursor:pointer}button:disabled{cursor:default}button:not(:disabled),a{transition:background-color .16s,color .16s,transform .16s,box-shadow .16s}
button:not(:disabled):active,.df-link-list a:active{transform:scale(.98)}
:is(button,a,input,select,textarea,summary,[tabindex="0"]):focus-visible{outline:3px solid var(--df-accent);outline-offset:4px}
body:has(#app) #main{padding-bottom:calc(118px + env(safe-area-inset-bottom));}
body:has(#app) #app>header{background:var(--df-bg);border-bottom:1px solid var(--df-line);box-shadow:none;min-height:78px;padding:16px 32px;gap:16px}
#app>.df-app-header .brand{margin-right:auto}#app>.df-app-header .brand small{display:none}
#app>.df-app-header .brand-icon{width:38px;height:38px;border-radius:10px}
#app>.df-app-header .brand-type b{font-size:26px;letter-spacing:-1.1px;color:var(--df-text)}
#app>.df-app-header .brand-type b span{color:var(--df-accent)}
.df-header-context{color:var(--df-muted);font-size:14px;margin-left:auto}
#app>.df-app-header .location{margin-left:auto;font-size:13px}.df-app-header .location strong{font-size:13px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.df-app-header .basket-top{border-radius:50%;width:46px;height:46px;min-width:46px;padding:11px;position:relative;background:var(--df-surface);border:1px solid var(--df-line);color:var(--df-text)}
.df-app-header .basket-top>span{display:none}.df-app-header .basket-top b{position:absolute;right:-4px;top:-4px;background:var(--df-accent);color:var(--df-on-accent);border-radius:30px;font-size:10px;min-width:20px}
.df-round{display:inline-grid;place-items:center;width:46px;height:46px;flex:none;border-radius:50%;padding:12px;color:var(--df-text);background:var(--df-surface);border:1px solid var(--df-line)}
.df-round svg{width:22px;height:22px}.df-round:hover{background:var(--df-raised)}
.df-tabbar{position:fixed;z-index:35;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:420px;display:flex;gap:6px;padding:7px;border:1px solid var(--df-line);border-radius:38px;background:var(--df-surface);box-shadow:0 8px 30px #241a1820}
.df-tabbar button{flex:1;min-width:0;min-height:54px;border:0;border-radius:28px;padding:7px 12px;display:flex;justify-content:center;align-items:center;gap:8px;background:transparent;color:var(--df-muted);font-size:13px;font-weight:600}
.df-tabbar svg{height:23px;width:23px;flex:none}.df-tabbar button[aria-current=page]{background:var(--df-accent-soft);color:var(--df-accent)}
body:has(.df-tabbar)>.legal-footer{display:none}
body:has(.df-account) #app>header{display:none}
.df-account{max-width:620px;margin:0 auto;padding:0 8px}
.df-hub-top{display:flex;align-items:center;gap:10px;padding:3px 0 28px}.df-hub-top>span{font-size:17px;font-weight:650;margin-right:auto}
.df-identity{display:flex;align-items:center;gap:18px;margin:0 0 32px;min-height:92px}
.df-avatar{width:78px;height:78px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--df-accent-soft);color:var(--df-accent);border:1px solid var(--df-line);font-size:26px;font-weight:600;letter-spacing:-1px}
.df-identity>div{min-width:0}.df-identity h1{font-size:30px;line-height:1.14;letter-spacing:-1.1px;margin:0 0 7px;overflow-wrap:anywhere}
.df-identity p{font-size:14px;color:var(--df-muted);margin:0 0 10px}
.df-status{display:inline-flex;align-items:center;background:var(--df-raised);color:var(--df-text);border-radius:20px;padding:5px 10px;font-size:11px;font-weight:600;letter-spacing:.15px}
.df-status.df-alert{color:var(--df-accent);background:var(--df-accent-soft)}
.df-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:30px}
.df-quick{min-height:122px;display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:20px;border:1px solid var(--df-line);border-radius:22px;text-align:left;background:var(--df-surface);color:var(--df-text)}
.df-quick:first-child{background:var(--df-accent-soft);border-color:transparent}.df-quick svg{width:25px;height:25px;color:var(--df-accent)}
.df-quick strong{font-size:16px;font-weight:650}.df-quick span{font-size:12px;color:var(--df-muted);line-height:1.4;overflow-wrap:anywhere}
.df-list{margin:0 0 24px;border-top:1px solid var(--df-line)}
.df-row{display:flex;align-items:center;gap:14px;text-align:left;width:100%;min-height:77px;border:0;border-bottom:1px solid var(--df-line);border-radius:0;padding:17px 2px;background:transparent;color:var(--df-text)}
.df-row:hover{background:var(--df-raised)}.df-row-icon{color:var(--df-muted);width:24px;flex:none}.df-row-icon svg{width:22px;height:22px}
.df-row-text{flex:1;font-size:16px;font-weight:550;line-height:1.4}.df-row-text small{display:block;color:var(--df-muted);font-size:13px;font-weight:400;margin-top:5px}
.df-row>svg{width:18px;height:18px;color:var(--df-muted);flex:none}
.df-signout{background:transparent;border:1px solid var(--df-line);border-radius:30px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;font-size:15px;color:var(--df-text);font-weight:600;margin-top:28px}.df-signout:hover{background:var(--df-raised)}.df-signout svg{width:18px;height:18px}
.df-caption{color:var(--df-muted);font-size:13px;line-height:1.6;margin:18px 0}.df-center{text-align:center;font-size:11px}
.df-page-top{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:10px;margin:0 0 32px;padding-top:3px}
.df-page-top h1{font-size:19px;font-weight:650;line-height:1.35;text-align:center;letter-spacing:-.4px;margin:0}
.df-info-section{margin:0 0 36px}.df-info-section h2{font-size:21px;letter-spacing:-.6px;margin:0 0 10px}
.df-details{margin:0}.df-details>div{padding:19px 0;border-bottom:1px solid var(--df-line)}.df-details dt{font-size:15px;font-weight:550;margin:0 0 7px}.df-details dd{margin:0;color:var(--df-muted);font-size:15px;line-height:1.6;overflow-wrap:anywhere}
.df-support-link{display:flex;align-items:center;gap:12px;color:var(--df-text);font-size:15px;min-height:58px;text-decoration:none;padding:14px 0}.df-support-link svg{width:22px;height:22px;color:var(--df-accent);flex:none}.df-support-link svg:last-child{margin-left:auto;width:17px;color:var(--df-muted)}
.df-surface{background:var(--df-surface);border:1px solid var(--df-line);border-radius:24px;padding:25px;margin-bottom:24px}.df-surface h2{font-size:24px;letter-spacing:-.8px;margin:16px 0 12px}.df-surface p{font-size:15px;color:var(--df-muted);line-height:1.6}
.df-link-list a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:67px;color:var(--df-text);text-decoration:none;border-bottom:1px solid var(--df-line);font-size:15px}.df-link-list svg{width:18px;height:18px}
.df-appearance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:28px}.df-appearance button{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:12px 8px;border:1px solid var(--df-line);border-radius:20px;background:var(--df-surface);color:var(--df-text);position:relative}
.df-appearance button[aria-pressed=true]{border:2px solid var(--df-accent);padding:11px 7px;background:var(--df-accent-soft)}.df-appearance button>svg{width:22px;height:22px}.df-appearance strong{font-size:14px;font-weight:550}
.df-theme-sample{width:100%;height:106px;display:flex;flex-direction:column;justify-content:center;gap:8px;background:#fcf9f4;border:1px solid #e7e0d6;border-radius:12px;padding:12px}.df-theme-sample i{display:block;height:18px;border-radius:5px;background:#ece6dc}.df-theme-sample i:first-child{width:60%;height:7px;background:#a33827}.df-theme-dark{background:#191917;border-color:#41413b}.df-theme-dark i{background:#35352f}.df-theme-dark i:first-child{background:#f19176}.df-theme-system{background:linear-gradient(90deg,#fcf9f4 50%,#191917 50%)}.df-theme-system i{background:linear-gradient(90deg,#ece6dc 50%,#35352f 50%)}
.df-theme-check{height:20px;width:20px;display:grid;place-items:center;border:1px solid var(--df-line);border-radius:50%}.df-theme-check svg{display:none;width:14px;height:14px}.df-appearance [aria-pressed=true] .df-theme-check{background:var(--df-accent);color:var(--df-on-accent);border-color:transparent}.df-appearance [aria-pressed=true] .df-theme-check svg{display:block}
.df-account .driver-map-settings{background:transparent;border:0;box-shadow:none;padding:0}.df-account .driver-map-settings label{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--df-line);padding:20px 0;margin:0;font-size:16px}.df-account .driver-map-settings select{width:125px;min-height:46px;padding:10px;border:1px solid var(--df-line);border-radius:12px;background:var(--df-surface);color:var(--df-text)}.df-account .driver-map-settings p{color:var(--df-muted);line-height:1.6;margin:24px 0;font-size:13px}
/* Existing transactional screens keep their behavior and adopt the same surfaces. */
body:has(#app) :is(.panel,.basket-card,.product,.address-card,.store-stats>div,.order-row,.catalogue-row,.auth-form-card,.auth-card){border-color:var(--df-line);background:var(--df-surface);color:var(--df-text);box-shadow:none;border-radius:22px}
body:has(#app) .primary{background:var(--df-accent);color:var(--df-on-accent);border-radius:28px;box-shadow:none;min-height:50px;font-weight:650}
body:has(#app) .secondary{background:var(--df-raised);color:var(--df-text);border-color:var(--df-line);border-radius:24px}
body:has(#app) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--df-surface);color:var(--df-text);border-color:var(--df-line);min-height:48px;border-radius:13px}
body:has(#app) :is(input,textarea)::placeholder{color:var(--df-muted);opacity:.85}
body:has(#app) :is(.focused-form .phone-field,.focused-form .phone-field>span,.focused-form .street-fields input){border-color:var(--df-line);background:var(--df-surface);color:var(--df-text)}
body:has(#app) :is(.field-help,.micro,.muted,.page-heading p,.product-info p,.info-row p,.catalog-note){color:var(--df-muted)}
body:has(#app) .step-shell h1{letter-spacing:-.9px}.step-shell .step-top{margin-bottom:15px}.step-shell .step-top>button{min-height:44px}.focused-form .step-actions{background:var(--df-surface)}
body:has(#app) .shop-layout .hero{height:220px;border-radius:26px;margin-top:0}.shop-layout .hero-copy{padding:26px}.shop-layout .hero h1{font-size:33px;letter-spacing:-1.2px}.shop-layout .hero p{font-size:13px;max-width:210px}.shop-layout .hero .eyebrow{font-size:9px;letter-spacing:1px}
.shop-layout .store-picker{background:var(--df-surface);border:1px solid var(--df-line);border-radius:20px;padding:16px;margin:0 0 20px}.shop-layout .store-picker label{font-size:13px}.shop-layout .store-picker select{font-weight:600}.shop-layout .store-picker small{font-size:11px;color:var(--df-muted)}
.shop-layout .categories button{background:var(--df-surface);color:var(--df-text);border-color:var(--df-line);min-height:44px}.shop-layout .categories button.active{background:var(--df-text);color:var(--df-bg);border-color:transparent}
.shop-layout .product{border-radius:22px}.shop-layout .product-art{border-radius:17px}.shop-layout .product-info{padding:14px}.shop-layout .product-info h3{font-size:15px;line-height:1.4;font-weight:600}.shop-layout .product-bottom strong{font-size:16px}.product .add{min-width:42px;min-height:42px;border-radius:50%;background:var(--df-accent);color:var(--df-on-accent)}
.product .quantity{max-width:none;border-radius:25px;background:var(--df-raised);border-color:var(--df-line)}.product .quantity button{min-width:36px;min-height:42px;color:var(--df-text)}
.driver-home .driver-bottom-sheet{bottom:calc(88px + env(safe-area-inset-bottom))}.driver-home .driver-duty>button{border-radius:30px;min-height:58px}.driver-home .driver-duty>button.secondary{background:var(--df-surface);color:var(--df-text);border-color:var(--df-line)}
html[data-theme=dark] :is(.auth-header,.auth-form,.auth-story,.auth-card,.auth-shell,.auth-header+.auth-layout,.step-actions,.account-notice,.review-contact,.cat-policy,.cat-live-controls,.cat-tabs,.unavailable-details,.phone-field,.driver-location-access,.partner-details,.confirmation-panel,.payment-panel,.payment-summary,.order-items,.totals,.search,.empty,.proposal,.tracking-hero,.bag-details,.waiting,.delivery-options label,.driver-card,.driver-offers .driver-card,.driver-map-tools>button,.driver-map-tools>[role=status]:not(:empty)){background:var(--df-surface);color:var(--df-text);border-color:var(--df-line)}
html[data-theme=dark] :is(.auth-header a,.brand,.brand-type b,.partner-shell h1,.partner-shell h2,.partner-shell h3,.focused-form label,.focused-form legend,.text,.store-stats strong,.route-stop h3,.section-heading,.cat-store-heading h1,.cat-editor h1,.review-details dd,.review-details dt,.auth-switch,.account-notice){color:var(--df-text)}
html[data-theme=dark] :is(.auth-intro,.auth-form p,.auth-story p,.partner-shell p,.step-shell p,.cat-submission p,.cat-policy,.cat-note,.route-stop p,.store-order p,.review-details,.info-row p,.totals>div,.history-row,.order-row small,.focused-form .field-help,.phone-field>span){color:var(--df-muted)}
html[data-theme=dark] :is(.status,.address-tag,.count,.store-avatar,.delivery-tag,.review-notice,.notice,.test-pill,.step-progress li,.deal-label,.partner-steps .secondary){background:var(--df-raised);color:var(--df-text);border-color:var(--df-line)}
html[data-theme=dark] :is(.status.red,.form-error,.error-banner,.legal-gate){background:var(--df-accent-soft);color:#ffb8a2;border-color:#875746}
html[data-theme=dark] :is(.confirm-check,.legal-fields,.legal-fields label,.auth-tabs,.cat-store-tabs,.section-heading,.order-items>div,.basket-line,.history-row,.totals .total){border-color:var(--df-line);color:var(--df-text)}
html[data-theme=dark] :is(a:not(.entry-button):not(.primary):not(.hero-cta),.text.danger,.eyebrow){color:var(--df-accent)}
html[data-theme=dark] .hero:after{background:linear-gradient(90deg,#2f2c24 5%,#2f2c24f2 32%,#2f2c2400 76%)}html[data-theme=dark] .hero h1{color:var(--df-text)}html[data-theme=dark] .hero p{color:#e4d5c7}html[data-theme=dark] .brand-icon{background:#fffaf3;padding:3px;border-radius:10px}
html[data-theme=dark] #agreement-reader,html[data-theme=dark] #agreement-reader header{background:var(--df-surface);color:var(--df-text);border-color:var(--df-line)}html[data-theme=dark] .agreement-reader-content :is(h1,h2,h3,p,li){color:var(--df-text)}
html[data-theme=dark] .entry :is(.portal-card,.scene-label,.visual-journey>li,.entry-footer){background:var(--df-surface);color:var(--df-text);border-color:var(--df-line)}html[data-theme=dark] .entry :is(h1,h2,h3,b,strong,.wordmark){color:var(--df-text)}html[data-theme=dark] .entry :is(p,.intro span,.scene-label span){color:var(--df-muted)}html[data-theme=dark] .entry-header .wordmark img{background:#fffaf3;border-radius:10px;padding:3px}html[data-theme=dark] .entry-footer a{color:var(--df-muted)}
.df-entry-appearance{display:flex;justify-content:center;gap:8px;margin-top:16px}.df-entry-appearance button{background:transparent;border:1px solid var(--df-line);color:var(--df-muted);border-radius:25px;padding:10px 16px;min-height:44px;font-size:13px}.df-entry-appearance button[aria-pressed=true]{background:var(--df-raised);color:var(--df-text)}
@media(max-width:760px){
 body:has(#app) #app>header{padding:14px 20px;min-height:74px;flex-wrap:nowrap}body:has(#app) #main{padding:20px 20px calc(120px + env(safe-area-inset-bottom));}
 #app>.df-app-header .brand-type b{font-size:24px}.df-header-context{display:none}#app>.df-app-header .location{display:none}
 .df-account{padding:0;max-width:560px}.df-hub-top{padding-bottom:25px}.df-identity{gap:16px;margin-bottom:28px}.df-avatar{width:72px;height:72px}.df-identity h1{font-size:28px}
 .df-shortcuts{gap:12px;margin-bottom:26px}.df-quick{padding:18px 16px;min-height:132px}.df-quick strong{font-size:15px}.df-row{min-height:74px}.df-page-top{margin-bottom:30px}
 .df-tabbar{width:calc(100% - 32px);max-width:420px}.df-tabbar button{font-size:12px;gap:6px;padding:7px 10px;min-height:52px}.df-tabbar svg{width:22px;height:22px}
 .shop-layout .hero{height:216px}.shop-layout .hero-copy{padding:23px}.shop-layout .hero h1{font-size:31px;line-height:1.1;margin-bottom:10px}.shop-layout .hero p{font-size:12px;max-width:170px;line-height:1.5}.shop-layout .hero-link{font-size:12px}.shop-layout .hero .eyebrow{display:none}
 .shop-layout .store-picker{display:grid;grid-template-columns:1fr;gap:7px;padding:14px 16px}.shop-layout .store-picker select{width:100%;font-size:16px}.shop-layout .store-picker label{width:auto}.shop-layout .store-line{padding:20px 0}.shop-layout .store-line h2{font-size:18px}
 .shop-layout .catalog-head{display:block;margin:26px 0 18px}.shop-layout .catalog-head .eyebrow{display:none}.shop-layout .catalog-head h2{font-size:25px;margin:0 0 15px;letter-spacing:-.7px}.shop-layout .search{width:100%;border:1px solid var(--df-line);background:var(--df-surface);padding:0 14px;border-radius:28px}.shop-layout .search input{background:transparent;border:0;min-height:48px;font-size:15px;padding:0 8px}.shop-layout .search svg{width:20px;height:20px}
 .shop-layout .product-grid{gap:12px}.shop-layout .product-info{padding:12px}.shop-layout .product-info h3{font-size:14px}.shop-layout .product-info p{font-size:12px}.shop-layout .product-bottom{gap:10px;flex-wrap:wrap}.shop-layout .product-art{height:137px}.shop-layout .product-art img{max-height:130px}
 body:has(#app) .panel{padding:22px 18px}.store-stats{gap:10px}.store-stats>div{padding:18px 12px}.partner-top .page-heading h1{font-size:30px}.page-heading p{font-size:14px}
 .df-account .driver-map-settings{padding:0}.driver-home .driver-bottom-sheet{bottom:calc(87px + env(safe-area-inset-bottom))}
}
@media(min-width:1000px){.df-account{padding-top:10px}.df-tabbar{bottom:18px}.shop-layout .hero{height:270px}.shop-layout .hero h1{font-size:39px}.shop-layout .hero p{font-size:14px;max-width:230px}.shop-layout .hero-copy{padding:30px}}
@media(prefers-reduced-motion:no-preference){.df-page,.df-hub{animation:df-enter .2s ease-out}@keyframes df-enter{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){button,a{transition:none!important}.df-page,.df-hub{animation:none!important}}
body:has(.df-page-top) #app>header{display:none}.step-shell>.df-page-top h1{font-size:19px;line-height:1.35;margin:0;letter-spacing:-.4px}
.df-order-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 30px}.df-order-filters button{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:104px;padding:20px;border:1px solid var(--df-line);border-radius:22px;background:var(--df-surface);color:var(--df-text)}.df-order-filters strong{font-size:30px;font-weight:600;letter-spacing:-1px}.df-order-filters span{font-size:13px;color:var(--df-muted)}.df-order-filters [aria-pressed=true]{background:var(--df-accent-soft);border-color:var(--df-accent)}.df-order-filters [aria-pressed=true] strong{color:var(--df-accent)}
.df-return{min-height:48px;margin:0 0 12px}.df-account .panel p{overflow-wrap:anywhere}
.entry .entry-footer{display:block;text-align:center;padding:28px 16px}.entry-footer nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 20px}.entry-footer nav a{padding:10px 0;color:var(--df-muted)}
html[data-theme=dark] :is(.partner-top,.handoff-note,.availability,.cat-price-form,.cat-photo-workflow,.cat-live-edit,.auth-tabs button,.tab-row button){background:var(--df-surface);color:var(--df-text);border-color:var(--df-line)}
html[data-theme=dark] .auth-tabs button.active{background:var(--df-accent-soft);color:var(--df-accent)}
@media(max-width:760px){body:has(#app) .shop-layout .hero{height:165px}}
@media(min-width:1000px){body:has(#app) .shop-layout .hero{height:270px}}
#main:focus{outline:none!important;box-shadow:none!important}
:is(button,a,input,select,textarea,summary,[tabindex="0"]):focus-visible{outline-color:var(--df-accent)!important;box-shadow:none}
body:has(#app) .focused-form .step-actions{position:static}
body:has(#app) .auth-layout{background:var(--df-bg)}
body:has(#app) .auth-form-area{background:var(--df-surface);color:var(--df-text);border:1px solid var(--df-line);border-radius:26px;box-shadow:none}
.auth-header .role-switch,.auth-form-area .auth-tabs{background:var(--df-raised);border:1px solid var(--df-line);border-radius:18px;padding:5px}
.auth-header .role-switch a,.auth-form-area .auth-tabs a{border-radius:13px;color:var(--df-muted)}
.auth-header .role-switch a[aria-current=page],.auth-form-area .auth-tabs a.active{background:var(--df-accent-soft);color:var(--df-accent);box-shadow:none}
.auth-form-area h2,.auth-form-area label{color:var(--df-text)}
html[data-theme=dark] .auth-form-area :is(fieldset,.legal-fields,.password-checks){background:var(--df-surface);border-color:var(--df-line);color:var(--df-text)}
html[data-theme=dark] .auth-form-area :is(legend,.auth-kicker){color:var(--df-text)}
.auth-form-area .form-role{color:var(--df-muted)}.auth-form-area .form-role svg{color:var(--df-accent)}
@media(max-width:360px){.df-tabbar button{flex-direction:column;gap:3px;padding:6px;font-size:11px}.df-order-filters span{font-size:10px}.df-appearance{gap:7px}.df-appearance button{padding:10px 6px}.df-appearance button[aria-pressed=true]{padding:9px 5px}.df-theme-sample{padding:8px}}
@media(max-width:760px){.shop-layout .hero{height:165px}.shop-layout .hero p{display:none}.shop-layout .hero-copy{padding:22px}.shop-layout .hero h1{font-size:28px;margin-bottom:18px}.shop-layout .store-line{padding:18px 0}.shop-layout .store-line .delivery-tag{display:none}.shop-layout .catalog-head{margin:22px 0 16px}.df-order-filters{gap:8px;margin-bottom:24px}.df-order-filters button{padding:15px 10px;border-radius:18px;min-height:98px}.df-order-filters strong{font-size:27px}.df-order-filters span{font-size:11px}.partner-top{gap:16px;flex-wrap:wrap}.partner-top .page-heading{margin:6px 0 10px}.partner-top .availability{min-height:46px;margin:0 0 24px}}

/* Filled actions own their foreground in both themes, including nested labels. */
html[data-theme] .entry .entry-button,html[data-theme] .hero-cta{background:var(--df-accent);color:var(--df-on-accent)}
html[data-theme] .entry .entry-button span,html[data-theme] .primary :is(span,strong){color:inherit}
html[data-theme] .entry .entry-button:hover,html[data-theme] .primary:hover{background:var(--df-accent);filter:brightness(.94)}
html[data-theme] .entry .card-number{color:var(--df-muted)}
html[data-theme=dark] .entry :is(.portal-icon,.journey-icon,.scene-icon){background:var(--df-accent-soft);color:var(--df-accent)}
html[data-theme=dark] .entry :is(.entry-copy h1 em,.step-number){color:var(--df-accent)}
html[data-theme=dark] .entry :is(.entry-pill,.header-link){color:var(--df-text);border-color:var(--df-line)}
html[data-theme=dark] .skip{background:var(--df-surface);color:var(--df-text)}

/* Product-first browsing, with categories taken from the selected store. */
.df-shop .shop-browse{min-width:0}.df-shop .shop-delivery{display:flex;align-items:center;gap:12px;width:100%;background:transparent;color:var(--df-text);text-align:left;padding:0 0 20px;min-height:52px}
.shop-delivery>svg:first-child{color:var(--df-accent)}.shop-delivery>svg:last-child{margin-left:auto;width:18px}.shop-delivery span{min-width:0}.shop-delivery small{display:block;color:var(--df-muted);font-size:12px;margin-bottom:4px}.shop-delivery strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.df-shop .shop-store{display:flex;gap:13px;align-items:center;border-top:1px solid var(--df-line);padding:18px 0 20px}.shop-store-icon{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:15px;background:var(--df-accent-soft);color:var(--df-accent)}
.df-shop .store-picker{display:block;min-width:0;flex:1;margin:0;padding:0;border:0;background:transparent}.df-shop .store-picker label{display:block;font-size:11px;color:var(--df-muted);margin:0 0 1px}.df-shop .store-picker small{display:block;font-size:11px;margin-top:3px}
body:has(#app) .df-shop .store-picker select{width:100%;max-width:100%;min-height:32px;border:0;background:transparent;border-radius:0;color:var(--df-text);font-size:20px;font-weight:700;padding:0 26px 0 0;text-overflow:ellipsis}
.df-shop .shop-paused{background:var(--df-accent-soft);color:var(--df-text);border-radius:14px;padding:12px;font-size:14px}
.df-shop .shop-search{display:flex;width:100%;gap:8px;align-items:center;border:1px solid var(--df-line);border-radius:28px;padding:0 18px;background:var(--df-raised);color:var(--df-muted)}
body:has(#app) .df-shop .shop-search input{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;min-height:52px;width:100%;font-size:16px}
.shop-categories{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;padding:20px 3px 12px;margin:0 -3px;scrollbar-width:thin;scrollbar-color:var(--df-line) transparent}
.shop-categories button{flex:0 0 78px;display:flex;align-items:center;flex-direction:column;gap:9px;min-height:100px;padding:2px 0 10px;background:transparent;color:var(--df-muted);border-radius:14px;font-size:12px;line-height:1.25;font-weight:600;position:relative}
.shop-categories button[aria-pressed=true]{color:var(--df-text)}.shop-categories button[aria-pressed=true]:after{content:'';position:absolute;bottom:0;width:28px;height:3px;border-radius:3px;background:var(--df-accent)}
.category-art{display:grid;place-items:center;width:64px;height:64px;background:#f6efe3;border-radius:22px;overflow:hidden;color:#a33827;border:2px solid transparent}.category-art img{width:100%;height:100%;object-fit:contain}.category-art svg{width:30px;height:30px}.shop-categories button[aria-pressed=true] .category-art{border-color:var(--df-accent)}
.shop-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0 25px}.shop-offers{display:flex;align-items:center;gap:7px;padding:10px 15px;min-height:44px;border-radius:24px;background:var(--df-surface);color:var(--df-text);border:1px solid var(--df-line);font-size:12px;font-weight:600}.shop-offers svg{width:17px;height:17px}.shop-offers[aria-pressed=true]{background:var(--df-accent-soft);border-color:var(--df-accent);color:var(--df-accent)}
.shop-sort{display:flex;gap:6px;align-items:center;min-width:0;margin-left:auto;color:var(--df-muted);font-size:12px}.shop-sort>span{font-size:11px}
body:has(#app) .df-shop .shop-sort select{background:transparent;border:0;min-height:44px;border-radius:0;font-size:12px;color:var(--df-text);padding:4px 0 4px 4px;max-width:146px}
.shop-results-heading{display:flex;align-items:baseline;gap:16px;justify-content:space-between;margin:0 0 20px}.shop-results-heading h1{font-size:25px;line-height:1.2;letter-spacing:-.7px;margin:0;overflow-wrap:anywhere}.shop-results-heading>span{flex:none;font-size:12px;color:var(--df-muted)}
.df-shop .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 18px}.df-shop .product-grid>.empty{grid-column:1/-1;border:1px dashed var(--df-line);border-radius:20px}
body:has(#app) .df-shop .product{background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible;display:flex;flex-direction:column;min-width:0}
.df-shop .product-art{position:relative;height:auto;aspect-ratio:1/1;background:#f6efe3;border:1px solid var(--df-line);border-radius:20px;margin:0;overflow:hidden;padding:8px}
.df-shop .product-art>img{object-fit:contain;width:100%;height:100%;max-height:none;max-width:none;filter:none;mix-blend-mode:normal}.df-shop .product-art>span:not(.product-quantity){display:grid;place-items:center;width:100%;height:100%;color:#806551}
.df-shop .product-art>.product-quantity{position:absolute;inset:auto 8px 8px auto;width:auto;height:auto;display:block;background:transparent;font-size:inherit;z-index:1}.df-shop .product .add{width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid var(--df-line);background:var(--df-surface);color:var(--df-text);box-shadow:0 2px 8px #30282118;font-size:25px;line-height:1;padding:0}
.df-shop .product .quantity{border:1px solid var(--df-line);background:var(--df-surface);color:var(--df-text);box-shadow:0 2px 8px #30282118;gap:0;display:flex}.df-shop .product .quantity button{width:40px;min-width:40px;min-height:44px;padding:0;font-size:22px}.df-shop .product .quantity span{min-width:20px;text-align:center;font-size:14px}
.df-shop .product-info{padding:12px 1px 0}.df-shop .product-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;margin-bottom:6px}.product-price strong{font-size:17px;letter-spacing:-.3px;color:var(--df-text)}.product-price del{font-size:12px;color:var(--df-muted)}
.df-shop .product-info h3{font-size:15px;line-height:1.4;font-weight:550;letter-spacing:0;overflow-wrap:anywhere;margin:0 0 4px;color:var(--df-text)}.df-shop .product-info .product-size{font-size:13px;line-height:1.3;margin:0 0 7px;color:var(--df-muted)}
.df-shop .product-description{margin:6px 0 0;font-size:12px;color:var(--df-muted)}.df-shop .product-description summary{min-height:30px;padding:6px 0}.df-shop .product-description p{font-size:12px;line-height:1.5;margin:5px 0 0}.df-shop .deal-label{display:inline-block;padding:4px 8px;border-radius:7px;font-size:11px;background:var(--df-accent-soft);color:var(--df-accent);margin:0}
.df-shop .unavailable-label{background:var(--df-surface);color:var(--df-muted);border:1px solid var(--df-line);padding:7px 10px;border-radius:20px;font-size:11px}.df-shop .product-unavailable .product-art>img{opacity:.6}.df-shop .catalog-note{font-size:12px;margin:30px 0 0;line-height:1.6}
@media(max-width:1100px){.df-shop .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.df-shop .shop-delivery{padding-bottom:16px}.df-shop .shop-store{padding:16px 0 18px}.df-shop .store-picker select{font-size:18px!important}.shop-categories{gap:7px}.shop-categories button{flex-basis:71px}.shop-results-heading h1{font-size:23px}.df-shop .product-grid{gap:24px 14px}.df-shop .product-info h3{font-size:14px}.df-shop .product-price strong{font-size:16px}.df-shop .product .quantity button{width:38px;min-width:38px}.df-shop .product-quantity{right:6px;bottom:6px}.shop-tools{margin-bottom:20px}.df-shop .product-art{border-radius:17px}}
@media(max-width:360px){.df-shop .product-grid{gap:22px 10px}.df-shop .product .quantity button{width:35px;min-width:35px}.df-shop .product .quantity span{min-width:17px}.shop-results-heading h1{font-size:21px}.shop-offers{padding:10px;font-size:11px}.shop-sort>span{display:none}}
.shop-categories{scrollbar-width:none}.shop-categories::-webkit-scrollbar{display:none}
html[data-theme] body:has(#app) .df-shop .deal-label{background:var(--df-accent-soft);color:var(--df-accent)!important}
html[data-theme] .df-shop .product-description summary{color:var(--df-muted);min-height:44px}
html[data-theme] .skip-link{background:var(--df-surface);color:var(--df-text)}
body:has(#app) .df-shop .shop-search input::placeholder{opacity:1}
.df-shop .shop-search>svg{color:var(--df-muted);opacity:1}
.df-shop .product-art>.product-quantity{transform:none;filter:none}
.df-shop .quantity button:focus-visible{outline:2px solid var(--df-accent)!important;outline-offset:-5px;border-radius:50%}
html[data-theme=dark] .brand small{color:var(--df-muted)}
html[data-theme=dark] .legal-footer{background:var(--df-bg);color:var(--df-muted);border-color:var(--df-line)}
body:has(.df-shop) #app>.df-app-header .location{display:none}
html[data-theme=dark] .entry .header-start span{color:var(--df-accent)}

/* A quiet three-step explanation, without a second illustrated card. */
html[data-theme] .entry .visual-journey{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:28px 0;border:0;border-top:1px solid var(--df-line);border-bottom:1px solid var(--df-line);border-radius:0;background:transparent;box-shadow:none}
html[data-theme] .entry .visual-journey>li{position:relative;display:block;padding:0;min-width:0;border:0;background:transparent;color:var(--df-text)}
html[data-theme] .entry .visual-journey .journey-icon{display:none}
.entry .visual-journey .journey-title{display:block;padding-top:48px}
html[data-theme] .entry .visual-journey .step-number{position:absolute;left:0;top:0;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--df-accent-soft);color:var(--df-accent);font-size:12px;line-height:1;font-weight:650;letter-spacing:0}
html[data-theme] .entry .visual-journey h3{margin:0;font-size:18px;line-height:1.35;letter-spacing:-.3px;font-weight:650;color:var(--df-text)}
html[data-theme] .entry .visual-journey p{margin:5px 0 0;font-size:14px;line-height:1.5;font-weight:400;color:var(--df-muted)}
.entry .visual-journey>li:not(:last-child):after{content:'';position:absolute;left:46px;right:0;top:16px;border-top:1px solid var(--df-line)}
@media(max-width:740px){
 html[data-theme] .entry .visual-journey{grid-template-columns:1fr;gap:26px;padding:24px 0}
 html[data-theme] .entry .visual-journey>li{padding:0 0 0 48px;min-height:46px}
 .entry .visual-journey .journey-title{padding-top:0}
 .entry .visual-journey>li:not(:last-child):after{left:16px;right:auto;top:40px;bottom:-18px;width:1px;border-top:0;background:var(--df-line)}
 html[data-theme] .entry .visual-journey h3{font-size:17px}
 html[data-theme] .entry .visual-journey p{font-size:14px;margin-top:4px}
}

/* Consistent secondary screens and calm checkout. */
.entry .entry-button{justify-content:center;text-align:center;min-height:52px}
body[data-focus=true] #app>.df-app-header{display:none}
body[data-checkout=true] .df-tabbar{display:none}
body[data-checkout=true] #main{padding-bottom:32px}
.step-top{align-items:center;margin-bottom:12px}.step-top .df-back{margin:0}
.df-basket-page .page-heading{margin:6px 0 24px}.df-basket-page .local-note{display:none}
.df-basket-page .basket-card{margin-top:0}
.order-row{grid-template-columns:auto minmax(0,1fr) auto auto}
.order-row>svg:last-child{display:none}
.order-row strong,.order-row small{overflow-wrap:anywhere}
@media(max-width:540px){.order-row{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:18px 14px}.order-row>.status{grid-column:2;grid-row:2;justify-self:start}.order-row>b{grid-column:3;grid-row:1 / 3;align-self:center}.order-row .order-symbol{grid-row:1 / 3}.order-row small{font-size:11px}.auth-form-area{padding-top:20px}.auth-tabs a{min-height:46px;display:flex;align-items:center;justify-content:center}}
#app>.error-banner{position:relative;z-index:40;margin:0;padding:12px 20px;background:var(--df-accent-soft);color:var(--df-text);border-bottom:1px solid var(--df-line);font-size:14px;line-height:1.5}

@media(max-width:700px){.auth-layout>.auth-story{display:none}.auth-layout{display:block}.auth-form-area{max-width:480px;margin:0 auto}body .auth-header>.all-roles{display:none!important}.auth-header{gap:14px}.auth-form-frame h2,.auth-form-area>h2{font-size:28px;line-height:1.2}.auth-form-area .auth-intro{font-size:14px;line-height:1.5}}
