.dset-page{
    display:grid;
    gap:18px;
    direction:rtl;
}

.dset-shell{
    display:grid;
    gap:18px;
    align-items:start;
}

.dset-shell-horizontal{
    grid-template-columns:1fr;
}

.dset-tabs{
    border:1px solid var(--line);
    border-radius:22px;
    background:var(--surface);
    box-shadow:var(--shadow);
    padding:8px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    justify-content:flex-start;
    overflow-x:auto;
}

.dset-tab{
    min-height:52px;
    border:1px solid transparent;
    border-radius:17px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:var(--text);
    text-decoration:none;
    padding:10px 16px;
    transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
    white-space:nowrap;
}

.dset-tab:hover{
    background:rgba(0,0,0,.04);
    transform:translateY(-1px);
}

.dset-tab.is-active{
    background:var(--dset-menu-accent,var(--primary));
    border-color:var(--dset-menu-accent,var(--primary));
    color:#fff;
    box-shadow:0 12px 28px rgba(0,0,0,.14);
}

.dset-tab span{
    width:24px;
    height:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 24px;
}

.dset-tab svg{
    width:21px;
    height:21px;
    display:block;
}

.dset-tab strong{
    font-size:14px;
    font-weight:900;
    line-height:1.8;
}

.dset-panel{
    border:1px solid var(--line);
    border-radius:26px;
    background:var(--surface);
    box-shadow:var(--shadow);
    padding:18px;
    display:grid;
    gap:16px;
}

.dset-form{
    display:grid;
    gap:18px;
}

.dset-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.dset-field-full{
    grid-column:1/-1;
}

.dset-field{
    display:grid;
    gap:8px;
}

.dset-field-label{
    font-size:13px;
    font-weight:900;
    color:var(--text);
    line-height:1.8;
}

.dset-field input,
.dset-field select,
.dset-field textarea{
    width:100%;
    min-height:46px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--surface);
    color:var(--text);
    padding:10px 13px;
    outline:none;
    transition:border-color .2s ease,box-shadow .2s ease;
}

.dset-field input:focus,
.dset-field select:focus,
.dset-field textarea:focus{
    border-color:var(--dset-menu-accent,var(--primary));
    box-shadow:0 0 0 4px color-mix(in srgb,var(--dset-menu-accent,var(--primary)) 12%,transparent);
}

.dset-field input:disabled{
    opacity:.72;
    cursor:not-allowed;
    background:rgba(0,0,0,.035);
}

.dset-field input[type="color"]{
    width:64px;
    min-width:64px;
    max-width:64px;
    height:40px;
    min-height:40px;
    padding:4px;
    border-radius:12px;
    cursor:pointer;
}

.dset-field input[type="color"]::-webkit-color-swatch-wrapper{
    padding:0;
}

.dset-field input[type="color"]::-webkit-color-swatch{
    border:0;
    border-radius:8px;
}

.dset-field input[type="color"]::-moz-color-swatch{
    border:0;
    border-radius:8px;
}

.dset-field small{
    display:block;
    font-size:12px;
    line-height:1.9;
    color:var(--muted);
}

.dset-color-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    max-width:430px;
}

.dset-color-option{
    position:relative;
    min-height:62px;
    border:1px solid var(--line);
    border-radius:16px;
    display:grid;
    place-items:center;
    gap:6px;
    padding:10px;
    cursor:pointer;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.dset-color-option:hover,
.dset-color-option.is-selected{
    border-color:var(--swatch);
    box-shadow:0 10px 24px rgba(0,0,0,.10);
    transform:translateY(-1px);
}

.dset-color-option input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.dset-color-swatch{
    width:38px;
    height:38px;
    border-radius:14px;
    background:var(--swatch);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
}


.dset-upload-field{
    border:1px solid var(--line);
    border-radius:20px;
    padding:14px;
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:14px;
    align-items:center;
    background:linear-gradient(135deg,rgba(0,0,0,.025),rgba(0,0,0,.01));
}

.dset-upload-preview{
    width:150px;
    height:112px;
    border:1px dashed var(--line);
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:var(--surface);
    color:var(--muted);
}

.dset-upload-preview.has-image{
    border-style:solid;
}

.dset-upload-preview img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}

.dset-upload-preview svg{
    width:34px;
    height:34px;
}

.dset-upload-body{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.dset-upload-body p{
    width:100%;
    margin:0;
    color:var(--muted);
    font-size:12px;
    line-height:1.9;
}

.dset-upload-button,
.dset-upload-remove{
    min-height:42px;
    border-radius:14px;
    border:1px solid var(--line);
    background:var(--surface);
    color:var(--text);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:8px 12px;
    cursor:pointer;
    font:inherit;
    text-decoration:none;
}

.dset-upload-button{
    background:var(--dset-menu-accent,var(--primary));
    border-color:var(--dset-menu-accent,var(--primary));
    color:#fff;
}

.dset-upload-remove{
    color:#b42318;
}

.dset-upload-remove.is-hidden{
    display:none;
}

.dset-upload-button svg,
.dset-upload-remove svg{
    width:18px;
    height:18px;
}

.dset-upload-field input[type=file]{
    display:none;
}

.dset-date-wrap{
    display:grid;
    grid-template-columns:minmax(0,1fr) 46px;
    gap:8px;
}

.dset-date-button{
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--surface);
    color:var(--text);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
}

.dset-date-button svg{
    width:20px;
    height:20px;
}

.dset-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
    justify-content:flex-start;
    padding-top:4px;
}

.dset-advanced-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.dset-advanced-card,
.dset-status-card{
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:var(--surface);
    display:grid;
    gap:12px;
    align-content:start;
}

.dset-danger-card{
    border-color:rgba(180,35,24,.26);
}

.dset-advanced-icon{
    width:46px;
    height:46px;
    border-radius:16px;
    background:rgba(0,0,0,.045);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:var(--dset-menu-accent,var(--primary));
}

.dset-advanced-icon svg{
    width:23px;
    height:23px;
}

.dset-advanced-card h3,
.dset-status-card h3{
    margin:0;
    font-size:16px;
    line-height:1.9;
    font-weight:950;
    color:var(--text);
}

.dset-advanced-card p,
.dset-status-card p{
    margin:0;
    color:var(--muted);
    font-size:13px;
    line-height:2;
}

.dset-import-box{
    min-height:92px;
    border:1px dashed var(--line);
    border-radius:18px;
    display:grid;
    place-items:center;
    gap:6px;
    cursor:pointer;
    text-align:center;
    padding:12px;
}

.dset-import-box input{
    display:none;
}

.dset-import-box svg{
    width:26px;
    height:26px;
    color:var(--dset-menu-accent,var(--primary));
}

.dset-status-card{
    margin-top:16px;
}

.dset-status-card dl,
.dset-profile-summary-grid{
    margin:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}

.dset-status-card dl>div,
.dset-profile-summary-grid>div{
    border:1px solid var(--line);
    border-radius:16px;
    padding:12px;
    display:grid;
    gap:4px;
    background:rgba(0,0,0,.018);
}

.dset-status-card dt,
.dset-profile-summary-grid dt{
    font-size:12px;
    color:var(--muted);
    line-height:1.8;
}

.dset-status-card dd,
.dset-profile-summary-grid dd{
    margin:0;
    font-size:13px;
    color:var(--text);
    font-weight:800;
    line-height:1.9;
    overflow-wrap:anywhere;
}

.dset-jalali-popover{
    position:absolute;
    z-index:99999;
    width:292px;
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--surface);
    box-shadow:0 18px 55px rgba(0,0,0,.20);
    padding:12px;
    direction:rtl;
}

.dset-jalali-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-bottom:10px;
}

.dset-jalali-title{
    font-weight:950;
    color:var(--text);
    font-size:14px;
}

.dset-jalali-nav,
.dset-jalali-day,
.dset-jalali-tools button{
    border:1px solid var(--line);
    background:var(--surface);
    color:var(--text);
    border-radius:12px;
    cursor:pointer;
    font:inherit;
}

.dset-jalali-nav{
    width:34px;
    height:34px;
    font-size:22px;
    line-height:1;
}

.dset-jalali-week,
.dset-jalali-days{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:6px;
    text-align:center;
}

.dset-jalali-week{
    margin-bottom:6px;
    color:var(--muted);
    font-size:12px;
    font-weight:800;
}

.dset-jalali-day{
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
}

.dset-jalali-day:hover,
.dset-jalali-day.is-selected{
    background:var(--dset-menu-accent,var(--primary));
    border-color:var(--dset-menu-accent,var(--primary));
    color:#fff;
}

.dset-jalali-day.is-today:not(.is-selected){
    border-color:var(--dset-menu-accent,var(--primary));
    color:var(--dset-menu-accent,var(--primary));
}

.dset-jalali-day.is-empty{
    opacity:.2;
    pointer-events:none;
}

.dset-jalali-tools{
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin-top:10px;
}

.dset-jalali-tools button{
    flex:1;
    min-height:34px;
    font-size:12px;
}

.dset-profile-summary-card{
    margin:16px 0;
    border:1px solid var(--line);
    border-radius:24px;
    background:var(--surface);
    box-shadow:var(--shadow);
    padding:18px;
    display:grid;
    gap:16px;
    direction:rtl;
}

.dset-profile-summary-head{
    display:flex;
    gap:12px;
    align-items:center;
}

.dset-profile-summary-head>span{
    width:48px;
    height:48px;
    border-radius:17px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--dset-menu-accent,var(--primary));
    color:#fff;
    flex:0 0 48px;
}

.dset-profile-summary-head svg{
    width:23px;
    height:23px;
}

.dset-profile-summary-head h2{
    margin:0;
    font-size:17px;
    font-weight:950;
    line-height:1.9;
    color:var(--text);
}

.dset-profile-summary-head p{
    margin:0;
    font-size:13px;
    line-height:1.9;
    color:var(--muted);
}

@media (max-width:1100px){
    .dset-advanced-grid{grid-template-columns:1fr;}
    .dset-status-card dl,.dset-profile-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:760px){
    .dset-panel{padding:12px;border-radius:20px;}
    .dset-grid{grid-template-columns:1fr;}
    .dset-upload-field{grid-template-columns:1fr;}
    .dset-upload-preview{width:100%;height:170px;}
    .dset-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;}
    .dset-status-card dl,.dset-profile-summary-grid{grid-template-columns:1fr;}
    .dset-tabs{flex-wrap:nowrap;justify-content:flex-start;}
    .dset-tab{min-width:max-content;}
}


@media (max-width:600px){
    .dset-page{gap:12px;}
    .dset-shell{gap:12px;}
    .dset-tabs{
        border-radius:18px;
        padding:6px;
        gap:6px;
        flex-wrap:nowrap;
        overflow-x:auto;
        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;
    }
    .dset-tabs::-webkit-scrollbar{height:0;}
    .dset-tab{
        min-height:46px;
        min-width:max-content;
        border-radius:14px;
        padding:8px 12px;
        gap:8px;
        scroll-snap-align:start;
    }
    .dset-tab span{width:20px;height:20px;flex-basis:20px;}
    .dset-tab svg{width:18px;height:18px;}
    .dset-tab strong{font-size:12px;}
    .dset-panel{
        padding:12px;
        border-radius:18px;
        box-shadow:none;
    }
    .dset-form{gap:14px;}
    .dset-field input,
    .dset-field select,
    .dset-field textarea{min-height:44px;border-radius:12px;font-size:13px;}
    .dset-field input[type="color"]{width:56px;min-width:56px;max-width:56px;height:38px;min-height:38px;}
    .dset-upload-field{padding:12px;border-radius:16px;gap:12px;}
    .dset-upload-preview{height:150px;border-radius:14px;}
    .dset-upload-body{display:grid;grid-template-columns:1fr;align-items:stretch;}
    .dset-upload-button,
    .dset-upload-remove{width:100%;min-height:42px;}
    .dset-actions{display:grid;grid-template-columns:1fr;}
    .dset-actions .ds-button{width:100%;justify-content:center;}
    .dset-advanced-card,
    .dset-status-card,
    .dset-profile-summary-card{border-radius:18px;padding:14px;box-shadow:none;}
    .dset-profile-summary-head{align-items:flex-start;}
}

@media (max-width:420px){
    .dset-color-grid{grid-template-columns:1fr;}
    .dset-date-wrap{grid-template-columns:minmax(0,1fr) 42px;}
    .dset-jalali-popover{width:min(292px,calc(100vw - 28px));}
    .dset-status-card dl,.dset-profile-summary-grid{gap:8px;}
}

.du-profile-avatar .dset-profile-avatar-img{
    width:100%;
    height:100%;
    border-radius:inherit;
    object-fit:cover;
    display:block;
}

.dset-user-avatar-img{
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:100%!important;
    border-radius:inherit;
    object-fit:contain!important;
    display:block;
    aspect-ratio:auto!important;
}

.dset-profile-edit-extra{
    margin-top:18px;
    border:1px solid var(--line);
    border-radius:22px;
    padding:18px;
    background:rgba(0,0,0,.018);
    display:grid;
    gap:16px;
    grid-column:1/-1;
}

.dset-profile-edit-extra-head{
    display:flex;
    align-items:center;
    gap:12px;
    padding-bottom:2px;
}

.dset-profile-edit-extra-head>span{
    width:46px;
    height:46px;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:var(--dset-menu-accent,var(--primary));
    color:#fff;
    flex:0 0 46px;
}

.dset-profile-edit-extra-head svg{
    width:22px;
    height:22px;
}

.dset-profile-edit-extra-head h3{
    margin:0;
    font-size:16px;
    line-height:1.9;
    font-weight:950;
    color:var(--text);
}

.dset-profile-edit-extra-head p{
    margin:0;
    color:var(--muted);
    font-size:13px;
    line-height:1.9;
}

.du-user-form .dset-profile-edit-extra .dset-grid{
    margin-top:0;
}

html[data-color-scheme="dark"] .dset-profile-edit-extra{
    background:rgba(255,255,255,.025);
}
