/* Odontic Link demo upload selector — imaging categories plus PDF attachment */
.ol-demo-upload{padding:72px 0;background:#fff;border-top:1px solid #e8eef5;border-bottom:1px solid #e8eef5}
.ol-demo-upload .ol-wrap{max-width:1180px}
.ol-demo-upload-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:26px}
.ol-demo-upload-head small{display:block;font:800 10px/1.2 "SFMono-Regular",Consolas,monospace;color:#0066ff;letter-spacing:.07em;margin-bottom:10px}
.ol-demo-upload-head h2{margin:0;font-size:42px;line-height:1.04;letter-spacing:-.045em;color:#0b1220}
.ol-demo-upload-head p{max-width:670px;margin:12px 0 0;color:#667085;font-size:15px;line-height:1.65}
.ol-demo-quota{min-width:220px;padding:14px 16px;border:1px solid #dce5ef;border-radius:14px;background:#f8fafc}
.ol-demo-quota-top{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#526174}.ol-demo-quota-top b{color:#0b1220}
.ol-demo-quota-bar{height:6px;margin-top:10px;border-radius:999px;background:#e7edf4;overflow:hidden}.ol-demo-quota-bar>i{display:block;width:0%;height:100%;background:#0066ff;border-radius:inherit;transition:width .25s ease}
.ol-upload-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ol-upload-type{position:relative;display:flex;flex-direction:column;min-height:250px;padding:22px;border:1px solid #dce5ef;border-radius:16px;background:#f8fafc;transition:.18s ease;cursor:pointer;overflow:hidden}
.ol-upload-type:hover{transform:translateY(-2px);border-color:#9fc2ff;box-shadow:0 14px 34px rgba(21,44,76,.08)}
.ol-upload-type.is-drag{border-color:#0066ff;background:#f2f7ff;box-shadow:0 0 0 3px rgba(0,102,255,.08)}
.ol-upload-type[data-upload-kind="cbct"]{background:linear-gradient(180deg,#0b111c 0,#0a0f18 100%);border-color:#1e3047;color:#fff}
.ol-upload-type[data-upload-kind="cbct"]:hover{border-color:#00d2ff;box-shadow:0 18px 42px rgba(0,210,255,.10)}
.ol-upload-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf2ff;color:#0066ff;font-weight:900;font-size:20px;margin-bottom:24px}
.ol-upload-type[data-upload-kind="cbct"] .ol-upload-icon{background:#10263b;color:#5adfff}
.ol-upload-type[data-upload-kind="attachment"] .ol-upload-icon{background:#fff1f2;color:#d92d20;font-size:12px}
.ol-upload-type small{font:800 9px/1.2 "SFMono-Regular",Consolas,monospace;color:#0066ff;letter-spacing:.06em}.ol-upload-type[data-upload-kind="cbct"] small{color:#58dfff}
.ol-upload-type h3{font-size:23px;line-height:1.12;letter-spacing:-.03em;margin:9px 0 9px}.ol-upload-type p{font-size:12.5px;line-height:1.6;color:#68778a;margin:0 0 18px}.ol-upload-type[data-upload-kind="cbct"] p{color:#91a0b2}
.ol-upload-format{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}.ol-upload-format span{padding:6px 8px;border:1px solid #d9e4ef;border-radius:7px;background:#fff;font:750 9px/1 "SFMono-Regular",Consolas,monospace;color:#435166}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-format span{background:#101927;border-color:#22344b;color:#b7c7d9}
.ol-upload-choose{margin-top:16px;width:100%;border:0;border-radius:10px;padding:11px 13px;background:#0066ff;color:#fff;font-weight:800;font-size:12px;cursor:pointer}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-choose{background:#00bfea;color:#03131b}
.ol-upload-type input[type=file]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.ol-upload-selection{display:none;margin-top:18px;padding:12px 14px;border:1px solid #dce5ef;border-radius:10px;background:#fff;font-size:12px;color:#475569}.ol-upload-selection.is-visible{display:block}.ol-upload-selection b{display:block;color:#0b1220;margin-bottom:4px}.ol-upload-selection>span{display:block;color:#68778a;margin-bottom:10px}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-selection{background:#0d1623;border-color:#22344b;color:#b7c7d9}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-selection b{color:#f4f8fb}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-selection>span{color:#8fa0b4}
.ol-upload-start{width:100%;padding:9px 10px;border:0;border-radius:8px;background:#0b1220;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.ol-upload-start:disabled{opacity:.55;cursor:wait}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-start{background:#00bfea;color:#03131b}
.ol-upload-progress{height:7px;margin:10px 0 7px;border-radius:999px;background:#e8edf4;overflow:hidden}.ol-upload-progress[hidden]{display:none}.ol-upload-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0066ff,#00d2ff);transition:width .12s linear}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-progress{background:#1a2738}
.ol-upload-status{display:block;font:700 9px/1.45 "SFMono-Regular",Consolas,monospace!important;letter-spacing:0!important;color:#64748b!important}.ol-upload-status a{color:#0066ff;text-decoration:none}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-status{color:#8fa0b4!important}.ol-upload-type[data-upload-kind="cbct"] .ol-upload-status a{color:#50dcff}
.ol-upload-note{margin-top:16px;color:#8290a2;font-size:11px}.ol-upload-note b{color:#556579}
@media(max-width:1080px){.ol-upload-types{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.ol-demo-upload{padding:52px 0}.ol-demo-upload-head{display:block}.ol-demo-quota{margin-top:20px}.ol-upload-types{grid-template-columns:1fr}.ol-upload-type{min-height:220px}.ol-demo-upload-head h2{font-size:34px}}
