.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}
.loading-progress circle {
    fill: none;
    stroke: #334155;
    stroke-width: 0.6rem;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}
.loading-progress circle:last-child {
    stroke: #f59e0b;
    stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
    transition: stroke-dasharray 0.05s ease-in-out;
}
.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}
.loading-progress-text:after {
    content: var(--blazor-load-percentage-text, "Yükleniyor");
}

#blazor-error-ui {
    display: none;
    background: #7f1d1d;
    color: #fecaca;
    bottom: 0;
    padding: 0.6rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}
#blazor-error-ui .dismiss { cursor: pointer; position: absolute; right: 0.75rem; top: 0.5rem; }

.admin-layout ::-webkit-scrollbar { width: 8px; height: 8px; }
.admin-layout ::-webkit-scrollbar-track { background: transparent; }
.admin-layout ::-webkit-scrollbar-thumb { background: rgba(71, 85, 105, 0.4); border-radius: 4px; }
.admin-layout ::-webkit-scrollbar-thumb:hover { background: rgba(71, 85, 105, 0.6); }
.admin-layout { scrollbar-width: thin; scrollbar-color: rgba(71, 85, 105, 0.5) transparent; }

@keyframes toast-in {
    from { opacity: 0; transform: translateX(100%); }
    to { opacity: 1; transform: translateX(0); }
}
.animate-toast-in { animation: toast-in 0.3s ease-out; }

/* Quill editor dark theme */
.rich-text-editor-wrapper .ql-container { border-color: #475569; }
.rich-text-editor-wrapper .ql-toolbar { border-color: #475569; background: #1e293b; }
.rich-text-editor-wrapper .ql-editor { min-height: 200px; color: #f1f5f9; }
.rich-text-editor-wrapper .ql-editor.ql-blank::before { color: #64748b; }
.rich-text-editor-wrapper .ql-stroke { stroke: #64748b; }
.rich-text-editor-wrapper .ql-fill { fill: #64748b; }
.rich-text-editor-wrapper .ql-picker { color: #cbd5e1; }
.rich-text-editor-wrapper .ql-picker-options { background: #1e293b; border-color: #475569; }
