/* einkauf3.css - Einkauf Design 3 (dunkel, Milchglas, Karussell). YOKAZA 15.10.2026 */
body.d3{margin:0;min-height:100dvh;background:#14110f;color:#f3ece2;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}
body.d3 main.d3-main{max-width:none;padding:0;margin:0;background:none;box-shadow:none}
.d3-hidden{display:none!important}
.d3-bg{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 15% 70%,rgba(214,160,90,.32),transparent 45%),radial-gradient(ellipse at 90% 80%,rgba(230,170,90,.22),transparent 40%),linear-gradient(160deg,#2a221c,#120f0d 60%,#0d0b0a)}
#d3-bgimg{position:absolute;inset:-60px;background-size:cover;background-position:center;filter:blur(38px) brightness(.42) saturate(1.1);transform:scale(1.1);transition:background-image .6s}
.d3-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,8,7,.35),rgba(10,8,7,.15) 40%,rgba(10,8,7,.7))}
.glass{background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(22px) saturate(1.3);backdrop-filter:blur(22px) saturate(1.3);box-shadow:0 18px 50px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.18)}
.d3-bar{position:relative;z-index:5;margin:max(12px,env(safe-area-inset-top)) 12px 0;border-radius:22px;padding:14px 16px;display:grid;grid-template-columns:1fr auto;gap:10px 10px;align-items:center}
.d3-title{grid-column:1/-1;margin:0;font-family:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;font-weight:400;font-size:24px;letter-spacing:.2px;color:#fbf6ee}
.d3-title span{opacity:.7}
.d3-search{display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:0 12px;height:44px;margin:0}
.d3-search svg{width:18px;height:18px;fill:none;stroke:#d9d0c4;stroke-width:2;flex:none}
.d3-search input{all:unset;flex:1;min-width:0;color:#fff;font-size:16px}
.d3-search input::placeholder{color:rgba(240,232,220,.6)}
.d3-new{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 14px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fbf6ee;text-decoration:none;font-size:14px;white-space:nowrap}
.d3-new span{font-size:20px;line-height:1}
.d3-conn{position:relative;z-index:2;text-align:center;font-size:12px;color:rgba(240,232,220,.55);margin:8px 0 0;min-height:1em}
.d3-login{position:relative;z-index:3;max-width:360px;margin:30px auto;border-radius:22px;padding:22px;color:#fff}
.d3-login h2{font-family:Georgia,serif;font-weight:400;margin:0 0 12px;color:#fff}
.d3-login label{display:block;margin:10px 0}.d3-login input{width:100%;box-sizing:border-box;font-size:16px;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.3);color:#fff}
.d3-login button{margin-top:10px;width:100%;height:44px;border-radius:12px;border:0;background:#e9d5b0;color:#1d1712;font-weight:600}
.d3-stage{position:relative;z-index:2;height:min(560px,calc(100dvh - 300px));min-height:430px;margin-top:6px}
.d3-track{position:relative;height:100%;touch-action:pan-y}
.d3-card{position:absolute;left:50%;top:0;width:min(78vw,330px);height:100%;box-sizing:border-box;border-radius:26px;padding:16px;display:flex;flex-direction:column;gap:10px;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s,filter .35s;transform-origin:50% 45%;cursor:pointer;color:#f6efe5}
.d3-card.center{cursor:default}
.d3-obj{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:17px;opacity:.9}
.d3-typ{margin:0;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-weight:400;font-size:26px;line-height:1.1;color:#fff}
.d3-ort{font-size:14px;opacity:.82}
.d3-photo{flex:1;min-height:120px;border-radius:16px;overflow:hidden;background:rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;margin:0 -4px}
.d3-photo img{width:100%;height:100%;object-fit:cover;display:block}
.d3-nophoto{font-size:13px;opacity:.55;padding:10px;text-align:center}
.d3-chips{display:flex;flex-wrap:wrap;gap:6px}
.d3-chip{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.d3-chip i{font-style:normal;opacity:.9}.d3-chip.ok i{color:#a9e3b4}.d3-chip.no i{color:#f2a49a}
.d3-expand{display:flex;justify-content:space-between;align-items:center;height:46px;border-radius:14px;padding:0 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:16px;cursor:pointer}
.d3-card:not(.center) .d3-chips,.d3-card:not(.center) .d3-expand{visibility:hidden}
.d3-arrow{position:absolute;top:45%;z-index:200;width:46px;height:46px;border-radius:50%;color:#fff;font-size:28px;line-height:1;cursor:pointer;display:none}
.d3-arrow.prev{left:18px}.d3-arrow.next{right:18px}.d3-arrow:disabled{opacity:.3;cursor:default}
.d3-dots{position:relative;z-index:2;display:flex;justify-content:center;gap:8px;margin:16px 0 0;flex-wrap:wrap;padding:0 20px}
.d3-dot{width:22px;height:4px;border-radius:4px;border:0;background:rgba(255,255,255,.28);padding:0;cursor:pointer}.d3-dot.on{width:40px;background:#f3ece2}
.d3-empty{position:relative;z-index:2;text-align:center;color:rgba(240,232,220,.7)}
.d3-pill{position:fixed;z-index:20;left:50%;transform:translateX(-50%);bottom:max(14px,env(safe-area-inset-bottom));width:min(calc(100vw - 24px),480px);box-sizing:border-box;border-radius:999px;padding:8px 10px 8px 8px;display:flex;align-items:center;gap:12px}
.d3-pill[hidden]{display:none}
.d3-avatar{flex:none;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:19px;color:#fff;background:rgba(0,0,0,.35);border:1.5px solid rgba(233,213,176,.7)}
.d3-who{display:flex;flex-direction:column;line-height:1.15}.d3-who small{font-size:12px;opacity:.7}.d3-who strong{font-family:Georgia,serif;font-weight:400;font-size:19px;color:#fff}
.d3-sep{width:1px;align-self:stretch;margin:6px 0;background:rgba(255,255,255,.2);margin-left:auto}
.d3-mine{display:flex;align-items:center;gap:8px;background:none;border:0;color:#fbf6ee;font-size:15px;cursor:pointer;padding:6px}
.d3-mine svg{width:24px;height:24px;fill:none;stroke:#eee2cf;stroke-width:1.5}
.d3-out{background:none;border:0;color:rgba(255,255,255,.6);font-size:18px;cursor:pointer;padding:6px}
.d3-sheet{position:fixed;inset:0;z-index:50;background:rgba(8,6,5,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;-webkit-overflow-scrolling:touch}
.d3-sheet[hidden]{display:none}
.d3-sheet-in{max-width:760px;margin:0 auto;padding:max(14px,env(safe-area-inset-top)) 10px 40px}
.d3-close{display:block;margin:0 0 10px auto;height:42px;padding:0 16px;border-radius:999px;color:#fff;font-size:15px;cursor:pointer}
.d3-sheet #items>*:not(.d3-show),.d3-sheet .list-tools{display:none!important}
.d3-sheet #items .purchase-card{background:#fbf8f3;color:#1d1712;border-radius:20px}
body.d3-lock{overflow:hidden}
@media (min-width:701px){
  .d3-bar{max-width:740px;margin:22px auto 0;grid-template-columns:1fr 240px auto;padding:14px 18px 14px 26px}
  .d3-title{grid-column:auto;font-size:28px}
  .d3-stage{height:min(600px,calc(100dvh - 270px));margin-top:18px}
  .d3-card{width:340px;padding:20px}
  .d3-arrow{display:block}
  .d3-typ{font-size:30px}
}
.d3-search{min-width:0;width:auto}
.d3-expand,.d3-mine,.d3-close,.d3-new{font-family:inherit;font-weight:400}
body.d3 .d3-stage:not([hidden]) ~ .d3-conn,.d3-conn.d3-ok{display:none}
@media (max-width:700px){.d3-new{padding:0 11px;font-size:13px;gap:4px}.d3-bar{padding:12px}.d3-title{font-size:22px}.d3-mine{font-size:14px}}
/* ---- Detailansicht im Design 3 (Yaka 16.10.) ---- */
.d3-sheet{background:rgba(10,8,7,.55)}
.d3-sheet-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:10px;padding:8px 0 10px;background:linear-gradient(180deg,rgba(14,11,9,.92),rgba(14,11,9,0))}
.d3-sheet-titel{margin:0;flex:1;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-weight:400;font-size:24px;color:#fff}
.d3-sheet-head .d3-close{margin:0}
.d3-sheet #items .purchase-card{background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.04))!important;color:#f3ece2!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:24px!important;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:0 18px 50px rgba(0,0,0,.45)!important;padding:14px!important}
.d3-sheet #items *{color:inherit;border-color:rgba(255,255,255,.16)}
.d3-sheet #items .purchase-card>summary{list-style:none;padding:4px 2px 10px;border-bottom:1px solid rgba(255,255,255,.14);margin-bottom:10px}
.d3-sheet #items .purchase-card>summary::-webkit-details-marker{display:none}
.d3-sheet #items .sum-object{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-weight:400;font-size:20px;color:#fff}
.d3-sheet #items .sum-title{opacity:.75}
.d3-sheet #items details.workflow-step,.d3-sheet #items details.sub,.d3-sheet #items details.requirements-source,.d3-sheet #items section,.d3-sheet #items .task-group{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:18px!important;padding:10px 12px!important;margin:10px 0!important;box-shadow:none!important}
.d3-sheet #items details>summary{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:18px;color:#fff;cursor:pointer;padding:6px 2px}
.d3-sheet #items details.tasks-step{border-color:rgba(233,213,176,.55)!important;background:rgba(233,213,176,.08)!important}
.d3-sheet #items details.tasks-step>summary{color:#f1dfbd}
.d3-sheet #items .purchase-task,.d3-sheet #items .file-line{background:rgba(0,0,0,.18)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:14px!important;color:#f3ece2!important}
.d3-sheet #items input,.d3-sheet #items textarea,.d3-sheet #items select{background:rgba(0,0,0,.32)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:12px!important;font-size:16px}
.d3-sheet #items button{background:rgba(255,255,255,.1)!important;color:#fbf6ee!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:12px!important;font-family:inherit}
.d3-sheet #items .classification-option{background:rgba(255,255,255,.07)!important;border-radius:999px!important}
.d3-sheet #items .badge{background:rgba(255,255,255,.12)!important;color:#fff!important;border-radius:999px}
.d3-sheet #items .badge.ok{background:rgba(120,200,140,.25)!important}.d3-sheet #items .badge.bad{background:rgba(230,110,100,.3)!important}.d3-sheet #items .badge.warn{background:rgba(230,180,90,.3)!important}
.d3-sheet #items h3,.d3-sheet #items h4{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-weight:400;color:#fff}
.d3-sheet #items .task-next,.d3-sheet #items small,.d3-sheet #items .hint{color:rgba(240,232,220,.7)!important}
.d3-sheet #items a{color:#e9d5b0!important}
.d3-chip.d3-link{text-decoration:none;color:#fff;border-color:rgba(233,213,176,.6);background:rgba(233,213,176,.16)}
/* Fixes 16.10. nach Live-Test */
.d3-sheet{overflow-x:hidden}
.d3-sheet #items,.d3-sheet #items *{max-width:100%;box-sizing:border-box;min-width:0!important}
.d3-sheet #items .purchase-card>summary,.d3-sheet #items summary{background:transparent!important;color:#fff!important}
.d3-sheet #items .purchase-card>summary *{color:#fff!important}
.d3-sheet #items table{display:block;overflow-x:auto}
.d3-sheet #items summary::after,.d3-sheet #items summary .pf{filter:invert(.85)}
.d3-count{position:relative;z-index:2;text-align:center;margin:12px 0 0;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:16px;color:rgba(243,236,226,.85)}
html,body.d3{overflow-x:hidden;max-width:100vw}
.d3-stage{overflow:hidden;overflow:clip}
.d3-lade{position:relative;z-index:6;margin:10px auto 0;width:min(calc(100vw - 48px),300px);border-radius:999px;padding:9px 16px;display:flex;align-items:center;gap:12px;transition:opacity .5s}
.d3-lade.weg{opacity:0}
.d3-lade-t{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:15px;color:#fbf6ee;white-space:nowrap;min-width:92px}
.d3-lade-bar{flex:1;height:4px;border-radius:4px;background:rgba(255,255,255,.18);overflow:hidden}
.d3-lade-bar i{display:block;height:100%;width:0;background:#e9d5b0;transition:width .35s}
/* Lesbarkeit 16.10.: alle Boxen dunkel, Text hell */
.d3-sheet #items .seller-compact,.d3-sheet #items .requirements-text,.d3-sheet #items .assignment-notice,.d3-sheet #items .contract-progress,.d3-sheet #items .contract-template,.d3-sheet #items .contract-contact-notice,.d3-sheet #items .notice,.d3-sheet #items .note,.d3-sheet #items [class*="notice"],.d3-sheet #items [class*="status"]:not(.badge),.d3-sheet #items p,.d3-sheet #items div{background-color:transparent}
.d3-sheet #items .seller-compact,.d3-sheet #items .requirements-text,.d3-sheet #items .assignment-notice,.d3-sheet #items .contract-progress,.d3-sheet #items .contract-template,.d3-sheet #items .contract-contact-notice{background:rgba(0,0,0,.28)!important;color:#f6efe5!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:14px!important;padding:10px 12px!important}
.d3-sheet #items .assignment-notice{border-color:rgba(233,180,90,.6)!important}
.d3-sheet #items label,.d3-sheet #items span,.d3-sheet #items p,.d3-sheet #items li,.d3-sheet #items small,.d3-sheet #items strong{color:#f3ece2}
.d3-sheet #items .task-next,.d3-sheet #items small,.d3-sheet #items .task-meta{color:rgba(243,236,226,.78)!important}
/* MUSS / SOLL */
.d3-ms-h{display:flex;align-items:center;gap:8px;margin:12px 2px 6px;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:17px;color:#fff}
.d3-ms-b{font-family:-apple-system,"Segoe UI",Roboto,sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;padding:3px 9px;border-radius:999px}
.d3-ms-b.muss{background:rgba(230,110,100,.28);border:1px solid rgba(240,140,130,.7);color:#ffd9d3}
.d3-ms-b.soll{background:rgba(140,170,230,.2);border:1px solid rgba(160,190,240,.55);color:#dbe6ff}
.d3-sheet #items .purchase-task.d3-muss{border-left:3px solid rgba(240,140,130,.85)!important}
.d3-sheet #items .purchase-task.d3-soll{border-left:3px solid rgba(160,190,240,.6)!important}
.d3-sheet #items .purchase-task.d3-probe{display:none!important}
