
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Larke;
}

body{
    background:#f8f8f8;
    color:#333;
}

a[x-apple-data-detectors]{
    color:inherit !important;
    text-decoration:none !important;
}

[hidden]{
    display:none !important;
}

.admin-login{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:32px;
    background:#F7F4F2;
}

.admin-login-card{
    position:relative;
    width:min(100%, 460px);
    margin:auto;
    padding:36px;
    border:1px solid #e8e4e1;
    border-radius:22px;
    background:#fff;
    box-shadow:
        0 10px 24px rgba(51,51,51,.07),
        0 24px 55px rgba(51,51,51,.08);
}

.admin-login-card::before{
    content:none;
}

.admin-login-intro{
    display:none;
    flex-direction:column;
    justify-content:space-between;
    min-height:100vh;
    padding:54px clamp(38px, 7vw, 100px);
    background:#f4dfd4;
    color:#333;
}

.admin-login-logo{
    width:max-content;
    color:#333;
    font-size:27px;
    font-weight:700;
    letter-spacing:.12em;
    text-decoration:none;
}

.admin-login-intro > div{
    max-width:560px;
    margin:auto 0;
}

.admin-login-kicker{
    margin-bottom:18px;
    color:#a96040;
    font-size:13px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.admin-login-intro h1{
    max-width:520px;
    margin-bottom:22px;
    font-size:clamp(38px, 5vw, 68px);
    line-height:1.05;
}

.admin-login-intro p:last-child{
    max-width:510px;
    color:#705b51;
    font-size:18px;
    line-height:1.6;
}

.admin-login-brand{
    margin-bottom:7px;
    color:#E5A484;
    font-size:32px;
    font-weight:700;
    letter-spacing:.16em;
    text-align:center;
}

.admin-login-portal{
    margin-bottom:22px;
    color:#999;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
    text-align:center;
    text-transform:uppercase;
}

.admin-login-card h1{
    margin-bottom:24px;
    font-size:24px;
    text-align:center;
}

.admin-login-subtitle{
    margin-bottom:28px;
    color:#777;
    line-height:1.5;
}

.admin-login-card label{
    display:block;
    margin:15px 0 8px;
    font-size:14px;
    font-weight:600;
}

.admin-login-card h1 + label{
    margin-top:32px;
}

.admin-login-card input{
    width:100%;
    min-height:50px;
    padding:13px 15px;
    border:1px solid #dedad7;
    border-radius:12px;
    background:#fff;
    box-shadow:none;
    outline:none;
    font-size:16px;
}

.admin-login-card input:focus{
    border-color:#E5A484;
    box-shadow:0 0 0 3px rgba(229,164,132,.18);
}

.admin-login-card input:-webkit-autofill,
.admin-login-card input:-webkit-autofill:hover{
    -webkit-text-fill-color:#333;
    caret-color:#333;
    box-shadow:0 0 0 1000px #fff inset;
    transition:background-color 9999s ease-out 0s;
}

.admin-login-card input:-webkit-autofill:focus{
    -webkit-text-fill-color:#333;
    caret-color:#333;
    box-shadow:0 0 0 1000px #fff inset, 0 0 0 3px rgba(229,164,132,.18);
}

.admin-login-card button{
    width:100%;
    margin-top:12px;
    min-height:50px;
    padding:14px 18px;
    border:0;
    border-radius:12px;
    background:#E5A484;
    color:#fff;
    cursor:pointer;
    font-size:16px;
    font-weight:600;
    box-shadow:0 8px 18px rgba(229,164,132,.24);
    transition:transform .18s ease, background .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.admin-login-card button:hover{
    background:#d89575;
}

.admin-login-card button:active{
    transform:translateY(1px);
    box-shadow:0 4px 10px rgba(229,164,132,.2);
}

.admin-login-card button:disabled{
    cursor:wait;
    opacity:.65;
}

.admin-login-error{
    min-height:20px;
    margin-top:14px;
    color:#d9534f;
    font-size:14px;
}

.admin-login-secure{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin-top:18px;
    color:#888;
    font-size:12px;
    line-height:1;
}

.admin-login-secure img{
    display:block;
    flex:0 0 auto;
    width:13px;
    height:13px;
    object-fit:contain;
    transform:translateY(-1px);
}

@media (max-width:800px){
    .admin-login{
        width:100%;
        padding:20px;
        overflow-x:hidden;
    }
    .admin-login-intro{display:none}
    .admin-login-card{
        width:100%;
        min-width:0;
        max-width:460px;
        padding:30px 22px;
        border-radius:20px;
    }

    .admin-login-card input,
    .admin-login-card button{
        min-width:0;
        max-width:100%;
    }
}

.admin-nav{
    position:fixed;
    top:0;
    right:0;
    left:0;
    z-index:200;
    display:flex;
    align-items:center;
    min-height:72px;
    padding:0 8%;
    border-bottom:1px solid #eee;
    background:#fff;
    box-shadow:0 4px 16px rgba(0,0,0,.05);
}

.admin-dashboard{
    padding-top:72px;
}

.admin-nav-brand{
    color:#333;
    font-size:25px;
    font-weight:900;
    letter-spacing:.08em;
    text-decoration:none;
}

.admin-nav-section{
    margin-left:32px;
    padding-left:32px;
    border-left:1px solid #ddd;
    color:#777;
    font-size:15px;
}

.admin-account{
    position:relative;
    margin-left:auto;
}

.admin-account-button{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    padding:0;
    border:1px solid #e5e5e5;
    border-radius:50%;
    background:#fff;
    color:#333;
    cursor:pointer;
    transition:background .2s ease, color .2s ease, border-color .2s ease;
}

.admin-account-button:hover,
.admin-account-button[aria-expanded="true"]{
    border-color:#E5A484;
    background:rgba(229,164,132,.12);
    color:#E5A484;
}

.admin-account-photo,
.admin-account-initials{
    width:100%;
    height:100%;
    border-radius:50%;
}

.admin-account-photo{
    display:none;
    object-fit:cover;
}

.admin-account-initials{
    display:flex;
    align-items:center;
    justify-content:center;
    background:#E5A484;
    color:#fff;
    font-size:11px;
    font-weight:800;
    letter-spacing:.03em;
    text-transform:uppercase;
}

.admin-account-button.has-photo .admin-account-photo{
    display:block;
}

.admin-account-button.has-photo .admin-account-initials{
    display:none;
}

.admin-account-menu{
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    width:250px;
    padding:18px;
    border:1px solid #eee;
    border-radius:14px;
    background:#fff;
    box-shadow:0 18px 45px rgba(0,0,0,.14);
}

.admin-account-label{
    margin-bottom:5px;
    font-weight:700;
}

.admin-account-email{
    overflow:hidden;
    margin-bottom:16px;
    color:#777;
    font-size:13px;
    text-overflow:ellipsis;
}

.admin-account-menu button{
    width:100%;
    padding:10px 14px;
    border:0;
    border-radius:8px;
    background:#333;
    color:#fff;
    cursor:pointer;
}

.admin-account-menu .admin-view-profile{
    display:block;
    width:100%;
    margin-bottom:8px;
    padding:10px 14px;
    border:1px solid #e5e5e5;
    border-radius:8px;
    background:#fff;
    color:#333;
    text-align:center;
    text-decoration:none;
}

.admin-account-menu .admin-view-profile:hover{
    border-color:#E5A484;
    background:rgba(229,164,132,.12);
    color:#a96040;
}

.admin-header{
    background:white;
    padding:24px 8%;
    box-shadow:0 4px 18px rgba(0,0,0,.06);
    position:relative;
}

@media (max-width:600px){
    .admin-nav{padding:0 20px}
    .admin-nav-section{margin-left:18px;padding-left:18px}
    .admin-account-menu{width:min(250px, calc(100vw - 40px))}
}

.admin-header h1{
    font-size:32px;
    font-weight:700;
}

.admin-container{
    max-width:1200px;
    margin:40px auto;
    padding:0 24px;
}

.admin-container h2{
    margin-bottom:24px;
    font-size:26px;
}

.orders-list{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.orders-list > div{
    background:white;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 24px rgba(0,0,0,.06);
    border:1px solid #efefef;
}

.orders-list h3{
    color:#E5A484;
    margin-bottom:12px;
}

.orders-list p{
    margin:8px 0;
    color:#666;
}

.orders-list hr{
    margin-top:18px;
    border:none;
    border-top:1px solid #efefef;
}

.dashboard-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    margin: 30px 0;
}

.stat-card {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.stat-card h3 {
    margin: 0;
    font-size: 16px;
    color: #666;
    font-weight: 500;
}

.stat-card p {
    margin-top: 12px;
    font-size: 32px;
    font-weight: 700;
    color: #000;
}

.admin-order-items{
    margin-top:20px;
    border-top:1px solid #efefef;
    padding-top:18px;
}

.admin-order-item{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:16px;
}

.admin-order-image{
    width:80px;
    height:80px;
    object-fit:cover;
    border-radius:12px;
    background:#f5f5f5;
    flex-shrink:0;
}

.admin-order-details{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.admin-order-details h4{
    font-size:17px;
    color:#333;
}

.admin-order-details p{
    margin:0;
    color:#777;
    font-size:14px;
}

.toggle-items-btn{
    margin-top:16px;
    padding:10px 18px;
    background:#000;
    color:#fff;
    border:none;
    border-radius:999px;
    cursor:pointer;
    font-size:14px;
    font-weight:500;
    transition:0.3s;
}

.toggle-items-btn:hover{
    background:#333;
}

#order-search{
    width:320px;
    max-width:100%;
    padding:12px 16px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:15px;
    outline:none;
    transition:0.3s;
    margin-bottom:18px;
}

#order-search:focus{
    border-color:#000;
}

.filter-btn{
    padding:10px 18px;
    border:1px solid #ddd;
    border-radius:999px;
    background:#fff;
    cursor:pointer;
    transition:0.3s;
    font-size:14px;
    font-weight:500;
    margin-right:8px;
    margin-bottom:10px;
}

.filter-btn:hover{
    background:#f5f5f5;
}

.filter-btn.active{
    background:#000;
    color:#fff;
    border-color:#000;
}

.filter-btn,
.status-picker-trigger{
    appearance:none;
    -webkit-appearance:none;
    color:#333;
    -webkit-text-fill-color:currentColor;
}

.filter-btn[data-status="Pending"],
.status-picker-trigger[data-status="Pending"]{
    color:#f59e0b;
}

.filter-btn[data-status="Processing"],
.status-picker-trigger[data-status="Processing"]{
    color:#2563c7;
}

.filter-btn[data-status="Shipped"],
.status-picker-trigger[data-status="Shipped"]{
    color:#7047c7;
}

.filter-btn[data-status="Delivered"],
.status-picker-trigger[data-status="Delivered"]{
    color:#07845d;
}

.filter-btn[data-status="Cancelled"],
.status-picker-trigger[data-status="Cancelled"]{
    color:#c43d3d;
}

.filter-btn.active{
    color:#fff;
    -webkit-text-fill-color:#fff;
}

.filter-btn:not(.active){
    color:#333;
    -webkit-text-fill-color:#333;
}

.admin-toolbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
    margin:25px 0 30px;
}

.status-filters{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.order-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:30px;
    margin-bottom:20px;
}

.order-info{
    flex:1;
}

.order-info h3{
    margin-bottom:12px;
}

.order-info p{
    margin:8px 0;
}

.order-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:16px;
}

.status-select{
    padding:10px 14px;
    border:1px solid #ddd;
    border-radius:8px;
    font-size:14px;
    cursor:pointer;
    background:#fff;
    min-width:160px;
}

.status-picker{
    position:relative;
    width:160px;
}

.status-picker-trigger{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    padding:10px 12px;
    border:1px solid #ddd;
    border-radius:8px;
    background:#fff;
    font-size:14px;
    cursor:pointer;
}

.status-picker-menu{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    z-index:50;
    width:160px;
    overflow:hidden;
    padding:5px;
    border:1px solid #e5e5e5;
    border-radius:10px;
    background:#fff;
    box-shadow:0 12px 28px rgba(0,0,0,.16);
}

.status-picker-menu button{
    width:100%;
    padding:9px 10px;
    border:0;
    border-radius:7px;
    background:transparent;
    text-align:left;
    cursor:pointer;
}

.status-picker-menu button:hover,
.status-picker-menu button.selected{
    background:#f4dfd4;
}

.status-picker-menu button[data-status="Pending"]{
    --status-option:#f59e0b;
    --status-option-tint:#fff3d6;
}

.status-picker-menu button[data-status="Processing"]{
    --status-option:#2563c7;
    --status-option-tint:#e8f1ff;
}

.status-picker-menu button[data-status="Shipped"]{
    --status-option:#7047c7;
    --status-option-tint:#f0eaff;
}

.status-picker-menu button[data-status="Delivered"]{
    --status-option:#10b981;
    --status-option-tint:#def8ec;
}

.status-picker-menu button[data-status="Cancelled"]{
    --status-option:#c43d3d;
    --status-option-tint:#ffe8e8;
}

.status-picker-menu button[data-status]{
    color:var(--status-option);
    -webkit-text-fill-color:var(--status-option);
}

.status-picker-menu button[data-status]:hover{
    background:var(--status-option-tint);
}

.status-picker-menu button[data-status].selected{
    background:var(--status-option);
    color:#fff;
    -webkit-text-fill-color:#fff;
    border-radius:0 20px 20px 0;
}

.order-card{
    padding:24px;
    border-radius:16px;
    margin-bottom:24px;
}

.status-section{
    display:flex;
    flex-direction:column;
    gap:10px;
    align-items:flex-end;
}

.status-badge{
    display:inline-block;
    padding:6px 14px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    color:#fff;
    text-align:center;
    min-width:110px;
}

.status-badge.pending{
    background:#f59e0b;
}

.status-badge.processing{
    background:#3b82f6;
}

.status-badge.shipped{
    background:#8b5cf6;
}

.status-badge.delivered{
    background:#10b981;
}

.status-badge.cancelled{
    background:#ef4444;
}

.admin-status-confirm{
    position:fixed;
    inset:0;
    z-index:10000;
    display:grid;
    place-items:center;
    padding:20px;
    background:rgba(0,0,0,.55);
}

.admin-status-confirm-box{
    width:min(100%, 390px);
    padding:28px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 24px 60px rgba(0,0,0,.25);
    text-align:center;
}

.admin-status-confirm-box h2{
    margin-bottom:12px;
    font-size:24px;
}

.admin-status-confirm-box p{
    color:#666;
    line-height:1.55;
}

#admin-status-confirm-name{
    margin-left:3px;
    font-size:inherit;
}

#admin-status-confirm-name.pending{color:#b76e00}
#admin-status-confirm-name.processing{color:#2563c7}
#admin-status-confirm-name.shipped{color:#7047c7}
#admin-status-confirm-name.delivered{color:#07845d}
#admin-status-confirm-name.cancelled{color:#c43d3d}

.admin-status-confirm-actions{
    display:flex;
    gap:10px;
    margin-top:24px;
}

.admin-status-confirm-actions button{
    flex:1;
    padding:12px 14px;
    border:0;
    border-radius:9px;
    cursor:pointer;
    font-weight:600;
}

.admin-status-cancel{
    background:#eee;
    color:#333;
}

.admin-status-approve{
    background:#333;
    color:#fff;
}

.admin-status-approve.pending{background:#f59e0b}
.admin-status-approve.processing{background:#3b82f6}
.admin-status-approve.shipped{background:#8b5cf6}
.admin-status-approve.delivered{background:#10b981}
.admin-status-approve.cancelled{background:#ef4444}

#admin-toast{
    position:fixed;
    bottom:30px;
    right:30px;
    background:#111;
    color:#fff;
    padding:14px 20px;
    border-radius:10px;
    font-size:14px;
    opacity:0;
    transform:translateY(20px);
    transition:opacity .3s, transform .3s;
    pointer-events:none;
    z-index:9999;
}

#admin-toast.show{
    opacity:1;
    transform:translateY(0);
}

.loading-dashboard{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:16px;
    padding:80px 20px;
}

.loading-dashboard p{
    font-size:17px;
    font-weight:500;
    color:#666;
    margin:0;
}

.loading-spinner{
    width:42px;
    height:42px;
    border:4px solid #e6e6e6;
    border-top:4px solid #080402;
    border-radius:50%;
    animation:spin .8s linear infinite;
}

@keyframes spin{
    to{
        transform:rotate(360deg);
    }
}

/* ---------- ADMIN PHONE LAYOUT ---------- */
@media (max-width:768px){
    html,
    body{
        width:100%;
        overflow-x:hidden;
    }

    .admin-nav{
        min-height:62px;
        padding:0 9%;
    }

    .admin-dashboard{
        padding-top:62px;
    }

    .admin-nav-brand{
        font-size:21px;
    }

    .admin-nav-section{
        margin-left:14px;
        padding-left:14px;
        font-size:13px;
    }

    .admin-account-button{
        width:32px;
        height:32px;
    }

    .admin-account-menu{
        position:fixed;
        top:70px;
        right:9%;
        width:min(280px, 82vw);
    }

    .admin-header{
        padding:24px 9% 20px;
    }

    .admin-header h1{
        font-size:27px;
    }

    .dashboard-stats{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:10px;
        margin:20px 0 4px;
    }

    .stat-card{
        min-width:0;
        padding:15px 13px;
        border-radius:10px;
    }

    .stat-card h3{
        font-size:12px;
        line-height:1.3;
    }

    .stat-card p{
        overflow-wrap:anywhere;
        margin-top:8px;
        font-size:clamp(19px, 6vw, 25px);
        line-height:1.15;
    }

    .admin-container{
        width:100%;
        margin:24px auto;
        padding:0 9%;
    }

    .admin-container h2{
        margin-bottom:14px;
        font-size:23px;
    }

    .admin-toolbar{
        display:block;
        margin:0 0 22px;
    }

    #order-search{
        width:100%;
        margin-bottom:14px;
        font-size:16px;
    }

    .status-filters{
        flex-wrap:nowrap;
        gap:8px;
        width:100%;
        margin-right:0;
        padding:0 0 5px;
        overflow-x:auto;
        overscroll-behavior-inline:contain;
        scrollbar-width:none;
    }

    .status-filters::-webkit-scrollbar{
        display:none;
    }

    .filter-btn{
        flex:0 0 auto;
        margin:0;
        padding:9px 14px;
        white-space:nowrap;
    }

    .orders-list{
        gap:14px;
    }

    .orders-list > div,
    .order-card{
        width:100%;
        min-width:0;
        margin-bottom:0;
        padding:17px;
        border-radius:14px;
    }

    .order-card{
        position:relative;
    }

    .order-header{
        flex-direction:column;
        gap:18px;
        margin-bottom:12px;
    }

    .order-info{
        width:100%;
        min-width:0;
        padding-right:112px;
    }

    .order-info h3{
        min-height:32px;
        font-size:18px;
    }

    .order-info p{
        overflow-wrap:anywhere;
        font-size:14px;
        line-height:1.4;
    }

    .order-actions{
        width:100%;
        align-items:stretch;
        gap:12px;
    }

    .status-section{
        display:contents;
    }

    .status-select{
        position:absolute;
        top:59px;
        right:17px;
        min-width:0;
        width:96px;
        padding:7px 5px;
        border-radius:7px;
        font-size:12px;
    }

    .status-picker{
        position:absolute;
        top:59px;
        right:17px;
        width:96px;
    }

    .status-picker-trigger{
        padding:7px 6px;
        border-radius:7px;
        font-size:11px;
    }

    .status-picker-menu{
        top:calc(100% + 10px);
        right:0;
        width:132px;
    }

    .status-picker-menu button{
        padding:9px 8px;
        font-size:12px;
    }

    .status-badge{
        position:absolute;
        top:17px;
        right:17px;
        width:96px;
        min-width:96px;
        padding:6px 7px;
        font-size:11px;
    }

    .toggle-items-btn{
        width:auto;
        min-width:120px;
        align-self:flex-start;
        margin-top:0;
        padding:10px 16px;
    }

    .admin-order-items{
        margin-top:15px;
        padding-top:15px;
    }

    .admin-order-item{
        align-items:flex-start;
        gap:12px;
    }

    .admin-order-image{
        width:64px;
        height:64px;
        border-radius:9px;
    }

    .admin-order-details{
        min-width:0;
    }

    .admin-order-details h4,
    .admin-order-details p{
        overflow-wrap:anywhere;
    }

    #admin-toast{
        right:auto;
        bottom:18px;
        left:50%;
        width:max-content;
        max-width:calc(100vw - 28px);
        text-align:center;
        transform:translate(-50%, 20px);
    }

    #admin-toast.show{
        transform:translate(-50%, 0);
    }

    .admin-login-card{
        width:100%;
        padding:30px 22px;
    }
}

@media (max-width:380px){
    .admin-nav-section{
        display:none;
    }

    .dashboard-stats{
        grid-template-columns:1fr;
    }

    .status-section{
        display:contents;
    }

    .status-select{
        width:88px;
        max-width:88px;
    }

    .status-picker{
        width:88px;
    }

    .order-info h3{
        font-size:16px;
    }

    .status-badge{
        width:88px;
        min-width:88px;
        max-width:88px;
        font-size:11px;
    }
}

/* ---------- ADMIN PROFILE PAGE ---------- */
.admin-profile-page{
    min-height:100vh;
    background:#f8f8f8;
}

.admin-profile-nav{
    display:flex;
    align-items:center;
    gap:20px;
    min-height:72px;
    padding:0 8%;
    border-bottom:1px solid #eee;
    background:#fff;
}

.admin-profile-nav > span{
    padding-left:20px;
    border-left:1px solid #ddd;
    color:#777;
}

.admin-profile-back{
    display:flex;
    align-items:center;
    justify-content:center;
    background:none;
    text-decoration:none;
}

.admin-profile-back:hover{
    opacity:.7;
}

.admin-profile-back img{
    display:block;
    width:24px;
    height:24px;
    object-fit:contain;
}

.admin-profile-shell{
    width:min(100% - 40px, 920px);
    margin:52px auto;
}

.admin-profile-shell > header{
    margin-bottom:30px;
}

.admin-profile-shell > header p{
    margin-bottom:8px;
    color:#E5A484;
    font-size:13px;
    font-weight:700;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.admin-profile-shell > header h1{
    margin-bottom:8px;
    font-size:36px;
}

.admin-profile-shell > header span{
    color:#777;
}

.admin-profile-form{
    display:grid;
    grid-template-columns:260px 1fr;
    gap:42px;
    padding:36px;
    border:1px solid #eee;
    border-radius:20px;
    background:#fff;
    box-shadow:0 14px 40px rgba(0,0,0,.07);
}

.admin-profile-photo{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
}

.admin-profile-photo img{
    width:190px;
    height:190px;
    border:6px solid #f4dfd4;
    border-radius:50%;
    background:#E5A484;
    object-fit:cover;
}

.admin-profile-photo label{
    padding:10px 17px;
    border-radius:999px;
    background:#333;
    color:#fff;
    cursor:pointer;
    font-size:14px;
}

.admin-profile-photo small{
    color:#888;
    font-size:11px;
    text-align:center;
}

.admin-profile-fields{
    display:flex;
    flex-direction:column;
}

.admin-profile-fields label{
    margin:0 0 7px;
    font-size:14px;
    font-weight:600;
}

.admin-profile-fields input{
    width:100%;
    margin-bottom:18px;
    padding:13px 15px;
    border:1px solid #ddd;
    border-radius:10px;
    outline:none;
    font-size:16px;
}

.admin-profile-fields input:focus{
    border-color:#E5A484;
    box-shadow:0 0 0 3px rgba(229,164,132,.16);
}

.admin-profile-fields input:disabled{
    background:#f5f5f5;
    color:#777;
}

.admin-profile-message{
    min-height:20px;
    margin-bottom:10px;
    color:#07845d;
    font-size:14px;
}

.admin-profile-fields button{
    padding:13px 18px;
    border:0;
    border-radius:10px;
    background:#E5A484;
    color:#fff;
    cursor:pointer;
    font-size:15px;
    font-weight:700;
}

.admin-profile-fields button:disabled{
    cursor:wait;
    opacity:.65;
}

@media (max-width:700px){
    .admin-profile-nav{
        min-height:62px;
        gap:12px;
        padding:0 15px;
    }

    .admin-profile-nav > span{
        padding-left:12px;
        font-size:13px;
    }

    .admin-profile-back img{
        width:20px;
        height:20px;
    }

    .admin-profile-shell{
        width:calc(100% - 28px);
        margin:28px auto;
    }

    .admin-profile-shell > header h1{
        font-size:29px;
    }

    .admin-profile-form{
        grid-template-columns:1fr;
        gap:28px;
        padding:24px 18px;
    }

    .admin-profile-photo img{
        width:150px;
        height:150px;
    }
}
