/* =========================
   RESET
========================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    -webkit-tap-highlight-color:transparent;
}

/* =========================
   ROOT
========================= */

:root{
    --bg:#f5f5f7;
    --card:#ffffff;
    --primary:#ff8b6a;
    --text:#222;
    --sub:#888;
    --border:#ececec;

    --badge-border:#b5b5b5;
    --badge-text:#666;
}

/* =========================
   HTML / BODY
========================= */

html{
    -webkit-text-size-adjust:100%;
    scroll-behavior:smooth;
    background:#000;
}

body{
    margin:0;
    padding:0;
    background:#000;
    color:var(--text);

    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display",sans-serif;

    overflow-x:hidden;
    min-height:100vh;
}

/* =========================
   APP
========================= */

.app{
    background:var(--bg);
    min-height:100vh;

    position:relative;
    z-index:1;

    transition:transform .35s cubic-bezier(.2,.9,.2,1),
               filter .35s ease;

    transform-origin:center;
}

/* drawer open */
body.drawer-open .app-shell,
body.drawer-open .app,
body.drawer-open #forum-page{
    border-radius:30px;
    overflow:hidden;
}

body.scroll-locked{
    overflow:hidden;
}

/* =========================
   GLOBAL
========================= */

button,input,textarea{
    font-family:inherit;
    border:none;
    outline:none;
    background:none;
}

img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}

/* =========================
   USER
========================= */

.user-line{
    display:flex;
    align-items:center;
    gap:10px;
}

.avatar{
    width:40px;
    height:40px;
    border-radius:50%;
    object-fit:cover;
}

/* =========================
   DRAWER STATE (统一核心)
========================= */

body.drawer-open{
    overflow:hidden;
}
