/* ============================================================
   STOCK MANAGEMENT UI REFRESH V3
   Visual-only overrides. Loaded after style.css.
   No PHP / JS / business logic is required by this stylesheet.
   ============================================================ */

:root {
    --ui-primary: #5b4cf0;
    --ui-primary-2: #7c3aed;
    --ui-primary-soft: #f0edff;
    --ui-navy: #18233f;
    --ui-muted: #71809a;
    --ui-border: #e5eaf3;
    --ui-bg: #f6f8fc;
    --ui-card: #ffffff;
    --ui-green: #17b26a;
    --ui-orange: #f59e0b;
    --ui-red: #ef476f;
    --ui-blue: #339af0;
    --ui-shadow: 0 12px 30px rgba(35, 45, 86, 0.07);
    --ui-shadow-lg: 0 24px 60px rgba(35, 45, 86, 0.10);
}

html { scroll-behavior: smooth; }

body {
    background:
        radial-gradient(circle at 90% 0%, rgba(124,58,237,.045), transparent 24%),
        radial-gradient(circle at 0% 90%, rgba(51,154,240,.035), transparent 22%),
        var(--ui-bg);
    color: var(--ui-navy);
}

/* ===== APPLICATION SHELL ===== */
.app-shell {
    min-height: 100vh;
    background: transparent;
}

.sidebar {
    width: 268px;
    padding: 18px 14px;
    background:
        radial-gradient(circle at 90% 10%, rgba(124,58,237,.23), transparent 26%),
        linear-gradient(180deg, #1e174f 0%, #281b69 48%, #34228a 100%);
    border-right: 1px solid rgba(255,255,255,.08);
    box-shadow: 8px 0 32px rgba(25, 20, 70, .12);
}

.admin-shell .sidebar {
    background:
        radial-gradient(circle at 90% 10%, rgba(167,139,250,.20), transparent 26%),
        linear-gradient(180deg, #24104f 0%, #35166f 48%, #4b2094 100%);
}

.sidebar-brand {
    gap: 10px;
    padding: 7px 10px 20px;
    font-size: 1.14rem;
    letter-spacing: -.35px;
}

.sidebar-brand .brand-icon {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.10);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}

.sidebar-home-btn {
    margin: 0 4px 16px;
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 12px;
    background: rgba(255,255,255,.10);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.sidebar-home-btn:hover { background: rgba(255,255,255,.16); }

.sidebar-nav { gap: 6px; }

.side-link,
.side-group summary {
    min-height: 43px;
    padding: 9px 11px;
    border-radius: 12px;
    color: rgba(239,243,255,.82);
    font-size: .89rem;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}

.side-link:hover,
.side-group summary:hover {
    background: rgba(255,255,255,.08);
    color: #fff;
    transform: translateX(2px);
}

.side-link.active {
    background: linear-gradient(135deg, #6757f6, #5849e9);
    box-shadow: 0 9px 24px rgba(91,76,240,.30), inset 0 1px 0 rgba(255,255,255,.10);
}

.side-sublist {
    margin: 4px 0 7px;
    padding-left: 37px;
    border-left: 1px solid rgba(255,255,255,.12);
}

.side-sublink {
    display: block;
    margin: 2px 0;
    padding: 8px 9px;
    border-radius: 9px;
    color: rgba(224,231,255,.74);
    font-size: .82rem;
}

.side-sublink:hover { background: rgba(255,255,255,.07); color: #fff; }
.side-sublink.active {
    background: rgba(255,255,255,.13);
    color: #fff;
}

.main-column { min-width: 0; }

.topbar-new {
    min-height: 68px;
    padding: 10px 24px;
    background: rgba(255,255,255,.90);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(229,234,243,.95);
    box-shadow: 0 4px 18px rgba(35,45,86,.035);
}

.hamburger {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: #f1efff;
    color: var(--ui-primary);
}

.topbar-search {
    max-width: 520px;
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid var(--ui-border);
    background: #f8faff;
    border-radius: 12px;
}

.topbar-search input::placeholder { color: #99a4b9; }

.topbar-right { gap: 14px; }

.bell {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f7f8fc;
    border: 1px solid var(--ui-border);
}

.user-chip {
    padding: 4px 9px 4px 4px;
    border: 1px solid var(--ui-border);
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 12px rgba(35,45,86,.04);
}

.avatar {
    width: 38px;
    height: 38px;
    background: linear-gradient(135deg, var(--ui-primary), #7a67ff);
    box-shadow: 0 6px 16px rgba(91,76,240,.25);
}

.admin-shell .avatar {
    background: linear-gradient(135deg, #7c3aed, #a855f7);
}

.page-content {
    width: 100%;
    max-width: 1500px;
    padding: 24px 26px 40px;
}

/* ===== GLOBAL HEADERS ===== */
.page-hero {
    position: relative;
    overflow: hidden;
    gap: 15px;
    padding: 18px 20px;
    margin-bottom: 18px;
    border-radius: 20px;
    border: 1px solid #e7e9fa;
    background:
        radial-gradient(circle at 95% 0%, rgba(124,58,237,.12), transparent 28%),
        linear-gradient(135deg, #f4f2ff 0%, #ffffff 62%);
    box-shadow: var(--ui-shadow);
}

.page-hero::after {
    content: '';
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    right: -65px;
    bottom: -85px;
    background: rgba(91,76,240,.055);
}

.admin-shell .page-hero {
    border-color: #eee7ff;
    background:
        radial-gradient(circle at 95% 0%, rgba(168,85,247,.13), transparent 28%),
        linear-gradient(135deg, #faf7ff 0%, #fff 62%);
}

.page-hero-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(225,228,245,.9);
    box-shadow: 0 8px 20px rgba(63,55,128,.09);
}

.page-hero h1 {
    font-size: 1.48rem;
    color: #16233d;
    letter-spacing: -.6px;
}

.page-hero p { font-size: .91rem; }

/* ===== GENERIC CARDS / FORMS / TABLES ===== */
.entry-form,
.data-table,
.scroll-table-wrap {
    border-color: var(--ui-border);
    box-shadow: var(--ui-shadow);
}

.entry-form {
    padding: 18px;
    border-radius: 18px;
    background: rgba(255,255,255,.97);
}

.form-row { gap: 14px; }

.entry-form input[type=text],
.entry-form input[type=date],
.entry-form input[type=number],
.entry-form input[type=file],
.entry-form input[type=password],
.entry-form select,
.date-filter-form input[type=date],
.date-filter-form select {
    min-height: 42px;
    padding: 9px 11px;
    border-color: #dfe5f0;
    border-radius: 10px;
    background: #fff;
}

.entry-form input:focus,
.entry-form select:focus,
.date-filter-form input[type=date]:focus,
.date-filter-form select:focus {
    border-color: #8b82f8;
    box-shadow: 0 0 0 4px rgba(91,76,240,.09);
}

.entry-form button,
.date-filter-form button {
    border-radius: 10px;
    box-shadow: 0 8px 18px rgba(91,76,240,.20);
}

.data-table {
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}

.data-table thead th {
    padding: 12px 13px;
    font-size: .72rem;
    letter-spacing: .35px;
    background: #fafbff;
    color: #66748b;
}

.data-table tbody td {
    padding: 11px 13px;
    border-top-color: #f0f3f8;
}

.data-table tbody tr:hover { background: #fbfbff; }

.list-toolbar { gap: 10px; }

.search-box {
    min-height: 44px;
    padding: 7px 11px;
    background: #fff;
    border-color: var(--ui-border);
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(35,45,86,.03);
}

.list-toolbar select {
    min-height: 44px;
    border-radius: 11px;
}

.icon-btn { transition: transform .15s ease, box-shadow .15s ease; }
.icon-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 10px rgba(35,45,86,.08); }

/* ===== STATS ===== */
.stat-cards { gap: 12px; }

.stat-card {
    position: relative;
    overflow: hidden;
    min-height: 88px;
    border-radius: 16px;
    padding: 14px 16px;
    background: #fff;
    border-color: var(--ui-border);
    box-shadow: var(--ui-shadow);
}

.stat-card::after {
    content: '';
    position: absolute;
    right: -35px;
    bottom: -55px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(91,76,240,.04);
}

.stat-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
}

.stat-label { font-size: .74rem; }
.stat-value { font-size: 1.38rem; }

/* ===== MODULE LANDING PAGE ===== */
.module-select-grid {
    position: relative;
    max-width: 1120px;
    margin: 38px auto 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.module-select-grid::before {
    content: '';
    position: absolute;
    width: 230px;
    height: 230px;
    top: -105px;
    right: -45px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(245,158,11,.13), transparent 68%);
    pointer-events: none;
}

.module-card {
    position: relative;
    min-height: 270px;
    overflow: hidden;
    padding: 28px 28px 24px;
    border: 1px solid #e6e8f1;
    border-top-width: 0;
    border-radius: 24px;
    background: rgba(255,255,255,.96);
    box-shadow: var(--ui-shadow-lg);
    transition: transform .22s ease, box-shadow .22s ease;
}

.module-card::before {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 6px;
    background: linear-gradient(90deg, #5b4cf0, #8b5cf6);
}

.module-card[href*='module=dsr']::before {
    background: linear-gradient(90deg, #f59e0b, #fb7185);
}

.module-card::after {
    content: '';
    position: absolute;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    right: -60px;
    bottom: -72px;
    background: rgba(91,76,240,.055);
}

.module-card[href*='module=dsr']::after { background: rgba(245,158,11,.075); }

.module-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 25px 60px rgba(35,45,86,.13);
}

.module-card-icon {
    width: 70px;
    height: 70px;
    margin-bottom: 20px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.15rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.module-card h2 {
    margin: 0 0 10px;
    font-size: 1.35rem;
    color: #16233d;
}

.module-card p {
    max-width: 530px;
    font-size: .94rem;
    line-height: 1.7;
}

/* ===== DASHBOARD / CATEGORY HOME ===== */
.dashboard-intro { margin-bottom: 18px; }
.dashboard-grid {
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.dash-card {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    border-color: var(--ui-border);
    box-shadow: var(--ui-shadow);
    background: #fff;
}

.dash-card-header {
    padding: 9px 12px;
    font-size: .8rem;
    letter-spacing: .1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dash-card-body {
    padding: 7px;
    gap: 3px;
}

.dash-item {
    padding: 7px 9px;
    border-radius: 8px;
    font-size: .8rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dash-item:hover {
    background: #f1efff;
    color: var(--ui-primary);
    transform: translateX(2px);
}

/* ===== DSR POLISH ===== */
.dsr-section-header {
    margin: 20px 0 11px;
    padding: 2px 1px;
}

.dsr-section-icon {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    background: #efedff;
    box-shadow: 0 5px 12px rgba(91,76,240,.08);
}

.dsr-section-title { font-size: 1.06rem; }

.dsr-field-grid {
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 11px;
}

.dsr-field-card {
    min-height: 75px;
    border-radius: 15px;
    border-color: var(--ui-border);
    padding: 10px 12px;
    box-shadow: 0 5px 14px rgba(35,45,86,.035);
    transition: transform .15s ease, box-shadow .15s ease;
}

.dsr-field-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(35,45,86,.07);
}

.dsr-field-icon {
    width: 42px;
    height: 42px;
}

.dsr-field-label { font-size: .67rem; }
.dsr-field-input-row input { font-size: .99rem; }

.mini-card-row,
.tally-row { gap: 14px; }

.mini-card,
.tally-card {
    border-radius: 17px;
    border-color: var(--ui-border);
    box-shadow: var(--ui-shadow);
}

.mini-card-header,
.tally-card-header {
    padding: 12px 13px;
    background: linear-gradient(180deg, #fbfbff, #fff);
}

.mini-card-table th { color: #7b879b; }
.mini-card-table td { padding: 8px 5px 8px 0; }
.mini-card-total-row td {
    background: #fafbff;
}

.tally-card-body { padding: 5px 13px 11px; }
.tally-line { padding: 8px 0; }
.tally-line.total {
    margin-top: 2px;
    padding: 11px 10px;
    border-radius: 10px;
    background: #f3f1ff;
    color: #3d338d;
}

.eod-grid {
    display: flex;
    align-items: stretch;
    gap: 0;
    padding: 5px;
    border: 1px solid var(--ui-border);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--ui-shadow);
    overflow-x: auto;
}

.eod-tile {
    min-width: 170px;
    flex: 1 0 auto;
    border: 0;
    border-radius: 12px;
    padding: 13px 14px;
    box-shadow: none;
    background: transparent;
    position: relative;
}

.eod-tile + .eod-tile::before {
    content: '';
    position: absolute;
    left: 0;
    top: 18px;
    bottom: 18px;
    width: 1px;
    background: #e8ebf3;
}

.eod-tile:hover { background: #fafbff; }
.eod-tile .label { font-size: .64rem; }
.eod-tile .value { font-size: 1.02rem; }

/* ===== FILTER / ALERT POLISH ===== */
.date-filter-form {
    padding: 12px 13px;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(35,45,86,.035);
}

.alert {
    border-radius: 13px;
    padding: 12px 14px;
}

.badge { padding: 5px 9px; }

/* ===== LOGIN PAGES ===== */
.auth-page-v2 {
    position: relative;
    overflow: hidden;
    min-height: 100vh;
    background:
        radial-gradient(circle at 88% 12%, rgba(124,58,237,.10), transparent 24%),
        radial-gradient(circle at 8% 88%, rgba(51,154,240,.07), transparent 26%),
        #f7f9ff;
}

.auth-marketing {
    position: relative;
    padding: 72px 7vw 60px;
    background:
        radial-gradient(circle at 10% 20%, rgba(91,76,240,.07), transparent 28%),
        linear-gradient(145deg, #ffffff 0%, #f5f7ff 100%);
}

.auth-marketing::before {
    width: 600px;
    height: 600px;
    top: -270px;
    left: -240px;
}

.auth-marketing::after {
    width: 440px;
    height: 440px;
    bottom: -220px;
    left: 38%;
}

.auth-brand-title {
    font-size: clamp(2rem, 3vw, 3rem);
    letter-spacing: -1.4px;
    line-height: 1.08;
}

.auth-marketing-tagline {
    max-width: 620px;
    font-size: 1.08rem;
    line-height: 1.65;
}

.auth-feature-list { max-width: 560px; gap: 18px; }

.auth-feature-item {
    padding: 9px 10px;
    border-radius: 14px;
    transition: transform .15s ease, background .15s ease;
}

.auth-feature-item:hover {
    background: rgba(255,255,255,.65);
    transform: translateX(3px);
}

.auth-feature-icon {
    width: 50px;
    height: 50px;
    border-radius: 15px;
    box-shadow: 0 6px 15px rgba(35,45,86,.05);
}

.auth-form-panel {
    width: min(540px, 100%);
    padding: 40px 46px;
    background: rgba(255,255,255,.80);
    backdrop-filter: blur(16px);
    box-shadow: -12px 0 45px rgba(35,45,86,.06);
}

.auth-card-v2 {
    max-width: 405px;
    padding: 34px 33px 30px;
    border: 1px solid rgba(223,228,240,.9);
    border-radius: 24px;
    background: rgba(255,255,255,.95);
    box-shadow: var(--ui-shadow-lg);
}

.auth-card-v2::before {
    content: '';
    display: block;
    height: 5px;
    margin: -34px -33px 26px;
    border-radius: 24px 24px 0 0;
    background: linear-gradient(90deg, #5b4cf0, #7c3aed);
}

.auth-card-v2 .auth-brand-title {
    font-size: 1.8rem;
    margin-bottom: 4px;
}

.auth-card-v2 .subtitle-v2 { margin-bottom: 26px; }

.auth-input-wrap input {
    min-height: 52px;
    border: 1px solid #dfe5f0;
    border-radius: 11px;
    background: #fbfcff;
}

.auth-input-wrap input:focus {
    border-color: var(--ui-primary);
    box-shadow: 0 0 0 4px rgba(91,76,240,.09);
}

.auth-card-v2 button[type=submit] {
    min-height: 52px;
    border-radius: 11px;
    background: linear-gradient(135deg, #5b4cf0, #6c59ed);
    box-shadow: 0 12px 25px rgba(91,76,240,.22);
}

.auth-card-v2 button[type=submit]:hover { background: linear-gradient(135deg, #5143de, #654fe5); }

.auth-notice-box {
    border: 1px solid rgba(91,76,240,.08);
    background: linear-gradient(135deg, #f4f2ff, #f8faff);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1180px) {
    .page-content { padding: 20px; }
    .module-select-grid { margin-top: 28px; }
}

@media (max-width: 980px) {
    .module-select-grid { grid-template-columns: 1fr; max-width: 700px; }
    .auth-marketing { padding: 50px 6vw; }
    .auth-form-panel { width: 470px; }
}

@media (max-width: 900px) {
    .sidebar { width: 268px; }
    .topbar-new { padding: 9px 14px; }
    .page-content { padding: 17px 14px 32px; }
    .auth-form-panel { width: 100%; padding: 28px 18px; background: transparent; }
}

@media (max-width: 700px) {
    .auth-page-v2 { display: block; }
    .auth-marketing {
        display: block;
        padding: 35px 20px 15px;
        text-align: center;
    }
    .auth-brand-title { justify-content: center; }
    .auth-marketing-tagline { margin-left: auto; margin-right: auto; }
    .auth-feature-list { margin-left: auto; margin-right: auto; text-align: left; }
    .auth-form-panel { padding-top: 12px; }
    .auth-card-v2 { max-width: 520px; width: 100%; }
}

@media (max-width: 560px) {
    .page-hero { padding: 14px; }
    .page-hero h1 { font-size: 1.23rem; }
    .stat-cards { grid-template-columns: 1fr 1fr; }
    .dsr-field-grid { grid-template-columns: 1fr; }
    .mini-card-row.cols-2,
    .mini-card-row.cols-3,
    .tally-row { grid-template-columns: 1fr; }
    .module-card { min-height: 235px; padding: 23px; }
    .auth-card-v2 { padding: 28px 21px 24px; }
    .auth-card-v2::before { margin: -28px -21px 23px; }
}

@media (max-width: 410px) {
    .stat-cards { grid-template-columns: 1fr; }
    .user-meta { display: none; }
}


/* ============================================================
   SM HOME LANDING V4 — isolated module selector only
   ============================================================ */

.sm-home-v3 {
    position: relative;
    overflow: hidden;
    margin: 4px 0 28px;
    padding: 28px;
    border: 1px solid rgba(221,227,244,.9);
    border-radius: 30px;
    background:
        radial-gradient(circle at 82% 18%, rgba(123,95,255,.11), transparent 26%),
        radial-gradient(circle at 74% 78%, rgba(249,142,56,.09), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #f7f8ff 52%, #fffdfb 100%);
    box-shadow: 0 24px 70px rgba(30, 38, 82, .10);
}

.sm-home-v3::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(91,76,240,.12) 1px, transparent 1px);
    background-size: 22px 22px;
    mask-image: linear-gradient(to right, rgba(0,0,0,.34), transparent 42%);
    opacity: .22;
}

.sm-home-glow {
    position: absolute;
    border-radius: 999px;
    filter: blur(5px);
    pointer-events: none;
}

.sm-home-glow-a {
    width: 260px;
    height: 260px;
    right: -90px;
    top: -80px;
    background: rgba(91,76,240,.10);
}

.sm-home-glow-b {
    width: 220px;
    height: 220px;
    left: -95px;
    bottom: -115px;
    background: rgba(59,130,246,.08);
}

.sm-home-hero {
    position: relative;
    z-index: 1;
    min-height: 340px;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, .95fr);
    align-items: stretch;
    gap: 18px;
}

.sm-home-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 25px 12px 28px 18px;
}

.sm-home-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    gap: 8px;
    margin-bottom: 16px;
    padding: 8px 12px;
    border: 1px solid rgba(91,76,240,.10);
    border-radius: 999px;
    background: rgba(255,255,255,.76);
    color: #6457c9;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    box-shadow: 0 6px 20px rgba(40,48,100,.05);
}

.sm-home-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #5b4cf0;
    box-shadow: 0 0 0 5px rgba(91,76,240,.10);
}

.sm-home-copy h1 {
    margin: 0;
    color: #192546;
    font-size: clamp(2.45rem, 4.2vw, 4.2rem);
    line-height: .98;
    letter-spacing: -0.055em;
}

.sm-home-copy h1 span:first-of-type {
    color: #5b4cf0;
    background: linear-gradient(90deg, #4f46e5, #7c3aed 58%, #a855f7);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.sm-home-wave {
    display: inline-block;
    margin-left: 5px;
    font-size: .68em;
    transform: translateY(-7px) rotate(-8deg);
}

.sm-home-copy > p {
    max-width: 645px;
    margin: 17px 0 0;
    color: #61708d;
    font-size: 1.04rem;
    line-height: 1.68;
}

.sm-home-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.sm-home-pills span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 13px;
    border: 1px solid rgba(222,227,242,.95);
    border-radius: 999px;
    background: rgba(255,255,255,.82);
    color: #4f5d78;
    font-size: .79rem;
    font-weight: 700;
    box-shadow: 0 7px 16px rgba(32,42,88,.04);
}

.sm-home-pills span:nth-child(1) b { color:#594ee9; }
.sm-home-pills span:nth-child(2) b { color:#0f9f72; }
.sm-home-pills span:nth-child(3) b { color:#f08c2f; }
.sm-home-pills span:nth-child(4) b { color:#2784f5; }

.sm-home-visual {
    position: relative;
    min-height: 340px;
    border-radius: 26px;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 24%, rgba(255,255,255,.82), transparent 25%),
        linear-gradient(135deg, rgba(101,91,236,.08), rgba(247,164,77,.08));
}

.sm-home-visual::before,
.sm-home-visual::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.sm-home-visual::before {
    width: 420px;
    height: 420px;
    right: -120px;
    top: -80px;
    background: rgba(245,160,95,.16);
}

.sm-home-visual::after {
    width: 300px;
    height: 300px;
    left: -95px;
    bottom: -150px;
    background: rgba(101,91,236,.10);
}

.sm-home-blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(1px);
}

.sm-home-blob-1 {
    width: 90px;
    height: 90px;
    left: 12%;
    top: 14%;
    background: rgba(92,78,235,.13);
}

.sm-home-blob-2 {
    width: 76px;
    height: 76px;
    left: 25%;
    bottom: 11%;
    background: rgba(27,180,130,.11);
}

.sm-home-chef {
    position: absolute;
    z-index: 3;
    right: -18px;
    bottom: -55px;
    width: min(440px, 72%);
    max-height: 540px;
    object-fit: contain;
    object-position: bottom right;
    filter: drop-shadow(0 25px 30px rgba(52,45,95,.18));
    user-select: none;
    pointer-events: none;
}

.sm-home-float {
    position: absolute;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 13px;
    border: 1px solid rgba(255,255,255,.76);
    border-radius: 15px;
    background: rgba(255,255,255,.88);
    box-shadow: 0 14px 30px rgba(40,48,100,.10);
    backdrop-filter: blur(10px);
}

.sm-home-float-chart {
    left: 28px;
    top: 36px;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    min-width: 88px;
}

.sm-home-float-chart span {
    color: #22a06b;
    font-size: 1rem;
    font-weight: 900;
}

.sm-home-float-chart strong {
    color: #1d2949;
    font-size: 1rem;
}

.sm-home-float-chart small,
.sm-home-float-check small {
    color: #7b879d;
    font-size: .68rem;
}

.sm-home-float-check {
    left: 36px;
    bottom: 35px;
}

.sm-home-float-check > span {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #dff8eb;
    color: #169766;
    font-weight: 900;
}

.sm-home-float-check strong,
.sm-home-float-check small {
    display: block;
}

.sm-home-float-check strong {
    color: #27334f;
    font-size: .76rem;
}

.sm-home-module-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
    margin-top: -4px;
}

.sm-home-module {
    position: relative;
    min-height: 230px;
    overflow: hidden;
    padding: 24px;
    border: 1px solid rgba(225,229,242,.96);
    border-radius: 24px;
    text-decoration: none;
    color: #1b2948;
    background: rgba(255,255,255,.95);
    box-shadow: 0 16px 36px rgba(36,46,90,.08);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.sm-home-module:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 50px rgba(36,46,90,.13);
}

.sm-home-module::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 6px;
    background: linear-gradient(90deg, #5b4cf0, #7c3aed);
}

.sm-home-module-dsr::before {
    background: linear-gradient(90deg, #ef7d23, #ffab4f);
}

.sm-home-module-dashboard::before {
    background: linear-gradient(90deg, #0d9488, #2dd4bf);
}

.sm-home-module-access::before {
    background: linear-gradient(90deg, #be123c, #fb7185);
}

.sm-home-module-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sm-home-module-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: #eeecff;
    font-size: 1.8rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
}

.sm-home-module-dsr .sm-home-module-icon { background: #fff0dc; }
.sm-home-module-dashboard .sm-home-module-icon { background: #ccfbf1; }
.sm-home-module-access .sm-home-module-icon { background: #ffe4e6; }

.sm-home-module-arrow {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #5c4df0, #7c3aed);
    font-size: 1.25rem;
    box-shadow: 0 9px 22px rgba(91,76,240,.24);
    transition: transform .2s ease;
}

.sm-home-module-dsr .sm-home-module-arrow {
    background: linear-gradient(135deg, #ef7d23, #ff9d31);
    box-shadow: 0 9px 22px rgba(239,125,35,.24);
}

.sm-home-module-dashboard .sm-home-module-arrow {
    background: linear-gradient(135deg, #0d9488, #2dd4bf);
    box-shadow: 0 9px 22px rgba(13,148,136,.24);
}

.sm-home-module-access .sm-home-module-arrow {
    background: linear-gradient(135deg, #be123c, #fb7185);
    box-shadow: 0 9px 22px rgba(190,18,60,.24);
}

.sm-home-module:hover .sm-home-module-arrow { transform: translateX(3px); }

.sm-home-module-kicker {
    margin-top: 19px;
    color: #6d79a0;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .11em;
}

.sm-home-module h2 {
    margin: 7px 0 8px;
    font-size: 1.42rem;
    letter-spacing: -.03em;
}

.sm-home-module p {
    max-width: 650px;
    margin: 0;
    color: #66748f;
    font-size: .9rem;
    line-height: 1.64;
}

.sm-home-module-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 17px;
    color: #53607b;
    font-size: .77rem;
    font-weight: 800;
}

.sm-home-module-stock .sm-home-module-footer > span:last-child { color: #5b4cf0; }
.sm-home-module-dsr .sm-home-module-footer > span:last-child { color: #ef7d23; }
.sm-home-module-dashboard .sm-home-module-footer > span:last-child { color: #0d9488; }
.sm-home-module-access .sm-home-module-footer > span:last-child { color: #be123c; }

.sm-home-module-wave {
    position: absolute;
    width: 190px;
    height: 120px;
    right: -54px;
    bottom: -64px;
    border-radius: 50%;
    background: rgba(91,76,240,.065);
}

.sm-home-module-dsr .sm-home-module-wave { background: rgba(245,146,54,.09); }
.sm-home-module-dashboard .sm-home-module-wave { background: rgba(13,148,136,.09); }
.sm-home-module-access .sm-home-module-wave { background: rgba(190,18,60,.08); }

.sm-home-bottom-strip {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto auto;
    align-items: center;
    gap: 16px;
    margin-top: 18px;
    padding: 15px 17px;
    border: 1px solid rgba(225,229,242,.9);
    border-radius: 20px;
    background: rgba(255,255,255,.86);
    box-shadow: 0 12px 28px rgba(36,46,90,.06);
    backdrop-filter: blur(10px);
}

.sm-home-bottom-strip > div {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 10px;
    align-items: center;
}

.sm-home-bottom-strip strong {
    color: #2a3651;
    font-size: .78rem;
}

.sm-home-bottom-strip small {
    grid-column: 2;
    color: #7a859a;
    font-size: .67rem;
}

.sm-home-strip-icon {
    grid-row: 1 / span 2;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    font-size: 1rem;
}

.sm-home-strip-icon.green { background:#e2f8ef; }
.sm-home-strip-icon.blue { background:#e6f0ff; }
.sm-home-strip-icon.purple { background:#eeeaff; }

.sm-home-strip-spacer {
    width: 1px;
    height: 34px;
    background: #e7ebf3;
}

.sm-home-secure {
    min-width: 175px;
}

.sm-home-secure > span {
    grid-row: 1 / span 2;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #f0edff;
}

@media (max-width: 1180px) {
    .sm-home-hero { grid-template-columns: 1fr .84fr; }
    .sm-home-chef { right: -55px; width: 74%; }
    .sm-home-bottom-strip { grid-template-columns: repeat(3, 1fr); }
    .sm-home-strip-spacer { display:none; }
    .sm-home-secure { display:none !important; }
}

@media (max-width: 900px) {
    .sm-home-v3 { padding: 20px; }
    .sm-home-hero { grid-template-columns: 1fr; }
    .sm-home-copy { padding: 24px 10px 8px; }
    .sm-home-visual { min-height: 320px; margin-top: 0; }
    .sm-home-chef { width: 58%; right: 2%; }
    .sm-home-module-grid { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
    .sm-home-v3 { margin-top: 0; padding: 14px; border-radius: 22px; }
    .sm-home-copy h1 { font-size: 2.45rem; }
    .sm-home-copy > p { font-size: .9rem; }
    .sm-home-pills { gap: 7px; }
    .sm-home-pills span { font-size: .7rem; padding: 8px 10px; }
    .sm-home-visual { min-height: 290px; border-radius: 20px; }
    .sm-home-chef { width: 69%; right: -2%; bottom: -34px; }
    .sm-home-float-chart { left: 16px; top: 22px; }
    .sm-home-float-check { left: 18px; bottom: 20px; }
    .sm-home-module { min-height: 205px; padding: 20px; }
    .sm-home-bottom-strip { grid-template-columns: 1fr; padding: 12px; }
}


/* ============================================================
   STOCK MANAGEMENT — PREMIUM UI LAYER
   Visual-only additions. Scoped to stock-module-content.
   ============================================================ */
.stock-module-content {
    max-width: 100%;
    padding: 20px 28px 42px;
}

.stock-module-content .page-hero {
    min-height: 176px;
    padding: 24px 410px 24px 24px;
    background-image:
        linear-gradient(90deg, rgba(248,247,255,.99) 0%, rgba(248,247,255,.97) 45%, rgba(248,247,255,.72) 68%, rgba(248,247,255,.18) 100%),
        url('/assets/chef-dashboard.png');
    background-repeat: no-repeat;
    background-position: center, right center;
    background-size: cover, 620px auto;
}

.stock-module-content .page-hero::after {
    width: 230px;
    height: 230px;
    right: -70px;
    bottom: -130px;
    background: rgba(124,58,237,.08);
}

.stock-module-content .page-hero h1 {
    font-size: clamp(1.55rem, 2.15vw, 2.05rem);
}

.stock-module-content .page-hero p {
    max-width: 650px;
}

.stock-module-content .stat-cards {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    margin-bottom: 16px;
}

.stock-module-content .stat-card {
    min-height: 96px;
    border-radius: 18px;
    box-shadow: 0 12px 28px rgba(35,45,86,.07);
}

.stock-module-content .entry-form,
.stock-module-content .list-toolbar,
.stock-module-content .date-filter-form,
.stock-module-content .scroll-table-wrap {
    background: rgba(255,255,255,.96);
    border-color: #e5e9f4;
}

.stock-module-content .entry-form {
    position: relative;
    overflow: hidden;
}

.stock-module-content .entry-form::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, #5b4cf0, #8b5cf6);
}

.stock-module-content .list-toolbar {
    border-radius: 15px;
    padding: 10px 12px;
    box-shadow: 0 7px 20px rgba(35,45,86,.045);
}

.stock-module-content .search-box {
    min-height: 46px;
    border-radius: 12px;
    background: #fbfcff;
}

.stock-module-content .data-table {
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 32px rgba(35,45,86,.075);
}

.stock-module-content .data-table thead th {
    padding: 13px 14px;
    background: linear-gradient(180deg, #fafbff, #f5f7fc);
    color: #60708c;
    font-size: .70rem;
    text-transform: uppercase;
    letter-spacing: .45px;
}

.stock-module-content .data-table tbody td {
    padding: 12px 14px;
    font-size: .86rem;
}

.stock-module-content .data-table tbody tr {
    transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}

.stock-module-content .data-table tbody tr:hover {
    background: #fafbff;
}

.stock-module-content .data-table tbody tr:hover td:first-child {
    box-shadow: inset 3px 0 0 #6757f6;
}

.stock-module-content .icon-actions {
    gap: 6px;
}

.stock-module-content .icon-btn {
    width: 34px;
    height: 34px;
    border-radius: 10px;
}

.stock-module-content .badge,
.stock-module-content .status-pill {
    border-radius: 999px;
}

/* ===== Premium stock module landing page ===== */
.stock-module-content .dashboard-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.stock-module-content .dashboard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 0;
}

.stock-module-content .dash-card {
    min-height: 0;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 12px 28px rgba(35,45,86,.07);
}

.stock-module-content .dash-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 38px;
    padding: 9px 12px;
    border-radius: 0;
    white-space: nowrap;
    overflow: hidden;
}

.stock-module-content .dash-card-header small {
    opacity: .84;
    font-size: .62rem;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
}

.stock-module-content .dash-card-body {
    padding: 7px;
}

.stock-module-content .dash-item {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 9px;
    border: 1px solid transparent;
    transition: all .16s ease;
    white-space: nowrap;
    overflow: hidden;
}

.stock-module-content .dash-item span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.stock-module-content .dash-item:hover {
    border-color: #e4e1ff;
    background: linear-gradient(90deg, #f6f4ff, #fbfbff);
    transform: translateX(2px);
}

.stock-module-content .dash-item-arrow {
    opacity: .45;
    font-size: .9rem;
    flex-shrink: 0;
}

.stock-dashboard-rail {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.stock-rail-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #e5e9f4;
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 12px 28px rgba(35,45,86,.07);
}

.stock-rail-hero {
    min-height: 260px;
    background: #211950;
}

.stock-rail-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.stock-rail-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(27,20,73,.03) 0%, rgba(27,20,73,.76) 100%);
}

.stock-rail-content {
    position: absolute;
    left: 17px;
    right: 17px;
    bottom: 16px;
    color: #fff;
}

.stock-rail-kicker {
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: 1px;
    color: #dcd7ff;
}

.stock-rail-content h3 {
    margin: 6px 0 5px;
    font-size: 1.04rem;
    line-height: 1.3;
}

.stock-rail-content p {
    margin: 0;
    color: rgba(255,255,255,.82);
    font-size: .74rem;
    line-height: 1.45;
}

.stock-rail-title {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 13px 15px 10px;
    color: #202b46;
}

.stock-rail-title span {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #efedff;
}

.stock-quick-links {
    padding: 0 10px 10px;
}

.stock-quick-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 9px;
    border-radius: 10px;
    text-decoration: none;
    color: #475675;
    font-size: .78rem;
}

.stock-quick-links a:hover {
    background: #f5f3ff;
    color: #5647e8;
}

.stock-quick-links b {
    color: #9aa5ba;
    font-size: 1rem;
}

.stock-rail-tip {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    background: linear-gradient(135deg, #f5f3ff, #fff8ef);
}

.stock-rail-tip-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 6px 14px rgba(35,45,86,.06);
}

.stock-rail-tip strong {
    font-size: .78rem;
    color: #2a3550;
}

.stock-rail-tip p {
    margin: 3px 0 0;
    color: #6e7a91;
    font-size: .71rem;
    line-height: 1.4;
}

@media (max-width: 1250px) {
    .stock-module-content .dashboard-layout {
        grid-template-columns: 1fr;
    }

    .stock-dashboard-rail {
        display: grid;
        grid-template-columns: 1.15fr 1fr 1fr;
    }

    .stock-rail-hero { min-height: 190px; }
}

@media (max-width: 900px) {
    .stock-module-content {
        padding: 16px 14px 32px;
    }

    .stock-module-content .page-hero {
        padding: 22px;
        background-image: linear-gradient(135deg, #f7f5ff, #ffffff);
    }

    .stock-module-content .dashboard-grid {
        grid-template-columns: 1fr;
    }

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

/* ============================================================
   STOCK MANAGEMENT — FULL PAGE WORKSPACE V5
   Shared visual layer for every Stock Management sheet.
   CSS/UI only; no application logic.
   ============================================================ */
.stock-module-content {
    background:
        radial-gradient(circle at 86% 8%, rgba(124,58,237,.035), transparent 22%),
        radial-gradient(circle at 3% 82%, rgba(14,165,233,.025), transparent 20%),
        transparent;
}

.stock-page-frame {
    display: block;
    width: 100%;
}

.stock-page-main {
    min-width: 0;
}

.stock-page-main > * {
    max-width: 100%;
}

.stock-page-main .page-hero {
    margin-bottom: 14px;
    min-height: 154px;
    padding: 24px 370px 24px 24px;
    border-radius: 22px;
    background-image:
        linear-gradient(90deg, rgba(248,247,255,.99) 0%, rgba(248,247,255,.95) 44%, rgba(248,247,255,.60) 69%, rgba(248,247,255,.13) 100%),
        url('/assets/chef-dashboard.png');
    background-repeat: no-repeat;
    background-position: center, right center;
    background-size: cover, 510px auto;
    box-shadow: 0 16px 42px rgba(35,45,86,.08);
}

.stock-page-main .page-hero h1 {
    font-size: clamp(1.45rem, 2vw, 1.9rem);
}

.stock-page-main .page-hero p {
    max-width: 680px;
    font-size: .88rem;
    line-height: 1.5;
}

.stock-page-main .stat-cards {
    margin: 0 0 14px;
    gap: 12px;
}

.stock-page-main .stat-card {
    min-height: 92px;
    border-radius: 17px;
}

.stock-page-main .hint {
    margin: 0 0 12px;
    padding: 12px 15px;
    border: 1px solid #dfdff7;
    border-radius: 14px;
    background: linear-gradient(90deg,#f1efff,#fafbff);
    color: #565fa6;
    box-shadow: 0 7px 18px rgba(52,63,111,.035);
}

.stock-page-main h3 {
    margin: 12px 0 9px;
    padding: 0;
    color: #192641;
    font-size: 1rem;
}

.stock-page-main .list-toolbar,
.stock-page-main .filter-bar,
.stock-page-main .date-filter-form,
.stock-page-main .entry-form {
    margin-bottom: 12px;
    border: 1px solid #e3e8f3;
    border-radius: 15px;
    background: rgba(255,255,255,.95);
    box-shadow: 0 7px 20px rgba(35,45,86,.045);
}

.stock-page-main .list-toolbar {
    padding: 8px 10px;
}

.stock-page-main .filter-bar {
    padding: 7px;
}

.stock-page-main .filter-link {
    padding: 7px 12px;
}

.stock-page-main .search-box {
    min-height: 44px;
    width: 100%;
    border: 1px solid #dfe5f1;
    background: #fbfcff;
}

.stock-page-main .search-box input {
    font-size: .86rem;
}

.stock-page-main .scroll-table-wrap {
    max-height: calc(100vh - 275px);
    min-height: 320px;
    border-radius: 18px;
    border: 1px solid #e1e7f1;
    background: #fff;
    box-shadow: 0 14px 34px rgba(35,45,86,.07);
}

.stock-page-main .data-table {
    min-width: 100%;
    border-radius: 0;
    box-shadow: none;
}

.stock-page-main .data-table th {
    position: sticky;
    top: 0;
    z-index: 3;
    padding: 11px 12px;
    background: linear-gradient(180deg,#f8f9fd,#f1f4fa);
    color: #62708a;
    font-size: .68rem;
}

.stock-page-main .data-table td {
    padding: 10px 12px;
    font-size: .80rem;
    white-space: nowrap;
}

.stock-page-main .data-table tbody tr:hover td {
    background: linear-gradient(90deg,#fbfcff,#f9f8ff);
}

.stock-page-main .data-table td:first-child,
.stock-page-main .data-table th:first-child {
    position: sticky;
    left: 0;
    z-index: 4;
    background: #fff;
    box-shadow: 4px 0 12px rgba(35,45,86,.035);
}

.stock-page-main .data-table th:first-child {
    background: #f6f7fc;
    z-index: 6;
}

.stock-page-main .data-table tbody tr:hover td:first-child {
    background: #fbfcff;
    box-shadow: inset 3px 0 0 #5b4cf0, 4px 0 12px rgba(35,45,86,.035);
}

@media (max-width: 1280px) {
    .stock-page-main .page-hero { padding-right: 300px; }
}

@media (max-width: 820px) {
    .stock-page-main .page-hero {
        min-height: 135px;
        padding: 20px;
        background-image: linear-gradient(135deg,#f6f4ff,#ffffff);
    }
    .stock-report-summary { grid-template-columns: 1fr; }
}

/* ---- Added: base styles for Stock Value's summary cards + method-note
   disclosure. Referenced by the new markup but not defined in the supplied
   stylesheet — filled in to match the rest of the design system. ---- */
.stock-report-summary {
    display: grid; grid-template-columns: repeat(3, minmax(160px, 1fr)); gap: 1rem; margin-bottom: 1.5rem;
}
.stock-report-summary-card {
    background: #fff; border: 1px solid var(--border); border-radius: 14px; padding: 1rem 1.3rem;
}
.stock-report-summary-label { font-size: 0.78rem; color: var(--text-muted); font-weight: 700; margin-bottom: 0.3rem; }
.stock-report-summary-value { font-size: 1.25rem; font-weight: 800; }

.stock-method-note {
    background: #f8fafc; border: 1px solid var(--border); border-radius: 12px;
    padding: 0.8rem 1rem; margin-top: 1rem; font-size: 0.85rem; color: var(--text-muted);
}
.stock-method-note summary { cursor: pointer; font-weight: 700; color: var(--text); list-style: none; }
.stock-method-note summary::-webkit-details-marker { display: none; }
.stock-method-note > div { margin-top: 0.6rem; line-height: 1.6; }
